0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于AT89C51單片機和總線技術實現(xiàn)電表抄表模塊的設計

電子設計 ? 來源:現(xiàn)代電子技術 ? 作者:王際業(yè),林錦國, ? 2020-11-10 10:34 ? 次閱讀

作者:王際業(yè),林錦國,程明,顏廷勇,郭志波

1 引 言

在我國隨著一戶一表的推廣、城網(wǎng)和農網(wǎng)的改造、國家為了打破電力供應壟斷局面而引入競爭政策的逐步深入和提高用電管理水平等等都需要發(fā)展自動抄表(Automatic Meter Reading,AMR)技術;同時,對住宅安全的重視也需要發(fā)展遠程自動抄表系統(tǒng);另外,這也是網(wǎng)絡和計算機技術迅速發(fā)展的必然。目前我國已經(jīng)有多家有實力的公司投入到自動抄表系統(tǒng)的研制工作,但是大部分是采用485串行總線,進行通訊。由于該總線在實際工程中存在2個問題:

(1)通信數(shù)據(jù)收發(fā)的可靠性問題;

(2)在多機通信方式下,一個節(jié)點的故障(如死機),往往會使得整個系統(tǒng)的通信框架崩潰,而且給故障的排查帶來困難。

本文所設計的基于LonWorks技術的電表抄表模塊成功地解決了以上2個問題。

2系統(tǒng)組成

表頭采樣模塊主處理器選用AT89C51單片機,完成電表脈沖信號采樣、度數(shù)計算和反饋連動。抄表采集器由AT89C51作為主處理器與MCl43150Neuron芯片構成的Host-based節(jié)點作為系統(tǒng)的次站與LON網(wǎng)絡連接。采用的Neuron芯片是MCl43150,其片內有3個CPU,即:介質訪問CPU,網(wǎng)絡CPU,應用CPU。他們與片內存儲器、網(wǎng)絡通信接口、定時器、I/O口驅動電路通過16b地址總線和8 b數(shù)據(jù)總線相連。Neuron芯片有11個可編程的I/O引腳,并提供4類共34種I/O對象。通過引腳的不同配置,為外部硬件提供靈活的接口,實現(xiàn)不同的I/O對象。這4類I/O對象為:直接I/O、并行I/O、串行I/O和計時器/計數(shù)器I/O對象。

本設計將Neuron芯片工作方式配置為從B方式,具體為100~107與AT89C51的P0~P7口相連,經(jīng)此通道AT89C51的管理信息和實時數(shù)據(jù)通過LonWorks網(wǎng)可以上位監(jiān)控計算機以及其他LonWorks節(jié)點相互傳輸。系統(tǒng)結構圖1所示。

基于AT89C51單片機和總線技術實現(xiàn)電表抄表模塊的設計

3 表頭采集模塊的硬件設計

電表表頭模塊的主處理器選用AT89C51單片機。表頭采集模塊主要負責采集能源對應的數(shù)字量(脈沖信號),由主CPU進行處理,將相應的數(shù)據(jù)信號保存分時發(fā)送給抄表采集器,通過收發(fā)器,將相應電表的信號送到LON總線。

本表頭采集模塊主要有以下部分實現(xiàn):

(1)信號采樣電路

目前,市場上的電表基本上為脈沖電表,即輸出標準脈沖信號。以本系統(tǒng)調試采用的單相電子式電能表為例。電表輸出的脈沖信號送到采集模塊,經(jīng)過光電耦合器開關(如圖2),進行信號隔離,再通過74LSl4加以整形,然后送到單片機的外部中斷INT0(P3.2)腳,引起CPU產生一次外部中斷。采用中斷方式實現(xiàn)實時計數(shù),排除了漏計的可能。

(2)數(shù)據(jù)保存

當有采樣信號引起中斷,計數(shù)器工作,當脈沖計數(shù)到3 200時,產生一次寫操作,將前一地址單元值加1保存到當前地址。存儲器采用可在線電擦除的E2PROM28C17,作者經(jīng)過巧妙構思,在讀時將28C17當作程序存儲器,寫時當作外部RAM,工作性能非常穩(wěn)定,讀寫操作從未出現(xiàn)差錯。本系統(tǒng)中定義28C17的地址編碼為7800H~7FFFH,2kB尋址。

(3)日歷時鐘電路

采樣模塊需要對系統(tǒng)能進行分時計數(shù)功能,所以需要實時時鐘,以完成定時產生中斷、分時顯示、獲取時間和日期等功能,具體選用美國Dallas公司生產的實時時鐘芯片DSl2887。DSl2887是一個實時時鐘的完整子系統(tǒng),其集成度高,內部包含有1個鋰電池、1個石英晶振和1個寫保護電路。本系統(tǒng)采用DSl2887作為實時時鐘芯片,AS,DS,R/W分別與89C51的ALE,RD,WR連接,用P2.6作為片選信號,所以DSl2887的高位地址為#0BFH,低8位決定著內部單元的地址。

(4)斷電處理

