袁平路 張捷 張子皿 楊晉
北京中水科水電科技開發(fā)有限公司 北京 100038
隨著水電廠自動(dòng)化水平的不斷提高,現(xiàn)場(chǎng)有很多儀表﹑設(shè)備的數(shù)據(jù)需要上送給監(jiān)控系統(tǒng)[1],這些設(shè)備提供的通信接口為異步串行接口RS485,要傳送給計(jì)算機(jī)很不方便。計(jì)算機(jī)主要通過網(wǎng)絡(luò)通信,實(shí)現(xiàn)數(shù)據(jù)的交互。現(xiàn)場(chǎng)有很多設(shè)備提供的通信規(guī)約為Modbus或者其他規(guī)約如DLT645,由于現(xiàn)場(chǎng)儀表數(shù)量較多,采集的數(shù)據(jù)較多,造成數(shù)據(jù)傳輸不方便,要改變?cè)性O(shè)備的硬件,使其能聯(lián)網(wǎng),困難較大。
本文介紹的智能通信控制器ICS0208提供8個(gè)串口和兩個(gè)網(wǎng)口,可解決多個(gè)串口設(shè)備的聯(lián)網(wǎng)問題。該裝置采用嵌入式[2]ARM芯片作為核心控制器,運(yùn)行Linux操作系統(tǒng),設(shè)備內(nèi)部裝載上層應(yīng)用程序,用戶只需要配置應(yīng)用程序,實(shí)現(xiàn)各協(xié)議之間的轉(zhuǎn)換,數(shù)據(jù)采集。針對(duì)不同的串口協(xié)議,修改串口配置文件就可完成對(duì)串口數(shù)據(jù)的接收和處理,具有很好的靈活性。
本系統(tǒng)的設(shè)計(jì)包括硬件電路設(shè)計(jì)和軟件設(shè)計(jì),硬件以TI公司AM3352為核心處理器,外部擴(kuò)展SDRAM﹑FLASH﹑TF卡﹑串口擴(kuò)展芯片,處理器自帶2路千兆以太網(wǎng),串口擴(kuò)展芯片可擴(kuò)展8路串口,同時(shí)設(shè)備支持硬件加密,溫度測(cè)量功能。軟件部分以嵌入式Linux操作系統(tǒng)為開發(fā)平臺(tái),編寫底層串口驅(qū)動(dòng)程序[3-4]和上層通信程序,實(shí)現(xiàn)各種情況數(shù)據(jù)的處理和通信協(xié)議的轉(zhuǎn)換。
AM3352是TI公司基于ARM Cotex-A8的32位處理器,主頻最高支持1G Hz,芯片自帶多達(dá)6路UART(Universal Asynchronous Receiver/Transmitter)接口,集成兩個(gè)100/1000 Mbps以太網(wǎng)控制器,只需在外部擴(kuò)展PHY芯片﹑網(wǎng)絡(luò)變壓器,即可實(shí)現(xiàn)高速網(wǎng)絡(luò)通信。滿足目前智能通信控制器的硬件需求,Linux操作系統(tǒng)具有代碼開放,支持多任務(wù)﹑多線程,支持多種硬件平臺(tái),內(nèi)核可定制,運(yùn)行穩(wěn)定,免費(fèi)等特點(diǎn),因此,選擇Linux作為操作系統(tǒng)平臺(tái)。
智能通信控制器的硬件電路結(jié)構(gòu)框圖如圖1所示,主要包括電源調(diào)整電路,核心板,以太網(wǎng)接口電路,串口擴(kuò)展電路,顯示電路,溫度測(cè)量電路,硬件加密電路,TF卡擴(kuò)展電路等。電源電路的電壓輸入范圍為的9V~36V DC,默認(rèn)24V DC。電壓芯片將外部電壓調(diào)整為工作電壓5V和3.3V。核心板支持1G FLASH,512M SDRAM,外部擴(kuò)展TF卡主要用于存儲(chǔ)數(shù)據(jù),更新系統(tǒng)等。顯示板用于顯示設(shè)備的運(yùn)行狀態(tài)。AM335X內(nèi)部集成了6個(gè)串口,其中UART0作為控制臺(tái)使用,便于程序的開發(fā)調(diào)試。采用CH438芯片進(jìn)行了串口擴(kuò)展,CH438 支持8路UART,包含8個(gè)兼容16C550的異步串口,支持最高4Mbps 的通信波特率,可以用于嵌入式系統(tǒng)的串口擴(kuò)展﹑帶自動(dòng)硬件速率控制等。外部連接可編程拓?fù)湫酒琈AX1360,實(shí)現(xiàn)RS232/RS485的電平轉(zhuǎn)換,通過設(shè)備內(nèi)部的軟件配置,可以實(shí)現(xiàn)配置輸出接口為RS232電平或RS485電平,而不需要改動(dòng)硬件。AM3352集成了兩個(gè)以太網(wǎng)MAC控制器,采用AR8035芯片在外部擴(kuò)展兩路網(wǎng)口可實(shí)現(xiàn)高速網(wǎng)絡(luò)通信。
圖1 lCS0208硬件結(jié)構(gòu)框圖
軟件分為人機(jī)界面和運(yùn)行主程序兩個(gè)部分,人機(jī)界面的運(yùn)行環(huán)境是Windows,功能是配置各通信端口的協(xié)議和參數(shù),由于是Windows界面所以可以非常方便地安裝在任何一臺(tái)筆記本電腦上;運(yùn)行主程序部分的環(huán)境是Linux,功能是執(zhí)行通信主程序和通信管理程序,采用Linux系統(tǒng)主要是為了滿足電廠的運(yùn)行安全和穩(wěn)定。整個(gè)控制器的系統(tǒng)設(shè)計(jì)如圖2所示,ICS0208有8個(gè)串口,可以同時(shí)和8個(gè)外部設(shè)備進(jìn)行通信,協(xié)議可以多種多樣,例如:Modbus RTU﹑IEC 102﹑IEC 103等。調(diào)試人員在windows平臺(tái)下通過人機(jī)界面配置通信協(xié)議和參數(shù),并生成相關(guān)文件,通過跨平臺(tái)軟件將生成的可執(zhí)行文件及配置文件下載到Linux系統(tǒng)中,在Linux系統(tǒng)中對(duì)程序進(jìn)行調(diào)試,確定與外部設(shè)備通信是否正常,設(shè)置自啟動(dòng)文件與環(huán)境,讓通信程序可以脫離調(diào)試人員與外部設(shè)備通信。
圖2 系統(tǒng)數(shù)據(jù)采集流程框圖
該通信平臺(tái)主要用于與水電廠外部設(shè)備進(jìn)行通信,采集相關(guān)數(shù)據(jù),并將數(shù)據(jù)寫入PLC中進(jìn)行使用。主要通信協(xié)議如下:
水電廠常用串口通信協(xié)議,通信方式簡(jiǎn)單﹑高效。
水電廠常用網(wǎng)口通信協(xié)議,國(guó)際標(biāo)準(zhǔn),通用性強(qiáng)。
IEC102規(guī)約的變種,常用于國(guó)內(nèi)電度表通信中。
常用于水電廠與保護(hù)系統(tǒng)之間的通信。
該平臺(tái)的人機(jī)界面簡(jiǎn)單﹑易用﹑好維護(hù),先配置串口設(shè)備的通信規(guī)約,再配置網(wǎng)口側(cè)需要配合的PLC的品牌,最后按照提示生成配置文件,將文件下載到通信控制器對(duì)應(yīng)的目錄中即可。
表1 參數(shù)配置界面
?
ICS0208智能轉(zhuǎn)換器主要解決水電廠現(xiàn)地設(shè)備串口聯(lián)網(wǎng)的問題,實(shí)現(xiàn)儀表數(shù)據(jù)的采集,統(tǒng)一上送到PLC與監(jiān)控系統(tǒng)的計(jì)算機(jī)聯(lián)網(wǎng),該設(shè)備具有很好的穩(wěn)定性和配置靈活性,在白山電廠,大華僑水電站,五強(qiáng)溪水電站,白鶴灘水電站等得到了成功應(yīng)用,效果非常良好。