廠房消防自動(dòng)控制系統(tǒng)設(shè)計(jì)_第1頁(yè)
廠房消防自動(dòng)控制系統(tǒng)設(shè)計(jì)_第2頁(yè)
廠房消防自動(dòng)控制系統(tǒng)設(shè)計(jì)_第3頁(yè)
廠房消防自動(dòng)控制系統(tǒng)設(shè)計(jì)_第4頁(yè)
廠房消防自動(dòng)控制系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(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é)院 摘要 ix2功能與設(shè)計(jì)方案2.1系統(tǒng)功能要求本系統(tǒng)的主要功能是對(duì)廠房環(huán)境監(jiān)測(cè),當(dāng)出現(xiàn)溫度過(guò)高、煙霧濃度過(guò)大或明火等異常情況時(shí),及時(shí)發(fā)出聲光報(bào)警,并采取滅火措施,具體功能要求如下:(1)系統(tǒng)應(yīng)能連續(xù)測(cè)量環(huán)境溫度,測(cè)量范圍為-30~120℃,精度優(yōu)于±0.5℃,分辨率優(yōu)于0.1℃,采樣周期不大于1s。當(dāng)溫度超過(guò)設(shè)定的上限閾值(如80℃)時(shí),系統(tǒng)應(yīng)立刻發(fā)出溫度異常報(bào)警。(2)系統(tǒng)應(yīng)能連續(xù)檢測(cè)空氣中的煙霧濃度,檢測(cè)范圍為100~10000ppm,靈敏度優(yōu)于100ppm,響應(yīng)時(shí)間不大于10s。當(dāng)煙霧濃度超過(guò)設(shè)定的閾值(如1000ppm)時(shí),系統(tǒng)應(yīng)立即發(fā)出煙霧異常報(bào)警。(3)系統(tǒng)應(yīng)能快速識(shí)別火焰,探測(cè)距離不小于1m,視場(chǎng)角不小于60°,光譜響應(yīng)范圍為760nm~1100nm,響應(yīng)時(shí)間不大于1s。當(dāng)檢測(cè)到明火信號(hào)時(shí),系統(tǒng)應(yīng)立即發(fā)出火災(zāi)報(bào)警。(4)當(dāng)監(jiān)測(cè)量超過(guò)預(yù)設(shè)閾值時(shí),系統(tǒng)應(yīng)能根據(jù)報(bào)警等級(jí)和設(shè)定策略自動(dòng)觸發(fā)滅火裝置,滅火裝置可采用水泵等。(5)系統(tǒng)應(yīng)具備無(wú)線通信功能,能將現(xiàn)場(chǎng)采集的環(huán)境參數(shù)、報(bào)警狀態(tài)、控制命令等數(shù)據(jù)實(shí)時(shí)上傳到監(jiān)控中心,并接收監(jiān)控中心下發(fā)的查詢指令和控制指令。通信方式宜采用Wi-Fi、GPRS等常見(jiàn)標(biāo)準(zhǔn),通信頻率應(yīng)符合國(guó)家規(guī)定,通信距離應(yīng)滿足現(xiàn)場(chǎng)實(shí)際需求,通信延時(shí)應(yīng)不大于10s。2.2系統(tǒng)設(shè)計(jì)方案根據(jù)上述功能要求可以推測(cè),本系統(tǒng)應(yīng)由主控模塊、溫度采集模塊、煙霧采集模塊、火焰探測(cè)模塊、顯示模塊、報(bào)警模塊、無(wú)線通信模塊、電源模塊等組成,各模塊通過(guò)標(biāo)準(zhǔn)總線互聯(lián),在嵌入式微控制器的統(tǒng)一調(diào)度下協(xié)同工作。本系統(tǒng)的設(shè)計(jì)方案遵循模塊化、標(biāo)準(zhǔn)化、小型化的原則,硬件電路如圖所示。各模塊所選用的器件和接口類型在下一節(jié)中進(jìn)行詳細(xì)論證和確認(rèn)。要求所選器件成本低、通用性好、獲取渠道多樣,軟件開(kāi)發(fā)環(huán)境友好,從而降低系統(tǒng)的開(kāi)發(fā)難度和維護(hù)成本,提高系統(tǒng)的可靠、靈活性。系統(tǒng)總體設(shè)計(jì)方案如圖2.1所示:圖2.1系統(tǒng)硬件模塊工作框圖2.3器件方案對(duì)比2.3.1單片機(jī)的選擇方案一:STC89C52STC89C52是51系列單片機(jī)的一種,具有功耗低、抗干擾能力強(qiáng)、價(jià)格便宜等優(yōu)點(diǎn)。它內(nèi)置8KBFLASH、256BRAM,有4個(gè)16位定時(shí)器/計(jì)數(shù)器、8路10位AD、33個(gè)I/O口等資源,可滿足一般的控制應(yīng)用需求。但STC89C52主頻最高只有35MHz,運(yùn)算速度較慢,代碼存儲(chǔ)空間有限,不利于實(shí)現(xiàn)復(fù)雜的控制算法。它沒(méi)有硬件乘除法和浮點(diǎn)運(yùn)算單元,對(duì)信號(hào)處理能力較弱[13]。方案二:STM32F103STM32F103是ST公司推出的一款Cortex-M3內(nèi)核的32位MCU,主頻最高可達(dá)72MHz,性能遠(yuǎn)超51系列。它內(nèi)置64KB~512KBFLASH、20KBSRAM,擁有2個(gè)12位DAC、3個(gè)12位ADC、7個(gè)定時(shí)器、2個(gè)高級(jí)定時(shí)器、每個(gè)最高72MHz,12個(gè)DMA通道等豐富的外設(shè)資源,非常適合開(kāi)發(fā)高性能的嵌入式應(yīng)用。STM32F103還集成了硬件乘除法和浮點(diǎn)運(yùn)算單元,可加速信號(hào)處理算法。它支持多種低功耗模式,整體能效比51系列高很多。STM32F103引腳更多,封裝更小,具有更強(qiáng)的可擴(kuò)展性[14]。綜合比較,盡管STC89C52價(jià)格低廉,但其性能和資源已經(jīng)不能滿足本系統(tǒng)的要求。相比之下,STM32F103在運(yùn)算速度、代碼空間、信號(hào)處理、功耗等方面具有明顯優(yōu)勢(shì),可以輕松實(shí)現(xiàn)環(huán)境監(jiān)測(cè)和控制算法,滿足系統(tǒng)功能擴(kuò)展需求。因此,本系統(tǒng)選擇STM32F103作為主控芯片。2.3.2溫度檢測(cè)模塊的選型方案一:AD590AD590是AnalogDevices公司生產(chǎn)的一款模擬溫度傳感器,輸出電流與溫度成正比。它具有線性好、自發(fā)熱小等優(yōu)點(diǎn),適用于精度要求不高的場(chǎng)合。但AD590需要額外的電流電壓轉(zhuǎn)換電路,同時(shí)受噪聲、線阻的影響很大,測(cè)溫分辨率最高只有0.1°C。AD590自身無(wú)過(guò)熱保護(hù)功能,穩(wěn)定性和可靠性有待提高[15]。方案二:DS18B20DS18B20是Dallas公司推出的單線數(shù)字溫度傳感器。它將溫敏元件和A/D轉(zhuǎn)換,ROM存儲(chǔ)集成在一個(gè)封裝內(nèi),通過(guò)單總線與MCU連接。DS18B20具有測(cè)溫范圍寬(-55~125°C),測(cè)溫誤差?。ā?.5°C),硬件可編程分辨率(912位),多點(diǎn)組網(wǎng)能力強(qiáng)(16個(gè))等優(yōu)點(diǎn)。相比模擬傳感器,DS18B20抗干擾能力強(qiáng),測(cè)量精度高,無(wú)需信號(hào)調(diào)理電路。DS18B20還具有過(guò)熱保護(hù)功能和64位序列號(hào)存儲(chǔ),可靠性和實(shí)用性更強(qiáng)[16]。綜上所述,DS18B20在精度、分辨率、抗干擾、組網(wǎng)等方面明顯優(yōu)于AD590,更適合本系統(tǒng)的應(yīng)用需求。因此,本系統(tǒng)選用DS18B20作為溫度檢測(cè)模塊。2.3.3通信模塊的選型方案一:ESP8266ESP8266是樂(lè)鑫公司推出的一款高度集成的WiFiSoC芯片,內(nèi)置TensilicaL10632位處理器,主頻80~160MHz,內(nèi)置GPIO、PWM、I2C、SPI等標(biāo)準(zhǔn)接口,支持STA/AP/STA+AP三種工作模式。ESP8266采用UART/GPIO和單片機(jī)連接,具有成本低、體積小、功耗低、組網(wǎng)靈活、傳輸速率高等優(yōu)點(diǎn),適合開(kāi)發(fā)便攜式的無(wú)線監(jiān)控設(shè)備。但ESP8266的WiFi組網(wǎng)容易受環(huán)境干擾,傳輸距離和穿墻能力有限[17]。方案二:HC-05HC-05是一款基于CSRBC417143藍(lán)牙芯片的SPP模塊,采用UART接口,支持藍(lán)牙2.0協(xié)議。HC-05功耗低(8mA),傳輸速率高(1382.4kbps),通信穩(wěn)定可靠,外圍電路簡(jiǎn)單。但HC-05采用P2P組網(wǎng)方式,一次只能連一臺(tái)設(shè)備,網(wǎng)絡(luò)擴(kuò)展能力差。而且HC-05不支持TCP/IP協(xié)議棧,與手機(jī)APP的通信需要編寫藍(lán)牙串口服務(wù)程序,開(kāi)發(fā)難度大[18]。本系統(tǒng)的設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)多設(shè)備組網(wǎng)和遠(yuǎn)程APP監(jiān)控,需要支持TCP/IP的無(wú)線通信模塊。相比HC-05的藍(lán)牙P2P,ESP8266的WiFiSTA/AP更適合組建星型拓?fù)浣Y(jié)構(gòu)的監(jiān)控網(wǎng)絡(luò)。ESP8266可直接連接手機(jī)熱點(diǎn)或路由器,便于與手機(jī)APP交互。盡管WiFi信號(hào)衰減快,但對(duì)本系統(tǒng)的室內(nèi)近距離組網(wǎng)影響不大。因此,本系統(tǒng)選擇ESP8266作為無(wú)線通信模塊。2.4本章小結(jié)本章詳細(xì)闡述了系統(tǒng)的功能需求與整體設(shè)計(jì)方案,包括溫度、煙霧和火焰的檢測(cè)要求,以及無(wú)線通信功能。通過(guò)對(duì)比分析,選擇了STM32F103作為主控芯片,DS18B20作為溫度傳感器,ESP8266作為通信模塊。方案設(shè)計(jì)遵循模塊化、標(biāo)準(zhǔn)化原則,各模塊通過(guò)標(biāo)準(zhǔn)總線互聯(lián),確保系統(tǒng)具有可靠性、靈活性和成本效益。附錄B3系統(tǒng)的硬件設(shè)計(jì)3.1STM32F103單片機(jī)STM32F103是意法半導(dǎo)體(ST)公司推出的一款基于ARMCortex-M3內(nèi)核的高性能32位微控制器。它主頻高達(dá)72MHz,集成了最大128KBFlash、20KBSRAM,擁有豐富的外設(shè)資源,包括2個(gè)12位ADC、3個(gè)12位SPI、2個(gè)I2C接口、5個(gè)USART、USB2.0等,非常適合開(kāi)發(fā)廠房消防自動(dòng)控制系統(tǒng)等高性能嵌入式應(yīng)用。STM32F103最小系統(tǒng)由電源電路、時(shí)鐘電路、復(fù)位電路和調(diào)試接口等組成。電源電路采用AMS1117-3.3穩(wěn)壓芯片,將5V電壓降至3.3V為單片機(jī)供電,并通過(guò)100nF和10uF電容濾波,以提高電源的紋波抑制比和瞬態(tài)響應(yīng)能力。時(shí)鐘電路選用8MHz無(wú)源晶振,采用諧振模式,兩端并聯(lián)20pF電容,可獲得頻率穩(wěn)定、相位噪聲低的系統(tǒng)時(shí)鐘。復(fù)位電路由100nF去耦電容和10K上拉電阻構(gòu)成,接入NRST管腳,確保單片機(jī)上電或供電不穩(wěn)時(shí)能可靠復(fù)位。為方便程序下載和在線調(diào)試,SWDIO和SWCLK管腳通過(guò)1K保護(hù)電阻引出到2x4P插座,與仿真器相連[19]。STM32F103憑借其出色的性能、豐富的資源和靈活的擴(kuò)展性,已經(jīng)成為工業(yè)控制、醫(yī)療電子、智能家居等諸多領(lǐng)域的首選MCU之一。在本系統(tǒng)中,STM32F103承擔(dān)了傳感器數(shù)據(jù)采集、數(shù)據(jù)處理、控制輸出、無(wú)線通信等核心任務(wù),是整個(gè)廠房消防自動(dòng)控制系統(tǒng)的控制中心。圖3.1單片機(jī)接線圖3.2DS18B20溫度檢測(cè)模塊DS18B20是美國(guó)Maxim公司生產(chǎn)的一款數(shù)字溫度傳感器,采用單總線(1-Wire)接口,支持多點(diǎn)組網(wǎng)。它可以測(cè)量-55℃到+125℃的溫度,固有誤差±0.5℃,分辨率可編程(9~12位),對(duì)應(yīng)的轉(zhuǎn)換時(shí)間分別為93.75ms、187.5ms、375ms和750ms。DS18B20采用TO-92封裝,集成了溫度測(cè)量、A/D轉(zhuǎn)換、非易失性存儲(chǔ)等功能,使用非常方便[20]。本系統(tǒng)選用DS18B20作為溫度檢測(cè)模塊,VCC接3.3V電源,GND接地,I/O通過(guò)10K上拉電阻接STM32的PA8管腳??紤]到實(shí)際應(yīng)用環(huán)境的復(fù)雜性,傳感器采用三線制連接,電源線和地線要盡量粗、盡量短,數(shù)據(jù)線與其它高頻信號(hào)線要保持一定距離,整個(gè)通信網(wǎng)絡(luò)的總線長(zhǎng)度不宜超過(guò)30米。為提高測(cè)溫精度,系統(tǒng)將DS18B20的分辨率設(shè)置為12位,即0.0625℃/LSB,轉(zhuǎn)換時(shí)間為750ms。這樣既可獲得較高的測(cè)量精度,又不至于過(guò)多占用CPU時(shí)間。DS18B20通過(guò)單總線協(xié)議與MCU通信,MCU首先發(fā)送初始化時(shí)序,DS18B20響應(yīng)在線,然后MCU發(fā)送ROM指令和功能指令,DS18B20執(zhí)行相應(yīng)操作,最后MCU讀取DS18B20轉(zhuǎn)換的溫度值,并根據(jù)需要開(kāi)始下一次轉(zhuǎn)換。單總線是一種半雙工、異步通信方式,由主機(jī)(MCU)發(fā)起和控制數(shù)據(jù)傳輸,從機(jī)(DS18B20)響應(yīng)主機(jī)請(qǐng)求??偩€空閑時(shí)為高電平,由上拉電阻維持,當(dāng)主機(jī)或從機(jī)要發(fā)送數(shù)據(jù)時(shí),將總線拉低一段時(shí)間,形成低電平脈沖,傳輸數(shù)據(jù)位。這種硬件測(cè)量方式可保證異常情況下系統(tǒng)及時(shí)響應(yīng),避免錯(cuò)過(guò)最佳處理時(shí)機(jī)。圖3.2DS18B20模塊接線圖3.3ESP8266無(wú)線通信模塊ESP8266是樂(lè)鑫(Espressif)公司開(kāi)發(fā)的一款高度集成的WiFiSoC芯片,集成了TensilicaL10632位RISC處理器,主頻80~160MHz,內(nèi)置RTOS操作系統(tǒng)和TCP/IP協(xié)議棧,支持802.11b/g/n標(biāo)準(zhǔn),具有完整的WiFi功能。ESP8266擁有豐富的外設(shè)接口,包括SPI、I2C、UART、GPIO、PWM、ADC等,可直接連接各種傳感器和執(zhí)行器,構(gòu)建物聯(lián)網(wǎng)應(yīng)用。ESP8266具有三種工作模式,即STA站點(diǎn)模式、AP接入點(diǎn)模式和STA+AP混合模式,可靈活組網(wǎng)。本系統(tǒng)選用的是ESP-01S模塊,采用DIP封裝,內(nèi)置了1MBSPIFlash,支持程序遠(yuǎn)程升級(jí)(OTA)。該模塊工作在2.4GHz頻段,發(fā)射功率高達(dá)+19.5dBm,接收靈敏度可達(dá)-97dBm,通信距離可達(dá)100m以上。在本系統(tǒng)中VCC接3.3V電源,GND接地,RXD和TXD分別連接到STM32的PA1(USART1_TX)和PA2(USART1_RX),實(shí)現(xiàn)串口通信;EN使能管腳接3.3V,保持模塊常開(kāi);GPIO0在下載程序時(shí)需拉低,平時(shí)接3.3V;GPIO2作為指示燈,低電平點(diǎn)亮。ESP8266通過(guò)AT指令集與外部MCU通信,AT指令是一種文本格式的命令,以"AT"開(kāi)頭,以"\r\n"結(jié)尾,用于控制和配置ESP8266的各項(xiàng)參數(shù),如WiFi模式、SSID、密碼、透?jìng)髂J降?。MCU發(fā)送AT指令給ESP8266,ESP8266執(zhí)行相應(yīng)操作并返回響應(yīng)。ESP8266還支持串口透?jìng)髂J?,可以?shí)現(xiàn)MCU與網(wǎng)絡(luò)服務(wù)器的直接雙向通信,無(wú)需編寫復(fù)雜的網(wǎng)絡(luò)協(xié)議和應(yīng)用層邏輯,大大降低了開(kāi)發(fā)難度。透?jìng)髂J较?,ESP8266的串口數(shù)據(jù)直接轉(zhuǎn)發(fā)到網(wǎng)絡(luò),網(wǎng)絡(luò)數(shù)據(jù)也直接轉(zhuǎn)發(fā)到串口,如同一根無(wú)線串口線。在本系統(tǒng)中,我們利用ESP8266實(shí)現(xiàn)了廠房消防自動(dòng)控制系統(tǒng)的無(wú)線組網(wǎng)和遠(yuǎn)程通信功能,極大地提升了系統(tǒng)的靈活性。圖3.3ESP8266無(wú)線通信模塊接線圖3.4MQ-2煙霧檢測(cè)模塊MQ-2是一款常見(jiàn)的空氣質(zhì)量傳感器,對(duì)液化氣、煙霧等多種可燃?xì)怏w具有良好的敏感特性。當(dāng)空氣中存在可燃?xì)怏w時(shí),MQ-2的電導(dǎo)率隨氣體濃度升高而增大。MQ-2傳感器由墊片、敏感材料、測(cè)量電極、加熱電極等組成。當(dāng)加熱電極通電加熱時(shí),敏感材料的電阻值隨溫度升高而降低;當(dāng)傳感器暴露在含有可燃?xì)怏w的空氣中時(shí),氣體分子在催化劑作用下發(fā)生氧化反應(yīng),放出熱量,使敏感材料溫度進(jìn)一步升高,導(dǎo)電率急劇增大,通過(guò)負(fù)載電阻轉(zhuǎn)化為電壓信號(hào)輸出。該電壓信號(hào)隨氣體濃度的升高而增強(qiáng),與氣體濃度呈指數(shù)關(guān)系。在本系統(tǒng)中,VCC接5V電源,GND接地,AOUT輸出模擬電壓信號(hào)。為了便于MCU采集,AOUT接到STM32的PA5(ADC_IN1)。ADC的參考電壓為3.3V,分辨率12位,因此煙霧濃度C與ADC讀數(shù)N的關(guān)系可表示為:C=5/3.31000/4096N(ppm)。本設(shè)計(jì)利用MQ-2對(duì)電氣線路周圍的煙霧濃度進(jìn)行監(jiān)測(cè),一旦發(fā)現(xiàn)異常即時(shí)報(bào)警,為及時(shí)發(fā)現(xiàn)和撲滅廠房消防提供了可靠保障。圖3.4MQ-2煙霧檢測(cè)模塊接線圖3.5火焰檢測(cè)模塊火焰是直接表征,及時(shí)、準(zhǔn)確地檢測(cè)火焰,是實(shí)現(xiàn)廠房消防監(jiān)控的關(guān)鍵?;鹧?zhèn)鞲衅魇且环N基于熱釋電紅外傳感器的光電式火焰探測(cè)器,對(duì)火焰輻射的紅外光譜具有選擇性響應(yīng)。當(dāng)探測(cè)器探頭朝向明火時(shí),火焰輻射的紅外光子被吸收,使敏感元件的溫度升高,內(nèi)部極化產(chǎn)生的熱釋電荷被釋放,在上下電極間形成電壓信號(hào)輸出。該電壓信號(hào)隨火焰強(qiáng)度和距離的變化而變化,反映了火情的大小和遠(yuǎn)近。本系統(tǒng)中,火焰?zhèn)鞲衅鞯腣CC接3.3V,GND接地,D0輸出數(shù)字信號(hào)接PB11。圖3.5火焰檢測(cè)模塊接線圖3.6OLED顯示模塊OLED具有自發(fā)光、對(duì)比度高、視角廣、響應(yīng)速度快、工作溫度范圍寬等優(yōu)點(diǎn),在各類電子產(chǎn)品中得到越來(lái)越廣泛的應(yīng)用。本系統(tǒng)選用的是一款0.96寸OLED顯示模塊,分辨率12864,采用I2C接口,支持IIC_OLED_096庫(kù),可顯示3行1616點(diǎn)陣漢字或6行816點(diǎn)陣ASCII字符。該模塊工作電壓為3.3~5V,功耗約20mA,物理尺寸為27mm27mm*4mm,自帶控制器,使用簡(jiǎn)單方便。本系統(tǒng)中OLED的VCC接3.3V電源,GND接地,SCL接PB14(I2C1_SCL),SDA接PB15(I2C1_SDA)。I2C是一種常用的串行通信協(xié)議,由數(shù)據(jù)線SDA和時(shí)鐘線SCL組成,支持多主多從、異步半雙工通信。I2C總線空閑時(shí),SDA和SCL都為高電平;當(dāng)主機(jī)要發(fā)起通信時(shí),先發(fā)送起始條件(SCL高電平時(shí),SDA由高變低),然后發(fā)送7位從機(jī)地址和1位讀寫控制位,接著發(fā)送或接收數(shù)據(jù)(高位在前),最后發(fā)送停止條件(SCL高電平時(shí),SDA由低變高),完成一次通信?;贠LED模塊,本系統(tǒng)實(shí)現(xiàn)了環(huán)境參數(shù)、報(bào)警狀態(tài)等信息的實(shí)時(shí)顯示。在主界面上,第一行顯示標(biāo)題"火災(zāi)報(bào)警系統(tǒng)",第二行顯示溫度,第三行顯示煙霧濃度,第四行顯示是否有火焰及報(bào)警狀態(tài)。當(dāng)溫度超過(guò)設(shè)定值、煙霧濃度超標(biāo)或檢測(cè)到明火時(shí),屏幕閃爍并顯示報(bào)警信息。圖3.6OLED顯示模塊接線圖3.7按鍵模塊通過(guò)按鍵,用戶可以控制系統(tǒng)的工作狀態(tài),調(diào)整報(bào)警參數(shù),切換顯示界面等。按鍵的工作原理比較簡(jiǎn)單:當(dāng)按鍵未按下時(shí),按鍵開(kāi)關(guān)斷開(kāi),MCU的GPIO口通過(guò)上拉電阻被拉高;當(dāng)按鍵按下時(shí),按鍵開(kāi)關(guān)閉合,GPIO口被拉低。MCU通過(guò)檢測(cè)GPIO口的電平變化,來(lái)判斷按鍵的狀態(tài)。本系統(tǒng)使用了3個(gè)獨(dú)立按鍵,分別連接到STM32的PB3、PB4和PB5引腳,這些引腳內(nèi)部已經(jīng)集成了上拉電阻,因此按鍵的一端直接接GPIO,另一端接地即可。圖3.7按鍵模塊接線圖3.8本章小結(jié)本章詳細(xì)介紹了系統(tǒng)的硬件設(shè)計(jì),包括STM32F103單片機(jī)、DS18B20溫度傳感器、MQ-2煙霧傳感器、火焰?zhèn)鞲衅?、OLED顯示模塊、ESP8266無(wú)線通信模塊等核心元件的選型與接線。每個(gè)模塊都有其特定功能和接口類型,通過(guò)合理設(shè)計(jì)的電路相互連接,共同構(gòu)成了一個(gè)功能完整的廠房消防自動(dòng)控制系統(tǒng),為軟件的實(shí)現(xiàn)提供了可靠的硬件平臺(tái)。5系統(tǒng)的測(cè)試4系統(tǒng)的軟件設(shè)計(jì)4.1軟件介紹Keil5是德國(guó)ARM公司推出的一種集成開(kāi)發(fā)環(huán)境(IDE),主要用于ARMCortex-M系列微控制器的程序開(kāi)發(fā)。它包含了工程管理、代碼編輯、程序編譯、程序下載、程序調(diào)試等一系列功能,可以顯著提高嵌入式軟件的開(kāi)發(fā)效率和代碼質(zhì)量。本系統(tǒng)使用Keil5作為軟件開(kāi)發(fā)平臺(tái),基于C語(yǔ)言和HAL庫(kù)編寫應(yīng)用程序。本系統(tǒng)的軟件開(kāi)發(fā)流程遵循了Keil5的一般使用步驟,首先,根據(jù)硬件電路設(shè)計(jì)新建Keil工程,選擇STM32F103C8作為目標(biāo)芯片,ST-Link作為仿真器,配置時(shí)鐘、調(diào)試、優(yōu)化等選項(xiàng)。然后,利用STM32CubeMX軟件生成工程基本框架,包括時(shí)鐘配置、GPIO配置、中斷管理等,并添加FreeRTOS、OLED、ESP8266等外設(shè)驅(qū)動(dòng)。接著,在main.c文件中編寫應(yīng)用層代碼,如任務(wù)創(chuàng)建、消息隊(duì)列、事件標(biāo)志等,實(shí)現(xiàn)溫度采集、煙霧檢測(cè)、火焰識(shí)別、閾值判斷、報(bào)警輸出、數(shù)據(jù)顯示、無(wú)線通信等功能。最后,對(duì)軟件進(jìn)行反復(fù)調(diào)試和測(cè)試,優(yōu)化代碼結(jié)構(gòu)和執(zhí)行效率,直到滿足系統(tǒng)要求為止。圖4.1Keil_5軟件界面4.2軟件程序的設(shè)計(jì)4.2.1主程序流程圖圖4.2系統(tǒng)邏輯流程圖4.2.2主程序流程介紹系統(tǒng)的主流程圖如圖4.1所示,在main.c中,先寫入其他.c的頭文件,接著是定義用到的全局變量和用到的函數(shù),然后就進(jìn)入到主函數(shù)中。在主函數(shù)中,先進(jìn)行初始化,然后按順序循環(huán)while中的五個(gè)函數(shù):按鍵函數(shù)、監(jiān)測(cè)函數(shù)、顯示函數(shù)、處理函數(shù)和WIFI函數(shù)。按鍵函數(shù)根據(jù)獲取的鍵值進(jìn)行界面切換、設(shè)置溫度和煙霧閾值;監(jiān)測(cè)函數(shù)則每500ms獲取一次溫度、煙霧;顯示函數(shù)則顯示系統(tǒng)名稱、溫度和煙霧值及其閾值,是否有火;處理函數(shù)則檢測(cè)到溫度/煙霧超標(biāo),進(jìn)行報(bào)警,否則不報(bào)警。最后是WIFI函數(shù),將獲取的數(shù)據(jù)上傳至云平臺(tái)并進(jìn)行設(shè)置閾值。圖4.1程序總體流程圖4.2.3按鍵函數(shù)流程設(shè)計(jì)主機(jī)按鍵函數(shù)子流程圖如圖4.2所示,按鍵設(shè)置函數(shù)首先通過(guò)按鍵掃描函數(shù),獲取按鍵按下的相關(guān)信息,通過(guò)不同的鍵值,進(jìn)行相應(yīng)變量的改變。如果獲取的鍵值為1,切換界面。如果獲取的鍵值為2,界面1,設(shè)置溫度閾值+1;界面2,設(shè)置煙霧閾值+1。如果獲取的鍵值為3,界面1,設(shè)置溫度閾值-1;界面2,設(shè)置煙霧閾值-1。圖4.2按鍵程序流程圖4.1.4處理函數(shù)流程圖處理函數(shù)流程圖如圖4.3所示,如果煙霧/溫度大于閾值或者檢測(cè)到明火時(shí),蜂鳴器報(bào)警并啟動(dòng)執(zhí)行裝置,否則不報(bào)警。圖4.3處理程序流程圖4.3本章小結(jié)本章闡述了系統(tǒng)的軟件設(shè)計(jì),包括Keil5開(kāi)發(fā)環(huán)境的使用以及軟件流程設(shè)計(jì)。主程序依次執(zhí)行按鍵函數(shù)、監(jiān)測(cè)函數(shù)、顯示函數(shù)、處理函數(shù)和WIFI函數(shù)。按鍵函數(shù)負(fù)責(zé)界面切換和閾值設(shè)置;監(jiān)測(cè)函數(shù)定期采集環(huán)境數(shù)據(jù);顯示函數(shù)實(shí)時(shí)更新界面信息;處理函數(shù)根據(jù)閾值判斷是否報(bào)警;WIFI函數(shù)實(shí)現(xiàn)數(shù)據(jù)上傳和遠(yuǎn)程控制,形成了完整的軟件控制體系。5系統(tǒng)的測(cè)試5.1軟硬件調(diào)試系統(tǒng)測(cè)試是驗(yàn)證軟硬件功能和性能的必要手段。只有經(jīng)過(guò)全面、系統(tǒng)的測(cè)試,才能確保系統(tǒng)的可靠性、穩(wěn)定性和安全性。硬件調(diào)試的主要內(nèi)容包括:(1)器件焊接:檢查芯片、模塊、接插件的焊接質(zhì)量,確保引腳連接正確,沒(méi)有虛焊、漏焊等問(wèn)題。(2)電源配置:檢查電源電路的輸出電壓和紋波,確保各器件的供電滿足要求。(3)時(shí)鐘配置:檢查有源晶振和無(wú)源晶振的起振情況,測(cè)量時(shí)鐘頻率是否正確。(4)GPIO配置:檢查GPIO口的輸入輸出狀態(tài),確保與外部器件的電平匹配。(5)串口配置:檢查RS232、RS485、TTL串口的通信波形,確保數(shù)據(jù)收發(fā)正常。(6)仿真器連接:檢查J-Link、ST-Link的連接狀態(tài),確保能夠正常下載和調(diào)試程序。軟件調(diào)試的主要內(nèi)容包括:(1)程序下載:將編譯生成的程序文件下載到芯片F(xiàn)lash中,檢查下載過(guò)程是否出錯(cuò)。(2)變量監(jiān)視:在關(guān)鍵變量處設(shè)置監(jiān)視點(diǎn),檢查變量的實(shí)時(shí)值是否符合預(yù)期。(3)語(yǔ)句斷點(diǎn):在關(guān)鍵語(yǔ)句處設(shè)置斷點(diǎn),逐語(yǔ)句執(zhí)行程序,檢查程序流程是否正確。(4)內(nèi)存分析:查看RAM和ROM的使用情況,檢查是否存在內(nèi)存泄漏、溢出等問(wèn)題。(5)資源統(tǒng)計(jì):統(tǒng)計(jì)程序各部分的代碼量、執(zhí)行時(shí)間,評(píng)估代碼的效率和優(yōu)化空間。在硬件調(diào)試時(shí),對(duì)焊接的電路板進(jìn)行目視檢查,對(duì)可疑點(diǎn)進(jìn)行電氣測(cè)試,必要時(shí)使用X射線檢查BGA等器件的焊接質(zhì)量;使用示波器測(cè)量電源的紋波系數(shù)和晶振的起振波形,使用萬(wàn)用表測(cè)量各器件的工作電壓;使用邏輯分析儀捕獲串口通信數(shù)據(jù),分析數(shù)據(jù)幀的格式和時(shí)序,驗(yàn)證通信協(xié)議的正確性。在軟件調(diào)試時(shí),在Keil5的Debug模式下,使用STM32ST-LINKDebugger進(jìn)行程序下載和在線調(diào)試;在串口中打印關(guān)鍵變量的值,如溫度值、煙霧濃度值、火焰狀態(tài)值等,觀察其變化趨勢(shì);在while循環(huán)、if分支等關(guān)鍵語(yǔ)句處打斷點(diǎn),單步跟蹤程序執(zhí)行過(guò)程,定位代碼邏輯錯(cuò)誤;使用Keil5的Analyze模式,生成代碼覆蓋率報(bào)告和性能分析報(bào)告,找出代碼的薄弱環(huán)節(jié)。通過(guò)軟硬件的聯(lián)合調(diào)試,本系統(tǒng)排除了溫度傳感器接觸不良、ADC基準(zhǔn)電壓偏差、火焰?zhèn)鞲衅鞲蓴_等硬件故障,修正了溫度閾值判斷錯(cuò)誤、OLED顯示亂碼、任務(wù)優(yōu)先級(jí)顛倒等軟件錯(cuò)誤,最終實(shí)現(xiàn)了系統(tǒng)功能的正確實(shí)現(xiàn)。5.2實(shí)物展示5.2.1溫度異常報(bào)警在測(cè)試時(shí),利用手指溫度加熱溫度傳感器,使其溫度快速上升。當(dāng)溫度超過(guò)預(yù)設(shè)的上限閾值時(shí),系統(tǒng)發(fā)出溫度異常報(bào)警,蜂鳴器鳴叫,LED指示燈閃爍,OLED顯示屏顯示當(dāng)前溫度值和報(bào)警信息,同時(shí)啟動(dòng)執(zhí)行繼電器,控制水泵滅火,報(bào)警持續(xù)一段時(shí)間后,溫度逐漸恢復(fù)正常,報(bào)警解除。圖5.1溫度異常5.2.2煙霧濃度異常報(bào)警在測(cè)試時(shí),利用打火機(jī)釋放丁烷,制造煙霧,當(dāng)煙霧散布到煙霧傳感器周圍,使其濃度超過(guò)預(yù)設(shè)的閾值時(shí),系統(tǒng)發(fā)出煙霧異常報(bào)警,蜂鳴器鳴叫,OLED顯示屏顯示當(dāng)前煙霧濃度值和報(bào)警信息。報(bào)警持續(xù)一段時(shí)間后,煙霧濃度逐漸降低,報(bào)警解除。圖5.2煙霧濃度異常報(bào)警5.2.3明火報(bào)警在測(cè)試時(shí),點(diǎn)燃打火機(jī),使其火焰直接照射到火焰?zhèn)鞲衅魃?。?dāng)火焰?zhèn)鞲衅鳈z測(cè)到明火信號(hào)時(shí),系統(tǒng)立即發(fā)出火災(zāi)報(bào)警,蜂鳴器持續(xù)鳴叫,OLED顯示屏顯示火焰報(bào)警信息。系統(tǒng)將通過(guò)繼電器觸發(fā)滅火裝置,撲滅火源,報(bào)警一直持續(xù),直到火焰完全熄滅。圖5.3明火報(bào)警5.3本章小結(jié)本章介紹了系統(tǒng)的測(cè)試過(guò)程,包括軟硬件調(diào)試和實(shí)物功能展示。硬件調(diào)試涵蓋了器件焊接、電源配置、時(shí)鐘與GPIO檢查等方面;軟件調(diào)試包括程序下載、變量監(jiān)視、斷點(diǎn)調(diào)試等內(nèi)容。實(shí)物測(cè)試驗(yàn)證了溫度異常報(bào)警、煙霧濃度異常報(bào)警和明火報(bào)警三大功能的有效性,系統(tǒng)能夠及時(shí)檢測(cè)異常情況并觸發(fā)相應(yīng)的報(bào)警和控制機(jī)制,達(dá)到了預(yù)期的設(shè)計(jì)目標(biāo)。結(jié)論結(jié)論結(jié)論本文詳細(xì)論述了一款基于STM32的多傳感廠房消防自動(dòng)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程,本系統(tǒng)以STM32F103單片機(jī)為核心控制器,采用DS18B20、MQ-2和火焰?zhèn)鞲衅鲗?shí)現(xiàn)了溫度、煙霧和明火的實(shí)時(shí)監(jiān)測(cè),通過(guò)蜂鳴器和繼電器執(zhí)行聲光報(bào)警和聯(lián)動(dòng)滅火,利用ESP8266實(shí)現(xiàn)了無(wú)線組網(wǎng)和遠(yuǎn)程通信,并以O(shè)LED顯示屏和按鍵開(kāi)關(guān)實(shí)現(xiàn)了人機(jī)交互。系統(tǒng)軟件基于Keil5開(kāi)發(fā)環(huán)境和FreeRTOS實(shí)時(shí)操作系統(tǒng),采用模塊化和結(jié)構(gòu)化的編程風(fēng)格,實(shí)現(xiàn)了溫度采集、煙霧檢測(cè)、火焰識(shí)別、閾值判斷、報(bào)警輸出、無(wú)線上報(bào)等核心功能。經(jīng)過(guò)實(shí)際測(cè)試,該系統(tǒng)各項(xiàng)功能指標(biāo)符合預(yù)期要求,能夠及時(shí)、準(zhǔn)確、可靠地監(jiān)測(cè)和報(bào)警廠房消防隱患,具有較高的實(shí)用價(jià)值。參考文獻(xiàn)參考文獻(xiàn)[1]楊濟(jì)韓,李景偉,蒲放,等.基于BLE-LoRa的布撒式自組網(wǎng)火災(zāi)報(bào)警系統(tǒng)的設(shè)計(jì)思考[J].廣東通信技術(shù),2023,43(1):6.[2]李惠濱,張金傲,張慶慶,等.一種火災(zāi)報(bào)警系統(tǒng):,CN114783136A[P].2022.[3]王芳.基于智能控制的火災(zāi)報(bào)警系統(tǒng)設(shè)計(jì)[J].2022(2).[4]張龍禎.地鐵站中火災(zāi)自動(dòng)報(bào)警系統(tǒng)的應(yīng)用[J].數(shù)碼設(shè)計(jì)(上),2022(011):000.[5]Ming-YanL,NingC.DesiononafullywirelessautomaticfirealarmsystembasedonZigBeeandGPRS[J].FireScience&Technology,2015.[6]ChenB,HuZ,GeL,etal.DesignofWirelessFireDetectionandAlarmSystemBasedonZigBeeTechnology[C]//REET2013;InternationalConferenceonRenewableEnergyandEnvironmentalTechnology.2014.[7]Dong-HaiX,Jin-FengY,MingZ,etal.Zigbeewirelessfirealarmdetectorbasedonpoweroptimization[J].FireScienceandTechnology,2011.[8]PrasadKD,ChintojuS.DesigningOfScalableFire,Smoke,GasLeakageMonitorAndAlarmSystemBasedOnZigbeeTechnology[J].[2024-04-19].[9]YunhongL,MeiniQ.TheDesignofBuildingFireMonitoringSystemBasedonZigBee-WiFiNetworks[C]//EighthInternationalConferenceonMeasuringTechnology&MechatronicsAutomation.IEEE,2016.DOI:10.1109/ICMTMA.2016.180.[10]田學(xué)文.自動(dòng)煙霧報(bào)警系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)[D].電子科技大學(xué),2019.[11]佚名.新型火災(zāi)自動(dòng)報(bào)警耐火壁紙[J].傳感器世界,2018.[12]王海燕,郭曉蒙.地鐵火災(zāi)自動(dòng)報(bào)警系統(tǒng)探討[J].消防科學(xué)與技術(shù),2010.[13]劉正華.二線制火災(zāi)自動(dòng)報(bào)警系統(tǒng)設(shè)計(jì)探討[J].建筑電氣,2023,42(1):6.[14]北京市公安局消防局,趙英然.智能建筑火災(zāi)自動(dòng)報(bào)警系統(tǒng)設(shè)計(jì)與實(shí)施[M].知識(shí)產(chǎn)權(quán)出版社,2005.[15]朱峰,高翔.海上石油平臺(tái)火災(zāi)自動(dòng)報(bào)警系統(tǒng)可靠性分析[J].中文科技期刊數(shù)據(jù)庫(kù)(全文版)工程技術(shù),2023(2):4.[16]程唱唱,張明,蔡香虎,等.火災(zāi)報(bào)警系統(tǒng):,CN216817542U[P].2022.[17]崔揚(yáng)揚(yáng),崔獻(xiàn)民,張海鋒,等.智能社區(qū)火災(zāi)報(bào)警系統(tǒng):,CN215643033U[P].2022.[18]王曉梅,孫景輝,魏海洋,等.火災(zāi)報(bào)警系統(tǒng)及火災(zāi)報(bào)警控制方法:,CN114495411A[P].2022.[19]姜雪楓,馮彬杰,梁宇斌.一種變電站消防及火災(zāi)報(bào)警系統(tǒng):,CN114100048A[P].2022.[20]王濤,葉恭良.一種無(wú)線型火災(zāi)自動(dòng)報(bào)警系統(tǒng):,CN216310988U[P].2022.附錄B附錄A原理圖:附錄B部分源程序:#include"main.h"#include"adc.h"#include"tim.h"#include"usart.h"#include"gpio.h"/*Privateincludes*//*USERCODEBEGINIncludes*/#include"./HAL/key/key.h"#include"./HAL/OLED/OLED_NEW.H"#include"./HAL/DELAY/delay.h"#include"./HAL/AliESP8266/AliESP8266.h"#include"./HAL/ds18b20/ds18b20.h"/*USERCODEENDIncludes*//*Privatetypedef*//*USERCODEBEGINPTD*/voidKey_function(void); //按鍵函數(shù)voidMonitor_function(void); //監(jiān)測(cè)函數(shù)voidDisplay_function(void); //顯示函數(shù)voidManage_function(void); //處理函數(shù)/*USERCODEENDPTD*//*Privatedefine*//*USERCODEBEGINPD*/#defineRELAY(a)(a?HAL_GPIO_WritePin(RELAY_GPIO_Port,RELAY_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(RELAY_GPIO_Port,RELAY_Pin,GPIO_PIN_RESET))#defineBEEP(a)(a?HAL_GPIO_WritePin(BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_RESET))#defineFIRHAL_GPIO_ReadPin(FIR_GPIO_Port,FIR_Pin)uint8_tUSART1_TX_BUF[200];#defineu1_printf(...)HAL_UART_Transmit(&huart1,USART1_TX_BUF,sprintf((char*)USART1_TX_BUF,__VA_ARGS__),0xffff)uint8_tUSART2_TX_BUF[200];#defineu2_printf(...)HAL_UART_Transmit(&huart2,USART2_TX_BUF,sprintf((char*)USART2_TX_BUF,__VA_ARGS__),0xffff)/*USERCODEENDPD*//*Privatemacro*//*USERCODEBEGINPM*//*USERCODEENDPM*//*Privatevariables*//*USERCODEBEGINPV*/uint8_tkey_num,flag_display;//按鍵與顯示變量uint16_ttime_1ms,time_500ms;//計(jì)時(shí)變量1ms,500msuint8_tadc_ch;//adc

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論