Mục lục:

Tự làm nhiều robot nổi bật với Arduino: 13 bước (có hình ảnh)
Tự làm nhiều robot nổi bật với Arduino: 13 bước (có hình ảnh)

Video: Tự làm nhiều robot nổi bật với Arduino: 13 bước (có hình ảnh)

Video: Tự làm nhiều robot nổi bật với Arduino: 13 bước (có hình ảnh)
Video: Viết chương trình Arduino với trí thông minh nhân tạo ChatGPT - Lập trình chưa bao giờ dể dàng hơn 2024, Tháng bảy
Anonim
Tự làm nhiều robot nổi bật với Arduino
Tự làm nhiều robot nổi bật với Arduino
Tự làm nhiều robot nổi bật với Arduino
Tự làm nhiều robot nổi bật với Arduino
Tự làm nhiều robot nổi bật với Arduino
Tự làm nhiều robot nổi bật với Arduino

Robot này chủ yếu được chế tạo để hiểu Arduino và kết hợp các dự án khác nhau của Arduino để tạo thành Robot Arduino đa tính năng. Và xa hơn nữa, ai mà không muốn có một con robot thú cưng? Vì vậy, tôi đặt tên nó là BLUE ROVIER 316. Tôi có thể đã mua một khung gầm đẹp nhưng việc làm từ đầu sẽ dạy cho bạn nhiều điều hơn và mang lại cho bạn niềm tự hào hơn sau khi bạn hoàn thành nó. Robot có khả năng hiểu lệnh thoại, trả lời các câu hỏi đơn giản, điều khiển một chiếc xe RC và thậm chí tránh chướng ngại vật trong khi di chuyển. Nó chủ yếu được điều khiển thông qua điện thoại Android được kết nối với nó thông qua Bluetooth. Dựa trên các tính năng của Android như Nhận dạng giọng nói của Google và cảm biến nghiêng, nó thực sự có thể hoạt động như một robot thông minh, dễ thương. Tôi đã thêm BLUE vào tên của nó vì nó chủ yếu dựa trên Bluetooth. Đây thực sự là dự án Arduino đầu tiên của tôi và tôi muốn nó là duy nhất. Nếu bạn thích dự án này, hãy bình chọn cho tôi trong Cuộc thi về người máy!

Bước 1: Video trình diễn

Image
Image
Câu chuyện về ROVIER
Câu chuyện về ROVIER

Bạn có thể xem bản demo của robot tại trang web này:

Bước 2: Câu chuyện về ROVIER

Câu chuyện về ROVIER
Câu chuyện về ROVIER

Bạn có thể chuyển sang bước tiếp theo nếu không muốn xem qua câu chuyện nhỏ dễ thương của BLUE ROVIER 316. Khoảng một năm trước, tôi nhận được một Arduino UNO như một món quà từ cha tôi. Vì đây là bước đầu tiên của tôi trong lĩnh vực Arduino, tôi muốn tạo ra một thứ gì đó khác biệt và độc đáo so với các dự án Arduino nói chung. Nó cần phải là một robot dễ thương và thông minh, có thể hiểu Lệnh thoại và làm nhiều việc thông minh hơn như Điều khiển từ xa, Theo đường, Tránh chướng ngại vật, v.v. Câu hỏi đặt ra là làm thế nào để kết hợp chúng lại với nhau. Và sau khi lướt net trong một khoảng thời gian thực sự thoải mái, tôi kết luận rằng Bluetooth sẽ là chế độ rẻ nhất. Và như vậy, BLUE ROVIER đã bắt đầu chuyển động, nhưng một tình huống nảy sinh khiến tôi phải loại trừ nhiều tính năng của robot mà tôi đã mong đợi nó có thể sở hữu, chủ yếu là do thiếu bộ nhớ trên Arduino UNO (thậm chí số lượng còn ít hơn chân kỹ thuật số trên UNO). Không thành vấn đề, tôi đã tiếp tục. Tôi thực sự mất nhiều thời gian để tạo ra phiên bản cuối cùng của Robot. Và như vậy sau nhiều lần thử nghiệm và thất bại, cuối cùng BLUE ROVIER đã ra đời Và bây giờ chúng ta có thể chuyển sang chế tạo robot.

