创建设备别名
需要创建设备别名原因:
在运行一个ros程序的时候需要提供一个端口名,这个端口名一般是ttyUSBx,设备每次插拔对应的这个端口名它都会不一样,需要创建一个设备别名,就是要将这个端口名来给它固定住。
重新插拔 USB1端口的设备后,变为:
可以看到变成了/dev/ttyUSB2
端口号发生了变化
创建设备别名需要写一个脚本文件,如下:
echo 'KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60",ATTRS{serial}=="0002", MODE:="0777", GROUP:="dialout", SYMLINK+="stm32_controller"' >/etc/udev/rules.d/stm32_controller.rules
echo 'KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60",ATTRS{serial}=="0001", MODE:="0777", GROUP:="dialout", SYMLINK+="2d_lidar"' >/etc/udev/rules.d/2d_lidar.rules
service udev reload
sleep 2
service udev restart
解释下上面的代码
KERNEL==”ttyUSB* 不管是USB几的设备都进行判断
ATTRS{idVendor}==”10c4” 这里的idVendor ,在前面win上修改 serial的时候出现过,就是10c4
ATTRS{idProduct}==”ea60” 这里的idProduct,在前面win上修改 serial的时候出现过,就是ea60
ATTRS{serial}==”0002” 这里的serial,就是前面我们改过的,这里就根据这个值的不同,定义不同的设备别名
MODE:=”0777” 就是端口的权限
SYMLINK+=”stm32_controller” 这里的stm32_controller,就是取的设备别名。
所有上面第一行代码的功能就是,将满足这些条件的端口的设备名称改为定义的设备别名。
脚本的文件名称,取名为change_udev.sh。在执行前需要给这个脚本文件赋予权限。
sudo chmod 777 change_udev.sh
赋予权限后,再运行这个脚本
sudo ./change_udev.sh
这样就运行了设备别名的设置,之后不管怎么插拔这两个USB设备,系统都将会自动的将这两个设备去给它赋予设置的设备别名。
使用设备别名
在上面,设置了设备别名,下面来看如何使用我们的设备别名。
例如我们将雷达的USB的设备别名改为了2d_lidar
雷达的roslaunch启动文件则可以写成如下:
< launch >
< node name="rplidarNode" pkg="rplidar_ros" type="rplidarNode" output="screen" >
< param name="serial_port" type="string" value="/dev/2d_lidar"/ >
< param name="serial_baudrate" type="int" value="115200"/ >< !--A1/A2 -- >
< !-- < param name="serial_baudrate" type="int" value="256000"/ > -- >< !--A3 -- >
< !-- < param name="serial_baudrate" type="int" value="1000000"/ > -- >< !--S2 -- >
< param name="frame_id" type="string" value="laser"/ >
< param name="inverted" type="bool" value="false"/ >
< param name="angle_compensate" type="bool" value="true"/ >
< /node >
< /launch >
上面的代码中,
< param name=”serial_port” type=”string” value=”/dev/2d_lidar”/ >
这里,我们就将系统的设备别名/dev/2d_lidar,设置到了参数serial_port中
-
控制器
+关注
关注
112文章
16487浏览量
179798 -
STM32
+关注
关注
2274文章
10929浏览量
358009 -
设备
+关注
关注
2文章
4561浏览量
70940 -
智能车
+关注
关注
21文章
405浏览量
77078 -
ROS
+关注
关注
1文章
281浏览量
17140
发布评论请先 登录
相关推荐
分享一个基于FreeRTOS的micro(微型)ROS
如何在Linux系统下自动创建设备节点
sudo后使用别名
ROS主控与STM32的硬件连接和软件设置
![<b class='flag-5'>ROS</b><b class='flag-5'>主控</b>与STM32的硬件连接和软件设置](https://file1.elecfans.com/web2/M00/AE/E5/wKgaomVXOLWAYvTvAAEwubFuOpw290.jpg)
如何创建新的ROS工作空间
![如何<b class='flag-5'>创建</b>新的<b class='flag-5'>ROS</b>工作空间](https://file1.elecfans.com/web2/M00/B1/48/wKgaomVjCpiAdRwgAACGbnloi38266.jpg)
ROS主控与STM32的硬件连接和软件连接
![<b class='flag-5'>ROS</b><b class='flag-5'>主控</b>与STM32的硬件连接和软件连接](https://file1.elecfans.com/web2/M00/B0/AE/wKgZomVXOLWAN-2pAAEQ5hxYyro516.jpg)
评论