中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

30分鐘內將樹莓派連接到微軟云Azure IoT Hub并將

發布時間:2020-02-24 16:33:54 來源:網絡 閱讀:452 作者:13188888544 欄目:云計算

樹莓派是很多動手達人必備的小玩具,本節內容,讓我們拿出樹莓派,在30分鐘內,將樹莓派連接到微軟云Azure的IoT Hub,然后將溫濕度曲線可視化。


更多內容請關注公眾號”云計算實戰“


本文完整的操作視頻參見:https://v.qq.com/x/page/f3025q4e75x.html

30分鐘內將樹莓派連接到微軟云Azure IoT Hub并將


本節內容中,樹莓派發送的數據是模擬出來的,并沒有真實的連接到傳感器,您可以選購不同的傳感器來采集真實的環境信息。

Azure IoT Hub 為我們提供了設備與云雙向通訊的能力,通過多種語言的SDK,我們能輕松快速的將樹莓派接入到云。本案例使用微軟官方代碼,示例代碼一共約70行,非常簡單。

30分鐘內將樹莓派連接到微軟云Azure IoT Hub并將


關于IoT Hub的更多內容,請參考:


Azure 上的物聯網服務介紹


時序見解(Azure Time Series Insights)用來存儲時間序列的值,同時提供UI,將數據可視化。

30分鐘內將樹莓派連接到微軟云Azure IoT Hub并將


關于時序見解的更多內容,請參考:


Azure Time Series Insights-時序見解(1)


時序見解和IoT Hub可以無縫連接,無需寫代碼即可將上傳到IoT Hub的數據進行可視化。



樹莓派上傳數據的代碼:

import?random
import?time
import?sys

#?Using?the?Python?Device?SDK?for?IoT?Hub:
#???https://github.com/Azure/azure-iot-sdk-python
#?The?sample?connects?to?a?device-specific?MQTT?endpoint?on?your?IoT?Hub.
import?iothub_client
#?pylint:?disable=E0611
from?iothub_client?import?IoTHubClient,?IoTHubClientError,?IoTHubTransportProvider,?IoTHubClientResult
from?iothub_client?import?IoTHubMessage,?IoTHubMessageDispositionResult,?IoTHubError,?DeviceMethodReturnValue

#?The?device?connection?string?to?authenticate?the?device?with?your?IoT?hub.
#?Using?the?Azure?CLI:
#?az?iot?hub?device-identity?show-connection-string?--hub-name?{YourIoTHubName}?--device-id?MyNodeDevice?--output?table
CONNECTION_STRING?=?"HostName=iothubforsatest.azure-devices.cn;DeviceId=test001;SharedAccessKey=kev0eMtTv2UfUU+JD6WAQN2sSdNI9QnRbs4nv2n+1vg="

#?Using?the?MQTT?protocol.
PROTOCOL?=?IoTHubTransportProvider.MQTT
MESSAGE_TIMEOUT?=?10000

#?Define?the?JSON?message?to?send?to?IoT?Hub.
TEMPERATURE?=?100.0
HUMIDITY?=?60
MSG_TXT?=?"{\"temperature\":?%.2f,\"humidity\":?%.2f,\"deviceid\":?'test0001'}"

def?send_confirmation_callback(message,?result,?user_context):
????print?(?"IoT?Hub?responded?to?message?with?status:?%s"?%?(result)?)

def?iothub_client_init():
????#?Create?an?IoT?Hub?client
????client?=?IoTHubClient(CONNECTION_STRING,?PROTOCOL)
????return?client

def?iothub_client_telemetry_sample_run():

????try:
????????client?=?iothub_client_init()
????????print?(?"IoT?Hub?device?sending?periodic?messages,?press?Ctrl-C?to?exit"?)

????????while?True:
????????????#?Build?the?message?with?simulated?telemetry?values.
????????????temperature?=?TEMPERATURE?+?(random.random()?*?15)
????????????humidity?=?HUMIDITY?+?(random.random()?*?20)
????????????msg_txt_formatted?=?MSG_TXT?%?(temperature,?humidity)
????????????message?=?IoTHubMessage(msg_txt_formatted)

????????????#?Add?a?custom?application?property?to?the?message.
????????????#?An?IoT?hub?can?filter?on?these?properties?without?access?to?the?message?body.
????????????prop_map?=?message.properties()
????????????if?temperature?>?30:
??????????????prop_map.add("temperatureAlert",?"true")
????????????else:
??????????????prop_map.add("temperatureAlert",?"false")

????????????#?Send?the?message.
????????????print(?"Sending?message:?%s"?%?message.get_string()?)
????????????client.send_event_async(message,?send_confirmation_callback,?None)
????????????time.sleep(3)

????except?IoTHubError?as?iothub_error:
????????print?(?"Unexpected?error?%s?from?IoTHub"?%?iothub_error?)
????????return
????except?KeyboardInterrupt:
????????print?(?"IoTHubClient?sample?stopped"?)

if?__name__?==?'__main__':
????print?(?"IoT?Hub?Quickstart?#1?-?Simulated?device"?)
????print?(?"Press?Ctrl-C?to?exit"?)
????iothub_client_telemetry_sample_run()


IoT Hub 接入文檔,請參考:


https://docs.azure.cn/zh-cn/iot-hub/quickstart-send-telemetry-python


樹莓派系統下載:


https://www.raspberrypi.org/downloads/


Micro SD卡格式化工具:


https://www.sdcard.org/downloads/index.html


樹莓派系統寫入Micro SD卡工具:


https://sourceforge.net/projects/win32diskimager/


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

利津县| 黑河市| 自治县| 革吉县| 彰化市| 肥乡县| 元朗区| 波密县| 大冶市| 连南| 云南省| 新巴尔虎左旗| 沽源县| 衡东县| 屏东县| 许昌县| 金沙县| 江源县| 开平市| 昌平区| 延寿县| 邵武市| 安吉县| 犍为县| 阳西县| 商城县| 沙洋县| 诸城市| 临海市| 定襄县| 措勤县| 六枝特区| 祁东县| 石首市| 青浦区| 宣武区| 容城县| 张家界市| 浦江县| 若尔盖县| 连云港市|