Mục lục:

Dog Bot: Lego Robot Rover Với Webcam: 17 bước (có hình ảnh)
Dog Bot: Lego Robot Rover Với Webcam: 17 bước (có hình ảnh)

Video: Dog Bot: Lego Robot Rover Với Webcam: 17 bước (có hình ảnh)

Video: Dog Bot: Lego Robot Rover Với Webcam: 17 bước (có hình ảnh)
Video: Ngày đầu tiên đi học của Cheems | SHADOW - MEME #roblox 2024, Tháng mười một
Anonim
Image
Image

Dưới đây là cách làm một robot Lego mà bạn có thể điều khiển từ bất kỳ màn hình nào qua wifi. Nó cũng có một webcam để bạn có thể xem nơi bạn đang đi và đèn LED cho mắt! Đây là một dự án tuyệt vời để làm với con bạn vì chúng có thể xây dựng logo và bạn có thể lôi kéo chúng tham gia vào nhiều thiết bị điện tử mà chúng hài lòng. có thể dễ dàng tháo rời và thiết kế lại. Tôi thấy nó hữu ích, khi tôi gặp khó khăn để bắt đầu lại. Khi bạn đã làm điều này một vài lần, việc xây dựng lại từ đầu khá dễ dàng và nhanh chóng. Điều tuyệt vời về điều này là bạn không cần phải lo lắng về việc "phá vỡ" bất cứ thứ gì vì bạn sẽ phát triển các kỹ năng để dễ dàng xây dựng lại.

Những gì bạn cần

  • Raspberry Pi B +
  • Bộ cơ sở và động cơ
  • Tấm đế Lego
  • Keo siêu bền công nghiệp
  • Máy khoan
  • Con dao thủ công
  • Thiết bị hàn
  • thẻ SD
  • Đầu đọc thẻ SD
  • Bộ điều khiển động cơ
  • 2 đèn LED
  • Webcam giá trung bình (bạn có thể thử một cái giá rẻ)
  • PC và máy tính bảng / điện thoại
  • Bộ định tuyến Wi-Fi mà bạn có quyền truy cập quản trị vào
  • Rất nhiều mảnh Lego
  • Sạc điện thoại khẩn cấp
  • 4 dây nhảy mỗi dây có ít nhất 1 đầu nối cái
  • 4 pin AA (có thể sạc lại là tốt)

Bước 1: Chuẩn bị cơ sở

Tôi bắt đầu với một đế và 2 động cơ giống như động cơ này được đặt tại Amazon

Lấy đế cá nhân và dán một tấm đế Lego mỏng lên đó. Tôi đã sử dụng keo siêu bền công nghiệp để làm khô trong vài phút và siêu bền. Khi keo đã cố định, hãy cắt bỏ tấm đế Lego thừa sao cho nó theo đường của tấm đế cá tính. sau đó khoan lỗ xuyên qua tấm Lego khớp với đế perspex. Tôi khoan lỗ khi cần và khi cần. Bây giờ bạn đã có nền tảng để xây dựng cấu trúc Lego cho mình.

Bước 2: Lắp ráp bánh xe

Lắp ráp các bánh xe
Lắp ráp các bánh xe

Bây giờ lắp ráp các bánh xe. Làm theo hướng dẫn của nhà sản xuất tại đây. Bánh xe tôi mua có tất cả các hướng dẫn bằng tiếng Trung Quốc, tôi không thể đọc được, nhưng nó khá dễ dàng để tìm ra từ hình ảnh. Sau khi lắp ráp, gắn các dây vào động cơ bằng một vết hàn nhỏ.

Bước 3: Gắn bánh xe vào đế

Gắn bánh xe vào đế
Gắn bánh xe vào đế

Tiếp theo gắn các bánh xe lên tấm đế, bạn có thể khoan lỗ trên đế nếu cần. Có thể bạn sẽ phát hiện ra ở phần cuối của dự án rằng bạn muốn dây dẫn qua đế ở một nơi khác, nhưng bạn luôn có thể khoan một lỗ mới và di chuyển lại sau.

