串行通信系統的抗干擾設計
電力系統運行的安全與否與系統當時(shí)的運行狀態(tài)有密切的關(guān)系,對于電力調度部門(mén)來(lái)說(shuō),如果能實(shí)時(shí)地全面掌握電力系統各部分的運行狀態(tài),進(jìn)行遠程監測,對保證系統的安全、穩定、經(jīng)濟運行無(wú)疑具有十分重要的意義。電力遠程監測一般采用串行方式進(jìn)行通信,保證數據的可靠傳輸是其最重要的技術(shù)指標之一。由于工業(yè)現場(chǎng)的惡劣環(huán)境以及配電系統的遠距離傳輸,干擾是產(chǎn)生偶然性錯誤和影響整個(gè)系統可靠運行的主要原因。提高系統的抗干擾能力是電力遠程監控的一個(gè)重要的研究方向。
系統概述
本系統是一個(gè)上下位機形式的工業(yè)配電測控系統,根據功能需要,下位機選用了控制功能比較強大的研華IPC-610工業(yè)控制計算機(IPC: Industrial Personal Computer),其具有近二十個(gè)ISA插槽和PCI插槽的無(wú)源總線(xiàn)底板以及相應的CPU板、I/O板等,可以將系統的各個(gè)模塊如A/D轉換、視頻采集、通信、I/O口輸入輸出等以插卡的形式像搭積木一樣組合起來(lái),方便地擴展成一個(gè)復雜的控制系統。選用了兩塊PC-6313多功能模擬輸入/模擬輸出板卡,配接相應的傳感器和執行機構來(lái)完成所承擔的工作。各下位機能夠根據需要對多路模擬量、開(kāi)關(guān)量進(jìn)行檢測和控制。本系統根據需要對64路模擬量(電壓、電流、功率因素、有功功率、無(wú)功功率等)和16路開(kāi)關(guān)量(各出線(xiàn)開(kāi)關(guān)分合閘狀態(tài)、補償電容器的狀態(tài)等)進(jìn)行檢測,可以對16路開(kāi)關(guān)量進(jìn)行輸出控制(開(kāi)關(guān)、電磁閥、繼電器)。其結構框圖如圖1所示。
圖1 下位機系統框圖
上位機可選普通PC,也可根據系統使用環(huán)境,選擇和下位機一樣的IPC。上位機可以發(fā)出指令和任何一臺與之相連的下位機進(jìn)行通信,收集各下位機傳送來(lái)的模擬量和開(kāi)關(guān)量信息,進(jìn)行相關(guān)的分析、匯總、報表生成等處理,并對各下位機子系統進(jìn)行監控和宏觀(guān)調度。
配電測控系統中,上下位機距離較遠,為提高系統的抗干擾能力,采用了RS-485串行通信總線(xiàn)標準。RS-485總線(xiàn)采用差分傳送,具有傳輸距離遠、接點(diǎn)多、連線(xiàn)少的特點(diǎn),已成為分布式監控系統中數據傳輸的首選標準。IPC沒(méi)有RS-485接口,為此需配備RS-232/RS-485接口,本系統采用了泓格公司的7250/7521轉換器。其中,7521為具有嵌入式CPU的智能通信控制器,可減少系統編程量,提高系統的可靠性和實(shí)時(shí)性,本系統實(shí)際使用的是7521D模塊,7521D模塊上有5個(gè)七段數碼管,可以用程序控制它的亮滅,以監視系統的運行。除此之外,7521D和7521功能一樣。后面介紹一律不再區分7521和7521D。
本系統通信模塊的連線(xiàn)示意圖如圖2所示,設計為1臺上位機控制8臺下位機,也可根據配電系統的實(shí)際需要進(jìn)行擴充。
圖2 具有智能通信模塊的網(wǎng)絡(luò )連線(xiàn)示意圖
7521智能通信控制器簡(jiǎn)介
7521功能簡(jiǎn)介
7521是泓格公司的752N智能通信控制器中的一種,可支持一個(gè)RS-232設備。模塊內嵌AMD公司的Am188TMES控制器,裝有MiniOS7嵌入式操作系統??梢詾镽S-485網(wǎng)絡(luò )的任何一個(gè)RS-232設備,分配一個(gè)唯一的地址。模塊內含雙看門(mén)狗電路:一個(gè)硬件模塊看門(mén)狗和一個(gè)軟件主機看門(mén)狗,保護主機和7521模塊。同時(shí)其RS-485端具有3000V高壓隔離,可有效防止工業(yè)噪聲干擾。
7520模塊是一個(gè)普通的RS-232/RS-485電平轉換器,不具有智能通信功能。但其RS-485端同樣具有3000V高壓隔離。在此不再贅述。
7521工作模式
7521有兩種工作模式,一種是開(kāi)發(fā)工作模式,一種是正常工作模式。
在開(kāi)發(fā)模式時(shí),把7521的COM1口(RS-232)接到PC的串口并通過(guò)設置好通信格式后,7521將把PC的鍵盤(pán)作為其標準的輸入,PC的顯示器作為其標準的輸出。在此方式下,可進(jìn)行系統參數的配置和用戶(hù)程序的下載。
在正常工作模式時(shí),7521將執行由AUTOEXEC.EXE文件中指向的程序。作為智能通信控制器使用時(shí),7521在其FLASH ROM中已經(jīng)預裝了兩個(gè)文件:AUTOEXEC.EXE和7521.EXE,開(kāi)機后可由AUTOEXEC.EXE文件自動(dòng)加載7521.EXE,從而完成智能通信的初始化配置。用戶(hù)也可下載自己的應用程序到7521中以改變7521的功能。
7521模塊功能命令簡(jiǎn)述
7521的命令分為主控計算機發(fā)送給模塊的命令和模塊收到命令后的響應兩部分。
發(fā)送部分的命令格式:(前導字符)(地址)(CHK)(CR),各項分別解釋如下。
①(前導字符):1個(gè)字節,表明命令的類(lèi)型。模塊的控制命令通常被分成幾個(gè)不同的類(lèi)型,通過(guò)前導字符使用一些特殊字符,如$、#、~等進(jìn)行分類(lèi)。
②(地址):兩個(gè)字節,表示命令將送至的模塊。地址范圍為00~FF,因此有256個(gè)地址。
③(命令):1個(gè)或多個(gè)字節,指定模塊執行的命令。這些命令通常使用不同的數字來(lái)表示不同的功能。
④(CHK):冗余校驗和(CheckSum),使用程序將所有傳輸的字符在A(yíng)SCII對照碼中的地址數值相加,保留最后的一個(gè)字節,拆成前后兩個(gè)字符做為校驗值。
⑤(CR):Enter鍵,VB中為vbCr,表示命令的結束。
7521收到命令后,多數情況下會(huì )返回給主機一個(gè)響應字符串。該響應字符串格式:(前導字符)(地址)(數據)(CHK)(CR)
響應字符串(數據)只與命令字符串格式不同,其余部分均相同。數據部分要根據具體的命令解釋。
7521有30個(gè)實(shí)用命令,提供了較為完善的驅動(dòng)程序。用戶(hù)無(wú)須自己編寫(xiě)通信協(xié)議,只需按操作手冊在主站計算機上安裝好7521.exe及相關(guān)檔案文件,正確連接計算機和7521模塊,初始化后即可以開(kāi)始工作。
雖然RS-485總線(xiàn)標準具有較強的抗干擾能力,但在實(shí)際使用過(guò)程中,由于現場(chǎng)環(huán)境的惡劣、電磁干擾等情況,仍然會(huì )影響通信的可靠性,最典型的問(wèn)題便是數據傳輸出現誤碼,嚴重的可能出現死機。因此,采取必要的提高可靠性和抗干擾能力的措施是十分重要的。在本系統中,從硬件線(xiàn)路和軟件設計兩方面進(jìn)行了抗干擾設計。
系統通信硬件抗干擾措施
在硬件線(xiàn)路上,主要是從隔離、接口標準及布線(xiàn)等方面加以考慮:
(1)本系統的RS-485接口是采用平衡驅動(dòng)器和差分接收器的組合,同時(shí)采用屏蔽的雙絞線(xiàn),抗噪聲干擾性能較好。
(2)通信過(guò)程中,由于阻抗不連續和阻抗不匹配,可能會(huì )導致信號反射,影響信號的傳輸距離。雙絞線(xiàn)的特性阻抗一般在110~130Ω之間,本系統在傳輸線(xiàn)末端接了一個(gè)120Ω的匹配阻抗以消除信號反射。
(3)本系統選用的7520/7521都是具有3000V隔離的RS-232/RS-485轉換接口,如圖3所示。
圖3 7520/7521模塊內部電路示意圖
由圖3可看出,RS-485端和電源端同處一個(gè)區域,RS-485端使用的是接入電源。RS-232端則是模塊內部經(jīng)轉換后的電源,電源在轉換前后有3000V的隔離措施。由于噪聲的來(lái)源大多來(lái)自電源端,強大的噪聲會(huì )循著(zhù)電源線(xiàn)進(jìn)入模塊內部,但只要此干擾在保護范圍內,即可保證RS-232端的設備不被損壞,從而達到保護主控計算機的目的。
7521的保護原理和7520一樣,可以保護下位計算機不受RS-485網(wǎng)絡(luò )中的噪聲干擾。
系統通信軟件抗干擾措施
在實(shí)際系統設計中,要保證數據傳輸的可靠性,離不開(kāi)硬件和軟件的協(xié)調工作。為保證數據傳輸的準確性,在軟件設計時(shí)也必須采取一定的措施。
(1)7521智能通信控制器具有CheckSum校驗功能。在數據傳輸過(guò)程中采用累加和校驗方式,可大大降低了數據傳輸出錯率。CheckSum的計算方法如圖4和圖5所示。
圖4 輸出命令時(shí)的累加和校驗流程
圖5 檢查返回結果的累加和校驗流程
例如發(fā)送的命令字符串是$012[Enter],分別將前導字符($)、地址(01)、命令(2)三者的ASCII值相加,結果如下:
CheckSum=024+030+031+032=0B7
結果最后的兩個(gè)字符為“B”和“7”,將它們并在發(fā)送命令的后面、[Enter]的前面,最后發(fā)送的字符串為$012B7[Enter],如此就完成了一個(gè)帶有CheckSum的命令字符串。
當主機使用CheckSum的方式將命令發(fā)送時(shí),必須先行計算此CheckSum的數值,接收到命令的模塊也會(huì )將所接收到的字符串再進(jìn)行一次CheckSum的計算,當二者的結果一致時(shí),此次的傳輸便被認為是正確的;如果二者的結果不一致時(shí),模塊會(huì )返回相應的錯誤信息。
同樣的,主機在CheckSum激活的情況下接收模塊返回的字符串時(shí),也必須對Checksum的值進(jìn)行校驗,以確認傳輸過(guò)程的正確性。
7521出廠(chǎng)設置為不激活CheckSum。為了保證數據傳輸的正確性,本系統設計為激活CheckSum,可用命令$AAKN激活。
(2)7521模塊包含兩種看門(mén)狗機制。第一種機制是監測7521模塊的硬件看門(mén)狗,它屬于硬件重置線(xiàn)路,開(kāi)機后自動(dòng)運行,其看門(mén)狗定時(shí)時(shí)間為1.6s。此線(xiàn)路會(huì )監視模塊的操作狀況,當模塊處于惡劣的工作環(huán)境下而導致工作不正常時(shí),此監視線(xiàn)路會(huì )使模塊自動(dòng)復位。系統正常工作時(shí),應至少在1.6s內“喂狗”一次,以避免復位。若7521復位,可發(fā)送“$AA5”命令使其恢復正常。其流程如圖6所示。
圖6 7521硬件看門(mén)狗復位后處理辦法
第二種機制是軟件主機看門(mén)狗。軟件主機看門(mén)狗可以監測主機的狀態(tài)。如果主機死機,所有的7521輸出模塊將回到它們預設的安全模式進(jìn)行安全保護。主機正常運行時(shí),每隔一段時(shí)間應該發(fā)送一條“主機正?!钡拿钜员苊饪撮T(mén)狗復位。其流程如圖7所示
圖7 軟件主機看門(mén)狗流程
實(shí)驗測試數據及分析
根據系統設計和實(shí)驗室條件,進(jìn)行了串行通信數據的測試,如表1所示。
從以上分析結果可以看出,在RS-485串行通信系統中加入智能通信控制器具有的CheckSum校驗和看門(mén)狗機制,可以有效地降低串行通信的誤碼率,提高通信數據的成功率。系統的抗干擾能力有了較大提高。
結束語(yǔ)
本系統從硬件和軟件兩個(gè)方面做了較完善的抗干擾設計,由于智能通信控制器自帶CheckSum校驗和軟硬件看門(mén)狗功能,只需要相應的命令激活即可。減少了硬件成本和軟件工作量,系統的可擴充性和可維護性增強。實(shí)驗證明,本系統具有較好的實(shí)時(shí)性和可靠性,數據誤碼率非常低。再輔以軟件濾波和冗余校驗等措施,可進(jìn)一步提高系統性能。因此本文對同類(lèi)設計具有一定的理論和實(shí)踐參考價(jià)值。
評論