รูปแบบ CayenneLPP

CayenneLPP ย่อมาจาก Cayenne Low Power Payload (LPP)เป็นรูปแบบ encode ข้อมูล และ Decode ข้อมูล ซึ่งทำให้ Payload มีขนาดเล็กตอนส่งด้วย LoRa จะใช้เวลา On Air น้อย กินพลังงานจาก Bat น้อย และลดโอกาศที่ Node จะส่งมาพร้อมกันทำให้ชนกันลง

วิธีใช้คือ

from cayennelpp import CayenneLPP

c = CayenneLPP()

สร้างตัวแปรเปล่าๆ

ตัวอย่าง เริ่มใส่ข้อมูลในตัวแปร
c.addAnalogInput(1, data)

รูปแบบข้อมูล อื่นๆ และความละเอียดของตัวแปรมีดังนี้

addDigitalInput(uint8_t channel, uint8_t value);
# 1 unsigned (True/False)
addDigitalOutput(uint8_t channel, uint8_t value);
# 1 unsigned (True/False)
addAnalogInput(uint8_t channel, float value);
# 0.01 signed
addAnalogOutput(uint8_t channel, float value);
# 0.01 signed
addLuminosity(uint8_t channel, uint16_t lux);
# 1 lux unsigned MSB
addPresence(uint8_t channel, uint8_t value);
# 1 unsigned (True/False)
addTemperature(uint8_t channel, float celsius);
# 0.1 deg Celcius signed MSB
addRelativeHumidity(uint8_t channel, float rh);
# 0.5 unsigned
addAccelerometer(uint8_t channel, float x, float y, float z);
# 0.001 G signed MSB per axis
addBarometricPressure(uint8_t channel, float hpa);
# 0.1 hPa unsigned MSB
addGyrometer(uint8_t channel, float x, float y, float z);
# 0.01 deg/sec signed msb per axis
addGPS(uint8_t channel, float latitude, float longitude, float meters);
# latitude: 0.0001 degree signed MSB
# longitude: 0.0001 degree signed MSB
# altitude: 0.01 meter signed MSB

ตัวอย่างการใช้ AT Command ส่งข้อมูลด้วย Maxiiot-DL7612-AS923-TH
ATresp = sendATcommand(
“AT+NMGS={0},{1}”.format(
int(len(b.decode(“utf-8”)) / 2),
(ubinascii.hexlify(c.getBuffer())).decode(“utf-8”)
)

ปรกติแล้วการส่งข้อมูล Payload ขึ้น TheThingsNetwork จะเป็น Hex ต่อกัน หากดุในหน้าเวป TTN เราจะอ่านหรือแปลความหมายไม่ออก เราสามารถให้ TTN ทำการถอดรหัสออกมาเป็นรูปแแบที่เราเข้าใจได้ โดยใช้ Intergration ของ TTN

ให้เข้าไปที่หน้า Application แล้วเลือก Integration

คลิก Add Integration ตรงมุมขวา

เลื่อนหาแล้วคลิกที่ myDevices

ใส่ชื่อ Process ID อะไรก้ได้แล้วเลือก Access Key เป็น default key เสร็จแล้วคลิก Add integration มุมขวาล่าง

จะประกฎบรรทัด MyDevices ตามรูปขึ้น

กลับไปดูที่ Data ของ Device ของเรา จะเห็นหลัง Payload จะอ่านแล้วเข้าใจได้ทันที

ว่ามีข้อมูลอะไรส่งมาบ้างและมีค่าเป็นเท่าไร

ถ้า Double Click ที่บรรทัดที่เราสนใจจะเห็นข้อมูลที่อ่านได้ง่ายขึ้น มีช่อง Payload ซึ่งเป็นค่า HEX เดิมที่ส่งผ่าน LoRa มา และค่า Field ต่างๆ ที่เรา Encode ไว้ และยังแสดง Metadata อื่น เช่น Gateway ที่รับ payload นี้ได้ รวมถึงความแรงของสัญญาณ RSSI และ SNR รวมถึงตำแหน่ง Lat Long ของ Gateway ด้วยหาก Gateway ส่งค่าตำแหน่งมาให้

เราสามารถดูข้อมูลดังกล่าวในลักษณะ Dashboard ได้โดยสมัครใช้บริการ Cayenne mydevice.com ข้อมูลเราจะนำไปสร้างเป็น Dashboard อัตโนมัต ิดังรูป

เราสามารถปรับแต่งเลือกรูปแบบการแสดงผลแต่ละ Widget ได้ตามต้องการ

สนับสนุนและส่งเสริมให้ผู้สนใจสามารถใช้งานเทคโนโลยี LoRa และ LoRaWAN ได้ โดยนำความรู้ที่ได้ไปต่อยอดเพื่อใช้งาน