- Mapping using Rtabmap with D455 and 2d lidar
- Navigation using move_base
- Jun 8, 2021
- May 3, 2021
- uses old dynamixel RX28 servos.
- 18 dof
- RPLidar A1 2d Lidar
- Jetson Xavier NX
- Intel Realsense d455 depth camera
- runs openshc ROS package (https://github.com/csiro-robotics/syropod_highlevel_controller)
- tip ground contact sensors (tactile switches) using rosserial_arduino
- wrote a ROS node that publishes the tip sensor data in a format openshc understands.
- want to make it into a decent rough terrain crawler
- servos seem to reach thermal limit quickly - added fans to motors
- 2d and 3d slam using a 2d lidar and a depth camera with hector mapping and rtabmap packages
Indoor 3d SLAM with d455 and exploring various sensor data
Here I manually control the hexapod with a ps4 controller around the room. ROS master node is running on the bot on a Jetson NX. It has a 2D lidar and a Realsense depth camera. It runs the openshc package for hexapod control, and rtabmap for 3D SLAM. Visualization is done on a desktop machine on the same network.
Long video of testing the admittance controller
Short screen capture of exploring variables on rviz/rqt
Outdoor flat forest floor traverse test
Side by side with Make 2
Visualization of topic data from openshc with rqt and rviz
Silicon anti slip cap (and the mould)
- May 3, 2021
- uses dynamixel XL430 servos.
- 24 dof
- the same control system as Make 1.
- runs on a Jetson Xavier NX.
- has a 2d lidar ~ 10Hz
- has a stereo depth camera (realsense D435i)
- experimented with running SLAM stack on ros using the two sensors: https://www.youtube.com/watch?v=-N8fmfxq5lY
- played around with hector slam for 2d lidar, rtabmap, VINS-Fusion (https://github.com/HKUST-Aerial-Robotics/VINS-Fusion)
- got familar with the high level organization of the ROS stack.
- later removed one dof from each leg for faster IK computation.
- control software capability (even ground mode): https://www.youtube.com/watch?v=li7Eii5mxpQ
- May 3, 2021
Inspired by Smallp Tsai’s hexapod v2.1 video
- used a raspberry pi zero sized board
- has an IMU
- 24 dof
- control software written in python using numpy, scipy, servo controller library.
- 4dof legs -> no analytical solution for inverse kinematics. Implemented an iterative method for 4dof leg IK solution. Also can use an optimizer from scipy.optimize.
- basics of the endeffector position based control algorithm code in this jupyter notebook
- power system is janky - sometimes when the servos draw too much power at once, the sbc reboots.
- learned to use Fusion360 to design parts needed using a 3D printer.
- banana pi zero
- 7x buck converter
- GY210 IMU
- 2s lipo
- 24x towerpro MG90B servos
- 2x 12ch pwm controller board
- one buck converter provides 5v to the sbc
- the servo controller boards get power from sbc
- four servos (one leg) get power from one buck converter
- sbc, servo controller boards, and the IMU talk through i2c
- May 2, 2021
- 6x Dynamixel XL430 (~300 EUR)
- 2x Dynamixel 2XL430 (~200 EUR)
- 1x RPLIDAR A1 (~100 EUR)
- 1x Intel Realsense D4xx Camera (200 ~ 300 EUR)
- Jetson Nano / Xavier NX / Raspberry Pi (50 ~ 400 EUR)
- 3d printed parts
- 12V DC step down converter (< 10 EUR)
- (5V DC step down converter, necessary for Jetson Nano & Raspberry Pi) (< 10 EUR)
- screws (~ 30 EUR)
- 4s Lipo Battery
With the choice of the board Total cost around Jetson Xavier NX $1250 Jetson Nano $1000 Raspberry Pi $920
- High camera position, better position of the camera for 3d SLAM
- More camera shaking during movement from backlash and tolerances
- Lower camera position, worse position of the camera for 3d SLAM
- Less camera shaking during movement from backlash and tolerances