Bước 4: Chuẩn bị Pi

Chuẩn bị Pi
Chuẩn bị Pi

Bây giờ chuẩn bị PI. Tôi đã sử dụng kiểu B + với USB wifi dongle. Tôi đã sử dụng hình ảnh toàn màn hình dựa trên Debian Jessie mà bạn có thể tải xuống từ trang Raspbian Pi. Giá trị của việc tạo thẻ SD từ đầu và giữ hình ảnh đĩa tiện dụng vì bạn có thể dễ dàng bắt đầu lại. Bạn có thể cần thực hiện một chút googling để tìm ra cách tạo hình ảnh đĩa trên PC của mình. Tôi đã tạo hình ảnh của mình bằng Ubuntu như sau: Nhấp chuột phải vào hình ảnh đĩa và chọn "mở bằng trình ghi hình ảnh đĩa". Ghi hình ảnh vào thẻ SD. Hình ảnh đĩa khá nhỏ, vì vậy nếu bạn có thẻ SD lớn hơn (ví dụ: 30GB), bạn có thể sử dụng phần mềm phân vùng như GParted để sử dụng hết dung lượng còn trống. Khi bạn đã tìm ra cách thực hiện việc này, mất khoảng 5 phút và thực sự đáng giá như thể bạn làm hỏng phần mềm, bạn chỉ cần cài đặt lại một lần nữa.

Bước 5: Gắn Bảng điều khiển

Gắn bảng điều khiển
Gắn bảng điều khiển

Tiếp theo, bạn cần một bảng điều khiển động cơ. Tôi đã sử dụng bộ công cụ từ RyanTek. Nó đi kèm với một hướng dẫn hàn tuyệt vời, nhưng tôi nghĩ bạn cũng có thể hàn trước. Nếu bạn chưa thực hiện bất kỳ công việc hàn nào trước đây, đừng lo lắng, chỉ cần thực hiện từ từ và thực hành một chút trước khi bạn bắt đầu vào bảng động cơ.

Bây giờ, gắn bộ pin (với 4 pin AA) và động cơ lên bảng điều khiển, sau đó gắn bảng điều khiển vào các chân GPIO của Pi. Một lần nữa, bảng điều khiển sẽ cung cấp cho bạn thêm chi tiết. Đừng lo lắng về việc cắm đúng dây động cơ vào đúng các khe cắm, miễn là chúng không được kết nối với các khe cắm nguồn DC. Tôi không dán hoặc vặn Pi hoặc Bộ pin vào bảng Lego vì điều này giúp bạn linh hoạt hơn khi thiết kế phần thân Lego. Bạn cũng có thể thay đổi thiết kế của mình một cách dễ dàng khi thực hiện.

Bước 6: Bắt đầu xây dựng cơ thể Lego

Bắt đầu xây dựng cơ thể Lego
Bắt đầu xây dựng cơ thể Lego
Bắt đầu xây dựng cơ thể Lego
Bắt đầu xây dựng cơ thể Lego

Bây giờ là lúc để xây dựng một số Lego. Tại thời điểm này, bạn có thể thu hút những đứa trẻ thực sự tham gia, miễn là chúng có thể cầm một miếng Lego! Chúng tôi bắt đầu chỉ với một ngôi nhà hình vuông cơ bản cho đến khi mọi thứ hoạt động tốt sau đó trở nên mạo hiểm hơn với bot chó. Điều tuyệt vời ở đây là bạn có thể chế tạo lại cơ thể robot tùy thích. Bắt đầu bằng cách tạo một ngôi nhà cho Pi. Hãy nhớ chừa chỗ cho các cổng USB và cáp nguồn. Xây dựng một lượng hợp lý độ lỏng lẻo vào bất kỳ ngôi nhà nào bạn xây dựng. Không sao để mọi thứ rung chuyển một chút và bạn không thể quá chính xác với Lego.

Chúng tôi đã sử dụng cửa sổ Lego để cung cấp quyền truy cập vào các cổng USB mà bạn sẽ cần sau này.

