圍欄報(bào)警系統(tǒng)設(shè)計(jì)論文
時(shí)間:2022-04-02 11:37:15
導(dǎo)語(yǔ):圍欄報(bào)警系統(tǒng)設(shè)計(jì)論文一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
1整體系統(tǒng)框架
本系統(tǒng)的整體結(jié)構(gòu)框圖是各個(gè)模塊之間通過(guò)串口UART進(jìn)行通信,固定在柵欄周圍,最后與計(jì)算機(jī)相連接,利用上位機(jī)軟件進(jìn)行控制,既實(shí)時(shí)監(jiān)測(cè)每個(gè)模塊的狀態(tài),是否發(fā)生報(bào)警。
2硬件設(shè)計(jì)
圍欄報(bào)警系統(tǒng)是由各個(gè)模塊共同構(gòu)成的,本節(jié)將具體介紹模塊的內(nèi)部結(jié)構(gòu)。
2.1加速度傳感器ADXL344
ADXL344是一款完整的3軸、數(shù)字輸出加速度測(cè)量系統(tǒng),可選擇的測(cè)量范圍有±2g、±8g、±16g。本設(shè)計(jì)主要利用ADXL344中的寄存器THRESH_ACT,該寄存器保存活動(dòng)檢測(cè)的閾值,當(dāng)活動(dòng)事件的幅度值(X、Y、Z軸)大于閾值就會(huì)觸發(fā)活動(dòng)事件Activity的置位(Activity中斷已使能)。以及寄存器THRESH_INACT、TIME_INACT,用于設(shè)置靜止時(shí)的閾值。設(shè)置寄存器INT_MAP的值分配相應(yīng)的中斷到INT1或INT2引腳,由單片機(jī)中斷引腳INT0/INT1控制ADXL344產(chǎn)生的中斷,從而判斷是否發(fā)生報(bào)警。
2.2ADXL344通信接口電路
加速度傳感器ADXL344既能實(shí)現(xiàn)I2C通信也能實(shí)現(xiàn)SPI通信,本文單片機(jī)C8051F020與ADXL344之間通過(guò)串口SPI進(jìn)行通信,實(shí)現(xiàn)了單片機(jī)控制及讀寫加速度傳感器。且將加速度傳感器的中斷引腳INT1/INT2分別與單片機(jī)INT0/INT1引腳相連接。
3程序設(shè)計(jì)
本程序設(shè)計(jì)主要是實(shí)現(xiàn)這兩方面的通信,第一、C8051F020與ADXL344之間的SPI通信;第二、模塊與模塊之間的通信即串口UART0與串口UART1之間數(shù)據(jù)的相互轉(zhuǎn)發(fā)。主要包括四大模塊:主程序模塊、ADXL344配置模塊、SPI通信模塊、中斷模塊。主程序模塊包括了初始化和狀態(tài)查詢并發(fā)送兩部分。ADXL344配置模塊主要是對(duì)加速度傳感器芯片配置。SPI通信模塊包括SPI寫模塊和讀模塊。中斷模塊包括串口UART0中斷、UART1中斷、SPI中斷、INT0中斷。程序開始初始化直到主函數(shù)While(1)循環(huán)中進(jìn)行狀態(tài)查詢,若加速度傳感器ADXL344振動(dòng)值大于活動(dòng)閾值視為有效觸動(dòng)觸發(fā)活動(dòng)中斷即單片機(jī)外部INT0中斷觸發(fā)(本設(shè)計(jì)將ADXL344所有的中斷分配到單片機(jī)INT0引腳上),將報(bào)警數(shù)據(jù)處理后通過(guò)串口UART0或UART1回傳。若判斷UART0接收中斷觸發(fā),將通過(guò)該串口完成對(duì)所有模塊中ADXL344的數(shù)據(jù)配置,該模塊配置完成后通過(guò)UART1下發(fā)配置命令到下一級(jí)模塊(下一級(jí)模塊通過(guò)UART0接收),并且UART0回傳該模塊的配置狀態(tài)和通信狀態(tài),報(bào)警數(shù)據(jù)將通過(guò)該串口回傳給前一級(jí)模塊(前一級(jí)模塊通過(guò)UART1接收)。若判斷UART1接收中斷觸發(fā),也將對(duì)所有模塊中的ADXL344進(jìn)行數(shù)據(jù)配置,該模塊配置完成后通過(guò)UART0下發(fā)配置命令到下一級(jí)模塊(下一級(jí)模塊通過(guò)UART1接收),并且UART1回傳該模塊的配置狀態(tài)和通信狀態(tài),報(bào)警數(shù)據(jù)將通過(guò)該串口回傳給前一級(jí)模塊(前一級(jí)模塊通過(guò)UART0接收)。其實(shí)UART0與UART1接受中斷數(shù)據(jù)處理下發(fā)和回傳是互逆的過(guò)程。
4實(shí)驗(yàn)數(shù)據(jù)
通過(guò)串口助手給每個(gè)模塊下發(fā)的配置命令及回傳數(shù)據(jù)。模塊中串口0和1的傳輸速率為57600bps。模塊部分配置命令如,有效觸動(dòng)命令為:下發(fā)命令(3字節(jié)):0xEE+0x00+0x00;上傳命令(4字節(jié)):0xEF+0x00+0x00+0x00。下發(fā)命令中0xEE為有效觸動(dòng)命令下發(fā)格式,后兩字節(jié)為模塊編號(hào),例如下發(fā)0xEE0000,則將對(duì)所有模塊有效觸動(dòng)進(jìn)行監(jiān)測(cè),若下發(fā)0xEE0001,只對(duì)編號(hào)為1的模塊的有效觸動(dòng)進(jìn)行監(jiān)測(cè)。上傳命令中0xEF為有效觸動(dòng)命令回傳格式,第二、三字節(jié)為模塊編號(hào),最后一個(gè)字節(jié)為有效觸動(dòng)次數(shù),若模塊沒(méi)有被振動(dòng)則回傳觸動(dòng)次數(shù)為0,如EF000100;若將編號(hào)為1的模塊振動(dòng)一次,回傳觸動(dòng)次數(shù)為1,如EF000101。最后,通過(guò)編寫上位機(jī)應(yīng)用界面,將報(bào)警位置在該界面中進(jìn)行實(shí)時(shí)的顯示。
5結(jié)束語(yǔ)
本文設(shè)計(jì)的圍欄報(bào)警系統(tǒng),極大地降低了生產(chǎn)成本,提升了可靠性,簡(jiǎn)單而快捷地開發(fā)了圍欄報(bào)警系統(tǒng),對(duì)于實(shí)際應(yīng)用具有重要的意義。
作者:馬龍李萬(wàn)蘋黎偉單位:西安石油大學(xué)