新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > DS12887在數據采集與監控中的應用

        DS12887在數據采集與監控中的應用

        作者: 時間:2012-01-09 來源:網絡 收藏

        0 引言

        低壓配電系統由現場變壓器遠程數據采集終端和監控中心兩大部分組成。現場變壓器遠程數據采集終端安裝在變壓器現場,通過RS485通訊接口采集多功能電能表的數據,對變壓器的電氣參數進行數據處理并存儲數據,再通過RS232通訊接口控制GPRS通訊模塊實現遠程無線數據的采樣監測,監控中心的服務器主機上,安裝了低壓配電網臺區實時監測軟件,通過GPRS Modem即可與數據采集終端進行通信。數據采集終端采用了定時、實時、故障三種數據傳輸模式,其中的定時和實時數據采集模式主要是通過DS12887來實現的。對實時數據采集模式是利用DS12887的分鐘寄存器的刷新來采集多功能電能表的當前數據;對定時數據采集模式是利用DS12887的分鐘寄存器是否為零來判斷每小時是否來到,每天采集存貯24組數據,產生一個數據包。數據采集終端根據時、分是否為零,判斷每天是否來到,從而給新的一天數據存貯單元清零;數據采集終端根據DS12887日期的變化,存貯7天的數據。上述數據采集功能的實現與DS12887的時鐘和日歷分不開的,時鐘和日歷貫穿于整個數據采集中,起著至關重要的作用。具有定時精度高、掉電保護、功能強大、使用靈活等優點,因此DS12887日益受到用戶的青睞。

        1 DS12887的結構和功能特點

        DS12887美國DALLAS公司推出的8位并行接口/日歷芯片,利用CMOS技術制成。采用24引腳雙列直插式封裝,是由振蕩電路、分頻電路、周期中斷/方波選擇電路、14字節時鐘和控制單元、114字節的用戶非易失性RAM、十進制/二制累加器、總線接口電路、內部鋰電池等部分組成。基于DS12887的內部電路結構,其主要功能特點如下:

        ⑴ 內置一個鋰電池,斷電后能運行十年以上而不丟失數據。

        ⑵ 具有計秒、分、時、日、月、年、星期信息,并有閏年補償功能。

        ⑶ 可編程用二進制碼或BCD碼來表示時間、日歷和鬧鐘。

        ⑷ 可編程設置時間是12小時制或24小時制。

        ⑸ 具有Motorola和intel兩種總線時序選擇方式。

        ⑹ 具有128字節RAM,其中10個時鐘寄存器,4個控制寄存器和114字節的通用RAM單元,所有RAM單元都具有掉電保護功能,可用作非易失性RAM。

        ⑺ 可編程方波信號輸出。

        ⑻ 具有定鬧中斷、周期性中斷、時鐘更新周期結束中斷,三個中斷源可分別由軟件屏蔽。

        2 DS12887的4個控制寄存器的使用方法

        2.1 寄存器A(除D7位只為讀外,其它位均可讀寫),如表1所列。

        表1 寄存器A (table 1 a register)

        D7

        D6

        D5

        D4

        D3

        D2

        D1

        D0

        UIP

        DV2

        DV1

        DV0

        RS3

        RS2

        RS1

        RS0

        UIP:刷新標志。 UIP=1,表示正在進行刷新; UIP=0,表示刷新在244μs內不會發生,此時可對RAM區進行讀寫操作。

        DV2 DV1 DV0=010時,打開晶振,并允許時鐘開始計時。

        RS3 RS2 RS1 RS0用于選擇周期中斷或輸出方波頻率,當其分別為0111、1000、1001、1010、1011、1100、1101、1110、1111時,對應輸出頻率為512Hz、256Hz、128Hz、64Hz、32Hz、16Hz、8Hz、4Hz、2Hz。當RS3 RS2 RS1 RS0=0000時,禁止周期中斷和方波輸出。

        2.2 寄存器B(可讀寫),如表2所列。

        表2 寄存器B(table 2 b register)

        D7

        D6

        D5

        D4

        D3

        D2

        D1

        D0

        SET

        PIE

        AIE

        UIE

        SQWE

        DM

        24/12

        DSE

        SET=0,每秒計數一次;SET=1,禁止刷新。

        PIE、AIE、VIE位均為1時,分別表示允許周期中斷、報警中斷和時鐘數據刷新結束中斷;

        均為0時,表示禁止中斷產生。

        SQWE=1,SQW端輸出由RS3~RS0位所設定的方波頻率信號;SQWE=0,SQW端保持低電平。

        DM=1,日歷時鐘選用二進制形式;DM=0,選用BCD碼形式。

        24/12=1,時間模式選用24小時制;24/12=0,選用12小時制。

        DSE=1,允許夏時制發生;DSE=0,禁止。

        2.3 寄存器C(只讀),如表3所列。

        表3 寄存器C(table 3 c register)

        D7

        D6

        D5

        D4

        D3

        D2

        D1

        D0

        IRQF

        PF

        AF

        UF

        0

        0

        0

        0

        PF、AF、UF位均為1時,分別表示有周期中斷、報警中斷和刷新結束中斷產生;均為0時,表示無中斷產生。

        IRQF:中斷請求標志位。IRQF=PF×PIE+AF×AIE+UF×UIE

        IRQF=0,無中斷請求產生;IRQF=1,有中斷請求產生。IRQ端輸出低電平,讀寄存器C或

        復位之后其所有標志位均被清零。

        2.4 寄存器D(只讀), 如表4所列。

        表4 寄存器D(table 4 d register)

        D7

        D6

        D5

        D4

        D3

        D2

        D1

        D0

        VRT

        0

        0

        0

        0

        0

        0

        0

        VRT=0,表示DS12887芯片內部鋰電池已耗盡,時間和RAM區信息無效;

        VRT=1,信息有效。

        3 硬件接口電路

        DS12887在數據采集終端應用中的結構框圖如圖1所示。使用W77E58帶雙串口的高性能單片機,其中一個串口采用MAX487來實現與多功能電能表的RS485接口,獲取低壓配電參數的數據;另一個串口采用MAX232來實現與GPRS Modem通訊,實現遠程數據的收和發。

        AT28C256 EEPROM實現對歷史數據的存貯。8255并行擴展接口用于功能擴展備用以及實現正常工作指示、備用電源指示、正在數據采集指示、正在遠程通訊指示、事件報警指示。

        圖1 數據采集終端的硬件結構框圖

        4 接口軟件

        下面為DS12887時鐘芯片和77E58單片機的接口軟件,采用匯編語言編寫。低壓配電系統使用DS12887具有以下四種功能:一是以時間來存貯歷史數據,如存貯某年、某月、某日開始的歷史數據,可以連續保存7天的數據,第8天則把最前面的一天的數據覆蓋掉;二是以小時的變化來實現定點數據采集;三是以分鐘的變化來實現當前數據采集;四是以某日是否變化來判斷新的一天是否來到。如某日變化則表明新的一天來到,則對新的一天中AT28C256對應的RAM單元初始化。

        4.1 有關的常量定義和RAM單元注釋

        ;;;;;; 13H ……當前分鐘值(BCD碼)

        SZ_addm equ 0f700H ;秒寄存器地址

        SZ_addf equ 0f702H ;分寄存器地址

        SZ_adds equ 0f704H ;時寄存器地址

        SZ_addr equ 0f707H ;日寄存器地址

        SZ_addy equ 0f708H ;月寄存器地址

        SZ_addn equ 0f709H ;年寄存器地址

        SZ_adda equ 0f70aH ;A寄存器地址

        SZ_addb equ 0f70bH ;B寄存器地址

        SZ_addc equ 0f70cH ;C寄存器地址

        SZ_addd equ 0f70dH ;D寄存器地址

        4.2 初始化時鐘芯片或時鐘設置

        在低壓配電系統中,具有通過GPRS Modem遠程通訊對DS12887進行初始化設置時鐘功能或讀時鐘等功能。單片機接收到的年、月、日、時、分、秒數據分別存于21H、22H、23H、24H、25H、26H RAM內存單元中。

        初始化時鐘設置子程序:

        MOV DPTR,#SZ_addb ;寄存器B的SET置“1”,禁止芯片內部的刷新周期

        MOV A ,#82H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_addn ;寫入年寄存器的數據

        MOV A , 21H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_addy ;寫入月寄存器的數據

        MOV A , 22H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_addr ;寫入日寄存器的數據

        MOV A , 23H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_adds ;寫入時寄存器的數據

        MOV A , 24H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_addf ;寫入分寄存器的數據

        MOV A , 25H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_addm ;寫入秒寄存器的數據

        MOV A , 26H ;

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_adda ;初始化寄存器A,打開晶振開始計時,禁止中斷,

        MOV A , #20H ;禁止方波輸出。

        MOVX @DPTR,A ;

        MOV DPTR,#SZ_addb ;寄存器B的SET置“0”,

        MOV A , #02H ;BCD碼格式,24小時制,允許時間刷新。

        MOVX @DPTR,A ;

        RET ;

        4.3 從DS12887中讀取數據

        讀數據子程序: MOV DPTR,#SZ_adda ;讀出寄存器A中的內容

        MOVX A, @DPTR ;查詢VIP位,判斷芯片是否處于更新周期

        JB ACC.7 ,XIN ;

        MOV DPTR,#SZ_addf ;讀分寄存器的值

        MOVX A, @DPTR ;

        CJNE A, 13H,SAMPLE ;判斷時間分寄存器是否更新,即1分鐘到否?

        SJMP XIN ;未到

        SAMPLE: 。。。。。。 ;到了,開始采集多功能表的數據

        5 結束語

        本文從實時時鐘DS12887結構原理入手,講述了該芯片的功能特點,使用方法。重點以DS12887與單片機77E58的硬件接口電路和軟件編程兩個方面為例,講述了DS12887在低壓配電數據采集與監控系統中是如何實現了定時和當前數據采集功能的, 它應用于江西省2002年省教育廳科技項目計劃課題《單相袖珍式多功能現場校驗儀》中, 課題編號為贛教科技[2002]01號1901,基金項目經費為1萬元,已于2005年6月完成科技成果鑒定。本文的創新點是巧妙地利用了DS12887時鐘芯片的功能,以實時運行的時間為準則, 實現了瞬時、定點、一天、歷史數據的采集與存儲,并且通過GPRS網絡實現了遠程監測。該系統經供電局安裝運行證明,運行可靠,它能實現遠程抄收電廠變壓器電能表的各種數據,值得推廣。

        參考文獻

        1 鄭仲明.利用DS12887設計的利率顯示屏[J].國外電子元器件,2002,10:17-19。

        2 張松波,張東升.實時時鐘12887在嵌入式系統中的應用[J]. 電測與儀表,2004,8:54-56。

        3 李 濤,徐建政.基于GPRS無線技術的配電變壓器監測系統[J].電測與儀表,2004,6:55-57。

        4朱杰斌,余紅粒,潘自強.時鐘芯片在電壓監測儀校驗裝置中的應用[J]. 微計算機信息,

        2006年12月上旬:288-290。

        電能表相關文章:電能表原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 永宁县| 方山县| 高平市| 延津县| 呼和浩特市| 鲁山县| 新河县| 沅陵县| 叶城县| 科技| 泰兴市| 乌拉特前旗| 江口县| 天全县| 定结县| 彭水| 威信县| 道孚县| 平度市| 东港市| 宁夏| 尚义县| 铜山县| 湟源县| 万山特区| 舒城县| 启东市| 马关县| 眉山市| 伊春市| 甘肃省| 镇江市| 崇阳县| 河间市| 阜阳市| 林州市| 隆昌县| 通渭县| 镇远县| 宣化县| 固安县|