資料介紹
描述
一、簡介
該項(xiàng)目的主要?jiǎng)訖C(jī)是通過從 Bolt Android 應(yīng)用程序手動(dòng)更改或自行更改來控制光的強(qiáng)度。
亮度的自我改變是通過使用光檢測電阻 (LDR) 輸入周圍亮度來完成的,它的讀數(shù)映射到 LED 的強(qiáng)度范圍,并使用脈沖寬度調(diào)制 (PWM) 生成可變輸出。
為了手動(dòng)控制它,我們有一個(gè)可以訪問 BOLT 云的用戶界面。在這個(gè)界面中,我們可以看到一個(gè) Pulse Width Modulation (PWM) 值,范圍從 0 到 255,0 表示 LED 關(guān)閉,255 表示 LED 在最大亮度下打開。此界面可在螺栓云和智能手機(jī) BOLT 應(yīng)用程序上訪問。
![poYBAGOAcZyAAaRtAAqgjNR7dC0889.jpg](https://file.elecfans.com/web2/M00/7D/B3/poYBAGOAcZyAAaRtAAqgjNR7dC0889.jpg)
最后查看原理圖。
2. LED亮度自動(dòng)控制
在本節(jié)中,我們將了解如何根據(jù) LDR 測量的周圍亮度自動(dòng)控制 LED 的亮度。
2.1 LED和LDR的電路連接
下面給出的是硬件連接。
LDR 的輸入取自 A0,輸出寫入引腳 1。使用 BOLT 模塊的 3.3V 引腳為 LDR 供電。LDR 上的電阻隨著落在其上的光強(qiáng)度的變化而變化。Bolt 模塊可以讀取電壓值,因此制作了一個(gè)分壓器電路,Bolt 模塊的輸入是 10k 電阻兩端的電壓,這取決于 LDR 兩端的電阻。LED 的正極(較長)端子連接到數(shù)字引腳 1,負(fù)極(較短)端子連接到地。數(shù)字引腳 1 輸出充當(dāng) LED 的電源,因此決定了它的強(qiáng)度。
![poYBAGOAcaWAJZEmAAlaV4AQvjs733.jpg](https://file.elecfans.com/web2/M00/7D/B3/poYBAGOAcaWAJZEmAAlaV4AQvjs733.jpg)
2.2代碼文件
這部分的代碼是在 Ubuntu(Linux) 上用 python 編寫的。我們需要一個(gè)配置文件,其中包含每個(gè)用戶/設(shè)備的特定密鑰。我們必須在我們的主代碼文件中導(dǎo)入這個(gè)文件才能使用各種屬性。
(命名為 conf.py):
API_KEY = "XXXX" //Bolt Cloud API Key
DEVICE_ID = "BOLTXXXX" //Device ID of the Bolt Module
Bolt 模塊的 API 密鑰和設(shè)備 ID 可以如下確定:
- 按照https://cloud.boltiot.com/ 上的說明將您的 Bolt 設(shè)備連接到 Bolt 云。
- 之后將出現(xiàn)以下屏幕。螺栓設(shè)備 ID 以黃色突出顯示。
![pYYBAGOAcaeAdJ0hAABmKqy3kkU821.jpg](https://file.elecfans.com/web2/M00/7E/3F/pYYBAGOAcaeAdJ0hAABmKqy3kkU821.jpg)
- 轉(zhuǎn)到 API 部分以了解 API 密鑰。
![poYBAGOAcaqAeQztAAB1A0qFAlE893.jpg](https://file.elecfans.com/web2/M00/7D/B3/poYBAGOAcaqAeQztAAB1A0qFAlE893.jpg)
2.3 LDR 值到 LED 值的映射
LDR 的值范圍是 0 到 1024,LED 的值范圍是 0 到 255。輸入到 LED = 255 - (從 LDR 輸出 / 4)進(jìn)行了近似 4:1 的映射。
3.代碼
?
3.1 自動(dòng)功能代碼
from boltiot import Bolt
import json,time //importing python libraries
mybolt= Bolt(conf.API_KEY,conf.DEVICE_ID)
def set_intensity(pin,value)
mybolt.analogWrite(pin,value)
def control(sensor_val):
led_int= 255-(sensor_val*(255/1024) #output value of led
return led_int
while True:
print("Reading sensor value")
resp_ldr=mybolt.analogRead('A0') #read LDR value from A)
data=json.loads(resp_ldr) #convert value to json format
print("Sensor value is: " + str(data['value'])) #print the value
try:
sensor_val=int(data['value'])
print("Light intensity")
led_float=control(sensor_value)
led_value=int(led_float)
print(led_value)
set_intensity('1',led_value)
# in case of any error
except error as e:
print("Error occured:- ")
print(e)
time.sleep(5)
3.2 Python的輸出
![pYYBAGOAca2AcGF2AABlu4YbO-8135.png](https://file.elecfans.com/web2/M00/7E/3F/pYYBAGOAca2AcGF2AABlu4YbO-8135.png)
3.3手動(dòng)功能
- 選擇產(chǎn)品選項(xiàng)卡,然后單擊添加產(chǎn)品。
- 輸入產(chǎn)品名稱并添加一個(gè)圖標(biāo)。
- 單擊配置此產(chǎn)品符號(hào),然后轉(zhuǎn)到代碼選項(xiàng)卡。
![poYBAGOAcbGAT0HPAAB_wNyLrIY891.jpg](https://file.elecfans.com/web2/M00/7D/B3/poYBAGOAcbGAT0HPAAB_wNyLrIY891.jpg)
- 命名并選擇文件類型為 html 并將以下代碼粘貼到代碼窗口中。
<html>
<head>
<title>Bolt IoT Platformtitle>
<script type="text/javascript" src="https://cloud.boltiot.com/static/js/boltCmmands.js">script>
<script>
setKey('{{ApiKey}}','{{Name}}');
var last_pwm_value=-1;
function updateBuzzer(){
var pwm_value=document.getElementById('pwm_value').value;
if(last_pwm_value!=pwm_value){
analogWrite(1,pwm_value);
document.getElementById('pwm_value_display').innerHTML=pwm_value;
}
last_pwm_value=pwm_value;
}
setInterval(updateBuzzer,1000);
script>
head>
<body>
pwm value:
<input type='range' id='pwm_value' min="0" max="255" value="0">
<div id='pwm_value_display'>0div>
body>
html>
- 單擊保存以保存您的配置,然后返回到產(chǎn)品屏幕。
- 單擊“將設(shè)備鏈接到此產(chǎn)品”,然后選擇您的 BOLT WIFI 模塊。
- 單擊“部署配置”圖標(biāo)以成功部署應(yīng)用程序并使用智能手機(jī) Bolt 應(yīng)用程序。
- 使用界面上的旋鈕控制光強(qiáng)度。
![pYYBAGOAcbSADtKyAABYchLNTkc219.png](https://file.elecfans.com/web2/M00/7E/3F/pYYBAGOAcbSADtKyAABYchLNTkc219.png)
?
- 使用IOT BOLT和SmartPhone控制LED的強(qiáng)度
- 使用Bolt IoT和智能手機(jī)控制LED的強(qiáng)度
- 使用Swift語言更改LED閃爍率
- pcb可讓您從電池消除器更改您的設(shè)備
- 更改AN-712(AD9625層5)
- 更改AN-753(AD9250陣列5)
- AN-331:將您的VGA設(shè)計(jì)從171/176更改為ADV471
- AN-805: 更改ADM1073的電流限值
- Protel99se如何批量更改文件屬性詳細(xì)教程說明 0次下載
- Xilinx濕度指示卡(HIC)的更改資料說明 5次下載
- MRF24WG0MA MB軟件議棧移植更改的詳細(xì)資料概述
- 廈華42寸電原板更改方案
- 如何更改Pads Layout(PowerPCB)的快捷鍵 0次下載
- 基于PDM的工程更改管理的研究與實(shí)現(xiàn)
- TFT字體更改器
- 更改KUKA C 4 Windows系統(tǒng)的密碼 1210次閱讀
- 如何查看及更改函數(shù)/函數(shù)塊的調(diào)用環(huán)境 1018次閱讀
- 如何更改“KukaUser”的初始密碼 2528次閱讀
- 博途案例:模塊更新與接口更改的實(shí)現(xiàn)方法 3157次閱讀
- 寄生參數(shù)分析設(shè)計(jì)過程及更改 1342次閱讀
- 強(qiáng)制Linux用戶在下次登錄時(shí)更改密碼 2217次閱讀
- 怎么樣才能把柵格從mil更改為mm 2751次閱讀
- 使用的I/O地址如何更改過程映像區(qū)范圍 1706次閱讀
- 如何更改VCK190單板啟動(dòng)模式 1279次閱讀
- 淺談STEP7-5.5-F程序FB塊中的更改連接 1871次閱讀
- ROHM Solution Simulator允許更改組件屬性來執(zhí)行仿真 1644次閱讀
- ad如何在pcb界面更改網(wǎng)絡(luò)的顏色 2.8w次閱讀
- 如何用AD更改PCB板子尺寸 9.9w次閱讀
- 規(guī)避嵌入式PCB工程更改的七大訣竅 4667次閱讀
- 七招教你規(guī)避嵌入式PCB工程更改 1076次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評論