在使用ROS于下位机交互时,发现串口无法使用,并且报错 :
[ERROR] [1523090344.907625380]: Unable to open port
使用下列的方法进行修改
( 注:用如下命令查看串口信息: ls -l /dev/ttyUSB* )
Ubantu里普通用户是没有usb操作权限的,(函数open()打不开串口:refused),如果想在ROS程序里面打开串口,需先放开串口权限。
为了使普通用户也能够正常使用USB转串口设备, 可以通过增加udev规则来实现:
首先创建文件/etc/udev/rules.d/70-ttyusb.rules
1
|
sudo
gedit
/etc/udev/rules
.d
/70-ttyusb
.rules
|
文件内容为: KERNEL=="ttyUSB[0-9]*", MODE="0666"
增加访问权限:
1
|
sudo
chmod
666
/dev/ttyUSB0
|
重新插入USB转串口设备,普通用户就有权限访问,同时串口编程中使用open()函数就能打开串口了.