單片機組成的集散控制系統中雙串口同時(shí)通訊的實(shí)現
1 系統的體系結構
本文引用地址:http://dyxdggzs.com/article/171828.htm1.1 系統要求與總體方案設計
該系統中有單相、三相、機械式和電子式等各種型號電能表,要求實(shí)時(shí)、準確、快速、可靠地采集各分散電能表的用電量數據,適應各種復雜的工業(yè)生產(chǎn)現場(chǎng)條件,連續運行、操作簡(jiǎn)便、維修快捷。硬件系統要具有通用性、可擴展性,并能適應各種大中型發(fā)電、用電企業(yè)的電量管理。因此在系統設計中,重點(diǎn)考慮了以下因素:實(shí)時(shí)性、高可靠性、環(huán)境的適應性、通用性、可擴展性、經(jīng)濟性等。
集散控制系統DCS(Distributed ControlSystem)是一種分散控制、集中信息管理系統。由于該系統是在電廠(chǎng)使用,并已有DCS平臺,因此采用DCS作為主站,也可采用單獨的上位機來(lái)管理。DCS中采用了雙前置機熱后備的冗余系統設計方法,2臺前置機可相互替換以提高系統可靠性。
本DCS采用Interllution iFox工控組態(tài)軟件,使用工業(yè)標準總線(xiàn)RS422將集抄系統硬件連入前置機,進(jìn)行電量分析,負荷管理,并具有圖形、曲線(xiàn)、報表打印輸出功能,可與其他網(wǎng)絡(luò )接口。由于采集模塊一般都不少于幾十個(gè),如直接連入DCS,則測點(diǎn)太多,因此在DCS和采集模塊之間增加一級數據集中器(簡(jiǎn)稱(chēng)集中器),將一個(gè)集中器作為一個(gè)測點(diǎn),減輕DCS的負擔和大幅度降低成本,提高了系統的性能價(jià)格比。
集中器和采集模塊之間,采用工業(yè)標準總線(xiàn)RS485進(jìn)行雙向通訊。集中器不斷巡測采集模塊,以統計存儲各種用電數據,同時(shí)又要保證和DCS之間的正常通訊,這就要求集中器具備雙串口同時(shí)通訊的能力。集中器中采用一片具有雙串口的CPU(DS80C320)來(lái)實(shí)現雙串口同時(shí)通訊。本系統中的RS422,RS232、紅外通訊均使用通用工業(yè)標準ModBus協(xié)議。
1.2 系統組成與功能
集抄系統由電量采集模塊、數據集中器、專(zhuān)用掌上電腦和DCS經(jīng)RS422和RS485總線(xiàn)靈活配置而成。集抄系統組成圖如圖1所示。采集模塊通過(guò)檢測機械式電表表盤(pán)的轉數或電子式電表輸出的脈沖數,轉換成電表用電量,經(jīng)RS485總線(xiàn)將用電量數據上傳。采集器中保存的用電量數據與原有電表上的用電量窗口顯示值相一致。安裝采集器后不改變原有電表的整體結構和計量精度。
采集模塊具有獨立的CPU和非易失性斷電保持存儲器及工作狀態(tài)燈指示??涩F場(chǎng)設置初始參數。故障自動(dòng)保護。適應現有各種型號的機械式、電子式電能表。
集中器負責各電表用電量數據的集中收集,處理和存儲。通過(guò)RS485總線(xiàn)與采集模塊通訊,讀取每個(gè)采集模塊中存儲的用電量數據。每臺集中器最多可管理 256臺電表。經(jīng)RS422總線(xiàn)可與DCS之間進(jìn)行雙向通訊,接受DCS的各種集中器具有獨立的CPU和非易失性斷電保持存儲器,可存儲當前用電量數據和歷史用電量數據。內部有實(shí)時(shí)時(shí)鐘,斷電后繼續保持走時(shí)。故障自動(dòng)診斷,并將異常狀態(tài)上報DCS??膳c其他系統(SCADA,MIS)直接進(jìn)行接口。
DCS通過(guò)RS422總線(xiàn)與集中器進(jìn)行雙向通訊,讀取集中器中存儲的各電表當前用電量數據和歷史用電量數據。用電量數據經(jīng)DCS的記錄存儲及分析處理,為有關(guān)部門(mén)提供用電狀況的統計分析和管理。每個(gè)DCS可管理64個(gè)集中器。DCS具有系統運行參數設置、校時(shí)、事件記錄管理、曲線(xiàn)圖形報表打印輸出功能。實(shí)時(shí)讀取并顯示各電表的用電量數據,進(jìn)行用電量數據分析??膳c其他網(wǎng)絡(luò )接口,將數據傳輸給其他系統(SCADA,MIS)供分析處理。專(zhuān)用掌上電腦又稱(chēng)掌上終端機。當掌上電腦安裝上相應的軟件后,利用紅外口現場(chǎng)初始化采集模塊,利用紅外口/RS232口現場(chǎng)初始化集中器、抄取數據、狀態(tài)信息等,是系統維護的重要工具。筆記本電腦也具有同樣的功能。
2 集抄系統軟件設計與實(shí)現
集抄系統軟件包括DCS軟件、集中器軟件、采集模塊軟件和專(zhuān)用掌上電腦軟件。其中集中器和采集模塊軟件用匯編語(yǔ)言編寫(xiě),專(zhuān)用掌上電腦軟件用專(zhuān)用掌上電腦編程語(yǔ)言實(shí)現。下面主要介紹DCS集抄系統軟件和集中器中雙串口CPU同時(shí)通訊的實(shí)現。
2.1 DCS集抄軟件
DCS集抄系統軟件采用Interllution iFox工控組態(tài)軟件,在Windows 95(以上)和Windows NT系統軟件平臺下完成,使用電廠(chǎng)流行的動(dòng)態(tài)圖形對象和按鍵操作主窗口,類(lèi)似Excel的表格大量用于數據錄入與顯示,美觀(guān)簡(jiǎn)便的對話(huà)框和圖形曲線(xiàn)人機界面設計,使用戶(hù)操作快捷方便。DCS集抄軟件主要包括下列功能:
(1)選擇部分或全部瀏覽各種自動(dòng)抄表數據和實(shí)時(shí)巡測數據。
(2)實(shí)時(shí)巡測、選抄功能可選擇抄收一個(gè)或幾個(gè)指定電表的當前電量,可選擇不間斷巡測部分或全部電表用戶(hù)的實(shí)時(shí)數據。
(3)自動(dòng)抄表功能可指定自動(dòng)抄收時(shí)間間隔,自動(dòng)抄收整點(diǎn)數據、每隔可選時(shí)間間隔的全部電表數據、每天指定的幾個(gè)抄表時(shí)刻的電量數據等。
(4)各種報表曲線(xiàn)圖形的打印和完善的操作指南。
(5)系統配置靈活方便可在線(xiàn)任意增刪集中器和采集模塊,修改各種運行參數和電表用戶(hù)信息。
(6)自動(dòng)故障診斷、事件記錄和信息追憶功能。
(7)多級口令管理,防止非授權人員操作的功能。
(8)方便多樣的查詢(xún)功能。
(9)進(jìn)行負荷分析,統計各種曲線(xiàn)圖表。
2.2 集中器中雙串口CPU同時(shí)通訊的實(shí)現
由于集中器要實(shí)現和上位機與采集模塊的同時(shí)通訊,采用一片具有雙串口的CPU,該CPU具有2個(gè)串口和2個(gè)串口中斷,串口1中斷處理與上位機的通訊,串口2中斷處理與采集模塊的通訊,串口1中斷設置為高優(yōu)先級中斷,每接塑到或發(fā)送完一個(gè)字節都進(jìn)入中斷處理,處理完畢立即退出中斷,通訊波特率都為9 600 b/s,一個(gè)起始位和一個(gè)停止位。首先要解決時(shí)間沖突問(wèn)題,硬件接受或發(fā)送一個(gè)字節的時(shí)間為1 ms左右,而軟件接受或發(fā)送一個(gè)字節的時(shí)間僅幾μs,這就為雙串口同時(shí)通訊提供了條件。
同時(shí)通訊實(shí)際上是將CPU時(shí)間分成很小的時(shí)間片,假設較快的串口發(fā)送或接受一個(gè)字節的最長(cháng)時(shí)間為T(mén)RbyteMax,則CPU最長(cháng)時(shí)間片一般應小于TRbyteMax/2,當然在接受或發(fā)送完一幀數據之后的間隙,CPU 時(shí)間片可以適當延長(cháng),作一些必要的數據處理。
其次要解決數據沖突問(wèn)題,2個(gè)串口通訊分別使用各自的接受發(fā)送數據緩沖區和控制變量,以減少中斷保護數據量和防止數據沖突。當主程序、串口2中斷處理程序和其他中斷處理程序往存儲器(與上位機的通訊用存儲器)中寫(xiě)數據時(shí),需在盡量短的時(shí)間內關(guān)閉串口 1中斷,關(guān)閉中斷時(shí)間應小于幾百μs,防止其他程序數據沒(méi)有寫(xiě)完之前串口1讀此數據。
電能表相關(guān)文章:電能表原理
評論