蘇一菲 余威明
摘 要:為了方便家長自主檢測青少年視力,設計了一款多模式智能視力檢測裝置。該裝置以STM32F103RBT6作為主控制器,結合TFT真彩屏、NRF24L01無線傳輸模塊、VL53L0X激光測距模塊,BT06藍牙模塊。該裝置具備紅外遙控識別、搖桿識別、手勢識別多種模式,使視力測試更具趣味性、便捷性和準確性,更適合青少年家用視力檢測。
關鍵詞:STM32F103RBT6;視力測試;多模式;無線傳輸
我國青少年近視率居高不下,并呈現(xiàn)逐年上升的態(tài)勢。其中,初中生近視發(fā)病率已超過30%,高中生近視發(fā)病率已超過70%,青少年近視的防治越來越得到了學生、家長及社會的關注。視力測試是醫(yī)學上反映視力狀況的重要手段,家用視力檢測一般是在墻壁上掛上視力表,由家長配合孩子檢測,這種檢測方式較為枯燥,孩子往往存在不配合的現(xiàn)象,家長也不能得到較為準確的視力測試結果,由于醫(yī)療資源的緊缺,去專業(yè)醫(yī)院檢測耗時耗力。本文提出了的基于STM32多模式智能視力檢測裝置的設計方案,具備紅外遙控識別、搖桿識別、手勢識別多個模式,由使用者自主進行視力的測試,在TFT屏上按視力測試規(guī)律顯示視力圖標,并利用軟件算法實現(xiàn)了視力的自動診斷。該檢測裝置還具備視力測試數(shù)據(jù)的存儲功能,以圖表形式展示視力變化狀況,對視力變化進行長期跟蹤;同時可通過藍牙模塊將數(shù)據(jù)傳至手機端,并通過手機的網(wǎng)絡傳送到遠程云端數(shù)據(jù)庫中,為醫(yī)生提供視力變化的一手數(shù)據(jù),在實現(xiàn)視力測試的同時還可以起到預警及遠程監(jiān)護的作用。另外系統(tǒng)還具有坐姿提醒以及照度檢測功能。該設計方案功能強大,價格低廉,兼具趣味性和人性化的服務,具有較強的應用推廣價值。
一、系統(tǒng)總體設計方案
系統(tǒng)的主要組成部分包括:以STM32F103RBT6 作為控制器的主機,以及向測試主機發(fā)送視標方向識別信號的手勢識別子機、搖桿識別子機和紅外遙控子機,主機與子機通過紅外接收模塊和NRF24L01無線傳輸模塊進行通信。系統(tǒng)組成框圖如圖1所示。
二、系統(tǒng)硬件設計
(一)測試主機電路設計
測試主機采用以基于ARM的 Cortex-M3內(nèi)核的STM32F103RBT6作為主控芯片,用SD卡存儲0.1~2.0各組視力圖標,EEPROM芯片存儲測試的視力數(shù)據(jù),采用480×320分辨率高清TFT屏為顯示裝置,用以顯示“E”視力圖標、操作界面、視力測試歷史數(shù)據(jù)、實時時間、溫度等數(shù)據(jù)。通過HS0038一體化紅外接收頭作為紅外接收器件,接收紅外遙控器發(fā)送的38KHZ調(diào)制信號,通過STM32利用外部中斷對紅外信號進行解碼,識別出紅外遙控子機發(fā)出的對應的遙控按鍵。利用NRF24L01無線傳輸模塊接收搖桿識別子機以及手勢識別子機發(fā)出的使用者的視標方向判斷結果,進行比對,得出視力測試結果。同時可通過BT06藍牙模塊把測試數(shù)據(jù)傳送至手機端,便于進行數(shù)據(jù)跟蹤。另外,還增加了坐姿提醒功能以及照度檢測功能。用VL53L0X激光測距模塊進行距離測量,當閱讀時使用者坐姿不當時,通過WT588D語音模塊對其進行坐姿提醒。采用照度傳感器TEMT6000檢測出環(huán)境光照值,對使用者進行照度提示。測試主機硬件結構如圖2所示。
(二)紅外遙控子機電路設計
紅外遙控子機采用的是SC6121紅外遙控發(fā)射芯片。SC6121是一種用于紅外遙控系統(tǒng)中的專用發(fā)射集成電路,采用CMOS工藝制造。它可外接32個按鍵,其中有三組雙重按鍵。紅外遙控子機將使用者遙控按鍵的方向信號編碼后發(fā)送給測試主機,測試主機通過紅外接收電路接收信號,通過測試主機內(nèi)部的微處理器解碼后,識別出使用者的視標方向信號,并與測試主機液晶屏顯示的視標進行比對,確定使用者的方向判斷是否正確。遙控子機的電路圖如圖3所示。
(三)搖桿識別子機電路設計
搖桿識別子機采用單片機STC15W404AS作為控制器。使用者的搖桿操作動作通過雙軸搖桿傳感器模塊變換為x、y 方向?qū)碾妷褐?,STC15W404AS對其進行A/D轉(zhuǎn)換后,進行視標方向識別;并將識別結果通過NRF24L01無線傳輸模塊發(fā)送至測試主機。搖桿識別子機電路結構如圖4所示。
(四)手勢識別子機電路設計
手勢識別子機戴在使用者手指上。采用單片機STC15W404AS作為控制器,利用ADXL345 三軸加速度傳感器模塊識別出使用者的手部向下、向上、左傾、右傾等信息,并將這些動作信息轉(zhuǎn)換為視標的上下左右的四個方向的信號,通過NRF24L01無線傳輸模塊傳送給測試主機。測試主機的無線接收電路接收到信號后送給主機控制器進行識別處理。手勢識別子機電路結構如圖5所示。
三、系統(tǒng)軟件設計
本系統(tǒng)主機采用了基于ARM Cortex-M3內(nèi)核的嵌入式處理器STM32F103RBT6,該處理器內(nèi)置128KB的FLASH、20KB的SRAM、2個SPI、3個串口、1個USB、1個CAN等通信接口,內(nèi)置RTC、擁有51個GPIO口,其GPIO口可允許5V電壓,CPU工作頻率達到了72MHZ,內(nèi)置2個12位的A/D轉(zhuǎn)換器,3個通用功能的16位定時器[1]。
本系統(tǒng)軟件設計主要包括主機視力測試程序、視力測試數(shù)據(jù)存儲、回顯以及藍牙傳送程序、紅外遙控解碼程序、搖桿動作識別程序以及手勢識別程序。
(一)主機視力測試程序
以接收到的手勢識別子機信號為例,將手勢測試信號發(fā)送給測試主機后,測試主機通過無線接收電路接收信號,通過測試主機內(nèi)部的微處理器解碼后,識別出使用者的視標方向判斷信號,并與測試主機液晶屏顯示的視標進行比對,確定使用者的方向判斷是否正確。主機視力測試程序的流程圖如圖6所示。
視標從0.1~2.0共14組,每組有右、下、左、上四個方向圖標,共56張視標圖片。圖片按順序存入SD卡中,根據(jù)存儲位置順序,每張圖片有對應的存儲編號(index)。為了避免使用者背記方向圖標,每個視力點的四個方向的圖標將隨機出現(xiàn)一個方向的圖標。利用ADXL345 三軸加速度傳感器模塊識別出使用者的手部向下、向上、左傾、右傾等信息,并將這些動作信息轉(zhuǎn)換為視標的上下左右的四個方向的信號,通過NRF24L01無線傳輸模塊傳送給測試主機。測試主機的無線接收電路接收到信號后送給主機控制器進行識別處理。并與內(nèi)部的視力圖標的方向進行比較,如手勢方向與內(nèi)部圖標方向一致,則視力測試正確,否則測試錯誤。
(二)測試裝置手機端APP和遠程云端設計
為了便于家長和醫(yī)生對青少年視力進行監(jiān)護追蹤,本裝置還設計了手機端AAP和醫(yī)生遠程云端管理系統(tǒng)。APP可實現(xiàn)視力測試數(shù)據(jù)同步、歷史數(shù)據(jù)回看,護眼知識推送的功能。同時還可以通過網(wǎng)絡傳送至遠程云端,進行數(shù)據(jù)追蹤。手機端APP登陸界面如圖7所示,云端醫(yī)生監(jiān)控顯示界面如圖8所示。
四、結論
本文提出了一款基于STM32的多模式智能視力檢測裝置的設計與實現(xiàn)方法,詳細介紹了系統(tǒng)的硬件結構和視力測試算法。本裝置測試結果準確,采用多模式進行測試,使視力測試更具趣味性、便捷性和準確性,另外提供了坐姿提醒、照度檢測、手機端和云端監(jiān)護的貼心和人性化服務功能,具有良好的應用推廣價值。該款視力檢測裝置已完成了樣機的開發(fā),各項功能運行良好。
參考文獻:
[1]STMicroelectronics.STM32F103RB數(shù)據(jù)手冊,2009.
[2]宋丹,司夏巖.基于STM32的新型視力儀的設計[J].電腦知識與技術,2017(6):195-196.
[3]吳家耿,林劍萍,余振超.智能兒童視力測試儀[J].數(shù)字技術與應用,2018(1):157-158.
[4]魏保立,李秀玲.智能兒童視力測試儀[J].電子制作,2014(4):23-24.
[5]楊光祥,梁華,朱軍.STM32單片機原理與工程實踐[M].武漢 武漢理工大學出版社,2013(6):235-263.
作者簡介:蘇一菲(1981—),女,壯族,廣西桂林人,碩士,講師,主要研究方向:工業(yè)機器人技術。