Skip to content

zengxiaolei/robotics_demo

Repository files navigation

Share my robotic demos with all! Add star🌟 to this repo if you like it

Control

anti-cogging

anti-cogging

Anti-Cogging demo in ros2.

reference:

pure pursuit path tracking with adaptive forwards or backwards heading

reference:

velocity smoother (1€-Filter)

simulation test

move_base_vel: original navigation velocity command without obstacle avoidance
cmd_vel: raw navigation velocity command with obstacle avoidance
cmd_vel_filtered: smoothed velocity command with obstacle avoidance

usecase with an industrial AGV

move_base_vel: original navigation velocity command without obstacle avoidance
cmd_vel: smoothed velocity command with obstacle avoidance

reference:

A* planner

reference:

SLAM

localization recovery by apriltag

SLAM with erased map

VO

realsense D453i mono camera + IMU

reference:

realsense D453i stereo cameras+IMU

reference:

ORBSLAM2 with realsense D455

reference:

ORBSLAM2

Detection

pallet detection by realsense D435

detection demo

docking demo

obstacle detour

The vehicle will wait for some time and then actively detour, if the obstacle does not leave within some time.

reference:

Parking Feasibilty Checking and Autonomous Adjustment

Rotate Parking for Pose Adjustment

K-Means clustering and 2D circle fitting

pink o:                    sample points
grey- purple - yellow o:   clustered points
red △:                     clustered center
green --:                  fitted circle from clustered points
green o:                   circle center

reference:

geometry fitting of obstacles

simulation in stage

red: laser data
green: fitted circle
yellow: fitted straight line
blue: robot footprint
visulization: obstacle_detector.msg in RViz

real case with PEPPERL+FUCHS lidar

black: laser data
green: fitted circle & line
samples_per_scan: 4200
scan_frequency: 15

reference:

Behavior

behavior engine

behavior creation

behavior execution

simulation

reference:

state machine(SMACH) usecase

reference:

Scheduling

traffic cross behavior

#No need to share information between robots
#Robots move independently of each other
controller_frequency: 2.0Hz (Due to computational load on my own computer)
base_local_planner: teb_local_planner/TebLocalPlannerROS                    
max_vel_x: 1.0m/s
play speed: ×4

reference:

area lock manager

scheduling and routing for multi agents

Scheduling: Manhattan distance
Routing: global path planning based on information sharing & junction behavior of independence      
Clicked point: Navigation tasks are automatically assigned to the nearest and idle robot.   
controller_frequency: 2.0Hz (Due to computational load on my own computer)
base_local_planner: teb_local_planner/TebLocalPlannerROS
max_vel_x: 1.0m/s
play speed: ×4

run

git clone this repository and its dependency package ( homing_local_planner ) to your ROS (noetic) workspace

cd ~/your_ros_ws/src
git clone https://github.com/zengxiaolei/robotics_demo.git
cd ..
catkin_make

roslaunch multi_robots_schedule test.launch

Note: The launched simulation is slightly different from the local planner and configuration in the gif above. You can play with this algorithm through the rviz user interface.

Todo

Open source more algorithms and demoscases.

☕ Buy Me a Coffee by AliPay