消防指示燈智能監控系統三端口網(wǎng)關(guān)設計
圖4 為單片機采用查詢(xún)方式的程序流程圖。RI、TI分別是串口接收標志和發(fā)送標志。TX_FLG =0 表示STC11 處于接收狀態(tài),TX_FLG=1 表示發(fā)送狀態(tài)。子程序SPI_BYTE 實(shí)現模擬SPI 主站功能。
圖4 擴展串口的STC11 單片機流程圖。
1.3 環(huán)形總線(xiàn)主站軟件結構
在第二級環(huán)路通信中, 中繼網(wǎng)關(guān)作為環(huán)路主站, 由STC12 單片機的串口1 和串口2 構成的兩個(gè)RS-485 端口實(shí)現。3 個(gè)通信端口分別設有獨立的接收(RX) 緩沖區、發(fā)送(TX) 緩沖區以及專(zhuān)用標志寄存器。
實(shí)現環(huán)路通信主站的軟件結構如圖5 所示。正常工作時(shí), 兩個(gè)串口一個(gè)作為發(fā)送方, 另一個(gè)作接收方。比較接收方的接收數據與發(fā)送方的發(fā)送數據, 若相等則環(huán)路總線(xiàn)是通的;否則,總線(xiàn)出現斷路故障,用標志位LP_BRK=1表示。
注: 串口工作周期包括串口發(fā)送過(guò)程和等待下位機接收過(guò)程和該串口接收三部分。
圖5 環(huán)形總線(xiàn)主站通信流程圖。
在 環(huán)路總線(xiàn)完好的情況下, 在線(xiàn)的燈具總是既連接在串口1 上, 也連接在串口2 上。在環(huán)路斷線(xiàn)狀態(tài)下, 對每個(gè)燈具, 從串口2( 或串口1) 發(fā)送命令, 若接收到正確應答數據, 則記錄該燈具連接在該端口上, 用標志位ON_COM2 =1 ( 或ON_COM1 =1) 表示; 若應答信息超時(shí)或返回信息不正確, 則重發(fā)相同命令數據至多3 次, 仍然收不到正確應答信號, 則判斷該燈具沒(méi)有連接在該發(fā)送端口上, 用ON_COM2=0( 或ON_COM1=0) 表示。這樣, 根據每個(gè)燈具所連接串口的不同, 可以判斷環(huán)路斷線(xiàn)所在位置。
當環(huán)路斷開(kāi)時(shí), 兩個(gè)串口都作為命令發(fā)送方, 整個(gè)環(huán)路分為兩個(gè)單總線(xiàn)結構, 提高了網(wǎng)絡(luò )傳輸可靠性。
基于兩級RS485 總線(xiàn)環(huán)形通信網(wǎng)路的應急燈智能監控系統, 設計了三端口通信網(wǎng)關(guān), 實(shí)現了監控計算機與大量智能應急燈之間命令和狀態(tài)信息交換, 監控計算機管理整個(gè)系統, 網(wǎng)關(guān)負責傳遞發(fā)送至智能應急燈的信息, 同時(shí)也將從燈具接收到的信息反饋至監控計算機。
此外也可不通過(guò)監控計算機直接控制該環(huán)路中的智能應急標志燈。經(jīng)調試, 所預設功能完全實(shí)現。
評論