一种用于Cayne低功耗分组格式的模块

cayenneL的Python项目详细描述


适用于卡宴低功耗数据包格式的Python模块

它的目的是便于转换通常从传感器读取的值 发送到可以通过网络发送的位序列(有效载荷) 使用卡宴低功耗数据包格式。这种格式特别 适用于Lorawan等LPWAN网络。

然后可以将有效负载发送到 物联网,一个基于罗兰湾的社区网络 将数据转发到一个卡宴应用程序,这要归功于它的卡宴 整合。

该模块由定义不同传感器和 它们的大小和一个类cayennelpp,其中包含构建 有效载荷。

常数的格式名为_sensor=(lpp id,data size),其中 lpp id是ipso id-3200,data size是 必须用于对传感器的读数进行编码。

更多信息请点击此处: https://mydevices.com/cayenne/docs/lora/#lora-cayenne-low-power-payload-overview

cayennelpp类

这个类包含了在一个卡宴中从传感器中打包数据的方法 lpp格式。卡宴lpp格式的有效载荷结构是data 表单框架:[sensor_1,sensor_2,…sensor_n],其中 一个传感器的格式定义为:[通道,传感器类型,数据]。

信道是数据帧中每个传感器的唯一标识符。

与该类兼容的传感器类型为:-数字型 输入/输出;-模拟输入/输出;-亮度(或照度) 传感器;-存在传感器;-温度传感器;-湿度传感器;。- 加速计;-气压计;-陀螺仪;-GPS。

此类的对象有3个属性:-payload:一个 或更多用卡宴lpp格式格式化的传感器;-大小: 有效载荷的最大大小(取决于数据上的网络) 将发送到);-socket:我们可以通过它发送有效负载的套接字。

构造函数将生成一个具有空负载和 最大尺寸。

可以使用“重置”方法重置有效负载并更改 最大尺寸与“嫦娥尺码”方法。

< P>当前的有效载荷和最大尺寸可以用方法获得 “get_payload”和“get_size”方法。

您可以使用“send”方法通过套接字发送负载。这个 可以使用“set_socket”方法设置套接字。

要添加来自传感器的数据,方法“add_sensor_name”是 提供。

文档在github的目录doc中提供 储存库。

示例

# importing the module
import cayenneLPP

# create a LoRa socket
s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
s.setsockopt(socket.SOL_LORA, socket.SO_DR, 0)
s.setblocking(True)

# creating Cayenne LPP packet
lpp = cayenneLPP.CayenneLPP(size = 100, sock = s)

# adding 2 digital outputs, the first one uses the default channel
lpp.add_digital_input(True)
lpp.add_digital_input(False, channel = 112)

# sending the packet via the socket
lpp.send()

使用lopy(https://www.pycom.io/)和 things network在test_lopy目录中提供。注意你 需要用更新app_euiapp_key的值 正确的凭据。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在Java中运行时在两个枚举类之间切换   java如何让PicoContainer启动/停止/处置工厂注入的组件?   带有Recyclerview onClick的java多活动   java如何从TestNG tests和Selenium接口调用默认方法?   java无法在Eclipse3.5.2中折叠注释   RR和SJF CPU调度算法的Java代码   java从属性文件配置记录器   java Notify传输在字符更改后超过20个字节完成   java阵列究竟是如何工作的   java跨类/包维护全局但可变的变量   java向setMessageListener注册侦听器服务   java按钮单击不在片段中工作   java GSSExException:使用spnego在GSSAPI上未指定故障(机制级别:不支持/启用带有HMAC SHA196的加密类型AES256CTS模式)   用java绘制虚线的图形   java从networkdrive启动windows捆绑包使用不包括JRE?   多线程java线程体系结构与应用程序设计