寶,這是什么鏡?美顏濾鏡!
最近,杭州天天下雨。
清早,睜開雙眼,依舊是陰霾霾的天氣,窗外下著淅瀝瀝的小雨。像往常一樣,準備洗漱。只感覺,身后一陣風吹過,女友拿著鏡子直往窗戶那邊沖!
此刻,涂鴉“攻城獅”小張腦海中蹦跶出一百個問號???這是什么日常迷惑行為???
原來,今天下雨,由于家中光線太暗,女友為避免眉毛不變成蠟筆小新,腮紅不變?yōu)槿毡舅嚰?,粉底避免刷墻般瘆人,只能去借助大自然的光芒完善自己的妝容。
小張哭笑不得,不得不感嘆一句:做女人真難!轉念一想,既然需要自然光,那親自 DIY 一款智能化妝鏡肯定能解決女友的“化妝難”煩惱。不得不說:真是個體貼入微的小哥哥呢~
小編似乎聞到一絲絲戀愛的酸臭味~
你以為就這樣嗎?放心,后面還有一棵檸檬樹等著你!
先來瞅瞅這款寶藏“魔鏡”~
女神都毫無抵抗力的多功能智能“魔鏡”!
01
功能設計
功能 | 說明 |
開關 | 觸控按鍵& App 雙控制 |
燈光模式 | 冷光、暖光、自然光 |
調光 | 無極調光 |
顯示 | 時間、天氣、溫度、低電量圖標 |
人體感應 | 檢測到人體燈亮,未檢測到人體 60 s后燈熄滅 |
供電方式 | 支持有線&無線充電 |
斷電記憶 | 斷電重啟后恢復上一次設置(模式&亮度) |
點擊:即可查看完整開發(fā)資料。
https://developer.tuya.com/cn/demo/smart-mirror?_source=49f22ca17e17c1e74df4fd2cdc460587
02
整體方案
Bluetooth LE 云模組作為主控方便接入涂鴉云實現(xiàn) App 端智能控制,搭配燈圈、屏幕、PIR 感應器來實現(xiàn)我們的多種燈光模式、時間顯示以及人體感應的功能,另外可以增加一個四路觸摸按鍵實現(xiàn)實體觸控控制。
為實現(xiàn)上面的功能,小張說:智能鏡的整體搭建方案是選用涂鴉智能的 Wi-Fi&
03
硬件方案
主控選擇涂鴉 Wi-Fi & Bluetooth LE 雙模模組,該模組支持多種通信協(xié)議、多種尺寸規(guī)格、多種工作溫度、多種焊接方式的一系列超高性價比自研模組,廣泛應用于各種產品類型和開發(fā)方式。
屏幕選擇型號為 MF219 2.19 寸集成串口屏,屏幕內置了國標一級、二級簡體中文字庫和英文 ASCII 字符集,同時開放內部點陣 DDRAM,能夠在屏幕上的任意位置顯示圖片及圖形。同時支持 UART 接口方式,接線比較簡單;且用戶只要幾條簡單指令就能設計出美觀絢麗的用戶界面。
觸控按鍵采用 BS814A-1 觸摸芯片,BS81x 系列芯片具有 2~16 個觸摸按鍵,可用來檢測外部觸摸按鍵上人手的觸摸動作。該系列的芯片具有較高的集成度,僅需極少的外部組件便可實現(xiàn)觸摸按鍵的檢測。
燈珠:暖光燈珠采用HL-AM-2835H489W-S1-08HL-HR3;冷光燈珠采用HL-AM-2835H421W-S1-08-HR3;另外為實現(xiàn)自然光和無極調光功能增加兩顆LED驅動OC7141。
人體感應:選用一顆微型人體感應 PIR
供電系統(tǒng):
整機供電電源芯片:采用兩個 SY8089A1AAC 實現(xiàn),前面一顆芯片可以將 2.5-5.5V 的輸入電源穩(wěn)定到 4.35V 為鋰電池充電,后面一顆可以將電池輸出電壓穩(wěn)定到 3.3V 為主控、觸摸、燈圈、屏幕、PIR 供電。
電池:選用 3.8V 6000mAh 的聚合物電池,可以滿足燈圈長時間供電
電量檢測:用 CBU 模組的 ADC 引腳實現(xiàn),通過 ADC 讀取電池的電量。
無線充電:無線充電主要由兩部分組成,無線充電****模塊和無線充電接收模塊,我們直接從網上采購。
主控原理圖:
點擊以下鏈接,即可查看完整詳情開發(fā)資料(內附原理圖+源代碼)。
https://developer.tuya.com/cn/demo/smart-mirror?_source=49f22ca17e17c1e74df4fd2cdc460587
結構設計:
結構部分由鏡面、鏡面遮光板、鏡面卡、燈罩、燈罩卡、機身、機身底、充電頂、充電底九部分組成。
04
創(chuàng)建產品
下面是小張通過涂鴉 IoT 開發(fā)平臺,讓化妝鏡實現(xiàn)真正的聯(lián)網與智能化。
登錄涂鴉智能 IoT 平臺創(chuàng)建產品,點擊創(chuàng)建產品,在標準類目欄的最下方找到“找不到品類”,點擊進入自定義產品創(chuàng)建頁面。(詳細創(chuàng)建步驟可參考平臺內操作指導)
05
環(huán)境搭建
小張說:智能化妝鏡是基于 BK7231N 平臺進行的 SoC 開發(fā),開發(fā)所用的涂鴉通用 SDK 編譯需要 linux 環(huán)境,首先要安裝 linux 開發(fā)環(huán)境,然后從涂鴉倉庫拉取包含 SDK 環(huán)境的 Demo 例程 。
注:GitHub 具體地址通過關注“涂鴉開發(fā)者”,回復“化妝鏡”,即可獲取哦~
06
功能實現(xiàn)
觸摸按鍵:在tuya_mirror_key.c文件中,封裝了app_key_init()、app_key_scan()兩個函數(shù)。app_key_init()用于初始化按鍵IO,app_key_scan()用于掃描按鍵按下情況獲取鍵值;
屏幕顯示:Demo選用的是一個塊 2.19 寸集成模塊串口屏,光靠屏幕內置的字庫和圖案所呈現(xiàn)的效果肯定是毫無美感的,我們需要自己準備字符素材,把收集好的圖片素材打包為 bin 文件燒錄至屏幕模組里即可;其次在例程的 tuya_mirror_screen.c 里面封裝了屏幕初始化函數(shù) screen_init() 和各個元素的顯示函數(shù): screen_display_time()、screen_display_week()、screen_display_year()、screen_display_day 等,在應用線程中調用時傳入獲取到的本地時間和日期即可在屏幕上顯示出來。
時間和日期獲?。阂@取本地時間,首先需包含頭文件 uni_time.h。定義一個本地時間結構體變量,然后作為傳參調用 uni_local_time_get() 接口獲取時間
PWM 驅動燈板:Demo 使用了一冷一暖兩種 LED 燈,通過輸出兩路 PWM 驅動,實現(xiàn)燈光亮度可調和冷暖色的切換。例程中有關 pwm 的初始化和啟動、占空比設置等相關代碼都實現(xiàn)在 tuya_mirror_pwm.c 文件中。
人體感應:Demo 還有一個人體感應開關燈光和屏幕的功能,是通過一個 PIR 傳感器來簡單實現(xiàn)的。該傳感器會在檢測到人體運動的時候輸出高電平,簡單易用。直接寫一個讀取連接傳感器 IO 的電平的函數(shù),然后把它放到線程里周期運行,并在讀到高電平的時候保存 PIR 狀態(tài)在設備數(shù)據(jù)結構體當中,然后另一個線程對設備數(shù)據(jù)結構體中 PIR 的狀態(tài)進行判定,當設備打開人體感應功能,且設備總開關處于打開的情況下,PIR 檢測到有人的時候將會打開燈光開關,同時啟動定時器。當定時器觸發(fā)進入中斷時將會關閉燈光開關。
電量檢測及顯示:這個功能通過 ADC 采樣得到電池電壓,再根據(jù)電壓值預估電池剩余電量,同時把之前屏幕素材收集階段準備的幾張電池圖案顯示在屏幕上。
07
編譯和燒錄
在 linux 終端輸入指令運行 SDK 環(huán)境目錄下的 build_app.sh 腳本來編譯代碼生成固件,指令格式為 sh build_app.sh APP_PATH APP_NAME APP_VERSION:
固件生成路徑為:apps->APP_PATH->output 。燒錄完成之后就可以進行功能調試了 至此,一款帶有多種燈光模式,既可以顯示時間,又可以智能感應開關的化妝鏡就完成了。你與女神的距離,可能就差這一款多功能智能“魔鏡”,立即為她升級美妝“裝備”!
點擊:https://www.wjx.cn/vj/tpAzP8a.aspx
*博客內容為網友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。