基于單片機(jī)的智能定量定溫飲水機(jī)控制系統(tǒng)_第1頁(yè)
基于單片機(jī)的智能定量定溫飲水機(jī)控制系統(tǒng)_第2頁(yè)
基于單片機(jī)的智能定量定溫飲水機(jī)控制系統(tǒng)_第3頁(yè)
基于單片機(jī)的智能定量定溫飲水機(jī)控制系統(tǒng)_第4頁(yè)
基于單片機(jī)的智能定量定溫飲水機(jī)控制系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

河北理工大學(xué)信息學(xué)院 摘要 XVII5系統(tǒng)的測(cè)試5.1系統(tǒng)調(diào)試在系統(tǒng)的軟硬件設(shè)計(jì)工作結(jié)束之后,為了保證各功能模塊可協(xié)同運(yùn)作,達(dá)到預(yù)先設(shè)定的性能指標(biāo)要求,就需要對(duì)系統(tǒng)開展全面且系統(tǒng)的測(cè)試和驗(yàn)證工作,軟件測(cè)試部分采用Keil4uVision仿真環(huán)境,借助單元測(cè)試和集成測(cè)試相結(jié)合這種方式,著重對(duì)主控流程、溫度監(jiān)測(cè)子程序以及顯示子程序等核心模塊的功能準(zhǔn)確性給予驗(yàn)證。在調(diào)試過(guò)程中,運(yùn)用斷點(diǎn)設(shè)置以及變量監(jiān)控等技術(shù)手段,可精確地識(shí)別并且修正程序里的邏輯缺陷,完成軟件調(diào)試之后進(jìn)入硬件調(diào)試階段,要搭建起完整的硬件電路系統(tǒng),把優(yōu)化后的程序燒錄到STC89C52微控制器中,然后依次對(duì)語(yǔ)音識(shí)別模塊的響應(yīng)性能、溫度傳感器的測(cè)量精度以及水流量傳感器的量程范圍等外圍組件進(jìn)行功能驗(yàn)證。針對(duì)調(diào)試過(guò)程中出現(xiàn)的問(wèn)題,要及時(shí)進(jìn)行硬件電路檢測(cè)以及程序優(yōu)化,經(jīng)過(guò)反復(fù)的軟硬件協(xié)同調(diào)試,最終保證系統(tǒng)各項(xiàng)功能可穩(wěn)定可靠地運(yùn)行,只有經(jīng)過(guò)這一系列嚴(yán)謹(jǐn)?shù)臏y(cè)試驗(yàn)證流程,該智能飲水機(jī)控制系統(tǒng)才可有實(shí)際應(yīng)用時(shí)所需的安全性和可靠性。5.2實(shí)物展示在完成了軟硬件調(diào)試這一階段工作之后,我們展示出了本系統(tǒng)的實(shí)體原型,從圖5.1可看到,系統(tǒng)實(shí)體含有STC89C52微控制器主板、LCD1602顯示屏組件、DS18B20溫度感應(yīng)器、YFS201水流檢測(cè)器以及ASR-PRO語(yǔ)音交互模塊等關(guān)鍵部件,這些部件依靠精心布設(shè)的線路緊密連接在一起,形成了一體化且較為緊湊的控制體系。用戶可憑借語(yǔ)音命令或者按鍵輸入,隨時(shí)對(duì)飲水機(jī)的水溫和流速進(jìn)行調(diào)整,而液晶顯示屏則可以清晰地反饋系統(tǒng)的工作狀態(tài),這一實(shí)體模型證實(shí)了我們的設(shè)計(jì)思路,借助挑選合適的硬件模塊以及進(jìn)行精細(xì)的軟件編程,成功打造出一款功能多樣、操作便捷的智能飲水控制系統(tǒng),該系統(tǒng)保證了精確的溫控以及定量供水,還創(chuàng)新性地融入了語(yǔ)音識(shí)別互動(dòng)功能,為用戶給予了全新的飲水交互體驗(yàn)。圖5.1系統(tǒng)實(shí)物圖完成系統(tǒng)硬件與軟件的設(shè)計(jì)工作之后,便著手開展了全面且細(xì)致的測(cè)試與驗(yàn)證工作,以此保證所有功能模塊可協(xié)同運(yùn)作,符合預(yù)先設(shè)定的性能標(biāo)準(zhǔn),先是構(gòu)建起了一套完整的硬件電路體系,隨后把精心編寫的軟件程序成功燒錄到STC89C52微控制器當(dāng)中,緊接著,對(duì)各個(gè)外圍模塊的性能逐一進(jìn)行了評(píng)估,具體囊括語(yǔ)音識(shí)別模塊的效能、溫度傳感器的測(cè)量精確度以及水流量傳感器的量程特性等方面。在實(shí)際操作測(cè)試階段,收集并記錄下了一系列有關(guān)鍵性的數(shù)據(jù)。表5-1數(shù)據(jù)分析與表格展示測(cè)試項(xiàng)目設(shè)定值實(shí)際值誤差識(shí)別準(zhǔn)確率響應(yīng)時(shí)間(ms)溫度40℃39.8℃-0.2℃--溫度60℃60.2℃+0.2℃--出水量200mL203mL+3mL--出水量350mL348mL-2mL--語(yǔ)音識(shí)別“溫度升高”識(shí)別成功-98%200語(yǔ)音識(shí)別“出水量增加”識(shí)別成功-96%220本文構(gòu)建的智能定量定溫飲水機(jī)控制系統(tǒng),經(jīng)過(guò)實(shí)際操作檢驗(yàn)以及數(shù)據(jù)解析,在溫度監(jiān)管、流體控制以及語(yǔ)音互動(dòng)等關(guān)鍵功能方面,呈現(xiàn)出了較為優(yōu)越的效能,這個(gè)系統(tǒng)可以精確調(diào)控水溫以及出水量,再加上高精度語(yǔ)音識(shí)別和快速反饋機(jī)制,提升了用戶的飲水舒適度與便利性。5.3本章小結(jié)在這一部分當(dāng)中,對(duì)系統(tǒng)的軟硬件測(cè)試以及驗(yàn)證策略展開了較為詳細(xì)的論述,一開始,利用Keil4uVision的仿真實(shí)境,針對(duì)軟件代碼執(zhí)行單元開展了相關(guān)測(cè)試,同時(shí)也進(jìn)行了集成測(cè)試,以此來(lái)驗(yàn)證各個(gè)功能組件可穩(wěn)定運(yùn)行,緊接著,構(gòu)建了完整的硬件電路,然后把編譯之后的軟件程序加載到STC89C52微控制器當(dāng)中。之后憑借對(duì)各級(jí)外圍設(shè)備進(jìn)行測(cè)試,及時(shí)發(fā)現(xiàn)并解決了那些有可能影響系統(tǒng)實(shí)際運(yùn)行的潛在問(wèn)題,提升了系統(tǒng)整體的可靠性,以實(shí)物樣機(jī)的形式展示了該智能飲水機(jī)控制系統(tǒng),直觀地呈現(xiàn)出其溫度監(jiān)控、水流控制以及語(yǔ)音交互等多種智能特性,經(jīng)過(guò)全面的軟硬件調(diào)試與驗(yàn)證工作,成功開發(fā)出了一款集合多項(xiàng)先進(jìn)功能的飲水機(jī)控制體系。結(jié)論結(jié)論結(jié)論本研究設(shè)計(jì)了一種以STC89C52單片機(jī)為基礎(chǔ)的智能飲水機(jī)控制系統(tǒng),此系統(tǒng)借助軟硬件協(xié)同優(yōu)化達(dá)成了多項(xiàng)創(chuàng)新功能,在溫度控制環(huán)節(jié),運(yùn)用高精度DS18B20溫度傳感器開展實(shí)時(shí)監(jiān)測(cè),經(jīng)實(shí)驗(yàn)驗(yàn)證可把溫度誤差穩(wěn)定控制在±0.5℃范圍之內(nèi),以此保證水溫的精確與舒適。水量調(diào)節(jié)模塊集成了YFS201水流量傳感器,與主控芯片構(gòu)成閉環(huán)控制系統(tǒng),提升了出水量的穩(wěn)定性以及精確度,系統(tǒng)創(chuàng)新性地整合了ASR-PRO語(yǔ)音識(shí)別模塊,借助自然語(yǔ)言處理技術(shù)達(dá)成了語(yǔ)音指令控制功能,極大提升了人機(jī)交互的便捷程度,實(shí)驗(yàn)結(jié)果顯示,該系統(tǒng)在溫度調(diào)控、水量管理以及語(yǔ)音交互等方面都呈現(xiàn)出優(yōu)異的性能指標(biāo),能契合用戶多樣化的使用需求,又能呈現(xiàn)智能化飲水設(shè)備的技術(shù)可行性。從技術(shù)實(shí)現(xiàn)和市場(chǎng)應(yīng)用這兩個(gè)維度而言,該智能飲水機(jī)系統(tǒng)有十分突出的技術(shù)創(chuàng)新性以及廣闊的商業(yè)化前景。附錄B參考文獻(xiàn)[1]黃柱斌,劉長(zhǎng)江,謝鴻宇等.面向STC89C52單片機(jī)的智能飲水機(jī)系統(tǒng)[J].福建電腦,2023,39(09):83-89.[2]馬子豪,趙澤中,李川等.基于單片機(jī)及機(jī)械結(jié)構(gòu)創(chuàng)新的智能飲水機(jī)開發(fā)設(shè)計(jì)[J].中國(guó)高新科技,2023,(16):15-16.[3]馬培松,陶華偉,李益民等.基于單片機(jī)的多功能飲水機(jī)設(shè)計(jì)[J].河南科技,2022,41(17):20-23.[4]姚蔚奇,裴利凱.基于BL604的共享智能飲水機(jī)[J].科技創(chuàng)新與應(yīng)用,2022,12(18):29-33.[5]原一丹,程春雨,吳振宇等.基于STM32單片機(jī)的智能飲水機(jī)設(shè)計(jì)[J].實(shí)驗(yàn)室科學(xué),2022,25(02):57-63.[6]張躍奇,魏惠芳,單超穎.基于NB-IoT的智能飲水機(jī)系統(tǒng)設(shè)計(jì)[J].電子技術(shù),2021,50(09):24-25.[7]趙宇鵬,朱海,劉付生等.一種具有分杯功能的全自動(dòng)飲水機(jī)[J].機(jī)械制造,2021,59(08):32-34+49.[8]孫淑瓊,楊瑞,王瑩筱.基于超聲波定位的盲人飲水機(jī)系統(tǒng)設(shè)計(jì)[J].電子技術(shù),2021,50(06):33-35.[9]高巖.基于單片機(jī)的節(jié)能飲水機(jī)控制系統(tǒng)設(shè)計(jì)研究[J].科技創(chuàng)新與應(yīng)用,2020,(35):9-12.[10]李正軍,郝傳柱.基于人工智能全自動(dòng)飲水機(jī)的自動(dòng)裝置[J].設(shè)備管理與維修,2020,(18):104-106.[11]熊律,鐘睿杰.一種加熱水量可控的健康節(jié)能飲水機(jī)設(shè)計(jì)[J].廣東交通職業(yè)技術(shù)學(xué)院學(xué)報(bào),2020,19(03):37-40.[12]史建偉.基于STC89C52的家用智能飲水機(jī)設(shè)計(jì)[J].河南科技,2020,(23):63-65.[13]湯斌,鄧捷,李軍紅.一種新型飲水機(jī)出水控制裝置的設(shè)計(jì)與實(shí)現(xiàn)[J].電子世界,2020,(11):127-128.[14]馮敏.一種基于單片機(jī)的智能飲水機(jī)設(shè)計(jì)電子技術(shù)中的單片機(jī)應(yīng)用[J].中國(guó)新通信,2020,22(09):102.[15]朱恩澤,齊勝男,田方琦等.一種基于單片機(jī)的智能飲水機(jī)設(shè)計(jì)[J].中國(guó)科技信息,2020,(02):45-46.[16]朱俊.基于Arduino的自動(dòng)飲水機(jī)設(shè)計(jì)與研究[J].電腦知識(shí)與技術(shù),2020,16(01):279-281.[17]臧紅巖,劉延春,范卉青.多功能飲水機(jī)控制器設(shè)計(jì)[J].科學(xué)技術(shù)創(chuàng)新,2019,(36):147-148.[18]陶輝.基于AT89C51單片機(jī)的智能飲水機(jī)設(shè)計(jì)[J].科技創(chuàng)新導(dǎo)報(bào),2019,16(16):67-69+73.[19]劉源,曾茜,徐曉.飲水機(jī)遠(yuǎn)程監(jiān)控的應(yīng)用研究[J].湖南科技學(xué)院學(xué)報(bào),2019,40(05):19-22.[20]孫美琪,劉建男.基于AT89C52單片機(jī)的智能飲水機(jī)溫控系統(tǒng)設(shè)計(jì)與開發(fā)[J].科技風(fēng),2019,(06):89.附錄A原理圖:附錄B部分源程序:#include<reg52.h>#include<intrins.h>#include<stdio.h>#include<string.h>//引腳定義#defineLCD1602_RSP2_6#defineLCD1602_RWP2_5#defineLCD1602_EP2_7#defineLCD1602_DATAPORTP0#defineDS18B20_DQP3_7#defineRELAYP1_0#defineSOLENOIDP1_1#defineMOTORP1_2#defineKEY1P3_1#defineKEY2P3_0#defineKEY3P3_2#defineKEY4P3_3//變量聲明floatT;//當(dāng)前水溫變量unsignedintvalue=35;//設(shè)置溫度閾值(默認(rèn)35℃)unsignedcharMode_T_W=0;//溫度和水流量模式(0-正常,1-調(diào)溫,2-調(diào)水量)unsignedcharKeyNum=0;//按鍵值unsignedcharMode=0;//工作模式(0-手動(dòng),1-自動(dòng))unsignedintwater=200;//設(shè)置出水量(默認(rèn)200ml)unsignedintwater_flow=0;//實(shí)際水流量floatmotorpwm=0;//電機(jī)PWM值unsignedintCompare=0;//電機(jī)PWM比較值unsignedcharsolenoid=1;//電磁閥狀態(tài)(1-關(guān),0-開)//語(yǔ)音命令代碼unsignedcharcodewater_stop[]={0xbf,0x33,0x44,0xaf};//停止出水命令unsignedcharcodewater_auto[]={0xff,0x1f,0x34,0xaf};//自動(dòng)模式命令unsignedcharcodewater_shou[]={0xff,0x2f,0x35,0xaf};//手動(dòng)模式命令unsignedcharcodewater_on[]={0xbf,0x22,0x33,0xaf};//開始出水命令unsignedcharUsart_Rx[10];//串口接收緩沖區(qū)//函數(shù)聲明voidDelay_ms(unsignedintms);voidLCD_Init();voidLCD_ShowChar(unsignedcharLine,unsignedcharColumn,unsignedcharChar);voidLCD_ShowString(unsignedcharLine,unsignedcharColumn,unsignedchar*String);voidLCD_ShowNum(unsignedcharLine,unsignedcharColumn,unsignedintNumber,unsignedcharLength);voidLCD_WriteCommand(unsignedcharCommand);voidLCD_WriteData(unsignedcharData);voidTimer0_Init();voidUartInit();voidUART_SendByte(unsignedchar*str);unsignedcharKey();bitStart18B20();bitConversion_accuracy_18b20();floatwendu_chuli();floatDS18B20_ReadT();unsignedcharDS18B20_ReadByte();voidDS18B20_WriteByte(unsignedcharByte);bitDS18B20_Init();/********************************************************主函數(shù)********************************************************/voidmain(){//初始化系統(tǒng)LCD_Init();//初始化LCD1602顯示屏Timer0_Init();//初始化定時(shí)器0(用于PWM控制)UartInit();//初始化串口(用于語(yǔ)音模塊通信)//初始化輸出引腳MOTOR=0;//關(guān)閉電機(jī)RELAY=0;//關(guān)閉繼電器(加熱)//顯示初始界面LCD_ShowString(1,1,"T:");//DS18B20溫度顯示LCD_ShowString(1,10,"F:");//流量顯示LCD_ShowString(2,1,"Y:");//溫度閾值顯示LCD_ShowString(2,10,"W:");//設(shè)置流量顯示LCD_ShowString(1,16,"S");//默認(rèn)手動(dòng)模式//設(shè)置DS18B20精度和啟動(dòng)溫度轉(zhuǎn)換while(!Conversion_accuracy_18b20());while(!Start18B20());//顯示初始數(shù)值LCD_ShowNum(2,3,value,3);//顯示溫度閾值LCD_ShowNum(2,12,water,3);//顯示設(shè)定出水量//主循環(huán)while(1)/********************************************************文件名:main.c*功能說(shuō)明:智能定量定溫飲水機(jī)控制系統(tǒng)主程序*系統(tǒng)功能:*1.溫度檢測(cè)與控制*2.水流量檢測(cè)與控制*3.語(yǔ)音識(shí)別控制*4.LCD顯示*5.按鍵控制********************************************************/#include<reg52.h>#include<intrins.h>#include<stdio.h>#include<string.h>//引腳定義#defineLCD1602_RSP2_6#defineLCD1602_RWP2_5#defineLCD1602_EP2_7#defineLCD1602_DATAPORTP0#defineDS18B20_DQP3_7#defineRELAYP1_0#defineSOLENOIDP1_1#defineMOTORP1_2#defineKEY1P3_1#defineKEY2P3_0#defineKEY3P3_2#defineKEY4P3_3//變量聲明floatT;//當(dāng)前水溫變量unsignedintvalue=35;//設(shè)置溫度閾值(默認(rèn)35℃)unsignedcharMode_T_W=0;//溫度和水流量模式(0-正常,1-調(diào)溫,2-調(diào)水量)unsignedcharKeyNum=0;//按鍵值unsignedcharMode=0;//工作模式(0-手動(dòng),1-自動(dòng))unsignedintwater=200;//設(shè)置出水量(默認(rèn)200ml)unsignedintwater_flow=0;//實(shí)際水流量floatmotorpwm=0;//電機(jī)PWM值unsignedintCompare=0;//電機(jī)PWM比較值unsignedcharsolenoid=1;//電磁閥狀態(tài)(1-關(guān),0-開)//語(yǔ)音命令代碼unsignedcharcodewater_stop[]={0xbf,0x33,0x44,0xaf};//停止出水命令unsignedcharcodewater_auto[]={0xff,0x1f,0x34,0xaf};//自動(dòng)模式命令unsignedcharcodewater_shou[]={0xff,0x2f,0x35,0xaf};//手動(dòng)模式命令unsignedcharcodewater_on[]={0xbf,0x22,0x33,0xaf};//開始出水命令unsignedcharUsart_Rx[10];//串口接收緩沖區(qū)//函數(shù)聲明voidDelay_ms(unsignedintms);voidLCD_Init();voidLCD_ShowChar(unsignedcharLine,unsignedcharColumn,unsignedcharChar);voidLCD_ShowString(unsignedcharLine,unsignedcharColumn,unsignedchar*String);voidLCD_ShowNum(unsignedcharLine,unsignedcharColumn,unsignedintNumber,unsignedcharLength);voidLCD_WriteCommand(unsignedcharCommand);voidLCD_WriteData(unsignedcharData);voidTimer0_Init();voidUartInit();voidUART_SendByte(unsignedchar*str);unsignedcharKey();bitStart18B20();bitConversion_accuracy_18b20();floatwendu_chuli();floatDS18B20_ReadT();unsignedcharDS18B20_ReadByte();voidDS18B20_WriteByte(unsignedcharByte);bitDS18B20_Init();/********************************************************主函數(shù)********************************************************/voidmain(){//初始化系統(tǒng)LCD_Init();//初始化LCD1602顯示屏Timer0_Init();//初始化定時(shí)器0(用于PWM控制)UartInit();//初始化串口(用于語(yǔ)音模塊通信)//初始化輸出引腳MOTOR=0;//關(guān)閉電機(jī)RELAY=0;//關(guān)閉繼電器(加熱)//顯示初始界面LCD_ShowString(1,1,"T:");//DS18B20溫度顯示LCD_ShowString(1,10,"F:");//流量顯示LCD_ShowString(2,1,"Y:");//溫度閾值顯示LCD_ShowString(2,10,"W:");//設(shè)置流量顯示LCD_ShowString(1,16,"S");//默認(rèn)手動(dòng)模式//設(shè)置DS18B20精度和啟動(dòng)溫度轉(zhuǎn)換while(!Conversion_accuracy_18b20());while(!Start18B20());//顯示初始數(shù)值LCD_ShowNum(2,3,value,3);//顯示溫度閾值LCD_ShowNum(2,12,water,3);//顯示設(shè)定出水量//主循環(huán)while(1){//獲取溫度T=wendu_chuli();if(T<0)T=0;//如果溫度小于0,將溫度設(shè)為0//顯示當(dāng)前溫度LCD_ShowNum(1,3,(unsignedint)T,2);LCD_ShowChar(1,5,'.');LCD_ShowNum(1,6,(unsignedint)(T*10)%10,1);//顯示當(dāng)前流量LCD_ShowNum(1,12,water_flow,3);//繼電器控制加熱if(T>value)//如果溫度超過(guò)閾值,關(guān)閉繼電器{RELAY=0;}else//如果溫度低于閾值,開啟繼電器{RELAY=1;}//按鍵掃描KeyNum=Key();if(KeyNum){if(KeyNum==1)//Key1切換工作模式{Mode++;if(Mode>=2)Mode=0;if(Mode==1){UART_SendByte(water_auto);//發(fā)送自動(dòng)模式命令LCD_ShowString(1,16,"A");//顯示自動(dòng)模式標(biāo)識(shí)}else{UART_SendByte(water_shou);//發(fā)送手動(dòng)模式命令LCD_ShowString(1,16,"S");//顯示手動(dòng)模式標(biāo)識(shí)}}}//手動(dòng)模式處理if(Mode==0){if(KeyNum==4)//K

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論