資料介紹
描述
1) 簡介
該項目主要具有三個功能,即收集人的溫度,計算人是否發(fā)燒,通知用戶該人的健康狀況,并通知站在門口的人是否允許他進入房屋或不是。
2) 示范
?
?
3) 自動發(fā)燒檢測和警報
在本節(jié)中,我們研究項目的發(fā)燒檢測和警報功能。
(a) 發(fā)燒檢測
下面給出LM35溫度傳感器、LED、蜂鳴器和螺栓模塊的電路連接。
?
LM35 溫度傳感器的輸入來自模擬引腳 A0,LED 和蜂鳴器的輸出寫入數字引腳 1 和 2。LM35 溫度傳感器的電源由螺栓模塊的 5V 引腳提供。
最初蜂鳴器和燈閃爍,通知用戶將溫度傳感器放在手臂下15秒,15秒后蜂鳴器會蜂鳴一次,計算傳感器接收到的值并與閾值比較(390 = 38攝氏度和換算公式 = 傳感器值 *100 / 1024)
如果該值低于 390,則此人可以安全進入房屋,并在電報消息服務的幫助下通知房主,并在門口通過閃爍藍燈和蜂鳴器五次來通知此人。
否則,如果該值等于或大于 390,則此人不安全進入房屋(他可能患有 COVID19),并且使用電報消息服務通知房主,并且門上的紅燈亮起并且蜂鳴器嗡嗡作響持續(xù) 5 秒。
(b) 配置文件
這個項目的 python 編碼已經在 Spyder (windows) 中完成。在我們開始用 python 編寫自動發(fā)燒檢測和警報之前,我們需要制作一個配置文件,該文件將包含每個用戶/設備的特定密鑰。我們將在我們的主代碼中導入這個文件并使用各種屬性。這樣做的好處是每個用戶只需更改配置文件的內容即可使用該產品。
以下是配置文件(命名為 conf.py):
API_KEY = "XXXX" //Bolt Cloud API Key
DEVICE_ID = "BOLTXXXX" //Device ID of the Bolt Module
TELEGRAM_CHAT_ID = "-XXXX" //Chat ID of the created Telegram Channel
TELEGRAM_BOT_ID = "botXXXX" //Bot ID of the created Telegram Bot
Threshold = "XXX" //Threshold value for fever
Bolt 模塊的 API 密鑰和設備 ID 可以如下確定:
按照以下說明將您的 Bolt 設備連接到 Bolt Cloudhttps://cloud.boltiot.com/ 。之后將出現以下屏幕。螺栓設備 ID 以黑色交叉。
?
轉到 API 部分以了解 API 密鑰
?
(c) 創(chuàng)建電報頻道和機器人
安裝 Telegram App 并使用您的手機號碼登錄。然后創(chuàng)建一個頻道和一個機器人。
(d) “發(fā)燒檢測和警報”的完整代碼
#Import the Required Libraries
from boltiot import Bolt import requests import json import time import conf
#To identify your bolt device
mybolt = Bolt(conf.api_key, conf.device_id)
#To get data from sensor
def get_sensor_value_from_pin(pin):
"""Returns the sensor value. Returns -999 if request fails"""
try:
response = mybolt.analogRead(pin)
data = json.loads(response)
if data["success"] != 1:
print("Request not successfull")
print("This is the response->", data)
return -999
sensor_value = int(data["value"])
return sensor_value
except Exception as e:
print("Something went wrong when returning the sensor value")
print(e)
return -999
#To send notifying messages to the owner
def send_telegram_message(message):
"""Sends message via Telegram"""
url = "https://api.telegram.org/" + conf.telegram_bot_id + "/sendMessage"
data = {
"chat_id": conf.telegram_chat_id,
"text": message
}
try:
response = requests.request(
"POST",
url,
params=data
)
telegram_data = json.loads(response.text)
return telegram_data["ok"]
except Exception as e:
print("An error occurred in sending the alert message via Telegram")
print(e)
return False
#Main Loop is started
while True:
print("*******************************")
print("Loop Starting")
#initial Notification to person about the starting process
mybolt.digitalWrite("2","HIGH")
mybolt.digitalWrite("1","HIGH")
time.sleep(0.5)
mybolt.digitalWrite("1","LOW")
mybolt.digitalWrite("2","LOW")
print("Reading time 15 secs")
#time required to stabilize the environment and accurate reading
time.sleep(15)
sensor_value = get_sensor_value_from_pin("A0")
print(sensor_value)
#if the person has fever
if(sensor_value >conf. threshold):
message = "Alert! Person at the door has fever, Dont LET HIM IN!!!. \nThe current value of his fever is " + str(sensor_value*100/1024)
telegram_status = send_telegram_message(message)
print("person at the door is not safe do not let him enter")
mybolt.digitalWrite("2","HIGH")
time.sleep(4)
mybolt.digitalWrite("2","LOW")
#if person doesn’t have fever
else:
message = "Alert! Person at the door is healthy, LET HIM IN!" + str(sensor_value*100/1024)
telegram_status = send_telegram_message(message)
print("Person at the door is safe, we can let him enter")
mybolt.digitalWrite("1","HIGH")
time.sleep(0.1)
mybolt.digitalWrite("1","LOW")
for _ in range(5):
mybolt.digitalWrite("2","HIGH")
time.sleep(0.5)
mybolt.digitalWrite("2","LOW")
print("next cycle will start in 5 secs")
print("*******************************")
#wait for 5 seconds before next cycle
time.sleep(5)
(e) Python 代碼的輸出截圖
?
?
?
- COVID-19危機-發(fā)燒警報系統(tǒng)開源分享
- 如何構建靈敏的晨間警報系統(tǒng)
- 使用Google Assistant的警報系統(tǒng)
- 不速之客警報系統(tǒng)
- 用于運動檢測的警報系統(tǒng)
- 發(fā)燒檢測和警報系統(tǒng)開源分享
- 交貨警報系統(tǒng)開源分享
- 煙囪粉塵警報系統(tǒng)開源分享
- 使用Arduino構建警報系統(tǒng)
- 燒傷預防警報系統(tǒng)
- 自動光檢測和短信警報系統(tǒng)
- 喚醒警報系統(tǒng)
- 警報系統(tǒng)開源分享
- 家庭安全警報系統(tǒng)
- SASAS智能分析和自動警報系統(tǒng)
- 使用ntopng和NetFlow/IPFIX檢測Dos攻擊(下) 275次閱讀
- 基于自動光學檢測系統(tǒng)(AOI)設計 1151次閱讀
- 筆記本防盜保護器電路圖分享 757次閱讀
- 如何使用IC555創(chuàng)建6個有趣的警報器和警報音效發(fā)生器電路 4071次閱讀
- 制冷系統(tǒng)高壓警報的原因及排除方法 1.9w次閱讀
- 使用LED作為模擬輸出的汽車警報模擬器電路 1738次閱讀
- 采用Arduino開發(fā)板、火焰?zhèn)鞲衅骱头澍Q器構建火感檢測器系統(tǒng) 2381次閱讀
- 微機自動檢測系統(tǒng)的結構、功能及軟件設計與實現 3006次閱讀
- 應用于焊縫缺陷自動超聲檢測系統(tǒng)中數據采集電路的設計 1042次閱讀
- 利用自動光學檢測儀進行電路檢測有哪些優(yōu)勢 2921次閱讀
- 自動光學檢測的工作原理及特點 1.3w次閱讀
- 電能表自動檢測系統(tǒng)的原理及設計 1912次閱讀
- 地震警報器制作詳解 1w次閱讀
- PCB自動光學檢測系統(tǒng)Amfax a3D面市_精確度高達3μm以內 5304次閱讀
- cr2016紐扣電池主要技術參數及用途 2.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多