資料介紹
描述
這一直發生在我身上;在雨季,我房間的日光不足。我可以說在陽光明媚的日子里我會得到 60% 的常規光線。即使所有的門窗都打開了,我也得不到足夠的照明。
如果我打開 LED 燈泡,燈光就綽綽有余了。無論如何,我都會得到一部分陽光,因為 LED 燈會太多。所以,我一直想遠程控制 LED 的亮度。
此功能在高級家庭自動化技術中可用。但是,我們的家中還沒有內置這樣的技術。我有一個 Bolt IoT 的基本培訓套件。我熟悉在 Bolt IoT 平臺中使用光強傳感器、溫度傳感器、LED 和蜂鳴器。
我決定使用基本培訓套件中提供的工具為我的最終項目構建該系統。我成功地構建了系統。如果強度低于 1000,則 LED 亮起。隨著強度降低,LED 的亮度逐漸增加。如果當前室內光強度低于 300,LED 將以最大亮度亮起。
首先,使用迷你面包板和 Bolt IoT Wi-Fi 模塊進行連接。LED 連接到 Bolt 模塊的“1”引腳,光傳感器連接到“A0”引腳。一個 10k 歐姆的電阻與光強傳感器連接在一起,以隨著落在傳感器上的光的減少而降低電壓。
整個系統使用 boltiot 模塊在 Python 中編碼。Bolt 設備與私有 API 密鑰和設備 ID 連接。系統的配置保存在一個名為 config.py 的單獨 python 文件中。
intensity = autoLED.analogRead("A0")
intensityData = json.loads(intensity)
對于每次提取,都會給出 10 秒的間隔。該程序每 10 秒自動獲取房間中可用的強度。
global sensor_value
sensor_value = int(intensityData['value'])
print("Data retrieval successful...")
print("Current light intensity = " , sensor_value)
controlLED()
time.sleep(10)
首先,使用函數analogRead() 讀取強度數據。然后將數據處理為全局聲明的變量。在函數 controlLED() 中使用相同的全局變量來根據處理后的強度數據設置 LED 的亮度。
在 ControlLED() 函數中,有 3 種可能性。
if(curIntensity > 1000):
LED = autoLED.analogWrite("1", "0")
print("Current LED brightness: 0%")
如果可用強度大于 1000,則很可能不需要外部光。因此,LED 將保持關閉狀態。
elif(curIntensity < 350):
LED = autoLED.analogWrite("1", "255")
print("Current LED brightness: 100%")
如果可用強度低于 350,則認為房間需要最大光線,因為它太暗了。因此,LED 亮度設置為 100%。LED 將達到最大值。
else:
unit = 255/1024
value = 1024 - curIntensity
value *= unit
res = int(value)
LED = autoLED.analogWrite("1", str(res))
brightness = (res/255) * 100
limitedBrightness = round(brightness, 1)
print("Current LED brightness: " , limitedBrightness , "%")
- 第三個條件是最棘手的。LED 的最大可能亮度值為 255。255 將分成 1024 塊。1 件 = 1 個單位。
- 最大可能的強度值為 1024。我們從最大值中減去當前強度以獲得差值。假設當前強度為 800。因此,我們從最大可能強度 255 中減去當前強度 800,得到數字 224。
- 現在,我們想知道可用強度需要多少亮度。我們使用一個簡單的數學技巧來得到它。我們從 1 個單位乘以 224 的值數字。有了這個,我們得到一個數字,它是要傳遞的亮度值。
-
該值通過類型轉換轉換為整數。然后將該值
analogWrite()
與端口號一起傳遞給函數。 -
使用公式計算亮度百分比
(res/255) * 100
。 -
使用該函數將百分比四舍五入到小數點后 1 位。
round()
結果被打印出來。
- Arduino手勢控制LED亮度
- 如何使用任何遙控器控制LED的亮度
- 如何控制您的led亮度
- 如何使用PWM控制LED亮度
- 自動亮度傳感器開源
- Arduino Nextion Display使用滑塊控制LED亮度
- WS2812B RGB LED亮度控制和混色開源分享
- LED亮度電流調節器20mA開源
- 環境亮度與LED顯示屏亮度調整方案的設計資料說明 4次下載
- 使用單片機數模輸出控制LED亮度的例程免費下載
- 八個亮度等級的LED控制程序源碼下載 5次下載
- 高亮度LED數字電源控制技術詳解 4次下載
- LED亮滅和亮度控制 42次下載
- 單片機產生PWM波形控制LED燈亮度 68次下載
- 高亮度LED制造工藝智能設計 55次下載
- LED顯示屏亮度調節的方法 6571次閱讀
- 晶閘管怎么控制燈泡的亮度 720次閱讀
- 為高亮度LED提供高效電流驅動 969次閱讀
- LDO線性穩壓器改善白光LED亮度匹配 999次閱讀
- 整流橋接入后LED變暗,提高LED燈亮度的方法 7503次閱讀
- 基于DC/DC升壓變換器控制LED亮度的驅動設計 832次閱讀
- digilent高亮度LED介紹 2472次閱讀
- LED舞臺和建筑照明色彩控制:基于I2C控制功能LED的13位色彩控制 2272次閱讀
- 基于采用ATMEGA16單片機的定時計數器,實現LED亮度自動調節 1766次閱讀
- 基于顯微成像系統的Micro-LED表面亮度檢測 3816次閱讀
- LED亮度調節方案 1.3w次閱讀
- PWM控制LED燈的亮度程序(C 語言) 3.2w次閱讀
- led燈珠型號亮度排名_led燈不亮了怎么修 3.5w次閱讀
- LED顯示屏亮度計算及灰度控制方法介紹 6573次閱讀
- 高亮度LED照明應用與散熱設計 1989次閱讀
下載排行
本周
- 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開發指南
- 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次下載 | 免費
評論
查看更多