當出現(xiàn)費用超支時,系統(tǒng)能進行自動斷電處理?;驹韴D如圖3所示。當上位機端發(fā)現(xiàn)某用戶費用超支時,發(fā)出斷電指令給89C51,89C51通過給端口置零,經(jīng)反相后,送至8050的B極,引起繼電器動作,開關吸合,此時相當于送往電表的開關處于截止狀態(tài),系統(tǒng)斷電。圖中Q1,Q2構成達凌頓管。

(5)顯示模塊

本系統(tǒng)還可以提供液晶顯示器(使用12232點陣液晶屏,提供漢顯),做到實時顯示功能,能在抄錄某時期內、某用戶電能表計數(shù)器窗口累計的全位示數(shù)。

(6)其他部分

本系統(tǒng)模塊還設有空余I/O口作為預留按鍵接口,費用報警功能。

4 抄表采集器的硬件設計

抄表采集器的硬件設計主要包括處理器電路、AT89C51與MCl43150Neuron芯片之間的通信擴展、232串口通信電路、電源電路等。

4.1 主CPU及其外圍擴展電路

主CPU采用常規(guī)單片機89C51,接有l(wèi)片28C64E2PROM作為在線可電擦除存儲器,保存各采樣模塊送來的數(shù)據(jù)信號。還包括復位電路、時鐘電路、外部RAM擴展、232串口通信電路、電源電路等。

4.2 主CPU和MCl43150Neuron芯片之間的通信接口的設計

本抄表采集模塊采用HOST-BASED結構,主CPUAT89C51和從處理器MCl43150Neuron芯片之間的通信實現(xiàn)采用從B方式。一般來說,并行接口可配置成Neuron芯片工作在主、從A或從B方式,2個Neuron芯片以主、從A方式接口;而Neuron芯片同非Neuron芯片以從B方式接口,非Neuron芯片充當主機,Neuron芯片工作在從B方式,進行握手聯(lián)絡來控制指令的執(zhí)行。主從機交換數(shù)據(jù)期間Neuron芯片暫停應用程序的執(zhí)行過程。每次最多可交換255B數(shù)據(jù)。這種并行I/O接口對象方式用在快速交換數(shù)據(jù)的場合是非常有用的。Neuron芯片能充當外部處理器的協(xié)處理器,產生一個網(wǎng)橋、網(wǎng)關或路由器。說明了Neuron芯片在并行接口對象時的典型應用。從B方式屬于并行I/O對象,本系統(tǒng)使用MCl43150Neuron芯片的所有11只腳,其中MCl43150的I/O0~I/O7是8b雙向數(shù)據(jù)線,I/O8~I/O10是3b控制信號線。借助令牌傳遞/握手協(xié)議,實現(xiàn)MCl43150Neuron芯片與主處理器之間的雙向數(shù)據(jù)傳輸。相對主CPU而言,MCl43150Neuron芯片相當于一個有著8 b數(shù)據(jù)線、3b控制線的并行I/O設備。

在主CPU的地址空間,作者把3150芯片當作2個寄存器,一個是讀、寫數(shù)據(jù)寄存器,另一個是控制寄存器。主機通過對這2個寄存器的訪問實現(xiàn)主機與3150芯片之間的數(shù)據(jù)傳輸。控制寄存器的最低位有效位(通過IO0讀?。?,就是握手HS位,主機通過對控制寄存器的訪問獲得3150芯片反饋的握手應答。3150芯片接收IO8作為片選信號CS,接收IO9以確信主機的讀、寫操作,接收IO10作為寄存器的選擇輸入A0(A0是主機地址總線的最低有效位)。出現(xiàn)下列2種情況時,IO0~IO7構成雙向數(shù)據(jù)總線:

(1)CS維持低,IO10為高,R/W為低;

(2)CS維持低,IO10為低,R/W為高或低。

如果CS維持低,IO10為高,R/W為高,IO0輸出的是給主機的握手應答信號。另外,在從B方式中,主機要監(jiān)視HS的狀態(tài)??赡苡羞@樣一種情況,從機未能及時設置好HS狀態(tài),而此時主機已經(jīng)在線并輪詢HS。為避免在這種情況下主機讀取HS的無效狀態(tài),本系統(tǒng)在HS引腳上加上了上拉電阻,如圖4所示。

4.3 Lon網(wǎng)絡接口

作者采用了支持FTT-10A自由拓補雙絞線收發(fā)器的Control Module作為采集器與LonWorks總線的接口。FTT-10A收發(fā)器主體是一個隔離變壓器,該變壓器集成了一個78kb/s差分曼徹斯特編碼通信收發(fā)器。FTT-10A收發(fā)器能自動檢測5M,10M或20M三種時鐘頻率,他在未加電時呈現(xiàn)高阻狀態(tài),不會影響網(wǎng)絡通信,是常用的收發(fā)器之一。FTT-10A收發(fā)器提供了與神經(jīng)元通信芯片接口和網(wǎng)絡接口的引腳。

4.4 其他電路設計

本采集器的硬件部分設計還包括電源、抗干擾設計等,工業(yè)現(xiàn)場的環(huán)境一般來說較為惡劣,存在多種干擾。為保證通訊的準確無誤,延長硬件使用壽命,本智能適配器除采用通常的供電和接地抗干擾措施外,主要是要避免和消除來自網(wǎng)絡介質的靜電泄放和電磁干擾。印刷電路板設計中應提供一個導人大地的通道,還要不致引起整個PCB電壓的升降,具體采用火花放電隙和箝位二極管來實現(xiàn)。

5 結 語

本系統(tǒng)充分利用了Echelon公司的一系列產品和工具,完成了抄表采集模塊的硬件設計,并實現(xiàn)了單片機與神經(jīng)元芯片的并行通信。經(jīng)多次實驗測試證明該模塊具有較高的可靠性。并且該模塊已經(jīng)在我校數(shù)字化實驗室進行安裝調試,取得了良好的效果。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19286

    瀏覽量

    229852
  • 單片機
    +關注

    關注

    6037

    文章

    44558

    瀏覽量

    635350
  • 總線
    +關注

    關注

    10

    文章

    2881

    瀏覽量

    88090
收藏 人收藏

    評論

    相關推薦

    基于AT89C51單片機的熱能的設計

    基于AT89C51單片機的熱能的設計
    發(fā)表于 08-14 11:40

    如何實現(xiàn)(電腦)PC單片機AT89C51的串行通信

    如何實現(xiàn)(電腦)PC單片機AT89C51的串行通信 在Windows95下使用串口API函數(shù)實現(xiàn)PC
    發(fā)表于 04-07 09:45 ?4662次閱讀

    AT89C51單片機簡介

    AT89C51單片機簡介 AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位
    發(fā)表于 11-12 08:39 ?2w次閱讀
    <b class='flag-5'>AT89C51</b><b class='flag-5'>單片機</b>簡介

    單片機AT89C51設計的數(shù)字鐘

    單片機AT89C51設計的數(shù)字鐘,(1).開機時,顯示12:00:00的時間開始計時
    發(fā)表于 04-13 16:07 ?9917次閱讀
    用<b class='flag-5'>單片機</b><b class='flag-5'>AT89C51</b>設計的數(shù)字鐘

    基于AT89C51單片機的萬年歷設計與實現(xiàn)

    本文提出了一種基于AT89C51單片機的萬年歷設計方案,本方案以AT89C51單片機為主核心,與時鐘芯片DS1302、按鍵、LED顯示等模塊
    發(fā)表于 05-28 10:46 ?844次下載
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>單片機</b>的萬年歷設計與<b class='flag-5'>實現(xiàn)</b>

    AT89C51單片機實現(xiàn)頻率測量

    AT89C51單片機實現(xiàn)頻率測量,參考資料。
    發(fā)表于 05-06 10:25 ?0次下載

    單片機AT89C51改造普通雙桶洗衣

    單片機AT89C51改造普通雙桶洗衣
    發(fā)表于 01-04 14:13 ?5次下載

    基于AT89C51單片機的電子表設計

    AT89C51 單片機的電子表設計
    發(fā)表于 06-21 09:13 ?57次下載

    AT89C51單片機技術詳解

    ,俗稱單片機。本文為您介紹基于AT89C51單片機技術詳解、設計技巧、應用案例大全,僅供參考。 基于AT89C51的操控鍵盤的設計 本文以P
    發(fā)表于 10-16 11:48 ?17次下載

    基于AT89C51單片機的ADC0808程序

    這篇文章主要和大家討論一下關于AT89C51單片機的ADC0808的介紹以及基于AT89C51單片機的ADC0808程序詳解。
    發(fā)表于 11-21 11:17 ?3.1w次閱讀
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>單片機</b>的ADC0808程序

    AT89C51單片機

    AT89C51單片機學習一、AT89S51單片機的I/O端口二、AT89S51單片機的中斷系統(tǒng)?
    發(fā)表于 11-12 12:21 ?65次下載
    <b class='flag-5'>AT89C51</b><b class='flag-5'>單片機</b>

    基于AT89C51單片機與PC串口通訊仿真及代碼

    基于AT89C51單片機單片機與PC串口通訊仿真仿真及代碼
    發(fā)表于 05-05 10:30 ?4次下載

    基于AT89C51單片機之間雙向通信仿真及代碼

    基于AT89C51單片機單片機之間雙向通信仿真及代碼
    發(fā)表于 05-05 10:29 ?17次下載

    基于AT89C51單片機用8255實現(xiàn)接口擴展Proteus仿真及程序

    基于AT89C51單片機用8255實現(xiàn)接口擴展Proteus仿真及程序
    發(fā)表于 05-05 09:57 ?12次下載

    基于AT89C51單片機的點擊轉速測量

    電子發(fā)燒友網(wǎng)站提供《基于AT89C51單片機的點擊轉速測量.pdf》資料免費下載
    發(fā)表于 10-20 11:39 ?1次下載
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>單片機</b>的點擊轉速測量