一、
部署ros_arduino_bridge----相当于底盘
修改复制出来的my_arduino_params.yaml文件
二、1 雷达---亚博X3 Pro
插上usb后,通过ls -l /dev/ttyUSB*进行查看,如没有则说明没连上---有两个包,一个是驱动包(安装后就好了),一个是功能包(launch启动)
二、2 雷达---思岚A1
查看组权限 ,用groups,即上面的授权后验证
执行./create_xxxxx_xxx.sh前要catkin_make,然后再source ./devel/setup.bash再执行./xxxx.sh
执行该句的目的就是为了改雷达名称,从/dev/ttyUSB0改为了/dev/rplidar,通过ll /dev/rplidar验证,执行后的结果:
三、相机---普通的
1、插上摄像头后,先找到它的端口,通过以下方法
启动树莓派该launch后,在虚拟机(从机)单独启动rviz,即可
四、集成底盘、雷达、相机--
mycar_start集成这三个部件
最后一个依赖包要改为:亚博的----
ydlidar_ros_driver
启动小车上的三大部分:底盘、雷达、相机------catkin_ws中的start.launch(roslaunch mycar_start
start
.launch)
但此时tf是乱的,需要将雷达、相机的tf都静态转换至base_footprint,代码如下:
<launch>
<include file="$(find mycar_start)/launch/start.launch" />
<node name="camera2basefootprint" pkg="tf2_ros" type="static_transform_publisher" args="0.08 0 0.1 0 0 0 /base_footprint /camera_link"/>
<node name="ydlidar2basefootprint" pkg="tf2_ros" type="static_transform_publisher" args="0 0 0.1 0 0 0 /base_footprint /laser_frame"/>
</launch>
运行
start_tf.launch(roslaunch mycar_start
start_tf
.launch),此时tf都统一base_footprint了
静态转换的区别
五、SLAM系列
1、安装各功能包
sudo apt-get install ros-melodic-gmapping
sudo apt-get install ros-melodic-map-server
sudo apt-get install ros-melodic-navigation
2、验证各功能包是否安装
rospack find gmapping
rospack find map_server
rospack find amcl
rospack find move_base
3、新建nav功能包--
实现建、存、读、走
:catkin_create_pkg
nav
roscpp rospy std_msgs gmapping map_serve amcl move_base
4、
新建mycar_description功能包--
实现加载模型机器人