1 引 言 在我國隨著一戶一表的推廣、城網和農網的改造、國家為了打破電力供應壟斷局面而引入競爭政策的逐步深入和提高用電管理水平等等都需要發展自動抄表(Automatic Meter Reading,AMR)技術;同時,對住宅安全的重視也需要發展遠程自動抄表系統;另外,這也是網絡和計算機技術迅速發展的必然。目前我國已經有多家有實力的公司投入到自動抄表系統的研制工作,但是大部分是采用485串行總線,進行通訊。由于該總線在實際工程中存在2個問題: (1)通信數據收發的可靠性問題; (2)在多機通信方式下,一個節點的故障(如死機),往往會使得整個系統的通信框架崩潰,而且給故障的排查帶來困難。 本文所設計的基于LonWorks技術的電表抄表模塊成功地解決了以上2個問題。 2系統組成 表頭采樣模塊主處理器選用AT89C51單片機,完成電表脈沖信號采樣、度數計算和反饋連動。抄表采集器由AT89C51作為主處理器與MCl43150Neuron芯片構成的Host-based節點作為系統的次站與LON網絡連接。采用的Neuron芯片是MCl43150,其片內有3個CPU,即:介質訪問CPU,網絡CPU,應用CPU。他們與片內存儲器、網絡通信接口、定時器、I/O口驅動電路通過16b地址總線和8 b數據總線相連。Neuron芯片有11個可編程的I/O引腳,并提供4類共34種I/O對象。通過引腳的不同配置,為外部硬件提供靈活的接口,實現不同的I/O對象。這4類I/O對象為:直接I/O、并行I/O、串行I/O和計時器/計數器I/O對象。 本設計將Neuron芯片工作方式配置為從B方式,具體為100~107與AT89C51的P0~P7口相連,經此通道AT89C51的管理信息和實時數據通過LonWorks網可以上位監控計算機以及其他LonWorks節點相互傳輸。系統結構圖1所示。 3 表頭采集模塊的硬件設計 電表表頭模塊的主處理器選用AT89C51單片機。表頭采集模塊主要負責采集能源對應的數字量(脈沖信號),由主CPU進行處理,將相應的數據信號保存分時發送給抄表采集器,通過收發器,將相應電表的信號送到LON總線。 本表頭采集模塊主要有以下部分實現: (1)信號采樣電路 目前,市場上的電表基本上為脈沖電表,即輸出標準脈沖信號。以本系統調試采用的單相電子式電能表為例。電表輸出的脈沖信號送到采集模塊,經過光電耦合器開關(如圖2),進行信號隔離,再通過74LSl4加以整形,然后送到單片機的外部中斷INT0(P3.2)腳,引起CPU產生一次外部中斷。采用中斷方式實現實時計數,排除了漏計的可能。 (2)數據保存 當有采樣信號引起中斷,計數器工作,當脈沖計數到3 200時,產生一次寫操作,將前一地址單元值加1保存到當前地址。存儲器采用可在線電擦除的E2PROM28C17,作者經過巧妙構思,在讀時將28C17當作程序存儲器,寫時當作外部RAM,工作性能非常穩定,讀寫操作從未出現差錯。本系統中定義28C17的地址編碼為7800H~7FFFH,2kB尋址。 (3)日歷時鐘電路 采樣模塊需要對系統能進行分時計數功能,所以需要實時時鐘,以完成定時產生中斷、分時顯示、獲取時間和日期等功能,具體選用美國Dallas公司生產的實時時鐘芯片DSl2887。DSl2887是一個實時時鐘的完整子系統,其集成度高,內部包含有1個鋰電池、1個石英晶振和1個寫保護電路。本系統采用DSl2887作為實時時鐘芯片,AS,DS,R/W分別與89C51的ALE,RD,WR連接,用P2.6作為片選信號,所以DSl2887的高位地址為#0BFH,低8位決定著內部單元的地址。 (4)斷電處理 當出現費用超支時,系統能進行自動斷電處理;驹韴D如圖3所示。當上位機端發現某用戶費用超支時,發出斷電指令給89C51,89C51通過給端口置零,經反相后,送至8050的B極,引起繼電器動作,開關吸合,此時相當于送往電表的開關處于截止狀態,系統斷電。圖中Q1,Q2構成達凌頓管。 (5)顯示模塊 本系統還可以提供液晶顯示器(使用12232點陣液晶屏,提供漢顯),做到實時顯示功能,能在抄錄某時期內、某用戶電能表計數器窗口累計的全位示數。 (6)其他部分 本系統模塊還設有空余I/O口作為預留按鍵接口,費用報警功能。 4 抄表采集器的硬件設計 抄表采集器的硬件設計主要包括處理器電路、AT89C51與MCl43150Neuron芯片之間的通信擴展、232串口通信電路、電源電路等。 4.1 主CPU及其外圍擴展電路 主CPU采用常規單片機89C51,接有l片28C64E2PROM作為在線可電擦除存儲器,保存各采樣模塊送來的數據信號。還包括復位電路、時鐘電路、外部RAM擴展、232串口通信電路、電源電路等。 4.2 主CPU和MCl43150Neuron芯片之間的通信接口的設計 本抄表采集模塊采用HOST-BASED結構,主CPUAT89C51和從處理器MCl43150Neuron芯片之間的通信實現采用從B方式。一般來說,并行接口可配置成Neuron芯片工作在主、從A或從B方式,2個Neuron芯片以主、從A方式接口;而Neuron芯片同非Neuron芯片以從B方式接口,非Neuron芯片充當主機,Neuron芯片工作在從B方式,進行握手聯絡來控制指令的執行。主從機交換數據期間Neuron芯片暫停應用程序的執行過程。每次最多可交換255B數據。這種并行I/O接口對象方式用在快速交換數據的場合是非常有用的。Neuron芯片能充當外部處理器的協處理器,產生一個網橋、網關或路由器。說明了Neuron芯片在并行接口對象時的典型應用。從B方式屬于并行I/O對象,本系統使用MCl43150Neuron芯片的所有11只腳,其中MCl43150的I/O0~I/O7是8b雙向數據線,I/O8~I/O10是3b控制信號線。借助令牌傳遞/握手協議,實現MCl43150Neuron芯片與主處理器之間的雙向數據傳輸。相對主CPU而言,MCl43150Neuron芯片相當于一個有著8 b數據線、3b控制線的并行I/O設備。 在主CPU的地址空間,作者把3150芯片當作2個寄存器,一個是讀、寫數據寄存器,另一個是控制寄存器。主機通過對這2個寄存器的訪問實現主機與3150芯片之間的數據傳輸?刂萍拇嫫鞯淖畹臀挥行(通過IO0讀取),就是握手HS位,主機通過對控制寄存器的訪問獲得3150芯片反饋的握手應答。3150芯片接收IO8作為片選信號CS,接收IO9以確信主機的讀、寫操作,接收IO10作為寄存器的選擇輸入A0(A0是主機地址總線的最低有效位)。出現下列2種情況時,IO0~IO7構成雙向數據總線: (1)CS維持低,IO10為高,R/W為低; (2)CS維持低,IO10為低,R/W為高或低。 如果CS維持低,IO10為高,R/W為高,IO0輸出的是給主機的握手應答信號。另外,在從B方式中,主機要監視HS的狀態。可能有這樣一種情況,從機未能及時設置好HS狀態,而此時主機已經在線并輪詢HS。為避免在這種情況下主機讀取HS的無效狀態,本系統在HS引腳上加上了上拉電阻,如圖4所示。 4.3 Lon網絡接口 作者采用了支持FTT-10A自由拓補雙絞線收發器的Control Module作為采集器與LonWorks總線的接口。FTT-10A收發器主體是一個隔離變壓器,該變壓器集成了一個78kb/s差分曼徹斯特編碼通信收發器。FTT-10A收發器能自動檢測5M,10M或20M三種時鐘頻率,他在未加電時呈現高阻狀態,不會影響網絡通信,是常用的收發器之一。FTT-10A收發器提供了與神經元通信芯片接口和網絡接口的引腳。 4.4 其他電路設計 本采集器的硬件部分設計還包括電源、抗干擾設計等,工業現場的環境一般來說較為惡劣,存在多種干擾。為保證通訊的準確無誤,延長硬件使用壽命,本智能適配器除采用通常的供電和接地抗干擾措施外,主要是要避免和消除來自網絡介質的靜電泄放和電磁干擾。印刷電路板設計中應提供一個導人大地的通道,還要不致引起整個PCB電壓的升降,具體采用火花放電隙和箝位二極管來實現。 5 結 語 本系統充分利用了Echelon公司的一系列產品和工具,完成了抄表采集模塊的硬件設計,并實現了單片機與神經元芯片的并行通信。經多次實驗測試證明該模塊具有較高的可靠性。并且該模塊已經在我校數字化實驗室進行安裝調試,取得了良好的效果。 |