Mục lục:

Hexapod: 14 bước (có hình ảnh)
Hexapod: 14 bước (có hình ảnh)

Video: Hexapod: 14 bước (có hình ảnh)

Video: Hexapod: 14 bước (có hình ảnh)
Video: DESIGN, IMPLEMENTATION AND CONTROL OF HEXAPOD ROBOT | DEMO 2024, Tháng mười một
Anonim
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod

Tôi muốn chơi và tạo ra rô bốt trong một vài năm và tôi đã được truyền cảm hứng rất nhiều từ Zenta, tại đây bạn sẽ tìm thấy kênh Youtube của anh ấy https://www.youtube.com/channel/UCmCZ-oLEnCgmBs_T và trang web của anh ấy https://zentasrobots.com.

Bạn có thể tìm thấy rất nhiều bộ dụng cụ của nhiều nhà cung cấp khác nhau trên internet, nhưng chúng rất đắt, lên đến 1.500 đô la + cho một hexapod 4 DoF, và bộ dụng cụ từ Trung Quốc không có chất lượng tốt. Vì vậy, tôi đã quyết định tạo bằng hexapod theo cách của mình. Lấy cảm hứng từ Hexapod Phoenix của Zenta, bạn sẽ tìm thấy nó trong kênh Youtube của anh ấy (và một bộ công cụ bạn có thể tìm thấy https://www.lynxmotion.com/c-117-phoenix.aspx, tôi đã bắt đầu tạo của riêng mình từ đầu.

Để tạo nếu đặt các mục tiêu / yêu cầu sau cho riêng tôi:

1.) Có rất nhiều niềm vui và học hỏi những điều mới.

2.) Thiết kế định hướng chi phí (chết tiệt, công ty của tôi đã làm hỏng tôi hoàn toàn)

3.) Các bộ phận làm bằng gỗ ply (vì nó dễ dàng hơn cho hầu hết mọi người và cả tôi để cắt gỗ)

4.) Sử dụng các công cụ (phần mềm) miễn phí có sẵn

Vì vậy, những gì tôi đã sử dụng cho đến nay?

a) SketchUp, dành cho thiết kế cơ khí.

b) Gỗ sồi 4mm và 6mm (1/4 ).

c) Arduino Uno, Mega, IDE.

d) Servos tiêu chuẩn kỹ thuật số (tìm thấy tại amazon với giá tốt).

e) Dosuki và Bandsaw, một máy khoan, giấy nhám và một tập tin.

Bước 1: Cấu tạo chân và giá đỡ Servo

Cấu tạo chân đế và chân đế Servo
Cấu tạo chân đế và chân đế Servo
Cấu tạo chân đế và chân đế Servo
Cấu tạo chân đế và chân đế Servo
Cấu tạo chân đế và chân đế Servo
Cấu tạo chân đế và chân đế Servo

Đầu tiên, tôi thực hiện một số nghiên cứu trên internet để tìm ra cách chế tạo một robot, nhưng không thành công lắm khi tìm được thông tin tốt về cách thiết kế cơ khí. Vì vậy, tôi đã đấu tranh rất nhiều và cuối cùng tôi quyết định sử dụng SketchUp.

Sau một số giờ học hỏi bằng cách làm với SketchUp, tôi đã hoàn thành thiết kế chân đầu tiên của mình. Xương đùi được tối ưu hóa cho phù hợp với kích thước của sừng servo mà tôi đang sử dụng. Như tôi đã tìm ra, bản gốc dường như có đường kính khoảng 1 , nhưng sừng servo của tôi có 21mm.

Tạo bản in với tỷ lệ phù hợp không hoạt động chính xác với SketchUp trên máy tính của tôi, vì vậy tôi đã lưu nó dưới dạng PDF, tạo bản in với tỷ lệ 100%, thực hiện một số phép đo và cuối cùng được in lại với hệ số tỷ lệ phù hợp.

Lần thử đầu tiên, tôi chỉ tạo ra nghệ thuật cho hai chân. Đối với điều này, tôi xếp chồng hai tấm bảng, dán (đối với giấy dán tường) bản in trên đó và cắt các bộ phận bằng một chiếc cưa máy thủ công mô hình.

