衡阳派盒市场营销有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>使用Bolt和LM35傳感器構建溫度監測系統電路

使用Bolt和LM35傳感器構建溫度監測系統電路

2022-12-16 | zip | 0.32 MB | 次下載 | 免費

資料介紹

描述

目標:

創建有助于實現以下目標的設備:

  • 雖然允許制造商將藥片的溫度保持在 -40 到 -30 攝氏度之間,但藥片的溫度不得一次保持在 -33 到 -30 度之間超過 20 分鐘。
  • 此外,制造商應記錄用于生產片劑的冷卻室何時打開。

項目目標:

Capstone 項目的目標如下。

A. 使用 Bolt 和 LM35 傳感器構建溫度監測系統電路。

  • LM35 的 VCC 引腳連接到 Bolt Wifi 模塊的 5v。(白線)
  • LM35 的輸出引腳連接到 Bolt Wifi 模塊的 A0(模擬輸入引腳)。(灰線)
  • LM35 的 GND 引腳連接到 Gnd。(紫線)
pYYBAGOX5eeAeanZAADWooKF7OQ518.png
?

B. 在 Bolt Cloud 上創建一個產品,以監控來自 LM35 的數據,并將其鏈接到您的 Bolt。

pYYBAGOX5fWAfuF-AAEV296cocA729.png
?
pYYBAGOX5fmAXUltAAD3nAVBmpU215.png
?

C. 編寫產品代碼,對 Bolt 發送的數據運行多項式回歸算法

帶著這個目標,奈杰爾先生成功地滿足了政府設定的第一個條件。使用預測數據,只要圖表預測溫度將保持在 -33 和 -30 攝氏度范圍內超過 20 分鐘,他就能夠及早采取行動。

poYBAGOX5f6Ab35OAAFJUnSGPMc030.png
?
pYYBAGOX5gKARKz5AAEwRydCNh0643.png
?

代碼 :

setChartLibrary('google-chart');
setChartTitle('Polynomial Regression');
setChartType('predictionGraph');
setAxisName('time_stamp','temp');
mul(0.0977);
plotChart('time_stamp','temp');

D. 將溫度監測電路保持在冰箱內,關閉冰箱門,讓系統記錄溫度讀數約 2 小時。

pYYBAGOX5gaAQkPuAABUUbLSpJo807.png
?
poYBAGOX5giANQFGAABAuz3NJ6A429.png
?

E. 使用您在 2 小時內收到的讀數,設置冰箱內溫度的界限。

pYYBAGOX5haAAj3qAAFBFjkfOqQ309.png
?

F. 編寫一個 Python 代碼,每 10 秒獲取一次溫度數據,如果溫度超出您在目標“E”中確定的溫度閾值,則發送電子郵件警報。

打開ubuntu服務器。

創建一個文件來存儲憑據:

sudo nano email_conf.py

輸入以下代碼。

MAILGUN_API_KEY = 'This is the private API key which you can find on your Mailgun Dashboard' 
SANDBOX_URL= 'You can find this on your Mailgun Dashboard' 
SENDER_EMAIL = 'This would be test@your SANDBOX_URL'
RECIPIENT_EMAIL = 'Enter your Email ID Here'
API_KEY = 'This is your Bolt Cloud account API key'
DEVICE_ID = 'This is the ID of your Bolt device'
FRAME_SIZE = 10
MUL_FACTOR = 6

創建主代碼文件:

sudo nano capstone_project.py

輸入以下代碼。

import email_conf, json, time, math, statistics
from boltiot import Email, Bolt

max_limit = 52
min_limit = -52

while True:
    response = mybolt.analogRead('A0')
    data = json.loads(response)
    if data['success'] != 1:
        print("There was an error while retriving the data.")
        print("This is the error:"+data['value'])
        time.sleep(10)
        continue

    print ("This is the value "+data['value'])
    sensor_value=0
    try:
        sensor_value = int(data['value'])
        if sensor_value > max_limit or sensor_value < min_limit:
            print("Making request to Mailgun to send an email")
            temperature = (100*sensor_value)/1024
            response = mailer.send_email("Alert!!", "The temperature of the refrigerator is " +str(temperature))
            response_text = json.loads(response.text)
            print("Response received from Mailgun is: " + str(response_text['message']))
    except e:
        print("There was an error while parsing the response: ",e)
        continue

G. 修改 Python 代碼,同時進行 Z 分數分析,并在檢測到異常時打印“有人打開冰箱門”這一行。

H. 調整 Z-score 分析代碼,當有人打開冰箱門時,它會檢測到異常。

最終代碼:

import email_conf, json, time, math, statistics
from boltiot import Email, Bolt

max_limit = 52
min_limit = -52

def compute_bounds(history_data,frame_size,factor):
    if len(history_data)        return None

    if len(history_data)>frame_size :
        del history_data[0:len(history_data)-frame_size]
    Mn=statistics.mean(history_data)
    Variance=0
    for data in history_data :
        Variance += math.pow((data-Mn),2)
    Zn = factor * math.sqrt(Variance / frame_size)
    High_bound = history_data[frame_size-1]+Zn
    Low_bound = history_data[frame_size-1]-Zn
    return [High_bound,Low_bound]

mybolt = Bolt(email_conf.API_KEY, email_conf.DEVICE_ID)
mailer = Email(email_conf.MAILGUN_API_KEY, email_conf.SANDBOX_URL, email_conf.SENDER_EMAIL, email_conf.RECIPIENT_EMAIL)
history_data=[]

while True:
    response = mybolt.analogRead('A0')
    data = json.loads(response)
    if data['success'] != 1:
        print("There was an error while retriving the data.")
        print("This is the error:"+data['value'])
        time.sleep(10)
        continue

    print ("This is the value "+data['value'])
    sensor_value=0
    try:
        sensor_value = int(data['value'])
        if sensor_value > max_limit or sensor_value < min_limit:
            print("Making request to Mailgun to send an email")
            temperature = (100*sensor_value)/1024
            response = mailer.send_email("Alert!!", "The temperature of the refrigerator is " +str(temperature))
            response_text = json.loads(response.text)
            print("Response received from Mailgun is: " + str(response_text['message']))
    except e:
        print("There was an error while parsing the response: ",e)
        continue

    bound = compute_bounds(history_data,email_conf.FRAME_SIZE,email_conf.MUL_FACTOR)
    if not bound:
        required_data_count=email_conf.FRAME_SIZE-len(history_data)
        print("Not enough data to compute Z-score. Need ",required_data_count," more data points")
        history_data.append(int(data['value']))
        time.sleep(10)
        continue

    try:
        if sensor_value > bound[0] or sensor_value < bound[1]:
            print ("Someone has opened the refrigerator door.")
        history_data.append(sensor_value);
    except Exception as e:
        print ("Error",e)
    time.sleep(10)

輸出:

運行代碼:

sudo python3 capstone_project.py
poYBAGOX5hyANYhcAAEj4UGqZGY228.png
?
pYYBAGOX5iCAHCSBAAFKq7davKU526.png
?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
资兴市| 百家乐筹码免运费| 沙龙百家乐官网娱乐场开户注册| 谢通门县| 大发888官网注册| 太阳城的故事| 威尼斯人娱乐城老品牌lm0| 大赢家足球即时比分| 大发888娱乐城qq服务| 威尼斯人娱乐网官网| 百家乐影院| 现金网送体验金| 博威娱乐在线| 东兰县| 百家乐官网注册开户送彩金| 游戏厅百家乐官网软件| 真人百家乐官网平台下载| 百家乐官网开户送18元| 澳门百家乐官网哪家信誉最好| 百家乐官网實戰後二穩賺| 百家乐官网凯时娱乐平台| 百家乐必胜法| 百家乐官网已破解的书籍| 百家乐官网真人荷官网| 赌博百家乐官网的玩法技巧和规则 | 明升开户 | 百家乐官网最好投注| 金沙百家乐官网的玩法技巧和规则 | 大发888娱乐官网地址| 华宝娱乐城| 利都百家乐官网国际娱乐场| 百樂坊百家乐官网的玩法技巧和规则| 金木棉百家乐官网网络破解| 百家乐官网全部规则| 百家乐是如何出千的| 百合百家乐的玩法技巧和规则 | 百家乐赌场现金网| 大发888官方6222.com| 百家乐官网有电脑游戏吗| 新澳博百家乐现金网| 八大胜|