Mục lục:

Xây dựng Robot Turtlebot của riêng bạn!: 7 bước
Xây dựng Robot Turtlebot của riêng bạn!: 7 bước

Video: Xây dựng Robot Turtlebot của riêng bạn!: 7 bước

Video: Xây dựng Robot Turtlebot của riêng bạn!: 7 bước
Video: Cài đặt Docker và ROS robot operating System 2024, Tháng bảy
Anonim
Xây dựng Robot Turtlebot của riêng bạn!
Xây dựng Robot Turtlebot của riêng bạn!
Xây dựng Robot Turtlebot của riêng bạn!
Xây dựng Robot Turtlebot của riêng bạn!
Xây dựng Robot Turtlebot của riêng bạn!
Xây dựng Robot Turtlebot của riêng bạn!

CHỈNH SỬA:

Thông tin khác liên quan đến phần mềm và điều khiển có sẵn tại liên kết này:

hackaday.io/project/167074-build-your-own-turtlebot-3-backbone

Liên kết trực tiếp đến mã là:

github.com/MattMgn/foxbot_core

Tại sao lại là dự án này?

Turtlebot 3 là nền tảng hoàn hảo để đi sâu vào lĩnh vực điện tử, robot và thậm chí cả AI! Tôi đề xuất bạn xây dựng rùabot của riêng mình từng bước với các thành phần giá cả phải chăng mà không phải hy sinh các tính năng và hiệu suất. Hãy ghi nhớ một điều: giữ những gì tốt nhất từ robot ban đầu, tính mô-đun, tính đơn giản và số lượng lớn các gói cho điều hướng tự động và AI từ cộng đồng mã nguồn mở.

Dự án này là cơ hội cho những người mới bắt đầu tiếp thu các khái niệm về điện tử, cơ khí và khoa học máy tính, và cho những người có kinh nghiệm hơn có được một nền tảng mạnh mẽ để kiểm tra và phát triển các thuật toán trí tuệ nhân tạo.

Bạn sẽ khám phá điều gì trong dự án này?

Bạn sắp khám phá ra các bộ phận cơ khí và điện tử thiết yếu nào phải được giữ lại từ bot gốc để đảm bảo tính tương thích hoàn toàn.

Toàn bộ quá trình xây dựng sẽ rất chi tiết: từ in các bộ phận 3D, lắp ráp và một số thành phần, hàn và tích hợp thiết bị điện tử đến cuối cùng là biên dịch mã trên Arduino. Phần hướng dẫn này sẽ kết thúc về một ví dụ 'hello world' để bạn làm quen với ROS. Nếu bất cứ điều gì có vẻ không rõ ràng, hãy đặt câu hỏi!

Quân nhu

Thiết bị điện tử:

1 x Máy tính bo mạch đơn để chạy ROS, có thể là Raspberry Pi hoặc Jetson Nano chẳng hạn

1 x Arduino DUE, bạn cũng có thể sử dụng UNO hoặc MEGA

1 x Proto-board phù hợp với chân cắm Arduino DUE có sẵn tại đây

Động cơ DC 2 x 12V với bộ mã hóa (tùy chọn 100 vòng / phút)

1 x trình điều khiển động cơ L298N

Bộ điều chỉnh 2 x 5V

1 x Pin (ví dụ như pin LiPo 3S / 4S)

2 x công tắc BẬT / TẮT

2 x đèn LED

Điện trở 2 x 470kOhm

Đầu nối JST 3 x 4 chân

1 x cáp USB (ít nhất một giữa SBC và Arduino)

Cảm biến:

1 x Cảm biến hiện tại (tùy chọn)

1 x 9 Mức độ Tự do IMU (tùy chọn)

1 x LIDAR (tùy chọn)

Khung:

16 x tấm mô-đun Turtlebot (cũng có thể được in 3D)

2 x Bánh xe đường kính 65mm (tùy chọn chiều rộng 6mm)

4 x miếng đệm nylon 30mm (tùy chọn)

20 x chèn M3 (tùy chọn)

Khác:

Dây điện

Vít và chèn M2.5 và M3

Máy in 3D hoặc ai đó có thể in các bộ phận cho bạn

Máy khoan cầm tay có bộ mũi khoan như thế này

Bước 1: Mô tả

Sự miêu tả
Sự miêu tả
Sự miêu tả
Sự miêu tả

Robot này là một bộ truyền động vi sai đơn giản sử dụng 2 bánh xe gắn trực tiếp vào động cơ của chúng và một bánh lăn được đặt ở phía sau để ngăn robot bị ngã. Robot được chia thành hai lớp:

Lớp dưới cùng: với nhóm động cơ (pin, bộ điều khiển động cơ và động cơ) và thiết bị điện tử 'cấp thấp': vi điều khiển Arduino, bộ điều chỉnh điện áp, công tắc…

Lớp trên: với điện tử 'cấp cao' là Máy tính bảng đơn và LIDAR

Các lớp đó được liên kết với các bộ phận in và vít để đảm bảo độ chắc chắn của cấu trúc.

Sơ đồ điện tử

Sơ đồ có thể xuất hiện một chút lộn xộn. Đó là một bản vẽ sơ đồ và nó không đại diện cho tất cả các dây, đầu nối và bảng mạch proto nhưng nó có thể được đọc như sau:

Pin Polymer 3S Litihum Ion Polymer có dung lượng 3000mAh cung cấp năng lượng cho mạch đầu tiên, nó cấp nguồn cho cả bảng điều khiển động cơ (L298N) và bộ điều chỉnh 5V đầu tiên cho bộ mã hóa động cơ và Arduino. Mạch này được kích hoạt thông qua một công tắc có đèn LED cho biết trạng thái BẬT / TẮT của nó.

Cùng một loại pin cấp nguồn cho mạch thứ hai, điện áp đầu vào được chuyển đổi thành 5V để cấp nguồn cho Máy tính bảng đơn. Ở đây, mạch được kích hoạt thông qua một công tắc và một đèn LED.

Các cảm biến bổ sung như LIDAR hoặc máy ảnh sau đó có thể được thêm trực tiếp trên Raspberry Pi thông qua cổng USB hoặc cổng CSI.

Thiết kế kĩ thuật

Khung robot bao gồm 16 bộ phận giống nhau tạo thành 2 lớp hình vuông (chiều rộng 28cm). Nhiều lỗ cho phép gắn các bộ phận bổ sung vào bất cứ nơi nào bạn cần và cung cấp một thiết kế mô-đun hoàn chỉnh. Đối với dự án này, tôi quyết định lấy các tấm TurtleBot3 gốc nhưng bạn cũng có thể in 3D chúng vì thiết kế của chúng là mã nguồn mở.

Bước 2: Lắp ráp khối động cơ

Lắp ráp khối động cơ
Lắp ráp khối động cơ
Lắp ráp khối động cơ
Lắp ráp khối động cơ
Lắp ráp khối động cơ
Lắp ráp khối động cơ

Chuẩn bị động cơ

Bước đầu tiên là dán thêm băng xốp dày 1mm xung quanh mỗi động cơ để chống rung và ồn khi động cơ quay.

Các bộ phận đã in

Giá đỡ động cơ dẫn đến hai bộ phận kẹp chặt động cơ giống như một cơ cấu phó. 4 vít đạt được để siết chặt động cơ trong giá đỡ.

Mỗi giá đỡ bao gồm một số lỗ mà máy chủ M3 chèn để được gắn trên cấu trúc. Có nhiều lỗ hơn thực tế cần thiết, các lỗ phụ cuối cùng có thể được sử dụng để gắn các bộ phận phụ.

Cài đặt máy in 3D: tất cả các bộ phận được in với các thông số sau

  • Vòi đường kính 0,4mm
  • 15% vật liệu infill
  • Lớp chiều cao 0,2 mm

Bánh xe

Bánh xe được chọn được phủ bằng cao su để tối đa hóa độ bám dính và đảm bảo tình trạng lăn không bị trượt. Một vít kẹp duy trì bánh xe gắn trên trục động cơ. Đường kính của bánh xe phải đủ lớn để vượt qua bước nhỏ và mặt đất không đều (những bánh xe đó có đường kính 65mm).

Sự cố định

Khi bạn đã hoàn thành với một khối động cơ, hãy lặp lại các thao tác trước đó và sau đó chỉ cần cố định chúng vào lớp bằng vít M3.

Bước 3: Công tắc và chuẩn bị cáp

Công tắc và chuẩn bị cáp
Công tắc và chuẩn bị cáp
Công tắc và chuẩn bị cáp
Công tắc và chuẩn bị cáp
Công tắc và chuẩn bị cáp
Công tắc và chuẩn bị cáp

Chuẩn bị cáp động cơ

Nói chung, bộ mã hóa động cơ đi kèm với một dây cáp bao gồm một bên là đầu nối 6pin kết nối mặt sau của PCB bộ mã hóa và dây trần ở bên kia.

Bạn có khả năng hàn trực tiếp chúng trên bảng proto hoặc thậm chí là Arduino của mình, nhưng tôi khuyên bạn nên sử dụng đầu cắm chân cái và đầu nối JST-XH để thay thế. Vì vậy, bạn có thể cắm / rút phích cắm của chúng trên bảng mạch proto của bạn và làm cho việc lắp ráp của bạn dễ dàng hơn.

Mẹo: bạn có thể thêm dây bện trơn có thể mở rộng xung quanh dây và các đoạn ống co gần các đầu nối, làm như vậy bạn sẽ có được một dây cáp 'sạch'.

Công tắc và đèn LED

Để kích hoạt hai mạch nguồn, hãy chuẩn bị 2 LED và cáp công tắc: lúc đầu hàn điện trở 470kOhm trên một trong các chân LED, sau đó hàn LED trên một chân công tắc. Ở đây, bạn có thể sử dụng một đoạn ống co để giấu điện trở bên trong. Hãy cẩn thận để hàn đèn LED theo đúng hướng! Lặp lại thao tác này để có hai cáp công tắc / đèn led.

cuộc họp

Lắp ráp các dây cáp đã làm trước đó trên phần được in 3D tương ứng. Sử dụng đai ốc để duy trì công tắc, đèn LED không cần keo, chỉ cần lực vừa đủ để lắp nó vào lỗ.

Bước 4: Đấu dây bảng điện tử

Bo mạch điện tử đấu dây
Bo mạch điện tử đấu dây
Bo mạch điện tử đấu dây
Bo mạch điện tử đấu dây
Bo mạch điện tử đấu dây
Bo mạch điện tử đấu dây

Bố cục bảng

Một bảng proto phù hợp với bố cục bảng Arduino được sử dụng để giảm số lượng dây. Trên đầu bảng proto, L298N được xếp chồng lên nhau với tiêu đề Dupont cái (Dupont là các tiêu đề 'giống Arduino').

Chuẩn bị L298N

Ban đầu, bo mạch L298N không đi kèm với tiêu đề Dupont nam tương ứng, bạn cần thêm một hàng 9 chân bên dưới bảng. Bạn cần nhận ra 9 lỗ với mũi khoan đường kính 1mm song song với các lỗ hiện có như bạn thấy trên hình. Sau đó liên kết các chân tương ứng của 2 hàng bằng vật liệu hàn và dây ngắn.

L298N chốt ra

L298N bao gồm 2 kênh cho phép điều khiển tốc độ và hướng:

hướng thông qua 2 đầu ra kỹ thuật số, được gọi là IN1, IN2 cho kênh đầu tiên và IN3 và IN4 cho kênh thứ hai

tốc độ thông qua 1 đầu ra kỹ thuật số, được gọi là ENA cho kênh đầu tiên và ENB cho kênh thứ hai

Tôi đã chọn chốt ra sau với Arduino:

động cơ trái: IN1 trên chân 3, IN2 trên chân 4, ENA trên chân 2

động cơ bên phải: IN3 trên chân 5, IN4 trên chân 6, ENB trên chân 7

Bộ điều chỉnh 5V

Ngay cả khi l298N bình thường có thể cung cấp 5V, tôi vẫn thêm một bộ điều chỉnh nhỏ. Nó cấp nguồn cho Arduino thông qua cổng VIN và 2 bộ mã hóa trên động cơ. Bạn có thể bỏ qua bước này bằng cách sử dụng trực tiếp bộ điều chỉnh 5V L298N tích hợp sẵn.

Đầu nối JST và chân cắm Bộ mã hóa

Sử dụng bộ điều hợp đầu nối JST-XH 4 chân cái, mỗi đầu nối sau đó được liên kết với:

  • 5V từ bộ điều chỉnh
  • một mặt đất
  • hai cổng đầu vào kỹ thuật số (ví dụ: 34 và 38 cho bộ mã hóa bên phải và 26 và 30 cho cổng bên trái)

I2C bổ sung

Như bạn có thể nhận thấy, có thêm một đầu nối JST 4 chân trên bo mạch chủ. Nó được sử dụng để kết nối thiết bị I2C giống như một IMU, bạn có thể làm tương tự và thậm chí thêm cổng của riêng bạn.

Bước 5: Nhóm động cơ và Arduino ở lớp dưới cùng

Nhóm động cơ và Arduino ở lớp dưới cùng
Nhóm động cơ và Arduino ở lớp dưới cùng
Nhóm động cơ và Arduino ở lớp dưới cùng
Nhóm động cơ và Arduino ở lớp dưới cùng
Nhóm động cơ và Arduino ở lớp dưới cùng
Nhóm động cơ và Arduino ở lớp dưới cùng

Cố định khối động cơ

Khi lớp dưới cùng được lắp ráp với 8 tấm của Turtlebot, chỉ cần sử dụng 4 vít M3 trực tiếp trong các miếng chèn để duy trì các khối động cơ. Sau đó, bạn có thể cắm dây nguồn của động cơ với đầu ra L298N và cáp đã làm trước đó với đầu nối JST của bo mạch chủ.

Phân phối điện

Phân phối điện được thực hiện đơn giản với một khối thiết bị đầu cuối rào cản. Ở một bên của thanh chắn, một cáp có đầu cắm XT60 được vặn để kết nối với pin LiPo. Ở phía bên kia, hai cáp LED / công tắc của chúng tôi đã được hàn trước đó đã được vặn chặt. Do đó, mỗi mạch (Động cơ và Arduino) có thể được kích hoạt bằng công tắc riêng và đèn LED màu xanh lá cây tương ứng.

Quản lý cáp

Nhanh chóng bạn sẽ phải đối phó với rất nhiều dây cáp! Để giảm bớt khía cạnh lộn xộn, bạn có thể sử dụng 'bảng' đã được in 3D trước đó. Trên bàn, hãy bảo quản các bảng điện tử của bạn bằng băng dính hai mặt, và dưới bàn để dây điện tự do chảy.

Duy trì pin

Để tránh pin bị bắn ra khi điều khiển robot, bạn có thể chỉ cần sử dụng một sợi dây thun buộc tóc.

Tàu lượn siêu tốc

Không hẳn là tàu lượn mà là một nửa hình cầu đơn giản được cố định bằng 4 con vít ở lớp dưới cùng. Nó đủ để đảm bảo sự ổn định của robot.

Bước 6: Máy tính bo mạch đơn và cảm biến ở lớp trên

Máy tính bo mạch đơn và cảm biến ở lớp trên
Máy tính bo mạch đơn và cảm biến ở lớp trên
Máy tính bo mạch đơn và cảm biến ở lớp trên
Máy tính bo mạch đơn và cảm biến ở lớp trên
Máy tính bo mạch đơn và cảm biến ở lớp trên
Máy tính bo mạch đơn và cảm biến ở lớp trên

Chọn máy tính bảng đơn nào?

Tôi không cần phải giới thiệu cho bạn Raspberry Pi nổi tiếng, số lượng các trường hợp sử dụng của nó phần lớn vượt quá lĩnh vực robot. Nhưng có một thách thức mạnh mẽ hơn nhiều cho Raspberry Pi mà bạn có thể bỏ qua. Thật vậy, Jetson Nano của Nvidia tích hợp một card đồ họa 128 lõi mạnh mẽ bên cạnh bộ xử lý của nó. Thẻ đồ họa đặc biệt này đã được phát triển để tăng tốc các tác vụ tính toán tốn kém như xử lý hình ảnh hoặc suy luận mạng nơ-ron.

Đối với dự án này, tôi đã chọn Jetson Nano và bạn có thể tìm thấy phần 3D tương ứng trong số các tệp đính kèm, nhưng nếu bạn muốn sử dụng Raspberry Pi, có rất nhiều trường hợp có thể in ở đây.

Bộ điều chỉnh 5V

Dù bạn quyết định sử dụng bo mạch nào trên robot của mình, bạn cần có bộ điều chỉnh 5V. Raspberry Pi 4 mới nhất yêu cầu tối đa 1.25A nhưng Jetson Nano yêu cầu tối đa 3A khi căng thẳng, vì vậy tôi đã chọn Pololu 5V 6A để dự trữ năng lượng cho các thành phần trong tương lai (cảm biến, đèn, bước …), nhưng bất kỳ 5V 2A giá rẻ nào cũng nên làm công việc. Jetson sử dụng một thùng DC 5,5mm và Pi một micro USB, lấy cáp tương ứng và hàn nó vào đầu ra của bộ điều chỉnh.

Bố cục LIDAR

LIDAR được sử dụng ở đây là LDS-01, có nhiều LIDAR 2D khác có thể được sử dụng như RPLidar A1 / A2 / A3, YDLidar X4 / G4 hoặc thậm chí là Hokuyo LIDAR. Yêu cầu duy nhất là nó cần được cắm qua USB và được đặt chính giữa bên trên cấu trúc. Thật vậy, nếu LIDAR không được căn giữa tốt, bản đồ được tạo bởi thuật toán SLAM có thể thay đổi vị trí ước tính của các bức tường và chướng ngại vật khỏi vị trí thực của chúng. Ngoài ra, nếu bất kỳ chướng ngại vật nào từ robot vượt qua tia laze, nó sẽ làm giảm phạm vi và trường nhìn.

Lắp LIDAR

LIDAR được gắn trên một bộ phận được in 3D theo hình dạng của nó, bản thân bộ phận này được giữ trên một tấm hình chữ nhật (thực tế là bằng ván ép trên hình ảnh nhưng cũng có thể được in 3D). Sau đó, một phần bộ điều hợp cho phép quần thể được cố định trên tấm rùabot phía trên bằng các miếng đệm nylon.

Máy ảnh làm cảm biến bổ sung hoặc thay thế LIDAR

Nếu bạn không muốn chi quá nhiều tiền cho một chiếc LIDAR (có giá khoảng 100 đô la), hãy mua một chiếc máy ảnh: cũng có những thuật toán SLAM tồn tại chỉ chạy với một chiếc máy ảnh RGB một mắt. Cả hai SBC đều chấp nhận USB hoặc máy ảnh CSI.

Hơn nữa, máy ảnh sẽ cho phép bạn chạy các tập lệnh phát hiện đối tượng và thị giác máy tính!

cuộc họp

Trước khi đóng robot, hãy luồn dây cáp qua các lỗ lớn hơn trên tấm phía trên:

  • cáp tương ứng từ bộ điều chỉnh 5V đến SBC của bạn
  • cáp USB từ Cổng lập trình của Arduino DUE (cổng gần nhất với thùng DC) đến cổng USB của SBC của bạn

Sau đó, giữ tấm trên vào vị trí bằng một tá vít. Robot của bạn bây giờ đã sẵn sàng để được lập trình, CHÚNG TÔI XONG!

Bước 7: Làm cho nó di chuyển

Biên dịch Arduino

Mở Arduino IDE yêu thích của bạn và nhập thư mục dự án có tên own_turtlebot_core, sau đó chọn bo mạch của bạn và cổng tương ứng, bạn có thể tham khảo hướng dẫn tuyệt vời này.

Điều chỉnh cài đặt cốt lõi

Dự án bao gồm hai tệp và một tệp cần được điều chỉnh cho phù hợp với rô bốt của bạn. Vì vậy, hãy mở own_turtlebot_config.h và khám phá dòng nào cần chúng ta chú ý:

#define ARDUINO_DUE // ** HÃY BÌNH LUẬN DÒNG NÀY NẾU BẠN KHÔNG DÙNG ĐÚNG **

Chỉ nên sử dụng với Arduino DUE, nếu không chú thích dòng.

#define RATE_CONTROLLER_KP 130.0 // ** HÃY BẮT ĐẦU GIÁ TRỊ NÀY **

#define RATE_CONTROLLER_KD 5000000000000.0 // ** BẮT ĐẦU GIÁ TRỊ NÀY ** #define RATE_CONTROLLER_KI 0,00005 // ** HÃY BẮT ĐẦU GIÁ TRỊ NÀY **

3 tham số đó tương ứng với lợi ích của bộ điều khiển tốc độ được PID sử dụng để duy trì tốc độ mong muốn. Tùy thuộc vào điện áp pin, khối lượng của rô bốt, đường kính bánh xe và bánh răng cơ khí của động cơ, bạn sẽ cần điều chỉnh các giá trị của chúng. PID là một bộ điều khiển cổ điển và bạn sẽ không trình bày chi tiết ở đây nhưng liên kết này sẽ cung cấp cho bạn đủ đầu vào để điều chỉnh của riêng bạn.

/ * Xác định chân * /

// động cơ A (bên phải) const byte motorRightEncoderPinA = 38; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte motorRightEncoderPinB = 34; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte enMotorRight = 2; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte in1MotorRight = 4; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte in2MotorRight = 3; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** // motor B (trái) const byte motorLeftEncoderPinA = 26; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte motorLeftEncoderPinB = 30; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte enMotorLeft = 7; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte in1MotorLeft = 6; // ** SỬA ĐỔI BẰNG PIN CỦA BẠN NB ** const byte in2MotorLeft = 5; // ** SỬA ĐỔI BẰNG PIN NB CỦA BẠN **

Khối này xác định sơ đồ chân giữa L298N và Arduino, chỉ cần sửa đổi số pin để phù hợp với của bạn. Khi bạn đã hoàn tất với tệp cấu hình, hãy biên dịch và tải lên mã!

Cài đặt và cấu hình ROS

Khi bạn đã đến bước này, các hướng dẫn hoàn toàn giống với các hướng dẫn được nêu chi tiết trong sách hướng dẫn tuyệt vời của TurtleBot3, bạn cần phải làm theo một cách cẩn thận

rất tốt TurtleBot 3 hiện là của bạn và bạn có thể chạy tất cả các gói và hướng dẫn hiện có với ROS.

Ok nhưng ROS là gì?

ROS là viết tắt của Robots Operating System, thoạt nghe có vẻ khá phức tạp nhưng không phải vậy, hãy cứ tưởng tượng một cách giao tiếp giữa phần cứng (cảm biến và thiết bị truyền động) và phần mềm (thuật toán điều hướng, điều khiển, thị giác máy tính…). Ví dụ: bạn có thể dễ dàng hoán đổi LIDAR hiện tại của mình với một kiểu máy khác mà không phá vỡ thiết lập của bạn, vì mỗi LIDAR xuất bản cùng một thông báo LaserScan. ROS được sử dụng rộng rãi là người máy, Chạy ví dụ đầu tiên của bạn

Tương đương 'hello world' cho ROS bao gồm khả năng điều khiển từ xa robot của bạn thông qua máy tính từ xa. Những gì bạn muốn làm là gửi các lệnh vận tốc để làm cho động cơ quay, các lệnh theo đường ống sau:

  • nút rùabot_teleop, chạy trên máy tính từ xa, xuất bản chủ đề "/ cmd_vel" bao gồm thông báo Twist
  • thông báo này được chuyển tiếp qua mạng thông báo ROS tới SBC
  • một nút nối tiếp cho phép nhận "/ cmd_vel" trên Arduino
  • Arduino đọc thông báo và đặt tốc độ góc trên mỗi động cơ để phù hợp với vận tốc tuyến tính và vận tốc góc mong muốn của robot

Thao tác này rất đơn giản và có thể đạt được bằng cách chạy các dòng lệnh được liệt kê ở trên! Nếu bạn muốn biết thêm thông tin chi tiết chỉ cần xem video.

[SBC]

roscore

[SBC]

rosrun rosserial_python serial_node.py _port: = / dev / ttyACM0 _baud: = 115200

[Máy tính điều khiển từ xa]

xuất TURTLEBOT3_MODEL = $ {TB3_MODEL}

roslaunch rùabot3_teleop rùabot3_teleop_key.launch

Để đi xa hơn

Bạn cần biết điều cuối cùng trước khi thử tất cả các ví dụ chính thức, trong sách hướng dẫn mỗi khi bạn gặp lệnh này:

roslaunch rùabot3_bringup rùabot3_robot.launch

thay vào đó bạn cần chạy lệnh này trên SBC của mình:

rosrun rosserial_python serial_node.py _port: = / dev / ttyACM0 _baud: = 115200

Và nếu bạn có LIDAR, hãy chạy lệnh được liên kết trên SBC của bạn, trong trường hợp của tôi, tôi chạy LDS01 với dòng bên dưới:

roslaunch hls_lfcd_lds_driver hlds_laser.launch

Và đó là tất cả, bạn đã chắc chắn xây dựng được rùabot của riêng mình:) Bạn đã sẵn sàng khám phá những khả năng tuyệt vời của ROS, cũng như mã hóa tầm nhìn và thuật toán học máy.

Đề xuất: