Bộ truyền động tuyến tính phản hồi chiết áp với Arduino

Trong ví dụ này, chúng tôi sẽ trình bày cách sử dụng Arduino để đọc tín hiệu từ Bộ truyền động thanh phản hồi của Firgelli và chuyển nó thành phép đo khoảng cách xem thanh đã được kéo dài bao xa. Hướng dẫn này dựa trên các nguyên tắc được thảo luận trong hướng dẫn “Điều khiển tốc độ trình điều khiển động cơ với Arduino”, Chúng tôi khuyên bạn nên xem lại hướng dẫn đó trước khi tiếp tục.

Lưu ý: Hướng dẫn này giả định có kiến ​​thức trước về các nguyên tắc điện tử cơ bản, phần cứng và phần mềm Arduino. Nếu đây là lần đầu tiên bạn sử dụng Arduino, chúng tôi khuyên bạn nên học những kiến ​​thức cơ bản từ một trong nhiều hướng dẫn tuyệt vời dành cho người mới bắt đầu có sẵn thông qua các tìm kiếm trên Google và YouTube. Xin lưu ý rằng chúng tôi không có tài nguyên để cung cấp hỗ trợ kỹ thuật cho các ứng dụng tùy chỉnh và sẽ không gỡ lỗi, chỉnh sửa, cung cấp mã hoặc sơ đồ đi dây bên ngoài các hướng dẫn có sẵn công khai này.

Các thành phần

Đấu dây

Bộ truyền động tuyến tính phản hồi chiết áp với Arduino

Tổng quan về phần cứng và phần mềm cho vị trí đọc

Lắp ráp mạch như trên và tải lên đoạn mã bên dưới. Bạn sẽ cần phải sửa đổi dòng 16 của mã theo chiều dài hành trình cụ thể của bạn, nó hiện được đặt cho bộ truyền động thanh phản hồi 6 inch.

Chương trình này ban đầu sẽ mở rộng và thu lại hoàn toàn bộ truyền động để tìm số đọc cảm biến tương tự tối thiểu và tối đa từ chiết áp (dòng 27 và 28 của mã). Điều này là cần thiết vì mặc dù phạm vi của số đọc chiết áp là [0, 1023], trong thực tế, phạm vi này có thể bị giảm do tỷ số truyền bên trong cơ cấu truyền động ngăn chiết áp quay hoàn toàn đến giới hạn của nó.

Tiếp theo trình tự hiệu chuẩn ban đầu này, bộ truyền động sẽ liên tục kéo dài và thu lại, xuất ra một luồng dữ liệu hiển thị chiều dài mở rộng hiện tại của bộ truyền động tuyến tính (tính bằng đơn vị inch).

https://gist.github.com/Will-Firgelli/8c78092ca850aa8a50ae36842b97150f

Sử dụng chiết áp bên ngoài để kiểm soát vị trí

Ví dụ trên đã chứng minh cách các số đọc có thể được lấy từ Bộ truyền động thanh phản hồi, nhưng giả sử chúng ta muốn di chuyển bộ truyền động đến một vị trí cụ thể, chúng ta thực hiện điều này như thế nào? Phần sau giải quyết tình huống như vậy bằng cách sử dụng chiết áp bên ngoài làm đầu vào của người dùng cho vị trí điểm đặt mong muốn của bộ truyền động. Trong thực tế, bạn có thể sửa đổi ví dụ này để lấy đầu vào của người dùng từ bất kỳ hình thức nào bạn muốn.

Đấu dây

Bộ truyền động tuyến tính với Arduino

Tổng quan về phần cứng và phần mềm để kiểm soát vị trí

Cách đấu dây gần như giống hệt như phần đầu của hướng dẫn này, chỉ khác là một chiết áp bên ngoài đã được kết nối với chân analog A1.

Chương trình, bên dưới, di chuyển đến vị trí do người dùng thiết lập thông qua chiết áp bên ngoài. Trong dòng 18 của mã, một biến bộ đệm được thiết lập, biến này được sử dụng sau trong dòng 36 và 39. Bộ đệm có thể đóng vai trò cung cấp một phạm vi xung quanh vị trí điểm đặt mong muốn nơi bộ truyền động sẽ ngừng di chuyển, điều này là bắt buộc vì hai chiết áp có xu hướng fluatate hóa +/- 2 đơn vị. Như vậy, nếu bộ đệm không được bao gồm, các bộ truyền động sẽ rung mạnh xung quanh vị trí điểm đặt. Để thấy điều này trong thực tế, hãy đặt bộ đệm ở dòng 18 thành không (không để bộ truyền động rung trong thời gian dài vì nó có thể gây hư hỏng).

https://gist.github.com/Will-Firgelli/41ec87433f0aaa1abc33e79168076b3b

Share This Article
Tags:

Need Help Finding the Right Actuator?

We precision engineer and manufacture our products so you get direct manufacturers pricing. We offer same day shipping and knowledgeable customer support. Try using our Actuator Calculator to get help picking the right actuator for your application.