• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      智能飲水機(jī)嵌入式控制系統(tǒng)設(shè)計(jì)

      2019-06-10 01:01:19宋慧文白國振仲梁維
      軟件導(dǎo)刊 2019年2期
      關(guān)鍵詞:嵌入式系統(tǒng)飲水機(jī)

      宋慧文 白國振 仲梁維

      摘 要:為改善傳統(tǒng)飲水機(jī)功能過于單一且缺乏人機(jī)交互界面以及無法遠(yuǎn)程控制的缺點(diǎn),設(shè)計(jì)了一款基于嵌入式技術(shù)的智能飲水機(jī)控制系統(tǒng)。以STM32為控制核心,在STM32上移植了FreeRTOS實(shí)時(shí)操作系統(tǒng)及STemWin圖形界面系統(tǒng),引入無線通訊模塊對飲水機(jī)進(jìn)行遠(yuǎn)程監(jiān)控,利用水質(zhì)檢測模塊和水量檢測模塊對飲水機(jī)水質(zhì)和剩余水量進(jìn)行監(jiān)測,實(shí)現(xiàn)對飲水機(jī)工作狀態(tài)的實(shí)時(shí)監(jiān)控、飲水機(jī)的水質(zhì)和剩余水量的監(jiān)測以及遠(yuǎn)程控制。多次試驗(yàn)表明,該系統(tǒng)工作穩(wěn)定,達(dá)到設(shè)計(jì)要求。

      關(guān)鍵詞:嵌入式系統(tǒng);STM32;飲水機(jī);STemWin

      DOI:10. 11907/rjdk. 182695

      中圖分類號:TP319文獻(xiàn)標(biāo)識(shí)碼:A文章編號:1672-7800(2019)002-0091-05

      Abstract:In order to improve the disadvantages that the traditional water dispenser are too single and lack of man-machine interface and cant be controlled remotely, this paper designs an intelligent? water machine control system based on embedded technology, which takes STM32 as the control core, and FreeRTOS real-time operating system and STemwin graphics interface System are transplanted on the STM32. The wireless communication module is introduced to monitor and control the water dispenser remotely, and the water quality detection module and the water volume detection module are used to monitor water quality and residual water. It realizes the real-time monitoring of the working state of drinking dispenser, the monitoring of water quality and remaining water, and the remote control. It is proved by many experiments that the system works stably and its working effect is in full accord with the purpose of this paper.

      Key Words:embedded system; STM32; water dispenser; STemWin

      0 引言

      隨著科技經(jīng)濟(jì)的不斷進(jìn)步,智能飲水機(jī)進(jìn)入人們的生活。智能飲水機(jī)控制系統(tǒng)代表性方案有:文獻(xiàn)[1]采用STC單片機(jī)、藍(lán)牙、機(jī)身指示燈及按鍵實(shí)現(xiàn)無線監(jiān)控與控制,文獻(xiàn)[2]利用STM32單片機(jī)、WiFi模塊、LCD液晶顯示屏等實(shí)現(xiàn)了遠(yuǎn)程監(jiān)控與控制,文獻(xiàn)[3]利用STC單片機(jī)、LED模塊、獨(dú)立按鍵模塊實(shí)現(xiàn)了無水?dāng)嚯姾蛨?bào)警提醒。以上幾種方案與傳統(tǒng)的、功能單一的飲水機(jī)相比,加入了溫度監(jiān)控、模式選擇、無水?dāng)嚯?、LCD顯示、報(bào)警提醒等一個(gè)或多個(gè)功能,極大豐富了飲水機(jī)功用,但依然存在缺乏良好的人機(jī)交互界面、無法對水質(zhì)和剩余水量進(jìn)行監(jiān)測、無法遠(yuǎn)程監(jiān)測與控制的問題。

      本文以家用飲水機(jī)為例,設(shè)計(jì)了一套基于嵌入式的智能飲水機(jī)控制系統(tǒng)。系統(tǒng)以STM32單片機(jī)為控制核心,采用FreeRTOS實(shí)時(shí)操作系統(tǒng)及STemWin圖形界面系統(tǒng),并配備水質(zhì)監(jiān)測模塊和無線通訊模塊等,用戶可通過本系統(tǒng)監(jiān)測到飲水機(jī)的工作情況和水質(zhì)水量情況,并可通過手機(jī)APP對飲水機(jī)進(jìn)行遠(yuǎn)程監(jiān)測和控制,具有操作便捷、穩(wěn)定性好、健康節(jié)能的特點(diǎn)。

      1 系統(tǒng)功能

      本系統(tǒng)由STM32單片機(jī)、LED燈、繼電器、水量傳感器、水質(zhì)檢測系列傳感器、LCD屏以及WiFi模塊組成,飲水機(jī)具備狀態(tài)顯示、溫度監(jiān)控、水質(zhì)水量監(jiān)測、無水?dāng)嚯姟⒓訜峥刂?、遠(yuǎn)程監(jiān)控與控制等功能。

      系統(tǒng)采用LCD觸摸屏控制及智能手機(jī)APP控制兩套模塊,飲水機(jī)上配備的LCD觸摸屏不僅可實(shí)時(shí)顯示飲水機(jī)的工作狀態(tài)、水溫、剩余水量、飲用水的Tds(溶解性固體總量)值,還可通過觸摸LCD屏控制加熱,大大改善了體驗(yàn)感。飲水機(jī)上配備的WiFi模塊與智能手機(jī)連接后,會(huì)將飲水機(jī)的狀態(tài)信息(同LCD上顯示的信息)實(shí)時(shí)發(fā)送給手機(jī),用戶打開特定的手機(jī)APP后即可觀察到這些數(shù)據(jù),也可通過APP控制飲水機(jī)的相關(guān)功能。功能描述如圖1所示。

      2 系統(tǒng)硬件設(shè)計(jì)

      本設(shè)計(jì)硬件系統(tǒng)包括STM32單片機(jī)、WiFi模塊、LCD觸摸屏、溫度傳感器、繼電器、PH傳感器、Tds傳感器、無水?dāng)嚯娧b置等元件,如圖2所示。下面針對主體硬件進(jìn)行說明。

      2.1 STM32單片機(jī)

      單片機(jī)是整個(gè)控制系統(tǒng)的核心,具有極其重要的作用。由于本設(shè)計(jì)采用了實(shí)時(shí)操作系統(tǒng)及圖形界面系統(tǒng),因此所選單片機(jī)必須具有存儲(chǔ)容量大、性能強(qiáng)的特點(diǎn)。綜合比較之下,本設(shè)計(jì)采用STM32F407單片機(jī)。STM32F407單片機(jī)由意法半導(dǎo)體開發(fā),采用Cortex-M4 為內(nèi)核的高性能 32 位微控制器,擁有1M的內(nèi)部FLASH、192KB的內(nèi)部SRAM以及豐富的內(nèi)部外設(shè)[4],符合本設(shè)計(jì)對單片機(jī)的要求。

      2.2 WiFi模塊

      WiFi模塊負(fù)責(zé)把飲水機(jī)的狀態(tài)信息發(fā)送給手機(jī),并把手機(jī)發(fā)過來的信息傳遞給單片機(jī)。目前國內(nèi)外WiFi芯片生產(chǎn)廠商很多,芯片性能越來越好。ESP8266是一款性價(jià)比較高的低功耗WiFi芯片[5],應(yīng)用非常廣泛,如智能機(jī)器人、無人機(jī)以及工業(yè)自動(dòng)化控制等地方,在移動(dòng)通信設(shè)備和物聯(lián)網(wǎng)應(yīng)用設(shè)計(jì)領(lǐng)域廣泛使用。該模塊具有UART異步通信串行接口,支持串口數(shù)據(jù)透明傳輸[6]。通過串口WiFi模塊,可使智能設(shè)備聯(lián)網(wǎng),實(shí)現(xiàn)無線遠(yuǎn)程控制[7]。ESP8266的斷電寄存器EEROOM有保持狀態(tài)不變的功效,在突然掉電情況下可實(shí)時(shí)保留斷電前的狀態(tài),再次上電時(shí)數(shù)值不變。 ESP8266收發(fā)數(shù)據(jù)穩(wěn)定,只要波特率設(shè)置恰當(dāng)就沒有亂碼問題,且傳輸波特率可達(dá)115200bps[8]。

      2.3 觸摸顯示模塊

      觸摸顯示模塊采用ATK的4.3'觸摸屏,其分辨率為800×480,16位真彩顯示,NT35510驅(qū)動(dòng),自帶GRAM,無需外加驅(qū)動(dòng)器,因而任何單片機(jī)都可輕易驅(qū)動(dòng)。該屏為電容觸摸屏,支持5點(diǎn)同時(shí)觸摸,具有非常好的操控效果。該屏為TFTLCD,它與無源TN-LCD、STN-LCD的簡單矩陣不同,在液晶顯示屏的每個(gè)像素上都設(shè)置有一個(gè)薄膜晶體管(TFT),可有效克服非選通時(shí)的串?dāng)_,使顯示液晶屏的靜態(tài)特性與掃描線數(shù)無關(guān),大大提高了圖像質(zhì)量[9]。具有亮度好、對比度高、層次感強(qiáng)、顏色鮮艷等特點(diǎn),是目前主流的LCD顯示器,廣泛應(yīng)用于各類電子產(chǎn)品中。STM32F4內(nèi)部自帶高度集成的 LCDTFT顯示控制器。LCDTFT 顯示控制器和 TFTLCD 顯示屏之間通過 24 位的并行 RGB 數(shù)據(jù)線、同步時(shí)鐘信號 CLK、行同步信號 HS、場同步信號 VS 以及數(shù)據(jù)使能信號DE連接[10]。TFTLCD驅(qū)動(dòng)流程如圖3所示。

      2.4 溫度檢測模塊及水質(zhì)監(jiān)測模塊

      DS18B20 是一種常用的數(shù)字化溫度傳感器,它支持“一線總線”接口,即與單片機(jī)接口僅需占用一個(gè) I/O 端口,無須任何外部元件??蓪h(huán)境溫度信號直接轉(zhuǎn)換為數(shù)字信號,以數(shù)字碼方式串行輸出,大大簡化了傳感器與微處理器的接口[11]。DS18B20具有體積小、接口方便、傳輸距離遠(yuǎn)等特點(diǎn),內(nèi)含寄生電源[12],測溫范圍為-55℃~125℃,分辨率可達(dá)0.0625℃[13],適用于測量精度要求不高場合,本設(shè)計(jì)采用此傳感器。

      TDS又稱總?cè)芙夤腆w,它表明1L水中溶有多少毫克溶解性固體。TDS值越高表明水中含有的溶解物越多,對人的健康影響越大[14]。傳統(tǒng)的飲水機(jī)控制系統(tǒng)無法檢測桶裝水水質(zhì)情況,本設(shè)計(jì)采用EMD的TDS傳感器,實(shí)現(xiàn)對飲用水質(zhì)的檢測。

      2.5 PH值監(jiān)測模塊

      PH值可反映水的酸度、凈化程度、有機(jī)和金屬穩(wěn)定性等,本系統(tǒng)選用的270-WQ201PH傳感器是一種相對耐用精度高的PH值檢測器件[15]。

      3 系統(tǒng)軟件設(shè)計(jì)

      3.1 操作系統(tǒng)和圖形界面系統(tǒng)移植

      STM32單片機(jī)需要完成采集、控制、通信、人機(jī)界面4個(gè)工作。由于數(shù)據(jù)的采集、控制、傳輸與人機(jī)界面的操作都具有較高的實(shí)時(shí)性要求,普通的前后臺(tái)編程方式無法滿足, 所以本系統(tǒng)運(yùn)行一種嵌入式操作系統(tǒng)FreeRTOS。FreeRTOS是一個(gè)可裁剪的小型RTOS系統(tǒng),其內(nèi)核支持搶占式、合作式和時(shí)間片調(diào)度,只需占用4~9k空間,任務(wù)數(shù)量及優(yōu)先級不限,支持開發(fā)者使用IAR、GCC 和 Keil 等編譯器預(yù)編譯,在超過30種架構(gòu)的芯片上進(jìn)行過移植[16]。由于本設(shè)計(jì)采用LCD觸摸屏,因此需要一個(gè)合適的圖形界面系統(tǒng)支撐。STemWin圖形庫是SEGGER公司授權(quán)給ST在emWin的基礎(chǔ)上開發(fā)的,使用ST芯片可免費(fèi)使用STemWin,但不能用在其它芯片廠商的處理器上。利用配套的開發(fā)小工具可方便地設(shè)計(jì)出許多控件界面[17],它與單任務(wù)和多任務(wù)環(huán)境系統(tǒng)、專業(yè)計(jì)算機(jī)系統(tǒng)或任何商業(yè)RTOS兼容[18],適用于本設(shè)計(jì)所選的LCD觸摸屏。在進(jìn)行控制程序編寫之前需要在STM32F407上移植好FreeRTOS和STemWin,移植順序?yàn)橄纫浦睩reeRTOS再移植STemWin。

      任務(wù)切換是FreeRTOS移植的關(guān)鍵點(diǎn)。FreeRTOS采用中斷形式進(jìn)行任務(wù)處理,需要修改STM32固件庫中的默認(rèn)中斷服務(wù)函數(shù)名稱,這樣中斷發(fā)生后會(huì)跳轉(zhuǎn)到FreeRTOS代碼里的中斷服務(wù)函數(shù),把SVC_Handler,PendSV_Handler,SysTick_Handler分別改為vPortSVHandler,xPortPendSVHandler,xPortSysTickHandler[19]。

      STemWin移植關(guān)鍵點(diǎn)是:把FreeRTOS的系統(tǒng)節(jié)拍數(shù)改為1000,也就是1ms。由于使用了操作系統(tǒng),因此需要對GUIconf.h中的GUI_OS(支持操作系統(tǒng))和GUI_MAXTASK(可以調(diào)用的STemWin任務(wù)的最大數(shù)量)宏定義進(jìn)行更改,分別改為1和5。

      3.2 單片機(jī)軟件設(shè)計(jì)

      在進(jìn)行控制系統(tǒng)應(yīng)用層程序開發(fā)前,需要先完成各硬件模塊的驅(qū)動(dòng)程序開發(fā),主要有LCD觸摸屏驅(qū)動(dòng)、WiFi模塊驅(qū)動(dòng)、溫度傳感器和水質(zhì)傳感器驅(qū)動(dòng)等。在完成驅(qū)動(dòng)程序開發(fā)之后需要進(jìn)行應(yīng)用層開發(fā),先對各硬件模塊及軟件中間件初始化,隨后利用FreeRTOS系統(tǒng)進(jìn)行每個(gè)工作任務(wù)開發(fā),包括溫度檢測任務(wù)、LCD顯示及按鍵掃描任務(wù)、無線通信任務(wù)、水質(zhì)檢測任務(wù)及水量檢測任務(wù)等,工作模式如圖4所示。

      (1)溫度檢測任務(wù):讀取DS18B20值并轉(zhuǎn)化成溫度值,隨后把溫度值傳遞給LCD顯示。當(dāng)水溫達(dá)到100℃時(shí)會(huì)發(fā)送信號給加熱控制任務(wù),結(jié)束加熱,流程如圖5所示。

      (2)水質(zhì)與剩余水量檢測任務(wù):讀取相關(guān)傳感器的值并轉(zhuǎn)化為水質(zhì)水量參數(shù),隨后把參數(shù)傳遞給LCD進(jìn)行顯示。當(dāng)水量不足時(shí)單片機(jī)會(huì)啟動(dòng)相應(yīng)程序驅(qū)動(dòng)繼電器模塊關(guān)閉加熱功能,并在LCD屏上提示缺水。缺水信息會(huì)通過WiFi模塊發(fā)送至手機(jī)APP,用戶可在手機(jī)APP上看到缺水信息,流程如圖6所示。

      (3)LCD任務(wù):該任務(wù)需要調(diào)用STemWin系統(tǒng)中的函數(shù)創(chuàng)建工作界面用于人機(jī)交互,并通過與其它任務(wù)通信得到飲水機(jī)各項(xiàng)工作數(shù)據(jù)并顯示在LCD界面上,同時(shí)也可接收用戶的相關(guān)命令并傳遞其它任務(wù),如圖7所示。

      (4)無線通信任務(wù):當(dāng)手機(jī)端與WiFi模塊建立連接后,該任務(wù)會(huì)與其它任務(wù)通信并把飲水機(jī)的工作數(shù)據(jù)發(fā)送給手機(jī)端,用戶可以打開手機(jī)APP進(jìn)行查看,也可通過手機(jī)APP對飲水機(jī)進(jìn)行操作。由于采用的是WiFi通信,因此用戶與飲水機(jī)之間可有一段距離,方便使用飲水機(jī),如圖8所示。

      3.3 手機(jī)APP與人機(jī)交互界面設(shè)計(jì)

      手機(jī)APP的作用是遠(yuǎn)程顯示飲水機(jī)狀態(tài)信息以及遠(yuǎn)程控制飲水機(jī)的加熱功能,因此APP操作界面要有當(dāng)前飲水機(jī)的工作狀態(tài)、剩余水量、水質(zhì)等板塊,還要有控制飲水機(jī)工作模式的按鍵。采用STemWin設(shè)計(jì)的人機(jī)交互界面具備以上功能,如圖9所示。

      4 程序編寫與系統(tǒng)測試

      本系統(tǒng)采用keil5開發(fā)環(huán)境編寫程序,并編譯、鏈接生成STM32單片機(jī)運(yùn)行的可執(zhí)行文件。為保證可執(zhí)行文件的成功燒錄和調(diào)試,需要采用FlyMcu軟件和ST-Link調(diào)試器。在程序編寫之前要在ST官網(wǎng)上下載STM32F4的固件庫、FreeRTOS系統(tǒng)與STemWin系統(tǒng),為了模塊化設(shè)計(jì)程序,需要建立分類文件夾,文件夾結(jié)構(gòu)如圖10所示。在以上準(zhǔn)備工作完成后,需要進(jìn)行系統(tǒng)移植及模塊化設(shè)計(jì)程序。

      在程序開發(fā)及燒錄完成后進(jìn)行大量的系統(tǒng)測試,同時(shí)把測試結(jié)果同儀器(如溫度計(jì))測試結(jié)果進(jìn)行對比,對比顯示該系統(tǒng)工作可靠、實(shí)時(shí)性好。人機(jī)交互界面顯示效果如圖11所示。

      5 結(jié)語

      智能飲水機(jī)控制系統(tǒng)以STM32單片機(jī)為控制核心,采用FreeRTOS實(shí)時(shí)操作系統(tǒng)及STemWin圖形界面系統(tǒng),并配備水質(zhì)監(jiān)測模塊和無線通訊模塊,實(shí)現(xiàn)對飲水機(jī)工作狀態(tài)、水溫、剩余水量及水質(zhì)的本地和遠(yuǎn)程監(jiān)控。與傳統(tǒng)飲水機(jī)相比,本設(shè)計(jì)操控簡便,系統(tǒng)工作穩(wěn)定,達(dá)到設(shè)計(jì)目的。該智能飲水機(jī)方便了人們生活,具有一定的市場競爭力[20]。不足之處是無法預(yù)設(shè)加熱溫度,這將在后續(xù)研究中加以完善。

      參考文獻(xiàn):

      [1] 陳書輝,曹菁菁,曾紹坤,等. 基于藍(lán)牙通信的智能飲水機(jī)設(shè)計(jì)[J]. 機(jī)電信息,2017 (15):130-131,133.

      [2] 李偉,賀梓洹,梁洪源,等. 基于STM32的智能飲水機(jī)控制系統(tǒng)[J].福建電腦,2017 (11):108-109,125.

      [3] 楊崇海. 基于單片機(jī)的智能飲水機(jī)系統(tǒng)[J]. 科技風(fēng),2017 (11):17-18.

      [4] 意法半導(dǎo)體. STM32F4系列微控制器[J]. 世界電子元器件,2011 (11):23-24.

      [5] 范興隆. ESP8266在智能家居監(jiān)控系統(tǒng)中的應(yīng)用[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2016 (9):52-56.

      [6] 吳允強(qiáng),吳由松. 基于ESP8266的智能家居控制系統(tǒng)設(shè)計(jì)[J]. 電子測試,2017(21):9-24.

      [7] 屈良潘,唐曼玲,劉靜,等. 基于ESP8266的LED燈無線遠(yuǎn)程控制設(shè)計(jì)[J]. 電子世界,2017(9):179-181.

      [8] 周興華. 用ARM驅(qū)動(dòng)TFTLCD[J]. 無線電,2013 (11):65-67

      [9] 楊志佳,陳小平. STM32F429的TFTLCD顯示驅(qū)動(dòng)方案的研究[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2016(12):44-47.

      [10] 李歡. 基于DS18B20的溫控系統(tǒng)設(shè)計(jì)[J]. 信息與電腦,2016 (24):147-149.

      [11] 顧劍,李彬. 基于DS 18 B20的多點(diǎn)測溫監(jiān)測系統(tǒng)設(shè)計(jì)[J]. 電子科技,2018(3):61-64.

      [12] 陳曉雷. 基于DS18B20的數(shù)字溫度計(jì)設(shè)計(jì)與實(shí)現(xiàn)[J]. 科技資訊,2017(8):117-119.

      [13] 陳杰,李亞東. Arduino+micro:bit無線水質(zhì)TDS檢測儀[J]. 無線電,2018(2):26-28.

      [14] 謝靜. 小型水質(zhì)監(jiān)測硬件系統(tǒng)的研究與設(shè)計(jì)[J]. 數(shù)字技術(shù)與應(yīng)用,2016(6):106-107.

      [15] 何小慶. 談?wù)?FreeRTOS及其授權(quán)方式[J]. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2015(10):3-4,15.

      [16] 陶森林,李暉,苗中華,等. 基于STemWin圖形庫和SAE J1939 CAN通信協(xié)議的采棉機(jī)監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 工業(yè)控制計(jì)算機(jī),2017(9):25-26.

      [17] 葉鐵英. 基于ARM和emWin的空調(diào)終端控制系統(tǒng)設(shè)計(jì)[J]. 中國科技投資,2014(A12):192-193

      [18] 夏鑫,張果,王劍平,等. 實(shí)時(shí)操作系統(tǒng) Free RTOS移植的實(shí)驗(yàn)研究[J]. 化工自動(dòng)化及儀表,2016(7):720-724,767.

      [19] 宋娟,曾實(shí)現(xiàn),薛蕊. 飲水機(jī)的遠(yuǎn)程無線控制系統(tǒng)[J]. 科技通報(bào),2014,30(7):164-165.

      (責(zé)任編輯:杜能鋼)

      猜你喜歡
      嵌入式系統(tǒng)飲水機(jī)
      自制飲水機(jī)
      如何正確清洗飲水機(jī)?
      新青年(2017年5期)2017-05-12 07:28:49
      基于物聯(lián)網(wǎng)項(xiàng)目驅(qū)動(dòng)的嵌入式系統(tǒng)教學(xué)改革的研究與實(shí)踐
      嵌入式系統(tǒng)課程“中斷、異常與事件”教學(xué)實(shí)踐及啟示
      面向?qū)嵺`創(chuàng)新人才培養(yǎng)的嵌入式系統(tǒng)教學(xué)研究
      在DiskOnChip上構(gòu)建VxWorks系統(tǒng)開發(fā)環(huán)境
      投訴
      中老年健康(2015年5期)2015-05-30 10:51:13
      選購飲水機(jī)要從功能入手
      蓬莱市| 荆门市| 西和县| 调兵山市| 碌曲县| 改则县| 道真| 沾益县| 吉水县| 瑞金市| 郧西县| 师宗县| 江安县| 漠河县| 郎溪县| 唐海县| 宁河县| 连南| 佳木斯市| 陇南市| 洛宁县| 佛坪县| 法库县| 兰坪| 肃宁县| 勐海县| 航空| 贡觉县| 绥芬河市| 石屏县| 和顺县| 拉孜县| 太保市| 宁都县| 平阴县| 巴楚县| 康乐县| 仲巴县| 喜德县| 承德市| 育儿|