王士杰 劉鑫 劉狀
摘 要 針對市場上的顯示器位置調節器存在種類少、非智能化等問題,研究了成本低、智能化、可以有效預防頸椎病的調節器;本設計采用52單片機作為控制系統,通過按鍵輸入指令,單片機對按鍵的高低電平進行判斷,判斷高低電平后驅動A4988微步電機驅動器,控制相應的步進電機運轉,機械手臂可以靈活轉動,從而對顯示器位置進行調節;通過多個超聲波探測器協同工作來定位人體的大致位置,從而實現人臉位置的識別以及久坐提醒的功能。本設計有效降低了成本,節約了空間,可以有效預防頸椎病的發生,極大地滿足了日常生活的需要,對上班族和學生具有很大的使用價值。
關鍵詞 52單片機;A4988;預防頸椎病
引言
科技發展迅速人們對于電腦的依賴性越來越強,各種頸椎問題日益凸顯。目前市場上出現的可調節的電腦顯示屏需用戶手動進行調整存在一定弊端,無法滿足用戶對智能化硬件的需求。本設計依據面部識別可在一定范圍內自動調整位置,達到顯示器隨用戶活動的目的。有效預防和改善長期使用電腦的人群出現的各種頸肌肉損傷頸椎疾病的問題,以達到對頸椎病的自我治療。
1 硬件設計
設計結構圖如圖1所示,本方案設計由以下及部分組成:單片機控制單元、按鍵檢測單元、步進電機驅動單元、步進電機電路、蜂鳴器電路、人臉識別單元、電源電路。
本設計采用的A4988微步電機驅動器,內置轉換器,操作簡單;用于以全步,半步,四分之一,八分之一和十六分之一步模式操作的雙極步進電機;輸出驅動性能可達35V及±2A [1]。
電源通電,單片機上電復位后,立即對四個步進電機進行控制,單片機電路持續的監測按鍵控制電路的按鍵情況,并對按鍵按下后電平的變化做出及時的響應,將信號傳給驅動板電路,從而控制步進電機工作。不同按鍵對應不同功能,通過接入單片機的數據傳輸口不同,單片機可做出準確的識別。本設計采用的STC89C52RC單片機,是新一代高速、低功耗的單片機,擁有靈巧的8位CPU使得STC89C52RC單片機為眾多嵌入式控制應用系統提供了超有效、高靈活的解決方案[2]。
1.1 單片機控制單元
單片機處理電路如圖1-2所示,單片機P1.0,P1.1分別控制電機1的速度和旋轉方向,其中,STEP1為輸出脈沖信號,通過調節信號周期可以控制步進電機的轉速,DIR1為輸出高低電平,不同電平對應不同方向。P1.2,P1.3分別控制電機2的速度和旋轉方向,以此類推控制四個電機。關于按鍵信號統一由P2口、P0.6口和P0.7口完成采集,P2口、P0.6口和P0.7口長期置于高電平,當不同按鍵按下后,與地接通形成低電平信號,其中,P0.6口為手動控制信號檢測,P0.7口為自動控制按鍵檢測,P2口為單一電機控制信號檢測。
1.2 按鍵檢測單元
本電路共有10個按鍵,2個為模式選擇,可以選擇自動模式與遙控模式。
有8個為四個電機的正反轉方向控制按鍵,當按鍵按下后,單片機的I/O口與地相連,為低電平。其中,自動模式按下即執行自動模式,再次按下停止,手動模式按下即執行手動模式,另外8個按鍵方可進行操作,再次按下手動模式關閉。
1.3 電源電路
本設計采用USB供電,本設計中單片機工作電壓為3.3V~5.5V,A4988工作電壓為3V~5.5V,USB供電完全能夠滿足要求,A4988的驅動電壓為8V~15V,而步進電機采用的是12V兩相四線步進電機,USB無法達到步進電機的工作電壓和A4988的驅動電壓,所以這里直接使用直流穩壓電源調到12V進行供電。
2 軟件設計
軟件設計是基于STC89C52RC單片機的開發與運用,其在編程上具有調試比較方便的特點,適用于顯示器調節上的信號處理;系統軟件流程圖如圖2所示。
2.1 自動模式
根據頸椎操的頻率自動調節顯示器位置,達到治療和預防頸椎病的目的。頸椎操頻率如表4所示[3]。
2.2 人臉檢測
本設計通過支架的四個超聲波探測器檢測到的距離判斷出此時此刻顯示器是否有人使用以及人臉的方向。如果左側兩個超聲波探測器任意一個或者兩個同時檢測到而右側兩個未檢測到閾值范圍內信號,則認為此時用戶頭部正向左側位置移動,通過單片機處理,顯示器向左位置旋轉;如果右側兩個超聲波探測器任意一個或者兩個同時檢測到而左側兩個未檢測到閾值范圍內信號,則認為此時用戶頭部正向左側位置移動,通過單片機處理,顯示器向右位置旋轉;如果四個同時或者下面兩個檢測到閾值信號,則認為用戶頭部基本位置不變,顯示器不進行位置調節。四個超聲波探測器在設置的時間內至少任意一個檢測到閾值信號,則認為用戶有久坐的可能,通過蜂鳴器提醒用戶。
2.3 軟件流程
52單片機程序具體執行的結果由用戶輸入的指令所來控制,通過定時中斷服務程序進行狀態選擇,輸出對應的脈沖信號。
系統軟件部分由按鍵檢測單元、步進電機驅動單元、主函數單元、定時中斷程序單元組成。在單片機通電初始化后,用戶輸入相應的指令,經過按鍵檢測傳送到52單片機控制器,52控制器對傳送來的信號進行電平的判斷,當按鍵檢測到自動模式時,定時中斷服務程序輸出脈沖,控制顯示器調節器依據頸椎操的頻率進行移動;若無,則單片機控制器再一次判斷是否為手動模式,若為手動模式,則調節器根據其余對應按鍵的按下進行手動調節,否則程序回到按鍵檢測,等待按鍵是否按下,軟件流程圖如圖2-1所示。
3 測試結果與分析
3.1 測試結果
首先對本設計的自動模式進行測試,當按下自動模式按鍵時,單片機檢測到電平發生的變化,機械手臂做出相應的動作,測試得到的頸椎操的頻率和預期設計相差不多,基本吻合。
其次是對本設計的手動模式進行測試,當按下手動模式的開關后,可以通過其余的八個按鍵進行控制,做出上下、左右和前后的調節,調節器正常工作。
最后是對久坐提醒進行測試,一般連續坐2小時以上并沒有站起活動和改變坐姿都算久坐。測試者在顯示器前工作約2小時20分鐘時蜂鳴器發出警報,測試符合要求。
3.2 實驗數據
根據設計要求確定穩壓電源的主要參數,單片機及A4988工作電壓為5V,步進電機工作電壓和A4988驅動電壓為12V。
3.3 測試分析和總結
測試結果滿足實驗要求,更換尺寸相差在5英寸以內的顯示器,對其進行測試,測試所得誤差皆在誤差允許范圍內。
本設計基于52單片機控制,利用步進電機作為驅動模塊,結合了A4988芯片的優質特性,實現了顯示器位置的智能調節,測試結果也符合預期的設想;其低成本、智能化、高靈敏度,為長期使用電腦的工作者預防頸椎病帶來了福音。
4 結束語
在整個設計過程中,基于52單片機控制器作為控制核心;硬件機械部分主要介紹了顯示器調節器各部分的尺寸以及具體的工作方式;硬件電路方面主要設計了STC89C522RC單片機處理電路、按鍵控制電路和A4988步進電機驅動電路;軟件方面主要設計了手動模式與自動模式;此設計就是針對現代化的辦公環境下辦公族和長期伏案工作,僵著脖子低頭看屏幕,工作中姿勢性勞損、過度勞累等出現的種種問題的人群著手研發的一款進行頸椎自我治療的產品。
參考文獻
[1] 藍杰,張浩然.基于STM32的微型步進電機驅動控制器設計[J].微型機與應用,2015,34(01):43-46.
[2] 宋慧超.基于STC89C52的計算器設計與仿真[J].科技創新導報,2015,(29):159-160,162.
[3] 劉存根,彭再如,劉雪勇.頸椎操對大學生頸型頸椎病干預效果分析[J].中國運動醫學雜志,2011,30(03):279-281.