通用传感器的设备驱动与自动化
plugandpie的Python项目详细描述
plugandpie设计用于自动设置带有驱动程序的传感器,使 硬件配置更简单,实现更快。它是由社区贡献的 驱动程序和它的灵活性足以与尚未直接支持的设备一起工作。包裹 还旨在提供用于监视和分析传感器的实用程序,以便您可以使软件级别 轮询并建立复杂的观测模型。
驱动程序示例
通过直接指定硬件接口和地址,您可以对 设备上的任何寄存器。
accelerometer=GenericDriver(interface=SMBusAdapter(1),address=0x1D)accelerometer.registers[0x2A].set(8)# inactiveaccelerometer.registers[0x0E].set(0)# range = 2gaccelerometer.registers[0x2A].set(9)# active, 800Hz
通过读取反映其数据表的设备配置文件,可以获得更好的命名 为了你的登记。
# TODO
通过实例化正确的驱动程序,标准化的api可以轻松地提供有意义的数据。
accelerometer=MMA8452Q(interface=SMBusAdapter(1),address=0x1D)accelerometer.get_ms2()
通过读取设备配置文件,可以立即初始化所有驱动程序。
# TODO
查看文档以获取基本和高级用法的示例。
监视器示例
传感器最常见的用途是历史分析和实时遥测。两者都应该 无缝地插入plugandpie驱动程序,因此该包包含一些 这个目的。
安装:
plugandpie需要SMBus,而此时没有良好的python 3实现或绑定。 可在https://procrastinative.ninja/2014/07/21/smbus-for-python34-on-raspberry/找到解决方法
另外,SMBus需要在i2c驱动程序中重复启动。在Raspberry PI上默认不启用此选项 可通过以下方式修复:
echo -n 1 > /sys/module/i2c_bcm2708/parameters/combined
此配置在启动时重置,因此请确保将其放入启动脚本中。
setup.sh是一个脚本,其中包含对这两个问题的修复,但以侵入性方式执行。 建议没有经验的用户第一次安装plugandpie, 但有经验的用户应该单独解决这些问题。