可以用如下命令查看串口信息:
ls -l /dev/ttyUSB*来查看相关的信息。
但是普通用户没有usb操作权限(函数open()打不开串口:refused),如果我们想在ROS程序里面打开串口,就得首先放开串口权限。
法一:
为了使普通用户也能正常使用USB转串口设备, 可以通过增加udev规则来实现:
创建文件/etc/udev/rules.d/70-ttyusb.rules
sudo gedit /etc/udev/rules.d/70-ttyusb.rules
文件内容为:
KERNEL=="ttyUSB[0-9]*", MODE="0666"
增加访问权限:
sudo chmod 666 /dev/ttyUSB0
重新插入USB转串口设备,普通用户就有权限访问了。
串口编程中使用open()函数就能打开串口了.
法二:
sudo chmod a+rw /dev/ttyUSB0
即可。(该方法不能给用户永久访问权限,一次性的,下次拔插串口线或者开关机就无效了)
法三:
$ ls -l /dev/ttyACM0
crw-rw---- 1 root dialout 166, 0 5月 24 17:17 /dev/ttyACM0
可以看到用户 (owner 是 root)而所属用户组为 dialout, 因此一种方法是把我们的登陆账号加入到这个用户组。
$whoami
savvy
$sudo usermod -aG dialout savvy
最后,登出再登入系统,登陆名savvy就可以使用该串口了 。