新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > SCADA系統中交流采樣器設計

        SCADA系統中交流采樣器設計

        作者: 時間:2009-10-28 來源:網絡 收藏
        1.5 總線接口電路

        本文引用地址:http://www.104case.com/article/152307.htm

        LP2407A集成了控制器,擴展一片收發器就構成了CAN接口電路。收發器選用Philips公司的P82C250,具體電路如圖5。

        P82C250是5V電源供電,與LF2407A連接要加電平轉移電路。R301、D301完成3.3V電平向5V電平轉移;R302、R303完成5V電平向3.3V電平轉移。

        其他如串口擴展電路、SRAM擴展電路、液晶擴展電路等為通用電路.在此不做闡述。

        2軟件

        2.1嵌入式軟件思想

        借鑒Windows編程中基于消息驅動的思想,在嵌入式軟件中引入基于消息的處理方泫。嵌入式的消息可以分為:鍵盤輸入命令、接口電路產生的狀態信息(如報警、越限等)以及上位機命令。消息的接收采用中斷方式,確保消息可靠及時的接收;時間要求非??量痰南ⅲ珉姍C保護,在中斷直接處理;其他消息在主程序中對消息進行解析執行。程序設計思想可以用圖6表示。

        通過CAN總線接收上位機的命令(接收消息)。CAN接收方式采用中斷方式.當上位機下達命令時,該裝置通過中斷及時接收.實時任務直接在中斷程序中完成,滿足系統的實時性要求;非實時任務則將該命令存入消息(或命令)緩沖區,等待在主函數中查詢處理。

        2.2程序整體框圖

        整個程序由主函數、功能函數、CAN通信中斷函數、DSP的定時器T1的周期中斷(中斷)函數構成。

        DSP的CAN控制器接收中斷采用DSP的內核中斷1;定時器T1的周期中斷采用DSP的內核中斷2,用來定期觸發MAXl25進行A/D轉換。關于LF2407A的中斷編程可參見文獻[1~2]。

        主函數main()的流程如圖7所示。

        主函數先初始化系統,啟動實時,實時一直運行并始終保持有多個周期的波形數據,供故障錄波后觀察故障點前后幾個周期的波形,以便分析故障原因。然后進入消息處理的循環程序。從流程圖可以看到,程序先檢查消息(或命令)緩沖區,若有消息/命令,則調用相應功能函數執行命令,判斷是否到計算周期以確定是否調用計算函數,然后回到消息處理入口;若沒有消息等待處理,則判斷100ms計算周期是否到(計算周期可以調整)。若到,則計算一遍電參數,判斷是否有越限情況。若有越限則通知上位機,然后返回到消息處理入口,重復開始消息(或命令)的解析執行。消息接收程序以中斷方式在后臺運行。

        2.3功能函數設計

        功能函數由主函數main()調用,下面介紹幾種主要的功能函數。限于篇幅,函數沒有展開,只列出函數名。

        計算電參數的函數:void Calc();

        向上位機傳送電參數值的函數:unsigned int Send_AcqData();

        執行參數設定命令的函數:unsigned int Set_Parameter();

        向上位機傳送報警數據的函數:unsigned Int Send_AlarmnData();

        向上位機傳送錄波數據的函數:unsigned Int Send_WaveRecordData();

        采樣系統已運行在鐵路水電遠動系統的FTU(Field Terminal Unit)中,與上位機通信的應用層協議采用DeviceNet協議。實際證明該系統功能正常、性能穩定。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 斗六市| 清远市| 潮安县| 寿宁县| 罗定市| 九江市| 华阴市| 武鸣县| 康保县| 芜湖市| 宜州市| 密云县| 漳州市| 繁峙县| 高淳县| 临泉县| 马龙县| 年辖:市辖区| 靖宇县| 乌拉特中旗| 京山县| 濉溪县| 石狮市| 吴江市| 洛扎县| 诸城市| 长治县| 益阳市| 综艺| 宜昌市| 定襄县| 清远市| 顺义区| 五大连池市| 芜湖市| 婺源县| 红河县| 台湾省| 阿克陶县| 南陵县| 舟山市|