Bước 7: Chuẩn bị Pi

Bây giờ là thời điểm tốt để khởi động Pi và đưa robot di chuyển.

Tôi đang phát triển mã để sử dụng với dự án này tại Git hub. Đọc cho tôi trên các trang git hub sẽ đưa bạn qua hướng dẫn về cách cài đặt tất cả phần mềm trên Pi, nhưng tôi cũng sẽ hướng dẫn bạn qua các bước ở đây.

Đầu tiên, khởi động Pi bằng cách cắm cáp nguồn. Bạn sẽ cần kết nối cáp HDMI với TV và sử dụng bàn phím và chuột USB. Điều đầu tiên là kết nối với Wifi của bạn. bạn làm điều này bằng cách nhấp vào biểu tượng ở trên cùng bên phải của màn hình Raspian và chứng minh các chi tiết. Sau khi kết nối với Wifi, bạn có thể thực hiện mọi thứ khác từ dòng lệnh, vì vậy nếu muốn, bạn có thể kết nối với Pi bằng ssh, nhưng hiện tại, khi chúng ta kết nối với TV, chúng ta có thể mở một thiết bị đầu cuối từ máy tính để bàn Raspian.

Bước 8: Cài đặt phần mềm trên Pi

Mở thiết bị đầu cuối trên Pi và nhập các lệnh sau.

sudo apt-get cập nhật

Điều này cập nhật Raspian với phần mềm mới nhất.

Tiếp theo, cài đặt phần mềm webcam

sudo apt-get install chuyển động

Bạn cũng cần phải cấu hình chuyển động tại thời điểm này. Tôi đã liệt kê những gì cần được cập nhật trong các tệp nào trên trang github. Ngoài ra còn có một hướng dẫn về cách làm cho một webcam hoạt động trên Pi của bạn. Tìm hiểu các cài đặt và chơi với chúng khi bạn đã cảm thấy thoải mái với việc thiết lập.

sudo apt-get install python-dev python-pip

Điều này cài đặt các thư viện Python và cũng là trình quản lý đóng gói phần mềm python.

sudo pip cài đặt 'pubnub> = 4.1.2'

Phần mềm này cài đặt Pubnub, phần mềm quản lý tin nhắn giữa bảng điều khiển và rô bốt không dây của bạn.

Phải mất một lúc để cài đặt phần này nên đi pha một tách trà !!

Bước 9: Cài đặt phần mềm Robot

Bây giờ bạn đã cài đặt tất cả các bit và phần mềm phụ thuộc, đã đến lúc cài đặt mã cần thiết để chạy rô bốt.

git clone

điều này sẽ tạo một thư mục lego-robot trong thư mục chính của bạn.

Trước khi có thể chạy mã rô bốt, bạn cần tạo tài khoản PubNub và nhận khóa xuất bản và đăng ký. bạn có thể làm điều này bằng cách làm theo hướng dẫn bắt đầu ngay bây giờ tại PubNub. Sau khi thiết lập, bạn cần mở hai tệp:

  • lego-rô bốt / máy chủ / key.py
  • lego-rô bốt / máy khách / key.js

và thay thế các khóa pub và phụ bằng các khóa mà bạn có thể lấy từ bảng điều khiển pubnub.

Lưu ý rằng giá trị kênh có thể là bất kỳ giá trị nào, miễn là nó khớp trên máy khách và máy chủ.

Bước 10: Cài đặt Phần mềm Bộ điều khiển và Kiểm tra Tất cả Hoạt động

Cài đặt Phần mềm Bộ điều khiển và Kiểm tra Tất cả Hoạt động
Cài đặt Phần mềm Bộ điều khiển và Kiểm tra Tất cả Hoạt động
Cài đặt Phần mềm Bộ điều khiển và Kiểm tra Tất cả Hoạt động
Cài đặt Phần mềm Bộ điều khiển và Kiểm tra Tất cả Hoạt động

