以下作品由安信可社區(qū)用戶
KevinLi制作
01簡(jiǎn)介
使用2個(gè)不同功率的Led通過(guò)GPIO的PWM通道+三極管控制亮度

●供電:5V或3V
●控制:用網(wǎng)頁(yè)http單向控制,這是一個(gè)web_server的簡(jiǎn)單實(shí)例。
●管理界面:瀏覽器地址欄"設(shè)備ip/LAMP/",比如"http://192.168.0.127/LAMP"
視頻演示
https://www.bilibili.com/video/BV1MpX7YiEyd/?

點(diǎn)擊查看如何使用網(wǎng)頁(yè)控制2個(gè)led
02個(gè)人目的
這次項(xiàng)目是想嘗試DIY裝飾燈、測(cè)試三極管硬件電路、測(cè)試和學(xué)習(xí)web_server和html的API解析過(guò)程。
效果:實(shí)際使用時(shí),利用WB2-01s凸出來(lái)的卡座,卡到桌板縫隙或者掛起來(lái),兩面都有燈,負(fù)責(zé)不同區(qū)域照明。
03直接驅(qū)動(dòng)LED方式有DAC、PWM
DAC(數(shù)字信號(hào)轉(zhuǎn)為模擬信號(hào),直接進(jìn)行DC電壓調(diào)整,但01S沒(méi)有這個(gè)通道)
PWM(開(kāi)關(guān)電源,電壓不變,調(diào)節(jié)占空比方式,頻率足夠高人眼就感覺(jué)不出來(lái))
"臺(tái)燈應(yīng)該是 3125Hz 以上無(wú)危害"
這兩個(gè)方式和手機(jī)OLED調(diào)光方式有點(diǎn)關(guān)系,比如2khz的PWM調(diào)光已經(jīng)被稱為高頻護(hù)眼了。
04項(xiàng)目部署
build out留了項(xiàng)目同名的bin,是默認(rèn)at-think的wifi,可以改手機(jī)熱點(diǎn)直接使用;
(還有幾個(gè)編譯好的,我也忘了是不是自動(dòng)亮度循環(huán)測(cè)試的了)
壓縮包解壓到SDK的get-started,修改wifi信息,make -j6編譯,燒錄 即可。
(WB2或者博流的SDK都行,僅使用了httpd和pwm項(xiàng)目,預(yù)留了UDP方法)

05硬件介紹
WB2-01S僅有3個(gè)可用IO,引腳定義如下:
名稱功能說(shuō)明

ADC是讀取輸入用,沒(méi)DAC很可惜,PWM任選2個(gè)就好,這里選擇了IO4和RX來(lái)驅(qū)動(dòng)2個(gè)LED,這樣TX還可以串口輸出log。
LED
一個(gè)3.3~3.6v的1W大功率LED,因此需要5v供電 (3v也行但不清楚asm逆流問(wèn)題);一個(gè)2835LED,3v3供電就好;文檔寫(xiě)到IO口要下拉,(我沒(méi)下拉,上電瞬間就會(huì)爆閃)
NPN三極管 (S9013)
Rb計(jì)算太太太難了,圖中算出來(lái)的只能說(shuō)能用;似乎最高頻率支持30MHz。
測(cè)試PWM的頻率
bl602的PWM似乎最大支持20MHz;似乎三極管常用頻率是200~20KHz;目標(biāo)是3KHhz以上,項(xiàng)目目前是4KHz;我測(cè)試的500~1M都正常可用,5MHz不正常,不清楚為什么;

WB2-01S燒錄方法
根據(jù)安信可論壇大佬業(yè)余菜狗提示,WB2系列模組上電瞬間會(huì)進(jìn)入boot模式,這次外置燒錄器沒(méi)成功;使用ESP-01S的燒錄器,只接5個(gè)引腳,串口的4個(gè);ESP-01S燒錄器接到WB2-01S的en, 然后按WB2-01S燒錄器的rst按鍵就可以燒錄了;(ESP-01s燒錄器的按鍵是拉低rst;WB2-01S的en內(nèi)上拉所以懸空有效,rst是NC無(wú)效)
其他:
WB2-01S和WB2-01F的FLASH都是2MB,項(xiàng)目的HTML數(shù)組用const,注意大小;01S和01F都是3v3供電,ASM1117 5v-3v3的外圍電路、靜電保護(hù)、過(guò)流保護(hù)、二極管要注意,后者沒(méi)加。
06代碼介紹
網(wǎng)頁(yè)部分:
寫(xiě)完web轉(zhuǎn)為數(shù)組存起來(lái),實(shí)現(xiàn)了滑塊和數(shù)字框同步;
圖片元素僅供參考,個(gè)人學(xué)習(xí)用;
黃色部分為指示顏色用,不過(guò)還是有點(diǎn)小小問(wèn)題;
手機(jī)UA 顯示這個(gè)網(wǎng)頁(yè),框框不能自動(dòng)縮放,忽略!
httpd:
-參考SDK,設(shè)計(jì)了3個(gè)GET的API路徑,字符串匹配路徑(最笨的方法),返回給瀏覽器頁(yè)面(body等內(nèi)容);
- web設(shè)置亮度的思路是,瀏覽器發(fā)送GET請(qǐng)求"setLED",36行的"getState"還沒(méi)實(shí)現(xiàn);
- 另外:esp32的web_server的api面向?qū)ο蠓椒ǎㄔO(shè)置url和web的回調(diào))很好用。


PWM和UDP:
參考SDK,后者此項(xiàng)目沒(méi)用上。
07待改進(jìn)
web前端:代碼未整理,有多處冗余部分,刷新網(wǎng)頁(yè)沒(méi)有獲取當(dāng)前值;
httpd:還沒(méi)實(shí)現(xiàn) 普通API 返回給前端JSON信息與前端處理;
電路板:這是這個(gè)項(xiàng)目第一次打板,我是業(yè)余的,尺寸和5v電源供電 有偏移和錯(cuò)誤,但功能正常;串口引出了但沒(méi)用上;
選型:這次選WB2-01S是因?yàn)槲也粫?huì)燒錄WB2-01F,不過(guò)很遺憾吧ADC看成DAC了,只能用PWM方式調(diào)光了;
供電方式:電路板的5v引腳畫(huà)錯(cuò)了,現(xiàn)在是直連USB線取5V,沒(méi)接電池和升壓電路;
08個(gè)人建議
問(wèn)題:正常來(lái)說(shuō),接入外網(wǎng)MQTT、聯(lián)動(dòng)手機(jī)語(yǔ)音什么的會(huì)很方便,而這個(gè)項(xiàng)目需要訪問(wèn)內(nèi)網(wǎng)網(wǎng)址才能訪問(wèn);
解決辦法1.1:獲取網(wǎng)址方式(串口查看ip的log,路由器管理界面去看)
解決辦法1.2:路由器進(jìn)行MAC/ip綁定,設(shè)置快捷方式就好了。
進(jìn)一步:
不使用MQTT實(shí)現(xiàn)遠(yuǎn)程訪問(wèn):端口映射、公網(wǎng)ip+DDNS 或 內(nèi)網(wǎng)穿透;
易用性:nfc錄入網(wǎng)址/域名快捷方式,就可以一碰就訪問(wèn)啦;
我傾向于WEB的最大原因是,可以遠(yuǎn)程訪問(wèn)(如上配置端口映射)且簡(jiǎn)單網(wǎng)頁(yè)可以輕易轉(zhuǎn)為快捷方式的app,不必進(jìn)行安卓開(kāi)發(fā)。
09總結(jié)
這個(gè)帖子寫(xiě)了3.5H,希望http的思路部分可以幫到別人,注釋很亂求忽略,冗余測(cè)試代碼沒(méi)刪干凈;
這個(gè)項(xiàng)目的http和UDP部分是學(xué)習(xí)(web->udp)WOL后做出來(lái)的,畢竟只需要新增GET API綁定PWM設(shè)置就好,但畫(huà)電路板學(xué)習(xí)計(jì)算基極電阻Rb的時(shí)間占大頭;
原本還想做的是,同時(shí)可用藍(lán)牙控制這個(gè),但Wi-Fi網(wǎng)頁(yè)控制足夠方便就沒(méi)折騰了。


附件代碼:01s-lamp_server.v1.3_release-0318.zip
審核編輯 黃宇
-
三極管
+關(guān)注
關(guān)注
145文章
3723瀏覽量
128366 -
PWM
+關(guān)注
關(guān)注
116文章
5879瀏覽量
226176 -
WIFI
+關(guān)注
關(guān)注
82文章
5522瀏覽量
214009 -
安信可
+關(guān)注
關(guān)注
0文章
226瀏覽量
5123
發(fā)布評(píng)論請(qǐng)先 登錄
安信可小智AI語(yǔ)音模組實(shí)測(cè):實(shí)現(xiàn)語(yǔ)音控制關(guān)燈
【AI語(yǔ)音模組】自制小智管家?安信可Ai-WV01-32S測(cè)試體驗(yàn)
【W(wǎng)iFi+藍(lán)牙】智能門(mén)鎖、智能插座:用Ai-WB2系列,價(jià)格更低,性能更強(qiáng)
電子DIY 用Ai-WB2-12F模組做多功能無(wú)線彩燈控制器
【離線語(yǔ)音】安信可VC-01/02二次開(kāi)發(fā)篇:自定義音頻播放控制
安信可VC-01/02二次開(kāi)發(fā)篇: PWM輸出
輕松配置小智AI語(yǔ)音開(kāi)發(fā)板,安信可IOT小程序功能更新
安信可VC-01/02二次開(kāi)發(fā)篇: 事件和GPIO控制
【離線語(yǔ)音】安信可VC-01/02教程:中級(jí)入門(mén)篇
小智AI正式授權(quán)!安信可小安派語(yǔ)音AI開(kāi)發(fā)板更新啦
安信可AI語(yǔ)音開(kāi)發(fā)板AiPi-PalChatV1 + MCP,通過(guò)HomeAssistant自動(dòng)化控制設(shè)備
用WB2系列模組做一個(gè)433遙控網(wǎng)關(guān)
用安信可Ai-WB2-01S做一個(gè)可用網(wǎng)頁(yè)控制的簡(jiǎn)易燈
評(píng)論