基于移遠QuecPython開發(fā)板對接華為云

      網(wǎng)友投稿 895 2025-03-31

      1 云端開發(fā)

      首先進入華為云官網(wǎng),登陸華為云賬號,進入IoTDA(設(shè)備接入),點擊產(chǎn)品,創(chuàng)建產(chǎn)品。

      圖1

      按照下圖,自定義產(chǎn)品名稱、廠商名稱以及設(shè)備類型。

      圖2

      點擊產(chǎn)品,在右側(cè)產(chǎn)品名稱列表中點擊上述創(chuàng)建的產(chǎn)品名稱,進入產(chǎn)品,點擊上傳模型文件,選擇添加文件,將附件(Agriculture_Profile)中的模型文件壓縮包上傳到云端。

      圖3

      點擊上述產(chǎn)品中的在線調(diào)試,新增測試設(shè)備,注意設(shè)備標識碼保持唯一性。

      圖4

      基于移遠QuecPython開發(fā)板對接華為云

      創(chuàng)建設(shè)備后,會出現(xiàn)設(shè)備ID和產(chǎn)品秘鑰,請保存好設(shè)備秘鑰,或者點擊左側(cè)導航欄,進入設(shè)備列表,在“所有設(shè)備”中找到新增的真實設(shè)備,進行重置秘鑰。注意設(shè)備ID和設(shè)備秘鑰是設(shè)備對接華為云的關(guān)鍵信息,后面會用到二者進行設(shè)備鑒權(quán)。

      圖5

      2 模組開發(fā)環(huán)境安裝(如已經(jīng)安裝略過該步驟)

      下載RDA驅(qū)動,根據(jù)系統(tǒng)環(huán)境進行選擇對應(yīng)系統(tǒng)版本安裝,之后參考官方文檔進行開發(fā)環(huán)境搭建,QuecPython開發(fā)環(huán)境搭建

      3端側(cè)開發(fā)

      將下述腳本燒錄到開發(fā)板,點擊運行。需要將圖5中的設(shè)備ID和設(shè)備秘鑰替換為華為云IoTDA中的設(shè)備信息

      圖6

      import utime import _thread import ujson import modem import hmac from hashlib import sha256 from umqtt import MQTTClient from machine import UART # 如果想使用IMEI,可通過下列語句該進行獲取IMEI號 IMEI = modem.getDevImei() # 客戶只需要提供DeviceID和DeviceSecret即可實現(xiàn)對接華為云 DeviceID = "62183fafe68aa647c087eee6_cat_test227" DeviceSecret = "4fd113fbbdd5dcbe1a93091ce4ea1829" TIME_STAMP = str(utime.time()) CLIENT_ID = DeviceID + "_0_0_"+ TIME_STAMP SERVER = "a15fbbd7ce.iot-mqtts.cn-north-4.myhuaweicloud.com" PORT = 1883 USER = DeviceID PASSWORD = hmac.new( TIME_STAMP.encode('utf-8'), DeviceSecret.encode('utf-8'), digestmod=sha256).hexdigest() state = 0 utime.time() def sub_cb(topic, msg): global state global c #global state print("Subscribe Recv: Topic={},Msg={}".format(topic.decode(),msg.decode())) topic = topic.decode() msg = b'''{"result_code": 0}''' if r'/sys/commands/request_id=' in topic: c.publish('$oc/devices/{}/sys/commands/response/request_id={}'.format(DeviceID, (topic.split("=")[-1])), msg) #state = 1 def mqtt_init(): global c # 創(chuàng)建一個mqtt實例 c = MQTTClient( client_id=CLIENT_ID, server=SERVER, port=PORT, user=USER, password=PASSWORD, keepalive=30) # 必須要 keepalive=30 ,否則連接不上 # 設(shè)置消息回調(diào) c.set_callback(sub_cb) # 建立連接 c.connect() c.subscribe('$oc/devices/{}/sys/commands/#'.format(DeviceID)) # 數(shù)據(jù)上報任務(wù) def thread_reportmsg(): global c while True: tem = utime.time() % 25 hum = utime.time() % 35 lum = utime.time() % 100 Msg = { "services": [{ "service_id": "Agriculture", "properties": { "Temperature": tem, "Humidity": hum, "Luminance": lum, "LightStatus": "ON", "MotorStatus": "OFF" } }] } msg = ujson.dumps(Msg) c.publish('$oc/devices/{}/sys/properties/report'.format(DeviceID), msg) utime.sleep_ms(2000) # 命令處理任務(wù) def thread_rcvmsg(): global c print('Waiting command') while True: c.wait_msg() if state == 1: utime.sleep_ms(300) break # 斷開連接函數(shù)沒有執(zhí)行,函數(shù)中沒有將state置為1,如果想增加斷開連接,可以在某處增加斷開連接 c.disconnect() def main(): mqtt_init() _thread.start_new_thread(thread_reportmsg, ()) _thread.start_new_thread(thread_rcvmsg, ()) if __name__ == "__main__": main()

      可以看見在云端看到設(shè)備在線同時將模擬數(shù)據(jù)上傳到華為云。

      圖7

      如果想看到數(shù)據(jù)一一對應(yīng)的關(guān)系,可以在上述代碼中添加打印日志,將msg打印出來實現(xiàn)對照具體如下圖所示。可見上報消息與端側(cè)打印的日志是一致的。

      圖8

      圖9

      點擊同步命令下發(fā)下的命令下發(fā),選擇命令以及命令值,進行命令下發(fā)

      圖10

      點擊命令下發(fā),可見命令下發(fā)成功。

      圖11

      同時在設(shè)備側(cè)控制臺可以看見日志打印信息。

      圖12

      附件: Agriculture_Profile.zip 1.29KB 下載次數(shù):1次

      Python 硬件開發(fā) 設(shè)備接入 IoTDA

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:工程項目進度表怎么樣畫(工程進度表格怎么做)
      下一篇:excel表格圖表如何制作
      相關(guān)文章
      亚洲国产精品成人综合久久久| 亚洲精品国产字幕久久不卡| 亚洲国产成人久久精品动漫| 亚洲av日韩综合一区久热| 亚洲乱码一二三四区麻豆| 亚洲精品无码高潮喷水在线| xvideos亚洲永久网址| 亚洲第一成年网站视频| 亚洲综合色区中文字幕| 亚洲黄色在线观看| 亚洲嫩模在线观看| 久久伊人久久亚洲综合| 亚洲人成精品久久久久| 区久久AAA片69亚洲| 亚洲伦理中文字幕| www.亚洲日本| 亚洲日韩精品无码专区加勒比| 亚洲一区无码中文字幕乱码| 中文字幕亚洲综合小综合在线| 99久久婷婷国产综合亚洲| 久久精品亚洲AV久久久无码| 亚洲六月丁香婷婷综合| 亚洲精品久久无码| 国产亚洲精品国产福利在线观看 | 亚洲另类激情综合偷自拍 | 亚洲av综合色区| 亚洲国产高清人在线| 亚洲成av人片不卡无码| 亚洲毛片基地4455ww| 亚洲国产成人久久精品软件| xvideos亚洲永久网址| 久久夜色精品国产亚洲av| 国产亚洲一区二区三区在线观看| 亚洲AV乱码一区二区三区林ゆな| 中文字幕亚洲色图| 77777亚洲午夜久久多喷| 国产精品日本亚洲777| 伊人婷婷综合缴情亚洲五月| 亚洲AV天天做在线观看| 亚洲国产亚洲片在线观看播放| 亚洲色偷偷综合亚洲AV伊人蜜桃|