Trên PC, sao chép mã trung tâm git giống như cách chúng tôi đã làm trên rô bốt.

git clone

Bạn có thể chưa cài đặt git trên PC của mình. Nếu không, vui lòng làm theo hướng dẫn tại git hub.

Bạn cũng có tùy chọn tải xuống mã dưới dạng tệp zip, mặc dù tôi khuyên bạn nên cài đặt GIT và sao chép tệp bằng cách sao chép kho lưu trữ.

bạn sẽ cần cập nhật tệp lego-rô-bốt / máy khách / key.js với các khóa đăng ký và xuất bản cá nhân của mình.

Khi bạn hoàn tất, hãy mở tệp lego-robot / client / button.html trong trình duyệt web. Bây giờ bạn có thể điều khiển rô bốt của mình bằng các nút điều khiển.

Sơ đồ trên cho thấy những gì đang xảy ra:

  • Khi bạn nhấp vào một nút, một thông báo sẽ được gửi đến pubnub (sử dụng khóa xuất bản của bạn)
  • PubNub sau đó chuyển tiếp tới người máy…
  • Đang nghe (sử dụng phím đăng ký) cho các tin nhắn
  • Sau đó, robot chuyển thành một hành động.

Tôi đã sử dụng pubNub vì nó miễn phí, nhanh chóng (thời gian thực) và đơn giản hóa đáng kể việc gửi và nhận tin nhắn bằng cách sử dụng một API thực sự tốt đẹp.

Bạn có thể tìm hiểu mã máy khách và máy chủ và xem các tin nhắn được gửi bằng các phím đơn giản như "chuyển tiếp" và "ngược".

Ngoài ra còn có một bộ điều khiển kiểu cần điều khiển tại lego-robot / client / Joystick.html.

Tôi sẽ luôn cải tiến các bộ điều khiển này và thêm các bộ điều khiển mới, vì vậy nếu muốn cập nhật phần mềm, bạn có thể sử dụng lệnh "git pull". Cũng vui lòng đóng góp vào kho lưu trữ git và tạo thêm các điều khiển thân thiện với người dùng.

Bây giờ bạn đã sẵn sàng để kiểm tra chuyển động hoạt động OK. Trên thiết bị đầu cuối Pi, thay đổi thư mục thành lego-robot / server và nhập:

sudo python robot.py

điều này khởi động một tập lệnh python để lắng nghe các tin nhắn đến từ Pubnub.

Bây giờ hãy thử nhấn một số nút trên bộ điều khiển, bạn sẽ thấy các phản hồi này nhận được trên Pi Terminal (như trong hình trên) và robot.py dịch các thông báo này thành các chuyển động bằng cách ánh xạ chúng tới các tín hiệu trên Pi GPIO.

Bạn sẽ có thể di chuyển robot xung quanh.

Bước 11: Chuẩn bị Webcam và đèn LED

Chuẩn bị Webcam và đèn LED
Chuẩn bị Webcam và đèn LED
Chuẩn bị Webcam và Đèn LED
Chuẩn bị Webcam và Đèn LED

Bạn có thể sử dụng bất kỳ webcam nào tương thích với linux (hầu hết đều như vậy). Tôi sẽ chọn một chiếc tầm trung (khoảng £ 15) vì tôi đã thử một chiếc thực sự rẻ và không thể có được bất kỳ loại hình ảnh rõ ràng nào từ nó. Bước đầu tiên là tháo rời webcam để bạn có bo mạch và camera cơ bản.

Nếu bạn muốn lắp đặt đèn, sau đó đi một đèn LED và kết nối hai dây nhảy vào mỗi thiết bị đầu cuối. Tôi đã sử dụng dây nhảy có đầu nối cái ở một đầu để bạn có thể dễ dàng cắm nó vào chân Pis GPIO sau này. Đầu còn lại của dây bạn cần loại bỏ, để loại bỏ thiết bị đầu cuối. Bạn cũng có thể hàn ở đây để tạo kết nối an toàn. Tôi cũng đã sử dụng một số bọc co nhiệt, mà bạn có thể sử dụng để bọc từng dây, mặc dù tôi sẽ không lo lắng về việc hoàn thành công việc của nó quá tốt cho đến khi bạn hài lòng rằng mọi thứ đang hoạt động, sau đó bạn có thể hoàn thiện và cải thiện. Bạn cũng nên sử dụng điện trở để ngăn đèn LED của bạn bị cháy.

Ở đây có hướng dẫn chi tiết cách đấu dây đèn LED.

Như hình cho thấy, tôi sử dụng một khối Lego có lỗ trên đó như một cách dễ dàng để gắn đèn LED lên đầu rô bốt.

Bước 12: Tạo phần đầu bằng Nose-cam và đèn

Tạo phần đầu với Nose-cam và đèn
Tạo phần đầu với Nose-cam và đèn
Tạo phần đầu với Nose-cam và đèn
Tạo phần đầu với Nose-cam và đèn
Tạo phần đầu với Nose-cam và đèn
Tạo phần đầu với Nose-cam và đèn

Tạo vỏ đầu cho máy ảnh. Tôi sẽ không nói quá cụ thể ở đây vì đã đến lúc bạn sáng tạo. Tuy nhiên, bạn cần phải xây dựng xung quanh máy ảnh. Dog bot tích hợp camera vào mũi và có mắt là đèn LED. Hãy chắc chắn rằng bạn để lại một lỗ ở phía sau đầu để dẫn các dây ra ngoài.

Bước 13: Hoàn thiện phần thân

Hoàn thiện cơ thể
Hoàn thiện cơ thể
Hoàn thiện cơ thể
Hoàn thiện cơ thể
Hoàn thiện cơ thể
Hoàn thiện cơ thể

Bây giờ bạn rất vui vì bot chó về cơ bản đang di chuyển, bạn có thể tạo một nhà ở cho các bộ pin. Tôi đã sử dụng một gói 4 pin AA (đi kèm với bánh xe và đế) và một bộ sạc điện thoại khẩn cấp. Pin AA dành cho động cơ DC cho bánh xe và gói điện thoại di động dành cho Pi. Tốt hơn hết là bạn nên dễ dàng tiếp cận pin vì bạn sẽ phải tiếp cận chúng để sạc lại và thay thế.

Một khi hạnh phúc của bạn, hãy đặt một mái nhà trên Pi. Tôi không lo lắng quá nhiều về việc giấu dây và mạch điện, vì đó là một phần của hình ảnh rô bốt. Tuy nhiên, tất cả tùy thuộc vào bạn tại thời điểm này. Bạn có thể muốn xem xét mức độ nặng của bot của bạn, càng nặng thì nó di chuyển càng chậm.

Bước 14: Gắn đầu

Gắn đầu
Gắn đầu
Gắn đầu
Gắn đầu
Gắn đầu
Gắn đầu

Đã đến lúc kết nối mọi thứ.

Kết nối dây dẫn USB của Webcam với mặt trước của bot, sử dụng các lỗ truy cập bạn đã tạo. Bạn có thể cố định dây vào robot bằng cách tạo một số vỏ Lego. Tôi cũng đã rút ngắn dây USB bằng cách cắt và hàn lại nó, nhưng chỉ làm điều này nếu bạn thực sự muốn hàn 4 sợi dây nhỏ lại với nhau. Có thể dễ dàng hơn khi mua một dây dẫn USB ngắn và kết nối lại nó với mặt sau của máy ảnh.

Bạn cũng cần kết nối đèn LED với chân Pis GPIO mà bộ điều khiển bảng động cơ không sử dụng. Đây là các chân GPIO 20 và 21 và hai chân nối đất dự phòng gần đó. Sử dụng các chân nối đất dự phòng gần đó. Nếu đèn không hoạt động, hãy thử chuyển đổi mặt đất tròn với đầu ra GPIO. ĐỂ tìm ra chân nào để kết nối với google một sơ đồ GPIO tốt.

Bước 15: Kiểm tra đèn LED và Cam mũi

Kiểm tra đèn LED và Cam mũi
Kiểm tra đèn LED và Cam mũi

Để bắt đầu loại phần mềm webcam:

chuyển động sudo

Ngoài ra, hãy đảm bảo rằng bạn đã khởi động tập lệnh robot.py (như được trình bày chi tiết trong hướng dẫn previuos):

sudo python robot.py

Bây giờ bạn có thể sử dụng công tắc đèn trên bộ điều khiển để bật và tắt đèn.

Web cam sẽ phát trên địa chỉ IP Pis của bạn trên cổng 8080, vì vậy, ví dụ: hãy nhập thông tin sau vào trình duyệt web của bạn.

192.168.1.2:8081

Tôi đã tìm thấy địa chỉ IP Pi bằng cách đăng nhập vào bộ định tuyến của mình với tư cách là quản trị viên và xem các thiết bị được đính kèm. Hướng dẫn về cách thực hiện việc này thường có ở mặt sau của bộ định tuyến hoặc tham khảo hướng dẫn bộ định tuyến của bạn trực tuyến.

bạn có thể khám phá cài đặt cấu hình của phần mềm chuyển động, như được mô tả trong bước trước. Tôi thấy rằng đôi khi quá trình phát trực tuyến tạm dừng, nhưng nhìn chung thì nó hoạt động tốt.

Bạn có thể truy cập luồng video này từ bất kỳ thứ gì chạy trình duyệt được kết nối với mạng Wifi của bạn.

Bước 16: Hoàn thiện

Truy cập trực tuyến

Bây giờ bạn có thể điều khiển rô bốt từ trình duyệt trên PC. Tuy nhiên, thật tuyệt khi có thể điều khiển bot từ bất kỳ thiết bị cảm ứng nào như Ipad hoặc điện thoại.

Để làm điều này, bạn cần lưu trữ các tệp khách hàng (button.html, v.v.) trên máy chủ web.

Tôi đã bắt đầu bằng cách cài đặt một máy chủ web trên Pi, hoạt động tốt. Tuy nhiên, việc tải tệp HTML lên bất kỳ máy chủ web nào khác sẽ dễ dàng hơn. Tôi chỉ cần sao chép tệp HTML vào tài khoản máy chủ lưu trữ công khai màu xanh lam của mình. Bạn có thể muốn bảo vệ tệp quyền truy cập vào các tệp này vì chúng chứa các khóa phụ pub đối với kênh pub nub của bạn. Khi bạn làm điều này, bạn có thể truy cập bộ điều khiển từ bất kỳ thiết bị nào, ngay cả từ bên ngoài ngôi nhà của bạn.

Khởi động tự động

Một điều hữu ích khác cần làm là cập nhật tập lệnh / etc / rc.local trên raspberry Pi của bạn; thêm hai dòng sau:

  • chuyển động sudo
  • nohup sudo python /home/pi/lego-robot/server/robot.py &

Các lệnh này sẽ chạy mỗi khi Pi khởi động, vì vậy bạn không phải chạy lệnh theo cách thủ công.

Bước 17: Chúc bạn vui vẻ

Chúc vui vẻ !
Chúc vui vẻ !

Đó là tất cả.

Vui lòng để lại ý kiến nếu bạn gặp khó khăn và nếu bạn muốn cải thiện bất kỳ phần mềm nào, vui lòng đóng góp cho kho lưu trữ github. Tôi sẽ tiếp tục làm việc với dự án này và đây là một số ý tưởng:

  • Bộ điều khiển kiểu "big trak" trong đó bạn lập trình một chuỗi các lệnh như "trái 10, tiến 6, lùi 2…" rồi nhấn "chạy" và rô bốt thực hiện các lệnh.
  • Ngửa cổ để bạn có thể nhìn lên phía trên bằng webcam
  • Một người nói có thể dịch văn bản từ bộ điều khiển thành giọng nói
  • Điều khiển bằng giọng nói

Chúc mừng

Peter

Đề xuất: