Mục lục:

Điều khiển 3 động cơ Servo với 3 chiết áp và Arduino: 11 bước (có hình ảnh)
Điều khiển 3 động cơ Servo với 3 chiết áp và Arduino: 11 bước (có hình ảnh)

Video: Điều khiển 3 động cơ Servo với 3 chiết áp và Arduino: 11 bước (có hình ảnh)

Video: Điều khiển 3 động cơ Servo với 3 chiết áp và Arduino: 11 bước (có hình ảnh)
Video: Arduino | Chi tiết cách sử dụng động cơ Servo 2024, Tháng mười một
Anonim
Điều khiển 3 động cơ Servo với 3 chiết áp và Arduino
Điều khiển 3 động cơ Servo với 3 chiết áp và Arduino

Chào bạn. Đây là hướng dẫn đầu tiên của tôi, vì vậy tôi hy vọng bạn sẽ kiên nhẫn với tôi nếu tôi mắc bất kỳ lỗi nào khi thiết lập nó. Nó được viết cho người mới bắt đầu, vì vậy những người nâng cao hơn trong số bạn có thể bỏ qua rất nhiều điều này và chỉ cần bắt đầu nó.

Mục tiêu tôi tự đặt ra là có thể điều khiển rô bốt được hiển thị trên trang web này:

bocabearingsworkshop.blogspot.co.id/2015/08…

Tôi cần có khả năng điều khiển 3 động cơ servo khác nhau bằng cách thay đổi vị trí của 3 chiết áp. Có rất nhiều người đang làm những việc như thế này, nhưng tôi không thể tìm thấy kết quả phù hợp chính xác cho mọi thứ tôi cần, vì vậy tôi quyết định đăng bài hướng dẫn này để tập hợp mọi thứ tôi đã học được ở một nơi để bất kỳ ai khác muốn làm điều gì đó như thế này có thể thiết lập và chạy nhanh chóng. Tài liệu hướng dẫn này thực sự là một bản tóm tắt về công việc và nỗ lực xuất sắc của những người khác.

Trước khi liệt kê các bước riêng lẻ liên quan đến việc này, tôi muốn giải thích nhanh về cách mọi thứ hoạt động.

Chiết áp gửi tín hiệu tương tự đến Arduino. Sau đó, bản phác thảo trên Arduino (sẽ nói thêm về điều này) sau đó chuyển đổi đầu vào tương tự từ chiết áp thành đầu ra kỹ thuật số và gửi đầu ra này đến động cơ servo, sau đó di chuyển sang trái hoặc phải theo số lượng thích hợp.

Các chiết áp được cấp nguồn từ dòng 5v của Arduino, trong khi các servo lấy nguồn từ bộ pin.

Lưu ý quan trọng: Điều RẤT quan trọng là phải nối đất Arduino vào bộ pin / servos để tránh những điều khó chịu xảy ra, nhưng tôi sẽ nói chi tiết hơn về vấn đề này khi chúng ta tiếp tục.

Bước 1: Chuẩn bị các thành phần của bạn

Chuẩn bị các thành phần của bạn
Chuẩn bị các thành phần của bạn
Chuẩn bị các thành phần của bạn
Chuẩn bị các thành phần của bạn
Chuẩn bị các thành phần của bạn
Chuẩn bị các thành phần của bạn

Bạn cần ba chiết áp 10k có chân có thể lắp vào bảng mạch.

Tôi tìm thấy chúng ở đây:

www.adafruit.com/products/562

Tiếp theo là các động cơ servo. Tôi đã sử dụng những cái nhỏ nhất vì tải trọng mà chúng sẽ di chuyển sẽ rất nhỏ và chúng rẻ.

www.adafruit.com/products/169

Tiếp theo, bạn cần một bộ pin 4 AA:

www.adafruit.com/products/830

Một breadboard để kết nối mọi thứ:

www.adafruit.com/products/239

Arduino Uno R3 (ít nhất đây là những gì tôi đã sử dụng):

www.adafruit.com/products/50

Cáp usb để kết nối Arduino với máy tính và cấp nguồn cho nó:

www.adafruit.com/products/62

Phần mềm Arduino IDE để tải lên chương trình sẽ điều khiển các servos:

www.arduino.cc/en/Main/Software

Một số cáp jumper nam / đực và một số dây jumper để tạo kết nối

www.adafruit.com/products/1956

Chân tiêu đề Breakaway sẽ được sử dụng để kết nối động cơ của bạn với breadboard. Tôi thích những cái này vì bạn không cần phải điều chỉnh dải phân cách bằng nhựa để chúng vừa với một breadboard.

www.adafruit.com/products/400

Bước 2: Chuẩn bị Breadboard của bạn

Chuẩn bị bảng mạch của bạn
Chuẩn bị bảng mạch của bạn

Rất nhiều bảng mạch bánh mì được chia thành 2 phần dọc theo đường ray điện ở trên và dưới (điều này khiến tôi hơi đầu óc khi mới bắt đầu sử dụng.) Bằng cách sử dụng 4 đoạn dây nhỏ, bạn có thể bắc qua khoảng trống để đảm bảo sức mạnh của bạn đi khắp breadboard. Cuối cùng tôi đã mua một cái được kết nối toàn bộ nhưng đề phòng bạn gặp sự cố này, đây là cách bạn giải quyết nó.

Bước 3: Đấu dây một chiết áp 1

Đấu dây lên một chiết áp 1
Đấu dây lên một chiết áp 1

Sơ đồ này cho thấy 3 chân trên chiết áp dùng để làm gì.

Bước 4: Nối dây chiết áp 2

Đấu dây chiết áp 2
Đấu dây chiết áp 2

Lấy 3 trong số các cáp nam đực và đẩy chúng vào breadboard như trong sơ đồ

Bước 5: Nối dây chiết áp 3

Đấu dây cho chiết áp 3
Đấu dây cho chiết áp 3

Bây giờ đẩy các chân của chiết áp vào bảng mạch như trong sơ đồ

Bước 6: Nối dây chiết áp 4

Đấu dây chiết áp 4
Đấu dây chiết áp 4

Bây giờ lặp lại quá trình này 2 lần nữa và bây giờ chúng ta sẽ sẵn sàng kết nối cáp tín hiệu với Ardiuno

Bước 7: Lên dây cho bước cuối cùng của chiết áp

Lên dây cho bước cuối cùng của chiết áp
Lên dây cho bước cuối cùng của chiết áp

Bây giờ chúng ta lấy các cáp tín hiệu màu vàng và cắm chúng vào bảng Arduino. Nhìn kỹ vào Arduino và bạn sẽ thấy một phần của bo mạch được gọi là Analog In. Chúng tôi sẽ cắm cáp của chúng tôi vào A0, A1 và A2 như trong sơ đồ.

Hiện tại, chúng ta đã hoàn thành các chậu, bây giờ là để thiết lập động cơ.

Bước 8: Đấu dây động cơ 1

Đấu dây động cơ 1
Đấu dây động cơ 1
Đấu dây động cơ 1
Đấu dây động cơ 1
Đấu dây động cơ 1
Đấu dây động cơ 1

Đối với chiết áp, chúng ta sẽ làm điều tương tự ba lần, vì vậy tôi sẽ nói với bạn cách thiết lập một cách chi tiết và tất cả những gì bạn phải làm là lặp lại quy trình.

Màu sắc cáp trên động cơ rất phức tạp vì chúng thay đổi từ động cơ này sang động cơ khác. Trong sơ đồ của tôi

màu đen là đất (-)

Màu đỏ là sức mạnh (+)

Màu vàng là (các) tín hiệu

Lấy một cặp kìm mũi dài và bẻ một dải 3 chân tiêu đề và lắp chúng vào đầu nối cái trên động cơ servo. Kết nối servo với breadboard như trong sơ đồ. Khi bạn đã hoàn thành việc đó, chúng ta sẽ cần kết nối động cơ với các thanh nguồn phía dưới, vì vậy hãy lấy hai dây cáp nam đực và lắp chúng vào breadboard như hình minh họa.

Lặp lại quá trình này hai lần nữa và sau đó chúng tôi sẽ sẵn sàng kết nối động cơ với arduino

Bước 9: Nối dây động cơ 2

Đấu dây động cơ 2
Đấu dây động cơ 2

Bây giờ chúng ta đã kết nối các động cơ với bảng mạch bánh mì, đã đến lúc kết nối cáp tín hiệu với Arduino, đối với điều này bạn sẽ cần 3 cáp jumper nam đực.

Cắm chúng vào breadboard và sau đó vào Arduino tại các vị trí sau:

~9

~10

~11

Chúng nằm ở phía bên phải của Arduino như được định hướng trong sơ đồ của tôi. Đây là nơi tín hiệu kỹ thuật số từ Arduino được gửi đến servo để cho nó biết cách quay.

Sau khi hoàn thành việc này, chúng tôi đã sẵn sàng kết nối nguồn điện và làm cho nó hoạt động

Bước 10: Thêm năng lượng

Thêm sức mạnh
Thêm sức mạnh
Thêm sức mạnh
Thêm sức mạnh
Thêm sức mạnh
Thêm sức mạnh

Tại thời điểm này, chúng tôi muốn kết nối nguồn Arduino 5v và nối đất với thanh trên cùng sẽ cung cấp năng lượng cho các chiết áp, và sau đó chúng tôi sẽ kết nối bộ pin của chúng tôi với các thanh dưới cùng để cấp nguồn cho Servos.

Tuy nhiên, nếu chúng tôi làm điều này, điều đó có nghĩa là mặt phẳng mặt đất Arduino và mặt phẳng mặt đất servo sẽ không được kết nối với nhau và điều này có thể dẫn đến các vấn đề lớn. Rút Arduino ra khỏi cáp USB, đảm bảo rằng bộ pin không được kết nối với bảng mạch bánh mì và kết nối hai cáp jumper nam đực như trong sơ đồ, một với 5v trong Arduino, cáp còn lại với mặt đất trong Arduino.

Sau đó, lấy một dây cáp nhảy nam và nối đất từ thanh ray trên cùng xuống đất trên thanh ray dưới cùng như hình minh họa ở phía bên tay phải của breadboard. Điều này bây giờ liên kết giữa mặt đất Arduino với mặt đất pin mà chúng tôi sẽ đính kèm tiếp theo.

Cuối cùng, thêm bộ pin vào breadboard và chúng tôi đã hoàn thành thiết lập vật lý và sẽ chuyển sang lập trình Arduino.

Bước 11: Lập trình Ardiuno

Lập trình Ardiuno
Lập trình Ardiuno

Đối với bất kỳ ai chưa quen với việc tải các bản phác thảo lên Arduino, tôi khuyên bạn nên dành thời gian xem qua các hướng dẫn ở đây trước khi tiếp tục.

www.arduino.cc/en/Tutorial/HomePage

Để xem lại các kết nối trong thiết lập của tôi

Chiết áp được cắm vào A0, A1 và A2

Các Servos được cắm vào ~ 9, ~ 10 và ~ 11

Chúng tôi sẽ cần những con số này khi viết mã để Arduino hoạt động với thiết lập của chúng tôi. Dưới đây là đoạn mã tôi đã sử dụng để Arduino hoạt động. Nó không phải là mã của tôi, tôi đã hack những phần tôi không cần từ mã của người khác, rất tiếc là tôi không thể nhớ mình đã tìm thấy nó ở đâu nên không thể ghi công cho người đã viết nó. Nếu bạn nhận ra nó, vui lòng cho tôi biết và tôi sẽ đặt một liên kết ở đây đến dự án của người đó.

#bao gồm

Servo myservo3;

Servo myservo5;

Servo myservo6;

n

int potpin = 0; int potpin2 = 1;

int potpin3 = 2;

int val = 0; int val2 = 0;

int val3 = 0;

void setup () {

myservo3.attach (9); myservo5.attach (10);

myservo6.attach (11);

}

void loop () {

val = analogRead (potpin); val = map (val, 3, 1023, 0, 176);

myservo3.write (val);

chậm trễ (25);

val2 = analogRead (potpin2); val2 = map (val2, 3, 1023, 0, 176);

myservo5.write (val2);

chậm trễ (25);

val3 = analogRead (potpin3); val3 = map (val3, 3, 1023, 0, 175);

myservo6.write (val3);

chậm trễ (25);

}

Dán nó vào một bản phác thảo trống, lưu nó và tải nó lên Arduino của bạn và bây giờ bạn sẽ có thể điều khiển các Servos bằng chiết áp của mình và có thể tiếp tục với dự án của mình!

Đề xuất: