新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ADE7755的帶CAN總線的工業(yè)用電度表設(shè)計(jì)方案

基于ADE7755的帶CAN總線的工業(yè)用電度表設(shè)計(jì)方案

作者: 時(shí)間:2009-09-07 來源:網(wǎng)絡(luò) 收藏


圖3 5V基準(zhǔn)電源電路
  
經(jīng)過此電路可以在電源模塊MC7805的3端得到+5V的基準(zhǔn)電源。其中R25為壓敏變阻器。

P87C591外圍電路和部分設(shè)計(jì)
通過P87C591電路可以實(shí)現(xiàn)指定時(shí)間內(nèi)用電量的計(jì)算、數(shù)據(jù)存儲(chǔ)、修改電度表數(shù)值和通過圖4所示的收發(fā)電路實(shí)現(xiàn)與上位機(jī)的通信。
  
有關(guān)P87C591外圍電路設(shè)計(jì),可以參見其他單片機(jī)的外圍電路設(shè)計(jì),這里不再贅述。


圖4 收發(fā)電路
  
連接P87C591和單片機(jī)之間的芯片是P82C250。圖4這部分電路的原理可以參考有關(guān)CAN總線設(shè)計(jì)方面的資料,這里也不再闡述。

軟件部分設(shè)計(jì)

本方案的軟件部分主要由主程序和中斷服務(wù)子程序組成。其中主程序完成的功能有芯片和CAN總線的初始化、進(jìn)行電量的計(jì)算和存儲(chǔ)。

中斷服務(wù)子程序完成的功能是利用CAN總線實(shí)現(xiàn)和主機(jī)之間的通信和電表初值的設(shè)定。其中電表初值設(shè)置由上位機(jī)完成,這樣可以節(jié)省單片機(jī)的外圍電路并且可以防止現(xiàn)場人為惡意的更改電量值。其中CAN總線的初始化程序如下:

voidinit_can_controller()
{
//進(jìn)入CAN控制器復(fù)位模式
CANMOD=0x01; //將CAN控制器設(shè)置為復(fù)位模式以啟動(dòng)初始化
//TXDCPort(P1.1)配置
//管腳TXDC設(shè)置為推挽模式
P1M2=P1M2|0x02;//P1M2.1=’1’,P1M1.1=’0’(默認(rèn))
CANADR=BTR0; //BTR0和BTR1編程為125kbit/s@12MHz
CANDAT=0x45;
CANADR=BTR1;//TSEG1=12,TSEG2=3,SJW=2
CANDAT=0x2B;//Sample=1->sample point~81%
//驗(yàn)收濾波器的配置-- Bank1的濾波器1配置為接收ID=010.0000.0xxx
CANADR=ACR10;//將地址設(shè)置到驗(yàn)收代碼寄存器0(Bank1)
CANDAT=0x50;//驗(yàn)收代碼0用于濾波
CANDAT=0xE0;
CANADR=AMR10;//將地址設(shè)置到驗(yàn)收屏蔽寄存器0(Bank1)
CANDAT=0x00;//bank1:驗(yàn)收屏蔽0
CANDAT=0x0F;//bank1:驗(yàn)收屏蔽1只與高四位有關(guān)
CANDAT=0xFF;//bank1:驗(yàn)收屏蔽2無關(guān)
CANDAT=0xFF;//bank1:驗(yàn)收屏蔽3無關(guān)
CANADR=ACFMOD;//將地址設(shè)置到ACF模式寄存器
CANDAT=0x55;//單驗(yàn)收濾波器使用11位ID(SFF)
CANADR=ACFPRIO;//將地址設(shè)置到ACF優(yōu)先級(jí)寄存器
CANDAT=0xFF;//所有濾波器都為高優(yōu)先級(jí)

結(jié)束語

綜上所述,由于是專用電量計(jì)量芯片,且具有抗干擾的優(yōu)點(diǎn),而P87C591及其外圍電路也是當(dāng)前成熟的技術(shù),其可靠性和抗干擾性都得到了實(shí)際驗(yàn)證,所以本方案簡單易行。

本方案雖是針對(duì)改進(jìn)電力機(jī)車電度表而設(shè)計(jì)的。但由于電力機(jī)車工作于諧波污染嚴(yán)重工況,所以可以根據(jù)本方案針對(duì)實(shí)際情況作相應(yīng)改動(dòng)以適用于不同的工業(yè)場合。

電度表相關(guān)文章:電度表原理



上一頁 1 2 下一頁

關(guān)鍵詞: 7755 ADE CAN 總線

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