Chất liệu được sử dụng: gỗ beech ply 6mm (1/2 )

Sau đó, tôi đã thực hiện một số thử nghiệm, tôi chưa ghi lại và đã thực hiện một số tối ưu hóa. Như bạn có thể thấy xương chày hơi quá khổ cũng như xương đùi.

Để gắn sừng servo qua xương đùi, phải cắt bỏ 2 mm vật liệu. Điều này có thể được thực hiện theo nhiều cách khác nhau. Với bộ định tuyến hoặc với máy khoan Forstner. Forstner chỉ có đường kính 200 mm, vì vậy tôi phải làm một số công việc sau chiến tranh bằng tay với một cái đục.

Bước 2: Tối ưu hóa xương đùi và xương chày

Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày
Tối ưu hóa xương đùi và xương chày

Tôi đã thay đổi thiết kế một chút.

1.) Tibia bây giờ phù hợp với servo tôi đang sử dụng tốt hơn nhiều.

2.) Xương đùi bây giờ nhỏ hơn một chút (khoảng 3 từ trục này sang trục khác) và phù hợp với sừng servo (đường kính 21 mm).

Tôi đã sử dụng 6 tấm ván gỗ 6 mm và dán chúng lại với nhau bằng băng dính hai mặt. Nếu điều này không đủ mạnh, bạn có thể khoan một lỗ xuyên qua tất cả các bảng và dùng vít để cố định chúng lại với nhau. sau đó một bộ phận được cắt ra cùng một lúc bằng cưa máy. Nếu bạn đủ cứng rắn, bạn cũng có thể sử dụng ghép hình:-)

Bước 3: Thiết kế Giá đỡ Servo

Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo
Thiết kế Giá đỡ Servo

Bây giờ là lúc thiết kế giá đỡ servo. Điều này được thiết kế mạnh mẽ liên quan đến servo đã sử dụng mà tôi đã sử dụng. Tất cả các bộ phận được làm bằng gỗ dẻ gai 6 mm một lần nữa xem bước tiếp theo.

Bước 4: Cắt và lắp ráp chân đế Servo

Cắt và lắp ráp chân đế Servo
Cắt và lắp ráp chân đế Servo
Cắt và lắp ráp chân đế Servo
Cắt và lắp ráp chân đế Servo

Một lần nữa, tôi đã cắt sáu phần cùng một lúc tất cả trên cưa máy. Phương pháp vẫn giống như trước đây.

1.) Sử dụng băng dính hai mặt để dán các tấm bảng lại với nhau.

2.) Vít để có sự ổn định hơn trong khi cắt (không hiển thị ở đây).

Sau đó, tôi đã sử dụng một số keo thủ công mô hình để dán chúng lại với nhau và hai vít SPAX (chưa được áp dụng trong ảnh).

So với hexapod ban đầu, tôi chưa sử dụng ổ bi, thay vào đó tôi chỉ sử dụng vít 3 mm, vòng đệm và đai ốc tự cố định sau đó để lắp ráp chân với thân / khung máy.

Bước 5: Lắp ráp các chân và kiểm tra

Image
Image
Lắp ráp các chân và kiểm tra
Lắp ráp các chân và kiểm tra
Lắp ráp các chân và kiểm tra
Lắp ráp các chân và kiểm tra

Trong hai hình ảnh đầu tiên, bạn thấy phiên bản đầu tiên của một chiếc chân. Tiếp theo, bạn sẽ thấy so sánh các bộ phận cũ và mới và so sánh các bộ phận mới (phiên bản hai) với bản gốc (ảnh nền).

Cuối cùng, bạn sẽ có một bài kiểm tra chuyển động đầu tiên.

Bước 6: Xây dựng và lắp ráp phần thân

Xây dựng và lắp ráp cơ thể
Xây dựng và lắp ráp cơ thể
Xây dựng và lắp ráp cơ thể
Xây dựng và lắp ráp cơ thể
Xây dựng và lắp ráp cơ thể
Xây dựng và lắp ráp cơ thể

