32通道開(kāi)關(guān)信號采集系統的設計與實(shí)現
3.1 主程序
卡件上電后,進(jìn)入主程序,流程圖如圖4所示。首先判斷卡件是否為上電復位,如果不是上電復位,則通過(guò)死機恢復處理后直接進(jìn)入巡回檢測階段:如果是上電復位,則先進(jìn)行卡件自檢及初始化,包括設置堆棧指針,清內存,設置時(shí)間常數等,然后允許中斷,進(jìn)入正常的巡回處理程序??梢酝ㄟ^(guò)參數設置,改變開(kāi)關(guān)量跳變時(shí)間、狀態(tài)采集等功能。如果在主程序中檢測到程序中定義的接收數據標志位置位,表明單片機已接收到上位機發(fā)出的數據,接收數據過(guò)程由串行口中斷子程序來(lái)完成。根據上位機的數據,測量卡件作出相應的響應,或回送數據,或參數設置。

基于如上所示的超級循環(huán)結構的系統既可靠又安全。并且總體結構很簡(jiǎn)單,易于理解。
3.2 初始化子程序
單片機初始化程序的作用是將單片機初始化到一個(gè)已知狀態(tài),并且使串口處于接收狀態(tài),為進(jìn)入工作循環(huán)做好準備。系統上電復位后,單片機會(huì )立即調用初始化子程序,初始化子程序代碼包括:
◇初始化單片機內部寄存器、定時(shí)器T0和串口并且開(kāi)中斷;
◇初始化單片機內部看門(mén)狗奇存器;
◇初始化溫度傳感器LM73;
◇單片機串口波特率設置,以及將串口設置為接收狀態(tài)。
◇讀取單片機在Modbus總線(xiàn)中的器件地址。
3.3 中斷服務(wù)子程序
信號采集服務(wù)子程序主要完成發(fā)生動(dòng)作的開(kāi)關(guān)量信號的采集,由溢出中斷來(lái)實(shí)現,每0.5 ms中斷一次。實(shí)現對開(kāi)關(guān)信號的周期采集,為信號的通訊提供準備。
3.4 通訊子程序
通訊服務(wù)子程序主要指的是對上位機數據的接收子程序,由串行口中斷來(lái)實(shí)現。而發(fā)送回上位機的數據大多為開(kāi)關(guān)量記錄信息,數據量較大,主要在主程序中完成。同時(shí),可以設置通訊時(shí)波特率的大小,此項在卡件參數設置中可實(shí)現。
4 仿真與測試
系統的上位機軟件設計用的是太力信息產(chǎn)業(yè)有限公司的組態(tài)軟件EpSynall。EPSynall系統是一個(gè)全殲放的電力自動(dòng)化系統開(kāi)發(fā)平臺,它擁有穩定可靠、快速高效、擴展性強、兼容性好的電力專(zhuān)業(yè)SCADA功能,可作為各種電力應用的基本SCADA平臺使用。
5 結束語(yǔ)
開(kāi)關(guān)雖控制板帶有RS485接口,可以方便地接入到RS485網(wǎng)絡(luò )中,上位機通過(guò)與其通訊來(lái)實(shí)現對開(kāi)關(guān)量輸出的控制,與傳統的開(kāi)關(guān)量控制方式相比較可有效提高控制系統的自動(dòng)化程度,擁有較好的擴展性,可將多塊控制板接入到同一個(gè)控制網(wǎng)絡(luò )中從而達到擴展更多路開(kāi)關(guān)最輸出的目的。且通過(guò)改變上位機及控制板程序便可實(shí)現不同的控制方法,從而適用于不同的控制場(chǎng)合。目前該卡件已投入使用。各項性能指標皆達到原設計要求,運行可靠,狀況良好,可廣泛適用于化工、冶金、電力等行業(yè)工業(yè)過(guò)程中,實(shí)現開(kāi)關(guān)量的采集,事故追憶等功能。
評論