Task #234
是由 凱鋒 王 於 3 個月 前更新
h3. 一、何謂3D光譜
以前我們從nsp32所收到的資料都是一串一維array,
列出來看其實就是340,345,350...1010mm的個別波長的強度,
把它製成圖片就如圖一,上一個版本做的就是這個
所謂的3D-PPG就是指把時間軸加進去,如圖二
時頻譜就是把高度(強度)壓扁改成用顏色顯示,縱軸是波長,橫軸是時間,
這也是此裝置所要顯示的圖,如圖三,而實際上,我裝置上使用的顏色區間如圖四。
圖一
!clipboard-202409041630-cjjxa.png!
圖二
!clipboard-202409042036-y655a.png!
圖三
!clipboard-202409042333-dp0lq.png! !clipboard-202409042036-vjllm.png!
圖四
!clipboard-202409042041-nbfoy.png!
h3. 二、UI介面介紹
可以先實際操作裝置,以下是LCD螢幕上畫面的功能解釋
# times從資料收到的第一筆計時到最後一筆,此測量值為沒有正規化且存小數點後10位之速率(約1秒10筆)
hint:當SD卡裡的資料只有單純裝置存的資料時,速度最快(原因不明)
# 為上述所說之時頻圖,此圖之資料有經過正規化(SD存的沒有經過正規化),數值分6個區間顯示,黑色(0-0.16)、藍色(0.16-0.33)、綠色(0.33-0.5)、黃色(0.5-0.66)、橘色(0.66-0.83)、紅色(0.83-1)
# *按鍵Start* -
按下後過半秒光源模組會亮,然後會變成Stop,時頻圖會清除後一筆筆顯示資料,同時SD卡的部分也會新開一個csv檔一筆筆的存,直到存完結束畫面會定格,就是一整張時頻圖,按鍵變回Start。
若在存的途中,Stop被按下,則畫面也會定格,按鍵變回Start重新開始,則csv檔存的資料也會是不全的
*按鍵Detect* -
目前無功能,等有AI模型可以部屬
*按鍵Reset* -
為esp32的軟體重啟,程式重跑
# 當插電時,程式進入setup,會檢查有沒有SD卡連接,有的話顯示SD connected,沒有的話則顯示SD Failed。
注意:因為SD卡的initialize在setup,所以當initialize後在插SD卡或原本有SD卡在拔出,程式會當掉,所以要利用按Reset鍵前或拔電,插SD卡後,按Reset鍵或插電。
# 顯示當下畫面上資料儲存的檔案(從/AWPPG0,若本來就存在則從/AWPPG1,往後推算亦是如此),若沒有SD卡就都會顯示/AWPPG0
!clipboard-202409042150-wwfem.png!
h3. 三、整合程式重現AWPPG的UI介面及功能
請先完成 http://52.192.109.97/issues/231 裡的1~4
完成後請整合1~4的程式,並實現上述所介紹的UI介面,可參考 https://github.com/Health-Gather/AWPPG_Device/blob/main/nsp32_all.zip 裡面有完整的程式
返回