Bước 3: Các thành phần và bộ phận

Các thành phần và bộ phận
Các thành phần và bộ phận
Các thành phần và bộ phận
Các thành phần và bộ phận
Các thành phần và bộ phận
Các thành phần và bộ phận

Bạn sẽ chỉ cần các thành phần sau: 1. Hệ thống Android 2. Arduino Uno 3. Mô-đun wtv020-sd-16p và loa 8ohm4. Mạch điều khiển động cơ 2x L293d 5. Động cơ và bánh xe 4x6. Cảm biến siêu âm HC SR04 7. 9g servo8. 8 ngăn chứa pin AA và các loại pin 9. Thẻ micro SD 1gb 10. hộp chuyển đổi nhỏ cho khung máy.11. Mô-đun Bluetooth HC 05Tôi biết nó có vẻ tốn kém! Nhưng đừng lo lắng, nó sẽ chỉ có giá khoảng hai hoặc ba nghìn rupee. Nói về Android, sẽ không phải là một vấn đề lớn để sở hữu một chiếc vì hầu hết đều có nó ngày nay. Nhưng có các phiên bản mới hơn (trên 5.0) có thể làm tăng hiệu suất. Hãy thử mua động cơ có vòng tua máy vừa phải (60 đến 100). Điều này sẽ giúp giữ cho tốc độ của rô bốt được kiểm soát, vì không có mạch điều khiển tốc độ nào khác được lắp đặt. Và 8 pin aa đủ để cung cấp năng lượng cho robot trong một thời gian dài. Và xét về Bluetooth, HC 05 phù hợp với robot vì nó đủ rẻ và hiệu suất cũng rất xuất sắc. Thẻ micro SD 1 GB là cần thiết để lưu trữ các tệp thoại được phát khi bất kỳ câu hỏi nào được đặt ra cho rô bốt [Được thảo luận chi tiết trong phần sau của phần mềm không có cấu trúc]. Các thành phần khác được thảo luận chi tiết trong bước tương ứng.

Bây giờ chúng ta hãy chuyển sang một số "Lý thuyết" đơn giản được sử dụng trong robot này.

Bước 4: Lý thuyết điều khiển bằng giọng nói

Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói
Lý thuyết điều khiển bằng giọng nói

Robot có thể hiểu lệnh thoại thông qua điện thoại Android. Tôi đoán mọi người đã quen thuộc với Google Voice Recognition, tính năng trong Android nơi chúng ta nói từ và Google nhập từ đó. Tính năng tương tự được sử dụng ở đây để nhận dạng lệnh thoại và chuyển chúng thành lệnh văn bản. Ứng dụng ở đây chuyển đổi giọng nói thành văn bản thông qua Google và gửi nó đến rô bốt thông qua Bluetooth. Robot được lập trình để làm theo các lệnh này nhận được qua Bluetooth. Nó cũng có khả năng trả lời một số câu hỏi. Bạn thậm chí có thể thêm một số lệnh khác trong mã để làm cho robot làm một số điều tuyệt vời hơn. Đây là Ứng dụng Android:

Bước 5: Lý thuyết điều khiển bằng cử chỉ

Lý thuyết điều khiển bằng cử chỉ
Lý thuyết điều khiển bằng cử chỉ
Lý thuyết điều khiển bằng cử chỉ
Lý thuyết điều khiển bằng cử chỉ

Chế độ điều khiển cử chỉ hoặc điều khiển chuyển động cũng được thực hiện thông qua Android. Trong chế độ này, robot có thể được điều khiển như một chiếc xe RC bằng cách sử dụng Android làm tay lái. Có một cảm biến được gọi là "Gia tốc kế" trong tất cả các Android được sử dụng ở chế độ này. Gia tốc kế này có thể xác định góc đặt điện thoại bằng cách đo lực gia tốc tác động lên Android. Chính cảm biến này làm cho Android xoay màn hình khi chúng ta nghiêng điện thoại. Ứng dụng ở đây sử dụng gia tốc kế của điện thoại để xác định góc nghiêng của điện thoại. Sau đó, một ký tự (A, B….) Được gửi đến rô bốt thông qua Bluetooth. Arduino được lập trình để hoạt động theo dữ liệu nhận được, nếu điện thoại nghiêng về phía trước, ký tự A sẽ được gửi đi và robot di chuyển về phía trước. Khi nghiêng về phía sau, ký tự B được gửi đi và rô bốt di chuyển lùi, cứ như vậy sang trái và phải. Khi đặt Android theo chiều ngang, ký tự E được gửi đi và rô bốt ngừng di chuyển.

Bước 6: Lý thuyết điều khiển Bluetooth

Lý thuyết điều khiển Bluetooth
Lý thuyết điều khiển Bluetooth
Lý thuyết điều khiển Bluetooth
Lý thuyết điều khiển Bluetooth

Trong chế độ này, robot hoạt động như một chiếc xe RC thông thường. Không có gì mới trong chế độ này, nó giống như một chiếc ô tô điều khiển từ xa thông thường hiện có trên thị trường, điểm khác biệt duy nhất là chúng tôi đang sử dụng một ứng dụng Android để điều khiển rô bốt. Liên kết với nó. Khi chạm vào bất kỳ phím nào, một ký tự sẽ được gửi đến rô bốt thông qua Bluetooth, giống như chế độ điều khiển bằng cử chỉ. Hơn nữa, các ký tự tương tự sẽ được gửi đi khi chạm vào các phím tương ứng và rô bốt sẽ theo dõi các ký tự đến. Tôi đã sử dụng các nút 360 và -360 độ trong ứng dụng để làm cho rô bốt nhìn sang phải và trái. Bạn có thể thay đổi nó trong mã nếu bạn muốn robot làm một số việc khác.

Bước 7: Lý thuyết tránh chướng ngại vật

Lý thuyết tránh chướng ngại vật
Lý thuyết tránh chướng ngại vật
Lý thuyết tránh chướng ngại vật
Lý thuyết tránh chướng ngại vật

Trong chế độ này, robot hoạt động như một robot Tránh chướng ngại vật, ngăn bản thân va chạm với bất kỳ vật thể nào. Điều này được thực hiện với cảm biến HC SR04. Tôi đoán bạn biết về SONAR (Điều hướng và định vị âm thanh). Cảm biến HC SR04 liên tục phát ra sóng âm thanh siêu âm. Các sóng này bị dội ngược trở lại sau khi chạm vào một bề mặt rắn và quay trở lại cảm biến. Thời gian sóng quay trở lại cảm biến được ghi lại. Vì âm thanh truyền đi với vận tốc xấp xỉ 340 m / s và chúng ta biết rằng SPEED × TIME = DISTANCE, chúng ta có thể xác định khoảng cách phía trước. Ví dụ: nếu âm thanh diễn ra trong 2 giây để quay lại, chúng ta có thể xác định khoảng cách thông qua công thức trên tức là 340 × 2 = 680 m. Đây là cách robot có thể đo khoảng cách phía trước thông qua cảm biến, trong khi di chuyển, robot liên tục đo khoảng cách phía trước thông qua cảm biến. Nếu nó cảm nhận được khoảng trống phía trước nhỏ hơn 30 cm thì nó dừng chuyển động. Sau đó, nó nhìn sang trái và phải và so sánh khoảng cách của mỗi bên. Nếu phía bên trái có khoảng cách lớn hơn, robot sẽ rẽ trái. Ngược lại, nếu bên phải lớn hơn, robot sẽ rẽ phải. Nếu cả hai bên có khoảng cách bằng nhau, robot sẽ quay lại. Cơ chế đơn giản này giúp robot có thể tránh được các chướng ngại vật.

Bước 8: Lắp ráp khung xe

Lắp ráp khung xe
Lắp ráp khung xe
Lắp ráp khung xe
Lắp ráp khung xe
Lắp ráp khung xe
Lắp ráp khung xe
Lắp ráp khung xe
Lắp ráp khung xe

Tự làm khung xe, bạn phải rất cẩn thận về các phép đo và căn chỉnh. Tôi đã chọn làm như vậy vì tôi không thể tìm thấy một hộp nào trên mạng khiến tôi hài lòng. Hộp công tắc chung được sử dụng cho mục đích cấp điện đang được sử dụng làm khung. Tôi đoán, bạn có thể dễ dàng mua một chiếc từ cửa hàng thiết bị điện. Đầu tiên, gắn bốn động cơ ở dưới cùng bằng một số keo hoặc kẹp và sau đó gắn các bánh xe. Sau đó, bạn phải làm phần đầu của rô-bốt (cảm biến servo và HC SR04). Đối với phần đầu, hãy cắt một miếng ván mỏng và gắn nó vào servo thông qua một con vít. Sau đó, gắn cảm biến siêu âm vào bảng điều khiển bằng một ít keo. Cắt một lỗ hình vuông nhỏ ở trên cùng của hộp và cố định servo vào đó. Sau đó, gắn giá đỡ pin ở phía sau rô bốt thông qua một con vít. Đặt các mạch và các thành phần khác bên trong hộp và khung máy của bạn đã sẵn sàng. Đừng quên đục một số lỗ phía trước loa để âm thanh phát ra và chất lượng hơn.

Bước 9: Chuẩn bị mô-đun thoại

Chuẩn bị mô-đun thoại
Chuẩn bị mô-đun thoại
Chuẩn bị mô-đun thoại
Chuẩn bị mô-đun thoại
Chuẩn bị mô-đun thoại
Chuẩn bị mô-đun thoại

Chế độ nói của robot được thực hiện bởi mô-đun WTV 020 SD. Mô-đun được sử dụng để phát các tệp thoại cho rô bốt. Khi bất kỳ câu hỏi nào được hỏi, arduino sẽ làm cho mô-đun phát tệp thoại tương ứng trong thẻ SD. Có bốn dòng dữ liệu nối tiếp trên mô-đun để giao tiếp với arduino, thiết lập lại, đồng hồ, dữ liệu và chân bận. Hãy nhớ rằng tên của các tệp phải ở dạng thập phân (0001, 0002…). Và các tệp đó phải ở định dạng AD4 hoặc WAV. Hơn nữa, mô-đun chỉ hoạt động trên thẻ micro SD 1gb. Một số mô-đun thậm chí hoạt động trên thẻ 2gb và thẻ có thể chứa tối đa 504 tệp thoại. Vì vậy, bạn có thể bao gồm một số lượng lớn tệp giọng nói để phát cho một số câu hỏi., bạn phải có hai phần mềm, một phần mềm chỉnh sửa âm thanh và một phần mềm có tên là 4D SOMO TOOL sẽ chuyển đổi các tệp sang định dạng AD4. Thứ hai, bạn phải chuẩn bị Giọng nói của Robot. Bạn có thể chuyển đổi văn bản thành giọng nói hoặc thậm chí ghi âm giọng nói của chính mình và tạo ra giọng nói của Robot. Cả hai điều này đều có thể được thực hiện trong Phần mềm Chỉnh sửa Âm thanh. Nhưng chắc chắn, robot trông sẽ không đẹp nếu chúng nói được giọng nói của con người. Vì vậy, tốt hơn là nên chuyển văn bản thành giọng nói. Có nhiều công cụ khác nhau như Microsoft Anna và Microsoft Sam Máy tính của bạn sẽ giúp thực hiện điều này. Sau khi chuẩn bị tệp thoại, bạn phải lưu nó ở 32000 Hz và ở Định dạng WAV. Điều này là do mô-đun có thể phát các tệp thoại lên đến 32000 Hz. Sau đó, sử dụng CÔNG CỤ SOMO 4D để chuyển đổi các tệp sang định dạng AD4. Để làm như vậy, chỉ cần mở CÔNG CỤ SOMO, chọn tệp và nhấp vào Mã hóa AD4 và tệp giọng nói của bạn đã sẵn sàng. Bạn có thể xem hình trên để tham khảo, nếu bạn muốn biết thêm chi tiết về cách tạo ra giọng nói của robot, bạn có thể vào đây:

[Tạo giọng nói của rô bốt] Đây là các tệp giọng nói gốc và phần mềm:

Bước 10: Tạo kết nối

Tạo kết nối
Tạo kết nối
Tạo kết nối
Tạo kết nối
Tạo kết nối
Tạo kết nối

Ngắn tất cả các chân Vcc của các mô-đun tương ứng với nhau và kết nối nó với chân 5v trên arduino. Làm tương tự đối với chân gnd. Đây là kết nối của các mô-đun khác nhau. Mô-đunHC 05: Chân RX đến chân đào arduino 0. Chân X đến chân đào arduino 1. Cảm biếnHC SR04: Chân phản xạ tới chân đào arduino 6. Chân giắc tới chân đào arduino 7WTV020-SD module: pin1 (reset chân) thành arduino đào pin2.pin4 thành loa + pin5 thành loa -pin7 (đồng hồ) thành arduino đào pin3.pin8 thành gnd.pin10 (dữ liệu) thành arduino đào pin4.pin15 (bận) thành arduino đào pin5.pin16 đến 3.3v Sau đó, kết nối dây tín hiệu servo (màu vàng) và đến chân 12 bộ điều khiển động cơ L293d: chân A1 đến chân đào arduino 8. chân A2 đến chân đào arduino 9. chân B1 với chân đào arduino 10. chân B2 đến chân đào arduino 11. Hãy nhớ rằng trong robot này, chúng tôi đang sử dụng hai mô-đun L293d. Điều này là do một mô-đun có khả năng cung cấp năng lượng cho hai động cơ. Để điều khiển bốn động cơ, chúng tôi sử dụng hai trình điều khiển động cơ. Vì vậy, hãy nhớ tạo các kết nối trùng lặp trên cả hai mô-đun bộ điều khiển động cơ. Ví dụ: kết nối chân 8 của Arduino với chân A1 của cả hai mô-đun trình điều khiển. Đừng quên kết nối đầu ra của một mô-đun trên hai động cơ và mô-đun kia với hai động cơ khác. Kiểm tra sơ đồ để tham khảo thêm.

Bước 11: Mã Arduino

Mã Arduino
Mã Arduino
Mã Arduino
Mã Arduino

Đó là một thời gian thú vị để tạo mã. Nó không phải là một đoạn mã phức tạp, nó chỉ sử dụng một số thư viện để giao tiếp với Android và mô-đun âm thanh. Một phần chính của công việc được thực hiện trong Android chứ không phải trong Arduino. Mã dựa trên giao tiếp Bluetooth và dữ liệu đến từ Bluetooth. Mã được tạo theo cách mà chúng ta phải đưa ra lệnh thoại để robot thực hiện các chế độ khác nhau và Arduino liên tục kiểm tra các Tín hiệu Bluetooth đến. Để dừng bất kỳ chế độ nào, chúng ta chỉ cần nói "dừng". Vấn đề duy nhất với mã là chúng ta phải tắt robot theo cách thủ công khi nó ở Chế độ tránh chướng ngại vật. Chúng tôi không thể sử dụng lệnh "dừng" trong chế độ này. Điều này là do việc bật tính năng này sẽ ảnh hưởng đến tốc độ quét khoảng cách của các đối tượng. Arduino sẽ phải đọc đồng thời cả khoảng cách của một đối tượng cũng như các tín hiệu Bluetooth đến. Điều này cản trở chế độ và rô bốt không thể tự bảo vệ hoàn toàn khỏi các chướng ngại vật. Robot có thể không dừng lại ngay lập tức ngay cả khi khoảng cách phía trước nhỏ hơn 30 cm. Vì vậy, sẽ rất tốt nếu bạn không đưa tính năng này vào chế độ này mà chỉ cần tải xuống các thư viện và mã và tải nó lên Arduino. Nhưng đừng quên rút các chân TX và RX (0, 1) khỏi Arduino trước khi tải lên. Các chân này được sử dụng cho giao tiếp nối tiếp và được sử dụng trong quá trình tải lên mã. Và trong robot này, các chân này được sử dụng để kết nối mô-đun Bluetooth. Vì vậy, hãy nhớ tháo chúng ra nếu không nó có thể cản trở Mô-đun Bluetooth của bạn. Dưới đây là mã và thư viện:

Bước 12: Phân loại vấn đề và cải thiện

Sắp xếp các vấn đề và cải thiện
Sắp xếp các vấn đề và cải thiện

Bạn có thể bỏ qua bước này vì nó chỉ giải quyết các cải tiến của robot. Nhiều vấn đề phát sinh trong mô-đun WTV-020-SD-16p, liên quan đến dung lượng của thẻ nhớ. Điều này là do một số mô-đun hoạt động trên thẻ 2 GB trong khi một số thì không. Vì vậy, tốt hơn là sử dụng thẻ micro SD 1 GB. Sẽ không có nhiều vấn đề khi sử dụng các phiên bản khác nhau của các thành phần. Có thể đề cập đến các phiên bản khác nhau của mô-đun wtv 020 sd. Điều này là do chỉ tồn tại sự khác biệt về bao bì giữa các mô-đun, trong khi hầu hết các thứ bên trong khác vẫn như cũ. Nếu bạn đang kết nối các thành phần khác nhau giống như tôi, bạn sẽ tốn một số dòng điện vì một lượng lớn nó sẽ bị mất trong dây dẫn, có điện trở cao. Điều này là do mạch khá lớn, đủ lớn. Điều này không có cấu trúc bao gồm việc thiết kế PCB (vì tôi không tạo ra nó) nhưng nó có thể làm tăng hiệu suất năng lượng của robot. Nhưng BLUE ROVIER 316 vẫn chưa hoàn thành! Tôi đã nghĩ đến việc đưa thêm một số tính năng như theo dòng, giải mê cung và nhiều thứ khác. Nhưng nó vẫn là một giấc mơ vì thiếu chân trên Arduino UNO (BLUE ROVIER thực sự ăn nhiều chân của Arduino). Vì vậy, tôi nghĩ đến việc cải thiện tất cả các tính năng của robot này và kết hợp chúng với nhau để tạo thành một Robot Arduino hữu ích và tinh vi hơn. Vì vậy, hãy sẵn sàng để xem chế độ xem đã được sửa đổi của ROVIER trong vài tháng nữa !!! Tôi thậm chí còn muốn xem các phiên bản sửa đổi khác của robot bởi một số người khác sở hữu nhiều óc sáng tạo hơn tôi !!!!

Bước 13: Chơi với Robot

Chơi với robot
Chơi với robot

Bật robot và xem cách nó chào đón bạn, chơi với bạn. Hỏi bất kỳ câu hỏi nào (không phải câu hỏi ngu ngốc!) Và xem câu trả lời của nó. Bạn có thể yêu cầu làm theo dòng hoặc tiếp tục. Chỉ cần nói 'dừng' khi bạn muốn dừng rô bốt.

Cuộc thi người máy 2017
Cuộc thi người máy 2017
Cuộc thi người máy 2017
Cuộc thi người máy 2017

Về nhì trong Cuộc thi Robotics 2017

Đề xuất: