PART4:ROS Wireless Control and Remote Encoder Readings of Differential Wheeled Robot- Write Nodes
Автор: Aleksandar Haber PhD
Загружено: 2023-08-28
Просмотров: 7952
Описание:
#robotics #ros #controltheory #mechatronics #urdf #machinelearning #electricalengineering #automation #industrialrobotics #industrialrobots #Rviz #machinelearning #signalprocessing #differentialdriverobot #rosrobot #mobilerobots #lowcostrobot #robotcompetiton #automation #plc #arduino #arduinoproject
It takes a significant amount of time and energy to create these free video tutorials. You can support my efforts in this way:
Buy me a Coffee: https://www.buymeacoffee.com/Aleksand...
PayPal: https://www.paypal.me/AleksandarHaber
Patreon: https://www.patreon.com/user?u=320801...
You Can also press the Thanks YouTube Dollar button
This is part 4 of the tutorial on how to build a low-cost differential wheeled robot platform capable of demonstrating advanced projects involving machine learning, reinforcement learning, computer vision, SLAM, navigation, and autonomous driving. The goal is to develop a low-cost platform that can be integrated with Arduino, Raspberry Pi, and NVIDIA Jetson Nano. Also, the robot will be completely integrated with the Robot Operating System (ROS).
This is part 4 of the tutorial. In part 4 of the tutorial, we explain
1.) How to remotely control motor velocity and remotely read encoder pulses by using the HC-06 Bluetooth module.
2.) How to write a ROS publisher node on a Linux machine that will publish/send control actions to Arduino.
3.) How to write a ROS node in Arduino that will implement the control actions to drive the motors
4.) How to write a ROS node in Arduino that will read encoder pulses and send them via appropriate topic to a ROS node on a Linux machine.
5.) How to write a ROS node on a Linux machine that will display the encoder readings.
This is part 4 of the large tutorial on how to develop a low-cost differential wheeled robot that can carry advanced sensors, such as lidars and cameras, and that can be used for testing advanced machine learning, model-based control, estimation, and SLAM algorithms. One of the most important goals is to integrate a complete system with a robot operating system and advanced 3D visualization programs that can track the robot in real-time and display its position on the computer screen.
In this tutorial, we explain how to develop and implement ROS and ROS-Arduino nodes that are used for remotely controlling the robot, and for remotely reading the sensor information, such as encoder readings from the robot. The remote connection is established by using a low-cost Bluetooth module HC-06. The Linux machine shown here runs two ROS nodes. The first ROS node is used to publish the control velocities for two motors. The control velocities are specified by the user. The second node receives back from Arduino encoder readings and publishes them on the screen. On the other hand, ROS is also running on Arduino. On Arduino, we implemented a ROS node that receives control information from the Linux ROS node. That is, the ROS Arduino node receives the desired control velocities for motors. Then, the Arduino ROS node implements these control actions. On the other hand, the Arduino-ROS node reads the information from the encoders installed next to the wheels. It then transmits this information through an appropriate ROS topic back to the Linux machine. The Linux ROS node then publishes the encoder readings on the screen. This is a proof of principle for a more advanced control algorithm that we will develop and implement in the future. The ROS node running on a Linux machine will use the encoder positions to calculate the current position and orientation of the robot in space. Then, it will plot this position in Rviz, and it will use this information to design and implement a feedback control algorithm for our Robot. For example, this feedback control algorithm will be used to control the robot's position in space or to ensure that the robot is following the desired trajectory or desired path.
Повторяем попытку...

Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: