- Vật liệu thiết yếu:
- In 3D các bộ phận cần thiết:
- Phần cứng và Sơ đồ:
- Lắp ráp rô bốt:
- Lập trình Arduino cho Biped Robot:
- Xử lý ứng dụng Android dựa trên:
- Hoạt động của Robot Biped điều khiển bằng Bluetooth:
Chào mừng bạn đến với một dự án khác, trong đó chúng tôi sẽ chế tạo một Robot nhỏ có thể đi bộ và nhảy múa. Dự án nhằm mục đích dạy bạn cách chế tạo các rô bốt nhỏ theo sở thích bằng Arduino và cách lập trình động cơ Servo của bạn cho các ứng dụng như vậy. Khi kết thúc dự án, bạn sẽ có thể làm cho robot biết đi và nhảy này nhận lệnh từ Điện thoại di động Android để thực hiện một số hành động được xác định trước. Bạn cũng có thể sử dụng chương trình (được cung cấp ở cuối hướng dẫn) để dễ dàng thao tác các hoạt động của rô bốt của riêng bạn bằng cách điều khiển vị trí của động cơ servo bằng cách sử dụng màn hình nối tiếp. Có một máy in 3d sẽ làm cho dự án này thú vị hơn và trông bắt mắt. Tuy nhiên, nếu bạn không có, bạn có thể sử dụng bất kỳ dịch vụ trực tuyến nào hoặc chỉ cần sử dụng một số bìa cứng để xây dựng giống nhau.
Vật liệu thiết yếu:
Sau đây là những vật liệu cần thiết để chế tạo robot này:
- Arduino nano
- Servo SG90 - 4Nos
- Gậy berg nam
- Mô-đun Bluetooth HC-05 / HC-06
- máy in 3D
Như bạn có thể thấy, robot in 3D này yêu cầu chế tạo các bộ phận điện tử rất tối thiểu để giữ cho chi phí của dự án thấp nhất có thể. Dự án này chỉ dành cho mục đích khái niệm và vui nhộn và không có bất kỳ ứng dụng thời gian thực nào cho đến nay.
In 3D các bộ phận cần thiết:
In 3D là một công cụ tuyệt vời có thể đóng góp rất nhiều khi xây dựng các dự án nguyên mẫu hoặc thử nghiệm các thiết kế cơ khí mới. Nếu bạn chưa khám phá ra những lợi ích của máy in 3D hoặc cách nó hoạt động, bạn có thể đọc Hướng dẫn dành cho người mới bắt đầu về in 3D.
Trong dự án này, cơ thể của Robot ở trên được in 3D hoàn toàn. Bạn có thể tải xuống các tệp STL từ đây. Tải các tệp này trên phần mềm in 3D của bạn như Cura và in trực tiếp chúng. Tôi đã sử dụng một máy in rất cơ bản của mình để in tất cả các bộ phận. Máy in FABX v1 từ 3ding có giá cả phải chăng với khối lượng in 10 cm khối. Giá rẻ đi kèm với sự đánh đổi với độ phân giải in thấp và không có thẻ SD hoặc chức năng tiếp tục in. Tôi đang sử dụng phần mềm có tên là Cura để in các tệp STL. Các cài đặt mà tôi đã sử dụng để in tài liệu được đưa ra bên dưới, bạn có thể sử dụng giống nhau hoặc thay đổi chúng dựa trên máy in của bạn.
Khi bạn in tất cả các bộ phận, hãy làm sạch các giá đỡ (nếu có) và sau đó đảm bảo các lỗ trên phần chân và bụng đủ lớn để lắp vít. Nếu không, hãy dùng kim để làm cho lỗ lớn hơn một cách nhẹ nhàng. Các bộ phận được in 3D của bạn sẽ giống như bên dưới.
Phần cứng và Sơ đồ:
Phần cứng cho Robot Arduino Biped điều khiển trên điện thoại di động này thực sự đơn giản. Sơ đồ hoàn chỉnh được hiển thị trong hình ảnh dưới đây
Tôi đã sử dụng bảng Perf để thực hiện các kết nối trên. Đảm bảo rằng mạch của bạn cũng sẽ phù hợp với bên trong đầu của robot. Khi bảng Perf của bạn đã sẵn sàng, nó sẽ trông giống như bên dưới.
Lắp ráp rô bốt:
Khi Phần cứng và các bộ phận in 3D đã sẵn sàng, chúng tôi có thể lắp ráp robot. Trước khi sửa động cơ, hãy đảm bảo bạn đặt động cơ ở các góc dưới đây để chương trình hoạt động hoàn hảo.
Số động cơ |
Nơi vận động |
Vị trí động cơ |
1 |
Động cơ hông trái |
110 |
2 |
Động cơ hông phải |
100 |
4 |
Động cơ mắt cá chân phải |
90 |
5 |
Động cơ hông phải |
80 |
Các góc này có thể được thiết lập bằng cách sử dụng chương trình được đưa ra ở cuối hướng dẫn. Chỉ cần tải chương trình lên Arduino của bạn sau khi thực hiện các kết nối trên và nhập thông tin sau vào màn hình nối tiếp (Lưu ý: Tốc độ truyền là 57600).
1, 100, 110
2.90.100
4,80,90
5,70,80
Màn hình nối tiếp của bạn sẽ trông giống như thế này sau khi đặt tất cả các động cơ vào vị trí.
Sau khi các động cơ được đặt ở các góc tương ứng, hãy lắp chúng như thể hiện trong hình trên.
Nếu bạn bối rối về cách lắp ráp động cơ, hãy làm theo video ở cuối hướng dẫn này. Sau khi Robot được lắp ráp, đã đến lúc lập trình Robot nhảy của chúng ta
Lập trình Arduino cho Biped Robot:
Lập trình Robot BBB ( Bluetooth Biped Bob ) là phần thú vị và vui nhộn nhất trong hướng dẫn này. Nếu bạn rất giỏi trong việc lập trình động cơ servo với Arduino thì tôi khuyên bạn nên tạo chương trình của mình. Bt, nếu bạn muốn tìm hiểu cách sử dụng động cơ servo cho các ứng dụng robot như thế này, thì chương trình này sẽ rất hữu ích cho. Bạn có thể tìm hiểu thêm về lập trình arduino trong danh mục dự án arduino của chúng tôi.
Chương trình hoàn chỉnh được đưa ra ở cuối hướng dẫn này hoặc bạn có thể tải xuống mã hoàn chỉnh từ đây. Tôi sẽ giải thích các phân đoạn của giống nhau bên dưới. Chương trình có khả năng điều khiển các hành động của Robot thông qua màn hình nối tiếp hoặc Bluetooth. Bạn cũng có thể thực hiện các chuyển động của riêng mình bằng cách điều khiển từng động cơ riêng lẻ bằng màn hình nối tiếp.
servo1.attach (3); servo2.attach (5); servo4.attach (9); servo5.attach (10);
Các dòng mã trên nó sử dụng để đề cập đến động cơ servo được kết nối với chân nào của Arduino. Ở đây trong trường hợp của chúng tôi, Servo 1,2,4 và 5 được kết nối với các chân 3,5,9 và 10 tương ứng.
Bot_BT.begin (9600); // bắt đầu giao tiếp Bluetooth tại 9600 baudrate Serial.begin (57600);
Như đã nói trước đó, robot đi bộ của chúng tôi có thể hoạt động trên các lệnh Bluetooth và cả các lệnh từ màn hình nối tiếp. Do đó, giao tiếp nối tiếp Bluetooth hoạt động với Tốc độ Baud là 9600 và giao tiếp nối tiếp hoạt động với Tốc độ Baud là 57600. Tên của đối tượng Bluetooth của chúng tôi ở đây là “Bot_BT”.
switch (motor) {case 1: // For motor one {Serial.println ("Đang thực thi động cơ một"); if (num1
Hộp công tắc hiển thị ở trên được sử dụng để điều khiển động cơ servo riêng lẻ. Điều này sẽ giúp bạn thực hiện các động tác sáng tạo với robot của bạn. Với đoạn mã này, bạn có thể chỉ cần cho biết số động cơ, từ góc và góc để thực hiện một động cơ cụ thể di chuyển đến vị trí mong muốn.
Ví dụ, nếu chúng ta muốn di chuyển động cơ số 1 là động cơ hông bên trái từ vị trí mặc định của nó là 110 độ sang 60 độ. Chúng ta chỉ cần viết “1,110,60” vào màn hình nối tiếp của Arduino và nhấn enter. Điều này sẽ rất hữu ích để bạn thực hiện các bước di chuyển phức tạp với Robot của mình. Một khi bạn thử nghiệm với tất cả từ thiên thần và góc độ, bạn có thể thực hiện các bước di chuyển của riêng mình và lặp lại chúng bằng cách biến nó thành một hàm.
if (Serial.available ()> 0) // Đọc thông tin gì đang đến qua Serial {gmotor = Serial.parseInt (); Serial.print ("Số đã chọn->"); Serial.print (gmotor); Serial.print (","); gnum1 = Serial.parseInt (); Serial.print (gnum1); Serial.print ("độ,"); gnum2 = Serial.parseInt (); Serial.print (gnum2); Serial.println ("độ"); cờ = 1; }
Nếu dữ liệu Sê-ri có sẵn, số trước dấu “,” đầu tiên được coi là gmotor và sau đó số trước dấu “,” thứ hai được coi là gnum1 và số sau dấu “,” thứ hai được coi là gnum2.
if (Bot_BT.available ()) // Đọc thông tin gì đang đến qua Bluetooth {BluetoothData = Bot_BT.read (); Serial.print ("Nhap tu BT:"); Serial.println (BluetoothData); }
Nếu Bluetooth nhận được một số thông tin, thông tin nhận được sẽ được lưu trữ trong biến “BluetoothData”. Biến này sau đó được so sánh với các giá trị được xác định trước để thực hiện một hành động cụ thể.
if (flag == 1) call (gmotor, gnum1, gnum2); // gọi động cơ tương ứng để hành động // Thực thi các chức năng theo commond nhận được thông qua Serial monitor hoặc Bluetooth // if (gmotor == 10) left_leg_up (); if (gmotor == 11) right_leg_up (); if (gmotor == 12) move_left_front (); if (gmotor == 13) move_right_front (); if (BluetoothData == 49 - gmotor == 49) say_hi (); if (BluetoothData == 50 - gmotor == 50) walk1 (); if (BluetoothData == 51 - gmotor == 51) walk2 (); if (BluetoothData == 52 - gmotor == 52) dance1 (); if (BluetoothData == 53 - gmotor == 53) dance2 (); if (BluetoothData == 54 - gmotor == 54) {test (); test (); test ();}
Đây là nơi các chức năng được gọi dựa trên các giá trị nhận được từ màn hình nối tiếp hoặc Bluetooth. Như hình trên, biến gmotor sẽ có giá trị là màn hình nối tiếp và BluetoothData sẽ có giá trị từ thiết bị Bluetooth. Các số từ 10,11,12 đến 53,54 là các số được xác định trước.
Ví dụ: nếu bạn nhập số 49 trong màn hình nối tiếp. Hàm say_hi () sẽ được thực thi khi robot sẽ vẫy tay chào bạn.
Tất cả các chức năng được định nghĩa bên trong trang “Bot_Functions”. Bạn có thể mở nó và xem những gì thực sự xảy ra bên trong mỗi chức năng. Tất cả các chức năng này được tạo ra bằng cách thử nghiệm từ thiên thần và thiên thần của mọi động cơ bằng cách sử dụng trường hợp chuyển đổi được giải thích ở trên. Nếu bạn có bất kỳ nghi ngờ nào, bạn có thể sử dụng phần bình luận để đăng chúng và tôi sẽ sẵn lòng giúp bạn.
Xử lý ứng dụng Android dựa trên:
Ứng dụng Android để điều khiển Robot được xây dựng bằng chế độ Xử lý Android. Nếu bạn muốn thực hiện một số thay đổi đối với Ứng dụng, bạn có thể tải xuống chương trình Xử lý hoàn chỉnh từ đây.
Nếu bạn chỉ muốn sử dụng ứng dụng, bạn có thể tải xuống từ đây dưới dạng tệp APK và cài đặt trực tiếp trên điện thoại di động của bạn.
Lưu ý: Mô-đun Bluetooth của bạn phải được đặt tên là HC-06 nếu không ứng dụng sẽ không thể kết nối với Mô-đun Bluetooth của bạn.
Sau khi ứng dụng được cài đặt, bạn có thể ghép nối mô-đun Bluetooth với Điện thoại và sau đó khởi chạy ứng dụng. Nó sẽ trông giống như thế này bên dưới.
Nếu bạn muốn làm cho ứng dụng của mình hấp dẫn hơn hoặc kết nối với bất kỳ thiết bị nào khác ngoài Hc-06. Bạn có thể sử dụng mã xử lý và thực hiện một số thay đổi đối với mã đó, sau đó tải mã trực tiếp lên điện thoại của mình.
Hoạt động của Robot Biped điều khiển bằng Bluetooth:
Sau khi Phần cứng, Ứng dụng Android và Phác thảo Arduino của bạn đã sẵn sàng, đây là lúc để vui chơi với robot của chúng tôi. Bạn có thể điều khiển Robot từ Ứng dụng Bluetooth bằng cách sử dụng các nút trong ứng dụng hoặc trực tiếp từ Màn hình nối tiếp bằng cách sử dụng các lệnh sau như trong hình dưới đây.
Mỗi lệnh sẽ khiến robot thực hiện một số nhiệm vụ đặc biệt và bạn cũng có thể thêm vào nhiều hành động khác dựa trên sự sáng tạo của mình.
Robot cũng có thể được cấp nguồn bằng bộ chuyển đổi 12V hoặc cũng có thể được cấp nguồn bằng cách sử dụng pin 9V. Pin này có thể dễ dàng định vị bên dưới bảng Perf và cũng có thể được che bằng Đầu của Robot.
Toàn bộ hoạt động của Robot điều khiển điện thoại thông minh này có thể được tìm thấy trong Video bên dưới.