亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于μC/OS—II的睡枕控制系統(tǒng)設(shè)計

        2016-05-30 10:48:04王蔚揚丁嘉月汪鵬洪查寧雯李曉寧
        科技創(chuàng)新導(dǎo)報 2016年19期

        王蔚揚 丁嘉月 汪鵬洪 查寧雯 李曉寧

        摘 要:介紹了一種采用STM32F103芯片,并基于嵌入式實時操作系統(tǒng)μC/OS-II的睡枕控制系統(tǒng)的研究設(shè)計。針對睡眠時因翻身產(chǎn)生的睡枕高度不適,在用戶睡眠時通過三軸加速度傳感器MMA7361LC采集數(shù)據(jù)分析用戶睡眠姿態(tài),進而通過芯片控制充放氣裝置對睡枕內(nèi)置氣囊高度進行實時地調(diào)節(jié)。該系統(tǒng)相比傳統(tǒng)基于單任務(wù)機制的控制系統(tǒng)具有更好的實時控制性能和可靠性能。經(jīng)過調(diào)試驗證,系統(tǒng)能滿足用戶睡姿數(shù)據(jù)的實時采集和枕頭高度調(diào)節(jié)要求。所設(shè)計的控制系統(tǒng)可用于數(shù)據(jù)實時采集和反饋控制等復(fù)雜系統(tǒng)中。

        關(guān)鍵詞:STM32 μC/OS-II 加速度計 任務(wù)調(diào)度 消息郵箱

        中圖分類號:TP271+.5 文獻標(biāo)識碼:A 文章編號:1674-098X(2016)07(a)-0095-04

        Design of the Pillow Control System Based on μC/OS-II①

        Wang Weiyang Ding Jiayue Wang Penghong Zha Ningwen Li Xiaoning

        (School of Information & Electronic Engineering, Zhejiang Gongshang University, Hangzhou Zhejiang, 310018, China)

        Abstract: A pillow control system based on STM32F103 and embedded real-time operating system μC/OS-II is designed in this pager. Analyzing the users posture of sleeping by the acceleration sensor MMA7361LC, the system uses the air pumps and release valves to adjust the height of the balloons in the pillow. The system has better real-time control performance and reliability than the traditional system based on a single task. After experiments, the design of the control system can meet the requirement of real-time data acquisition and pillow height adjustment. And it can be applied to complex systems which have real-time data acquisition part and feedback control part.

        Key Words: STM32; μC/OS-II; Accelerometer; Task scheduling; Mail box

        枕頭高度不合適會對我們的頸椎健康造成影響?,F(xiàn)在市面上的枕頭大多都為普通枕頭,高度不可調(diào)節(jié)。用戶睡眠時無意識翻身,會使枕頭高度處于一個不合理的狀態(tài),影響我們的頸椎健康。相比之下,記憶枕雖然能實現(xiàn)枕頭高度符合個人需要,但它在用戶改變睡姿后枕頭的形態(tài)改變較為緩慢,實際使用效果并不理想。因此,該文設(shè)計了一個能在用戶睡眠時根據(jù)睡姿來調(diào)節(jié)高度的智能睡枕[1]。系統(tǒng)基于嵌入式實時操作系統(tǒng)μC/OS-II,采用STM32單片機實時采集傳感器數(shù)據(jù),對用戶睡姿進行判斷,并進行反饋,從而控制睡枕高度。系統(tǒng)有足夠的實時性和穩(wěn)定性,能夠滿足用戶所需睡眠時對睡枕高度的實時控制要求。

        1 系統(tǒng)整體方案設(shè)計

        該系統(tǒng)設(shè)計由硬件與軟件兩部分構(gòu)成。硬件以STM32處理器作為主控芯片,三軸加速度傳感器采集數(shù)據(jù)分析用戶睡姿,睡枕內(nèi)置氣囊外接微型充氣泵以及泄氣閥。整個睡枕控制系統(tǒng)設(shè)計有按鍵操作、TFT-LCD液晶屏顯示和氣泵控制功能。系統(tǒng)可增設(shè)實時時鐘顯示和鬧鈴功能,實用性強。

        所設(shè)計的睡枕控制系統(tǒng)的硬件平臺結(jié)構(gòu)如圖1所示。

        傳統(tǒng)程序設(shè)計是基于單任務(wù)機制的,在實際應(yīng)用中如果其中一個任務(wù)運行出現(xiàn)了錯誤,可能直接導(dǎo)致系統(tǒng)程序跑飛或者陷入死循環(huán)而無法工作。因此,系統(tǒng)軟件以嵌入式實時操作系統(tǒng)μC/OS-II為基礎(chǔ),該操作系統(tǒng)最初便是為微控制器應(yīng)用設(shè)計的,有著內(nèi)核小、多任務(wù)、可裁剪、實時性好、系統(tǒng)服務(wù)豐富和使用方便等特點,廣泛用于飛行器、醫(yī)療設(shè)備、手機通信和工業(yè)控制等各類產(chǎn)品中[2,3]。μC/OS-II可以支持包括8個系統(tǒng)保留任務(wù)在內(nèi)的多達64個任務(wù),滿足一般控制系統(tǒng)的任務(wù)數(shù)量要求,且系統(tǒng)本身具有任務(wù)調(diào)度和任務(wù)監(jiān)控功能,使系統(tǒng)具有較高的實時性和可靠性,完全適用于睡枕系統(tǒng)設(shè)計的需要。

        2 系統(tǒng)的硬件部分

        2.1 供電電路設(shè)計

        系統(tǒng)采用6 V直流穩(wěn)壓電源作為電源輸入。由于STM32控制器芯片、MMA7361LC和LCD顯示屏均采用3.3 V直流供電,所以采用AMS1117-3.3芯片將輸入電源降壓給其供電。該降壓模塊設(shè)置有LED燈,當(dāng)模塊正常工作輸出電壓時LED燈亮。電源另一路則直接以6 V直流接入電路給充氣泵及泄氣閥供電。降壓模塊電路如圖2所示。

        2.2 主控芯片外圍電路設(shè)計

        主控芯片采用意法半導(dǎo)體(ST)集團的基于ARM Cortex-M3內(nèi)核的STM32F103ZET6芯片,該控制器由3.3 V直流電壓供電,最高工作頻率可以達到72 MHz,并且芯片內(nèi)已經(jīng)集成12位逐次逼近型模擬數(shù)字轉(zhuǎn)換器(ADC)[3]。該ADC測量通道較多,可以支持測量16個外部信號源,各通道A/D轉(zhuǎn)換均可以單次或者掃描模式執(zhí),轉(zhuǎn)換后的數(shù)據(jù)結(jié)果存儲在16位數(shù)據(jù)寄存器ADC_ConvertedValue中[4]。芯片外圍電路設(shè)置包括SPI FLASH、晶振模塊、復(fù)位電路和EEPROM等,用以拓展控制器的使用功能。

        2.3 睡姿傳感器電路設(shè)計

        加速度傳感器采用美國飛思卡爾半導(dǎo)體(Freescale Semiconductor)公司出產(chǎn)的MMA7361LC型單芯片三軸加速度傳感器,該款傳感器具有電流消耗低、微機械型等特點,其內(nèi)部設(shè)置了諸如低通濾波器電路及溫度補償電路等用于提高傳感器精度的電路模塊[5]。傳感器有多種選擇模式,可以設(shè)為檢測線性自由落體或者休眠模式,可以選擇1.5 g或者6 g兩種靈敏度。該系統(tǒng)選擇了1.5 g模式,使得檢測靈敏度可以達到800 mV/g,且設(shè)置方式簡單,只需在使用時將g-Select端置空即選定為該模式。該加速度傳感器輸出的電壓模擬信號,經(jīng)過預(yù)處理電路后,通過程序預(yù)設(shè)的I/O口與STM32控制器的ADC通道相連接,采用ADC1的1、2、3通道分別采集加速度傳感器X、Y、Z輸出口輸出的模擬信號;控制器的PG8口用于控制休眠狀態(tài),節(jié)省電能。電路設(shè)計如圖3所示。

        2.4 充放氣裝置電路設(shè)計

        由于系統(tǒng)中微型充氣泵與泄氣閥均采用6 V直流供電,為了使單片機能控制充放氣設(shè)備的啟停,采用NPN型三極管8050設(shè)計控制電路,由單片機I/O口輸出信號控制三極管導(dǎo)通,進而控制充放氣設(shè)備工作。系統(tǒng)設(shè)置三個充氣泵,分別配有三個泄氣閥。

        2.5 顯示、按鍵模塊電路設(shè)計

        所采用的顯示屏為可支持16位數(shù)據(jù)寬度的四線電阻式觸摸屏,可以實現(xiàn)觸摸操作。系統(tǒng)設(shè)有4個操作按鍵,其中按鍵S1上接VCC3.3 V,可用于實現(xiàn)系統(tǒng)的待機喚醒功能;其余3個按鍵設(shè)置有濾波電容,用于通過硬件方式來消除按鍵抖動產(chǎn)生的信號干擾,使按鍵輸入信號穩(wěn)定便于單片機讀取。

        3 基于μC/OS-II的軟件實現(xiàn)

        3.1 軟件設(shè)計思想

        系統(tǒng)軟件設(shè)計主要由μC/OS-II操作系統(tǒng)在STM32平臺上的移植和各種應(yīng)用任務(wù)的代碼編寫構(gòu)成。移植時需要修改內(nèi)核程序,主要是修改系統(tǒng)內(nèi)核中與編譯器相關(guān)的代碼os_cpu.h、與處理器相關(guān)的代碼os_cpu_a.asm和與操作系統(tǒng)相關(guān)的代碼os_cpu_c.c[3,6]。置于用戶腹部的三軸加速度傳感器輸出模擬信號至STM32控制器[5],經(jīng)過芯片內(nèi)ADC處理轉(zhuǎn)化成數(shù)字信號后,數(shù)據(jù)結(jié)果經(jīng)由芯片內(nèi)部數(shù)據(jù)傳輸模塊(DMA)傳給CPU。后經(jīng)程序算法分析出當(dāng)前用戶睡眠所處的體位狀態(tài),進而通過I/O口發(fā)出高低電平控制電路,使氣泵和泄氣閥對氣囊進行充放氣來調(diào)節(jié)枕體高度。

        3.2 系統(tǒng)任務(wù)設(shè)置

        系統(tǒng)的軟件結(jié)構(gòu)模型如圖4所示。由μC/OS-II操作系統(tǒng)負(fù)責(zé)調(diào)度管理各個任務(wù)。

        監(jiān)控任務(wù)用于監(jiān)控程序運行狀態(tài),當(dāng)出現(xiàn)BUG時對系統(tǒng)初始狀態(tài)進行重新設(shè)定;數(shù)據(jù)采集任務(wù)采集傳感器數(shù)據(jù);數(shù)據(jù)處理任務(wù)對采集到的傳感器數(shù)據(jù)進行分析,判斷用戶睡眠姿勢;LCD觸摸任務(wù)顯示當(dāng)前睡枕所處狀態(tài),可觸摸操作方便用戶控制;按鍵檢測任務(wù)檢測用戶的按鍵操作,在任務(wù)程序中通過命令改變程序工作狀態(tài);由反饋控制任務(wù)控制充放氣裝置來調(diào)節(jié)氣囊高度。

        每個模塊對應(yīng)的功能任務(wù)互相之間為并行關(guān)系,由于μC/OS-II中采用基于優(yōu)先級的任務(wù)調(diào)度算法,所以系統(tǒng)中每個任務(wù)的優(yōu)先級均不可能相同。該系統(tǒng)采用靜態(tài)方式設(shè)置任務(wù)的優(yōu)先級,在滿足任務(wù)調(diào)度功能的同時,大大簡化了系統(tǒng)的控制工作。程序設(shè)計中設(shè)置按鍵檢測任務(wù)的優(yōu)先級較高,設(shè)為9,數(shù)字越小表示任務(wù)優(yōu)先級越高,其余分別設(shè)置數(shù)據(jù)處理任務(wù)為11,反饋控制任務(wù)為13,數(shù)據(jù)采集任務(wù)為15,LCD觸摸任務(wù)為17。間隔設(shè)置系統(tǒng)任務(wù)優(yōu)先級,可方便后續(xù)對系統(tǒng)任務(wù)的拓展。

        3.3 任務(wù)間通信和調(diào)度

        該系統(tǒng)通過消息郵箱來完成各個任務(wù)間的通信。?C/OS-II中有多種任務(wù)通信方式,消息郵箱這種通信方式主要是由一個任務(wù)向另一個指定任務(wù)發(fā)送一個指針型變量,這個指針可以指向一個包含信息的數(shù)據(jù)結(jié)構(gòu),可以直接在任務(wù)間進行信息內(nèi)容的傳遞,這使得任務(wù)間通信更加高效[7]。在使用消息郵箱時通過調(diào)用系統(tǒng)函數(shù)OSMboxCreate()來創(chuàng)建郵箱,同時設(shè)置指針的初始值為所需發(fā)送的信息數(shù)據(jù)地址。該系統(tǒng)共設(shè)計了3個消息郵箱,分別為: (1)MboxDataprocessing郵箱。接收數(shù)據(jù)采集任務(wù)發(fā)送的消息,數(shù)據(jù)處理任務(wù)等待消息;(2)MboxControl郵箱。接收由數(shù)據(jù)處理任務(wù)發(fā)送的消息,反饋控制任務(wù)等待消息; (3)Mboxmonitoring郵箱。接收反饋控制任務(wù)發(fā)送的消息,監(jiān)控任務(wù)等待消息。

        μC/OS-II作為一個完全可剝奪型的實時內(nèi)核系統(tǒng),其核心是任務(wù)調(diào)度算法,因此系統(tǒng)內(nèi)核總是選擇處于就緒狀態(tài)下具有最高優(yōu)先級的任務(wù)賦予其CPU控制權(quán)[8]。其調(diào)度過程具體表現(xiàn)為系統(tǒng)內(nèi)核通過查找就緒態(tài)任務(wù)列表OSUnMapTbl[]找出此時優(yōu)先級最高的就緒態(tài)任務(wù),然后將該任務(wù)PCB地址賦予OSPrioHighRdy,接著賦予該任務(wù)CPU控制權(quán)來完成某個階段的任務(wù)切換[3]。

        3.4 系統(tǒng)運行

        全部系統(tǒng)任務(wù)均在μC/OS-II系統(tǒng)內(nèi)核的調(diào)度下循環(huán)運行。設(shè)置的監(jiān)控任務(wù)用于對系統(tǒng)運行狀態(tài)進行監(jiān)控。監(jiān)控任務(wù)在超出定義的等待時間后如果依舊未取得消息,則判斷系統(tǒng)運行出現(xiàn)錯誤。此時監(jiān)控任務(wù)獲得CPU控制權(quán)對系統(tǒng)重新初始化,通過該任務(wù)的運行使得系統(tǒng)具有一定的錯誤自檢能力,提高程序運行的可靠性和穩(wěn)定性。

        4 實驗結(jié)果

        完成系統(tǒng)的軟硬件設(shè)計后,對睡枕進行調(diào)試測試。該系統(tǒng)所設(shè)置五種常見睡姿狀態(tài)對應(yīng)傳感器電壓參數(shù)范圍及其重復(fù)測試準(zhǔn)確率如表1、表2所示。

        對五種常見睡姿的檢測正確率均達到90%,且在完成睡姿檢測后能啟動相應(yīng)程序?qū)λ砀叨冗M行調(diào)節(jié)。此外,系統(tǒng)可通過按鍵或者LCD觸摸操作對睡枕進行控制。

        5 結(jié)語

        基于STM32F103控制器和嵌入式實時操作系統(tǒng)μC/OS-II設(shè)計了一種智能睡枕的控制系統(tǒng)。經(jīng)過系統(tǒng)調(diào)試驗證,睡枕在控制下,能通過MMA7361LC三軸加速度傳感器實現(xiàn)五種常見睡姿的檢測,并通過充放氣設(shè)備調(diào)節(jié)睡枕高度,系統(tǒng)的可靠性相比傳統(tǒng)單任務(wù)機制的系統(tǒng)有明顯提升。但目前尚未做到對枕頭高度的實時判斷且睡姿檢測不夠多樣,對此可進一步增設(shè)傳感器。此控制系統(tǒng)通用性較強,能為后續(xù)研究提供一定的基礎(chǔ)和借鑒。隨著智能家居的不斷發(fā)展和人們對生活品質(zhì)的追求,智能健康睡枕將會有廣闊的發(fā)展空間。

        參考文獻

        [1] 支一飛.基于圖像技術(shù)的可自動調(diào)節(jié)高度睡枕系統(tǒng)研究[D].西安:西安電子科技大學(xué),2014.

        [2] X Wang,H Li,Y Zhu.Design on automatic control system for smart car based on μC/OS-II[C]//Proc of the 2nd International Conference on Cloud Computing and Intelligence Systems, IEEE,Hangzhou,China,2012(3):1188-1191.

        [3] 路?;?基于STM32F103ZET6的動力電池管理系統(tǒng)設(shè)計[D].南京:南京理工大學(xué),2013.

        [4] 馬建偉.基于STM32的空氣動力學(xué)數(shù)據(jù)采集系統(tǒng)的設(shè)計[D].成都:西南交通大學(xué),2010.

        [5] 胡弢,王蕾,侯琳琳,等.基于加速度傳感器的睡眠體位監(jiān)測方法的研究[J].中國醫(yī)學(xué)物理學(xué)雜志,2012,29(4):3542-3545.

        [6] 任哲,房紅征,曹靖.嵌入式實時操作系統(tǒng)μC/OS-II原理及應(yīng)用[M].3版.北京:北京航空航天大學(xué)出版社,2014:228-240.

        [7] 郭澤.便攜式光伏方陣測試儀的研發(fā)[D].上海:上海交通大學(xué),2008.

        [8] 吳嵩,曹樂千.基于μC/OS-II的時間片調(diào)度法設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用,2008(12):23-25.

        国产91久久麻豆黄片| 国产精品一区二区av片| 操B小视频国产| 中文字幕中文字幕777| 精品国产综合区久久久久久 | 香港aa三级久久三级| 欧美性猛交xxxx黑人猛交| 午夜影院91| 亚洲永久免费中文字幕| 免费a级毛片在线播放不收费| 黑人玩弄人妻中文在线| 欧美日韩国产在线成人网| 亚洲一区二区三区色偷偷| 国产精品国产三级国产av品爱网 | 无码少妇丰满熟妇一区二区| 东京无码熟妇人妻av在线网址| 久久亚洲伊人| 自拍情爱视频在线观看| 亚洲一区二区三区四区五区黄| 亚洲国产综合精品 在线 一区 | 肉体裸交137日本大胆摄影| 欧美日韩成人在线| 无码一区二区波多野结衣播放搜索| 成 人 网 站 在线 看 免费| 亚洲中文字幕一二区精品自拍 | 中文字幕中文一区中文字幕| 丁香婷婷在线成人播放视频| 国产无套内射久久久国产| 在线观看av手机网址| 久久91精品国产91久久跳舞| 久久无码人妻丰满熟妇区毛片| 亚洲国产高清在线一区二区三区| WWW拍拍拍| 最新中文字幕亚洲一区| 日韩丰满少妇无码内射| 亚洲一区视频在线| 色综合久久五十路人妻| 夜夜躁日日躁狠狠久久av| 大学生被内谢粉嫩无套| 国产高清亚洲精品视频| 久久天堂一区二区三区av|