Cơ thể tôi đã cố gắng tái tạo lại từ những bức ảnh. Như tham khảo, tôi đã sử dụng còi servo, tôi giả định với đường kính 1 ". Vì vậy, mặt trước trở thành chiều rộng 4,5" và giữa 6,5 ". Đối với chiều dài, tôi giả định là 7". Sau đó, tôi đã mua bộ body kit ban đầu và so sánh nó. Tôi đã tiến rất gần đến bản gốc. Cuối cùng, tôi đã tạo ra phiên bản thứ ba, là bản sao 1: 1 của bản gốc.

Bộ body kit đầu tiên mà tôi làm bằng gỗ ply 6 mm, ở đây bạn sẽ thấy phiên bản thứ hai được làm bằng gỗ ply 4 mm, loại mà tôi đã phát hiện ra là đủ mạnh và cứng. Khác với bộ nguyên bản, tôi đã lắp còi servo lên trên, tương ứng. thông qua vật liệu (bạn cũng có thể thấy điều này với xương đùi). Lý do là, tôi không có tâm trạng mua những chiếc sừng nhôm đắt tiền, thay vào đó tôi muốn sử dụng những chiếc sừng nhựa đã được giao hàng tận nơi. Một lý do khác là, tôi đang tiến gần đến servo, vì vậy lực cắt ít hơn. Điều này giúp kết nối ổn định hơn.

Nhân tiện, đôi khi có Ganesh trên tàu cũng tốt. Cảm ơn người bạn của tôi Tejas:-)

Bước 7: Kiểm tra Elektronics đầu tiên

Image
Image
Tibia và Coxa EV3
Tibia và Coxa EV3

Tất cả các nghệ thuật được tập hợp lại với nhau bây giờ. OK, tôi biết nó trông không đẹp lắm, nhưng thực ra tôi đang thử nghiệm rất nhiều. Trong video, bạn có thể thấy chơi một số trình tự đơn giản được xác định trước, thực sự không có chuyển động học nghịch đảo nào được thực hiện. Dáng đi được xác định trước không hoạt động bình thường vì nó được thiết kế cho 2 DoF.

Trong ví dụ này, tôi đang sử dụng bộ điều khiển servo SSC-32U từ Lynxmotion, bạn sẽ tìm thấy nó ở đây:

Vài ngày trước, tôi cũng đang sử dụng một bộ điều khiển PWM khác (bộ điều khiển PWM 16 kênh Adafruit, https://www.adafruit.com/product/815), nhưng SCC thực sự có một số tính năng hay, như làm chậm Servos.

Vì vậy, đó là nó bây giờ. Tiếp theo tôi phải tìm ra cách hoạt động của động học nghịch đảo (IK), có thể tôi sẽ lập trình một dáng đi đơn giản như được xác định trước trong bộ điều khiển SSC. Tôi đã tìm thấy một ví dụ sẵn sàng để sử dụng tại đây https://github.com/KurtE/Arduino_Phoenix_Parts, nhưng tôi vẫn chưa chạy được. Tôi không biết tại sao, nhưng tôi đang làm việc.

Vì vậy, đây là một danh sách Công việc ngắn gọn.

1.) Lập trình một dáng đi đơn giản như xây dựng trong SSC.

2.) Lập trình lớp / trình bao bọc bộ điều khiển PS3 cho Arduino Phoenix.

3.) Lấy mã từ KurtE đang chạy hoặc viết mã của riêng tôi.

Servos tôi đang sử dụng mà tôi đã tìm thấy tại Amazon https://www.amazon.de/dp/B01N68G6UH/ref=pe_3044161_189395811_TE_dp_1. Giá khá tốt, nhưng chất lượng có thể tốt hơn nhiều.

Bước 8: Kiểm tra dáng đi đơn giản đầu tiên

Như tôi đã đề cập ở bước cuối cùng, tôi đã cố gắng lập trình trình tự dáng đi của riêng mình. Đây là một thứ rất đơn giản, giống như một món đồ chơi cơ học, và nó không được tối ưu hóa cho cơ thể tôi đang sử dụng ở đây. Một cơ thể thẳng đơn giản sẽ tốt hơn nhiều.

