在Ubuntu 14.04(Beaglebone Black)上使用带有ROS的python AdafruitbbioGPIO时出错

在Ubuntu 14.04(Beaglebone Black)上使用带有ROS的python AdafruitbbioGPIO时出错,python,ubuntu,beagleboneblack,ros,Python,Ubuntu,Beagleboneblack,Ros,在Beaglebone Black上运行ROS Indigo(Ubuntu 14.04,内核为3.8.x)时,我在使用Adafruit_BBIO.GPIO和Adafruit_BBIO.PWM库时遇到了一个奇怪的问题 在根权限下与python一起使用时,Adafruit_BBIO.PWM控制我的PWM引脚。如果我没有使用root权限运行它,我将收到: IOError: [Errno 13] Permission denied: 'sys/devices/bone_capemgr.9/slots'

在Beaglebone Black上运行ROS Indigo(Ubuntu 14.04,内核为3.8.x)时,我在使用Adafruit_BBIO.GPIO和Adafruit_BBIO.PWM库时遇到了一个奇怪的问题

在根权限下与python一起使用时,Adafruit_BBIO.PWM控制我的PWM引脚。如果我没有使用root权限运行它,我将收到:

IOError: [Errno 13] Permission denied: 'sys/devices/bone_capemgr.9/slots'
但是,如果我尝试使用root权限运行ros脚本(显然不推荐),我会收到:

File "teleop.py", line 1, in <module> 
import rospy
ImportError: No module named rospy
文件“teleop.py”,第1行,在
进口罗西
ImportError:没有名为rospy的模块
我想,这是因为采购和许可权方面的问题。 对于Adafruit_BBIO.GPIO库,我有一个类似的问题,当它与非特权权限一起使用时,它什么也不做,但这似乎是一个问题

现在使用root权限运行
ros
,可以解决我的问题。另一方面,不建议这样做。如果我为GPIO引脚应用补丁,并且有人建议我修复插槽的许可权问题,我可以在非根权限下操作Ros。有什么建议吗?

根据,您必须使用以下命令授予对设备插槽的访问权限:

sudo sh -c " echo BB-W1:00A0 > /sys/devices/bone_capemgr.9/slots" 
否则您将获得“权限被拒绝”。

根据,您必须使用以下命令授予对设备插槽的访问权限:

sudo sh -c " echo BB-W1:00A0 > /sys/devices/bone_capemgr.9/slots" 
否则您将获得“权限被拒绝”