• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

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

    SCADA系統中交流采樣器設計

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

    本文引用地址:http://www.czjhyjcfj.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編程中基于消息驅動的思想,在嵌入式軟件中引入基于消息的處理方泫。嵌入式的消息可以分為:鍵盤輸入命令、接口電路產生的狀態信息(如報警、越限等)以及上位機命令。消息的接收采用中斷方式,確保消息可靠及時的接收;時間要求非常苛刻的消息,如電機保護,在中斷直接處理;其他消息在主程序中對消息進行解析執行。程序設計思想可以用圖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 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 平武县| 青铜峡市| 葫芦岛市| 宿松县| 芦溪县| 苍山县| 西乌珠穆沁旗| 长汀县| 石泉县| 辽阳县| 德安县| 建德市| 洛阳市| 什邡市| 兴化市| 延安市| 广州市| 蒙城县| 民勤县| 宜良县| 金华市| 长宁县| 若羌县| 华容县| 澄城县| 景洪市| 合川市| 闽清县| 临朐县| 辽源市| 五寨县| 阿瓦提县| 沧源| 蒙城县| 黑河市| 远安县| 珲春市| 炎陵县| 鲁甸县| 米泉市| 读书|