Vì vậy, chúc bạn nhiều niềm vui. Tôi phải học IK ngay bây giờ;-)

Nhận xét: Khi bạn quan sát các chân cẩn thận, bạn sẽ thấy rằng một số servo hoạt động kỳ lạ. Ý tôi là, chúng không phải lúc nào cũng di chuyển trơn tru, có lẽ tôi phải thay thế chúng bằng các Servos khác.

Bước 9: Cổng điều khiển PS3

Sáng nay, tôi đang viết một trình bao bọc cho mã Phoenix. Tôi đã mất vài giờ, khoảng 2-3, để làm điều đó. mã cuối cùng không được gỡ lỗi và tôi đã thêm một số gỡ lỗi bổ sung vào bảng điều khiển. Nó hoạt động cho đến nay:-)

Nhưng nhân tiện, khi tôi đang chạy mã Phoenix, có vẻ như tất cả các Servos đang chạy ngược (hướng ngược lại).

Khi bạn muốn tự mình thử, bạn cần mã từ KurtE làm cơ sở https://github.com/KurtE/Arduino_Phoenix_Parts. Làm theo hướng dẫn để cài đặt mã. Sao chép thư mục Phoenix_Input_PS vào thư mục thư viện Arduino của bạn (thường là thư mục con của thư mục phác thảo của bạn) và thư mục Phoenix_PS3_SSC32 vào thư mục phác thảo của bạn.

Thông tin: Nếu bạn chưa có kinh nghiệm với Arduino và các công cụ và gặp một số rắc rối, vui lòng liên hệ với cộng đồng Arduino (www.arduino.cc). Khi bạn gặp sự cố với mã Phoenix từ KurtE, vui lòng liên hệ với anh ấy. Cảm ơn.

Cảnh báo: Theo quan điểm của tôi, hiểu code là không có gì cho người mới bắt đầu, vì vậy bạn phải rất quen thuộc với C / C ++, lập trình và thuật toán. Mã cũng có rất nhiều mã được biên dịch có điều kiện, được kiểm soát bởi #defines, điều này làm cho nó rất khó đọc và hiểu.

Danh sách phần cứng:

  • Arduino Mega 2560
  • Lá chắn máy chủ USB (dành cho Arduino)
  • Bộ điều khiển PS3
  • Bộ điều khiển servo LynxMotion SSC-32U
  • Pin 6 V (vui lòng đọc yêu cầu tắt tất cả CTNH của bạn, nếu không bạn có thể làm hỏng nó)
  • Arduino IDE
  • Một số cáp USB, công tắc và các bộ phận nhỏ khác nếu cần.

Nếu bạn thích bộ điều khiển PS2, bạn sẽ tìm thấy rất nhiều thông tin trên internet về cách kết nối với Arduino.

Vì vậy, hãy kiên nhẫn. Tôi sẽ cập nhật bước này, khi phần mềm hoạt động chính xác.

Bước 10: Kiểm tra IK đầu tiên

Image
Image

Tôi đã tìm thấy một cổng khác của mã Phoenix chạy tốt hơn nhiều (https://github.com/davidhend/Hexapod), có thể tôi gặp sự cố cấu hình với mã khác. Mã có vẻ hơi lỗi và dáng đi trông không được mượt mà cho lắm, nhưng đối với tôi thì đây là một bước tiến lớn.

Vui lòng xem xét, mã thực sự là thử nghiệm. Tôi phải dọn dẹp và chỉnh sửa rất nhiều và sẽ xuất bản bản cập nhật vào những ngày tiếp theo. Cổng PS3 dựa trên cổng PS3 đã được xuất bản và tôi đã loại bỏ các tệp PS2 và XBee.

Bước 11: Kiểm tra IK lần thứ hai

Giải pháp quá dễ dàng. Tôi đã phải sửa một số giá trị cấu hình và đảo ngược tất cả các góc của servo. Bây giờ nó hoạt động:-)

Bước 12: Tibia và Coxa EV3

Tibia và Coxa EV3
Tibia và Coxa EV3
Tibia và Coxa EV3
Tibia và Coxa EV3

Tôi không thể cưỡng lại, vì vậy tôi đã tạo tibias và coxa (dấu ngoặc servo) mới. Đây là phiên bản thứ ba mà tôi đã thực hiện. Những cái mới có hình dạng tròn hơn và có vẻ ngoài hữu cơ / sinh học hơn.

Vì vậy, tình trạng thực tế là. Hexapod đang hoạt động, nhưng vẫn gặp sự cố với một số thứ.

1.) Chưa tìm ra lý do tại sao BT có độ trễ 2..3 giây.

2.) Chất lượng Servo kém.

Những việc cần làm:

* Hệ thống dây của các servo phải được cải thiện.

* Cần một giá đỡ pin tốt.

* Phải tìm cách lắp các thiết bị điện tử.

* Hiệu chỉnh lại các Servos.

* Thêm cảm biến và màn hình điện áp cho pin.

Bước 13: Làm mịn xương đùi

Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn
Xương đùi có hình dạng mịn

Vài ngày trước, tôi đã làm một số xương đùi mới vì tôi không hài lòng hoàn toàn với cái trước đó. Trong hình đầu tiên, bạn sẽ thấy sự khác biệt. Những cái cũ có đường kính 21 mm ở hai đầu, những cái mới có đường kính 1 inch. Tôi đã tạo các lỗ chìm trên xương đùi bằng máy phay của mình với một công cụ trợ giúp đơn giản, như bạn có thể thấy trong ba hình ảnh tiếp theo.

Trước khi làm cho các lỗ chìm vào trong xương đùi, điều hợp lý là phải khoan tất cả các lỗ, nếu không nó có thể trở nên khó khăn. Sừng servo rất vừa vặn, bước tiếp theo, không được trình bày ở đây, là tạo cho các cạnh có hình dạng tròn. Đối với điều này, tôi đã sử dụng một bit bộ định tuyến với bán kính 3 mm.

Trên hình cuối cùng, bạn sẽ thấy sự so sánh giữa hình cũ và hình mới. Không biết bạn nghĩ gì, nhưng tôi thích cái mới hơn nhiều.

Bước 14: Các bước cuối cùng

Image
Image
Các bước cuối cùng
Các bước cuối cùng
Các bước cuối cùng
Các bước cuối cùng
Các bước cuối cùng
Các bước cuối cùng

Tôi sẽ hoàn thành hướng dẫn này ngay bây giờ, nếu không nó sẽ trở thành một câu chuyện bất tận:-).

Tôi xem video, bạn sẽ thấy mã Phoenix của KurtE đang chạy với một số sửa đổi của tôi. Robot không di chuyển hoàn hảo, xin lỗi vì điều đó, nhưng các Servos giá rẻ có chất lượng không tốt. Tôi đã đặt hàng một số servos khác, tôi vừa thử nghiệm hai trong số chúng với kết quả tốt và vẫn đang chờ giao hàng. Vì vậy, rất tiếc, tôi không thể cho bạn thấy cách robot hoạt động với các Servos mới.

Mặt sau: Một cảm biến dòng điện 20 amps, bên trái của nồi 10 k. Khi robot đi bộ, nó sẽ tiêu thụ dễ dàng 5 ampe. Bên phải của nồi 10 k, bạn sẽ thấy một màn hình OLED 128x64 pixel hiển thị một số thông tin trạng thái.

Mặt trước: Một cảm biến siêu âm HC-SR04 đơn giản, chưa được tích hợp trong SW.

Hình bên phải: Bộ gia tốc MPU6050 và giro (6 trục).

Mặt trái: Loa Piezo.

Thiết kế cơ học hiện đã được thực hiện ít nhiều, ngoại trừ các servo. Vì vậy, nhiệm vụ tiếp theo sẽ là tích hợp một số cảm biến vào SW. Đối với điều này, tôi đã tạo một tài khoản GitHub với SW mà tôi đang sử dụng dựa trên ảnh chụp nhanh Phoenix SW của KurtE.

OLED:

GitHub của tôi:

Đề xuất: