Lidar guided autonomous, mobile robot based on ROS.
$ catkin_make
$ source /devel/setup.bash
$ roslaunch raspi_ctrl raspi.launch
export ROS_MASTER_URI=http://<ROBOT IP>:11311/
export ROS_IP=<REMOTE RVIZ CLIENT IP>
see /rviz/setup_ros_env.sh
$ roslaunch raspi_ctrl rviz.launch
Manual keyboard control via Teleop twist keyboard
- Ubuntu 18.04 for ARM
- ROS Melodic
$ sudo ./ros_install.sh
- Raspberry Pi 3
- L298N dual H-Bridge
- Ydlidar X4
- Adafruit PowerBoost 1000
- LiPo 3.7V
- 2x 9V battery
H-Bridge | Raspi GPIO | Motors |
---|---|---|
IN1 | 13 (PWM1) | |
IN2 | 19 (PWM1) | |
IN3 | 18 (PWM0) | |
IN4 | 12 (PWM0) | |
OUT1 | M1 forward | |
OUT2 | M1 backward | |
OUT3 | M2 forward | |
OUT4 | M2 backward |
Top power & control | Lidar |
---|---|
Bottom power | |
├── README.md
├── cad
│ └── README.md
├── doc
│ ├── cad_designs/
│ ├── photos_assembly/
│ ├── frames.pdf
│ ├── raspberry_pi_3_PWM_pins.png
│ ├── rqt_graph.svg
│ ├── ydlidar_rviz.png
│ └── wiring_hbrige_raspi.jpg
├── ros_install.sh
└── src
├── CMakeLists.txt -> /opt/ros/melodic/share/catkin/cmake/toplevel.cmake
├── motor_pkg
│ ├── CMakeLists.txt
│ ├── bin
│ │ └── motor_ctrl
│ ├── package.xml
│ ├── setup.py
│ └── src
│ └── motor_ctrl
│ ├── __init__.py
│ ├── motor.py
│ └── name_ascii.txt
├── raspi_ctrl
│ ├── CMakeLists.txt
│ ├── launch
│ │ ├── costmap_configs
│ │ │ ├── base_local_planner_params.yaml
│ │ │ ├── costmap_common_params.yaml
│ │ │ ├── global_costmap_params.yaml
│ │ │ └── local_costmap_params.yaml
│ │ ├── mapping_default.launch
│ │ ├── raspi.launch
│ │ ├── rviz.launch
│ │ └── x4_lidar.launch
│ ├── package.xml
│ └── rviz
│ ├── rviz.rviz
│ └── setup_ros_env.sh
├── teleop_twist_keyboard
└── ydlidar_ros