读取GPS和加速度计值,然后通过LORA协议将其推向远程服务器。
fipy 1.0与Espressif ESP32

更多信息:https://pycom.io/wp-content/uploads/2018/08/fipyspecsheetaugust2017n2-1.pdf
Pytrack盾牌连接Fipy板:
更多信息:https://docs.pycom.io/datasheets/expansionboards/pytrack/
“多技术导管网关”作为洛拉门户
更多信息:https://www.multitech.com/brands/multiconnect-conduit
在这个项目中,我要注意消耗低功率和稳定性。为了减少功耗,我使用了Cayenne LPP,加速度计 - 唤醒模式并关闭FIPY的不必要功能。网络:TTN(事物网络)https://www.thethingsnetwork.org/
- 由于我使用了cayennelpp库,因此该项目不需要有效载荷解码器。如果我使用了其他方案,则需要用TTN中的有效负载解码器选项卡解码我的消息。
Pytrack: python3 -m pip install PyTrack-NTU
PYCOM董事会信息: python3 -m pip install pycom
在此项目中,Micropython用于ESP32。有关Micro Python的更多信息:
https://github.com/micropython/micropython
https://docs.micropython.org/en/latest/reference/packages.html
Cayennelpp使用将数据发送到TTN网络。这很容易,因为只要通过Cayennelpp,只需单击就足以解释十六进制代码。只需选择选项有效载荷格式>> cayenne并自动解码。同样在Python方面,我们需要将这些功能添加到代码块中:
lpp.add_accelerometer(xsum,ysum,zsum)
lpp.add_analog_input(abs(gtotal-1))
lpp.add_analog_input(volt, channel = 114)
lpp.add_gps(c0, c1, 55)
lpp.send()

另一方面,我们需要设置Lora的设置:
lora = LoRa(mode=LoRa.LORAWAN, region=LoRa.EU868,adr=False, tx_retries=0, device_class=LoRa.CLASS_A)
-Required keys can be found on TTN network >> Applications >> Dashboard
dev_addr = struct.unpack(">l", binascii.unhexlify('********'))[0]
nwk_swkey = binascii.unhexlify('***************')
app_swkey = binascii.unhexlify('****************')
lora.join(activation=LoRa.ABP, auth=(dev_addr, nwk_swkey, app_swkey))
s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
s.setsockopt(socket.SOL_LORA, socket.SO_DR, 0)
print ("LoRa Initialized")

如果您喜欢这个项目,请出演并引用:)