版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p><b> 1前言1</b></p><p> 1.1智能電表應用的意義1</p><p> 1.2智能電表的發(fā)展1</p><p> 2 總體方案設計3</p><p> 2.1 方案比較
2、3</p><p> 2.2 方案選擇5</p><p> 3 器件介紹和單元模塊設計6</p><p> 3.1單元模塊設計6</p><p> 3.1.1 電源模塊電路6</p><p> 3.1.2 信號采集電路7</p><p> 3.1.3 計量模塊8</
3、p><p> 3.1.4 時鐘及LCD顯示模塊9</p><p> 3.1.5 接觸式IC卡模塊10</p><p> 3.2 器件介紹11</p><p> 3.2.1 STC89C52單片機11</p><p> 3.2.2 ADE775811</p><p> 3.2.3
4、 DS1288712</p><p> 3.2.4 LCD160213</p><p> 3.2.5 SLE444215</p><p><b> 4 軟件設計16</b></p><p> 4.1 主要芯片讀寫程序設計及設計工具16</p><p> 4.2 主要軟件設計流程
5、框圖及說明19</p><p> 5 系統(tǒng)硬件調(diào)試22</p><p> 6 系統(tǒng)軟件調(diào)試27</p><p> 7 總結(jié)與體會29</p><p><b> 8 謝辭30</b></p><p><b> 9 參考文獻31</b></p>
6、<p> 附錄1:電路原理圖32</p><p> 附錄2:PCB圖33</p><p><b> 附錄3:程序34</b></p><p> 附錄4:英文文獻翻譯75</p><p> 插卡式(IC)智能電能表設計</p><p> 摘 要:智能電表采用ADE7
7、758電能計量芯片和STC89C52單片機為核心,實現(xiàn)對于用戶功率的測量,并根據(jù)階梯電價計算出卡內(nèi)電費剩余等情況,電能表附帶萬年歷,自動報警,調(diào)節(jié)階梯電價等功能,萬年歷功能采用芯片DS12887時鐘芯片為核心來實現(xiàn),自動報警功能用蜂鳴器進行模擬,并通過四個鍵盤實現(xiàn)顯示的切換以及電價的調(diào)整功能,IC卡采用西門子公司的SLE4442卡,可實現(xiàn)邏輯加密,可反復讀寫,卡內(nèi)數(shù)據(jù)保密性好。</p><p> 關(guān)鍵詞:智能電
8、表,ADE7758,時鐘芯片,電能計量</p><p> Abstract: Smart Meters uses ADE7758 Electricity measurement chip and STC89C52 microcontroller as a core to implement the measurement of consumer's power and calculate the rem
9、aining electricity bill, based on stepwise power tariff. In addition, the Smart Meters is attached with a calendar, automatic alarm, and electricity adjustment function. The details of these functions are as follows: the
10、 calendar adopts clock chip DS12887 as a kernel to do the work, the automatic alarm uses Buzzer to simulat</p><p> Keywords: Smart Meters, ADE7758, clock chip, Electricity measurement.</p><p>&
11、lt;b> 1前言</b></p><p> 隨著我國經(jīng)濟的迅猛發(fā)展,各地對于電能需求量也隨之迅速增加,據(jù)介紹,國家將加快建設1000千伏交流和±800千伏、±1000千伏直流構(gòu)成的特高壓骨干網(wǎng)架,并實現(xiàn)各級電網(wǎng)協(xié)調(diào)發(fā)展,大力推進堅強智能電網(wǎng)的建設,到2020年,將建成統(tǒng)一的智能堅強電網(wǎng),是電能的分配,管理,電網(wǎng)的穩(wěn)定運行,用戶和電網(wǎng)之間的互動性提高,其中重要的一項,就是
12、加強用電管理,使用智能計費系統(tǒng)。</p><p> 1.1智能電表應用的意義</p><p> 目前,我國已經(jīng)開始大面積推廣并使用智能電表,以實現(xiàn)對電價分時,階梯</p><p> 的統(tǒng)計,隨著我國經(jīng)濟的發(fā)展,用電量激增,對于電能的管理顯得尤為的重要。在現(xiàn)代生產(chǎn)生活中,電能已經(jīng)發(fā)展成為一種重要的能源資源,我國電力事業(yè)在改革開放的30年中,發(fā)展極為迅猛,所以相
13、應的電能計量儀表制造業(yè)的進步也必須與之相適應,這對于電力事業(yè)進行統(tǒng)籌規(guī)劃和發(fā)展,促進我國電力事業(yè)穩(wěn)定,健康的發(fā)展有著極其重要的意義。新型智能電表不僅具有傳統(tǒng)電表的功能,還能對用戶的用電情況進行管理和控制,并且相比于傳統(tǒng)電表的機械式結(jié)構(gòu),沒有機械摩擦,大大的提高了準確度和靈敏度,且易于實現(xiàn)自動化測量,并且可以實現(xiàn)遠程通訊和控制,具有較高的性能價格比,適合我國國情,有廣泛的引用價值。智能電表利用微機技術(shù),通訊技術(shù)等等,減少了能量的消耗,把采
14、集,處理集中于一體,節(jié)省成本和人力資源,提高了工作效率,適應了現(xiàn)代用戶的需求。</p><p> 1.2智能電表的發(fā)展</p><p> 智能電表是在電子式電表的基礎上發(fā)展而來,歐美發(fā)達國家于20世紀70年代研發(fā)并開始使用,經(jīng)過30多年的不斷發(fā)展,歐美國家不斷對智能電表技術(shù)進行革新,功能日趨完善,目前,我國的智能電表大致分為機電一體式和全電子式兩種,機電一體式即在原有機械結(jié)構(gòu)的基礎之
15、上附加一定的電子元件,從而達到所需的功能要求,安裝簡潔,多用在老實機械表的改裝,成本低。全電子式則是采用集成電路為核心,取消了老式電表的機械結(jié)構(gòu),減少了機械摩擦,使得計價更加準確,可靠性高,耗電少,體積小。在收費系統(tǒng)方面,目前國內(nèi)上使用最為廣泛的為IC卡電表收費,成本低,可靠性好,且使用壽命長,一張IC卡可使用10年以上,且可實現(xiàn),預收費,自動斷電,加密等多種功能,但是IC卡收費系統(tǒng)也存在很大的缺陷,用戶終端仍然與整個網(wǎng)絡脫節(jié)從經(jīng)濟角度
16、來看電力部門先收費后送電不符合經(jīng)濟政策,可以說在一定程序上侵犯了用戶的利益。隨著我國提出發(fā)展智能堅強電網(wǎng)的提出,為我國電網(wǎng)設施的發(fā)展提供了機遇,未來,智能儀器儀表將向著數(shù)字化,智能化,網(wǎng)絡化,微型化的趨勢發(fā)展,并進一步與微處理器,PC技術(shù)融合,使儀器儀表技術(shù)的數(shù)字化,智能化水平不斷提高。</p><p><b> 2 總體方案設計</b></p><p> 本電表
17、采用分時計費原則,將電壓,電流等參數(shù)進行采集,并輸入微處理器,進行運算,并最終實現(xiàn)對于電能的準確計量和控制。</p><p><b> 2.1 方案比較</b></p><p> 智能電表的設計,是基于對用戶電壓電流信號進行采集,并通過微處理器進行核心運算,當電壓電流信號通過采集以后,通過高精度的AD采樣保持,最終輸入微處理器,另一方面,通過IC卡座實現(xiàn)對IC卡內(nèi)
18、部金額的讀取,輸入單片機,并且要求通過功率和電費的計算,進行顯示與報警。</p><p> 對于電力參數(shù)的測試,例如電壓,電流,有功功率,無功功率等,現(xiàn)在都有成熟的測量計算方法,對于電壓有效值的測量,可以利用積分電路來實現(xiàn),也可以利用時間采樣信號,將信號值平方,去均值以后,得到平方根,通過AD,進行采樣,有功功率定義為,和為電壓和電流的有效值,為功率因數(shù)。而對于非正弦波形的計算,只有通過積分運算來完成。<
19、/p><p><b> 方案一:</b></p><p><b> 圖2-1 方案一</b></p><p> 在本設計方案中,核心器件為微處理器,這里我們選用是STC89C52單片機,當信號采樣后通過AD轉(zhuǎn)換,送入微處理器,進行數(shù)據(jù)的分析和計算,智能電表的實現(xiàn)必須對用戶的功率進行準確的計算,在信號采集模塊中,通過電壓互
20、感器和電流互感器,對用戶的電壓和電流信號進行采集,微處理器進行功率和電費的計算,可通過LCD顯示,并可以通過鍵盤對分時電價進行調(diào)整,實現(xiàn)顯示的轉(zhuǎn)換和調(diào)整,并運用單片機內(nèi)部時鐘設計計時系統(tǒng),以實現(xiàn)分時的控制。但是此設計有諸多缺陷,首先,在信號采集方面,由于智能電表對于功率的計算,如果單純的使用單片機,會造成功率計算不準確,如果要提高計算的精度,對于信號的AD轉(zhuǎn)換就必須采用高精度期間,成本費用增加,其次即便使用了高精度的AD,在功率計算,補
21、償方面的程序也想當繁瑣,再則,由于使用分時計費系統(tǒng),只用單片機內(nèi)部時鐘信號進行粗略的計時,產(chǎn)生的時間誤差比較大,長時間的使用下會導致計時不準確,而使得電費的計算出現(xiàn)誤差。</p><p> 軟件系統(tǒng)方面,其核心則是編寫功率計算程序和AD采樣程序,并通過鍵盤掃描的實現(xiàn)顯示的切換。</p><p><b> 方案二:</b></p><p>&
22、lt;b> 圖2-2 方案二</b></p><p> 本方案的設計思路與方案一大致相同,選用STC89C52單片機,作為微處理器,通過電壓傳感器,電流傳感器實現(xiàn)對用戶的電壓電流采集,并在單片機中進行電價的計算,與方案一的不同之處在于,方案二中功率計算部分和AD轉(zhuǎn)換采集部分被一塊電能計量芯片ADE7758進行代替,該芯片是以一款高準確度的三相電能采集芯片,適用于計量各種三相,單項配置條件下的
23、有功,無功,視在電能,可省去高精度AD的費用的同時,也可以減少單片機內(nèi)部處理功率的步驟,轉(zhuǎn)由ADE7758完成。同時,由于該智能電表采用分時計費系統(tǒng),方案二中特采用一塊時鐘芯片以提高對于時間的計時準確程度,以確保該電表可以準確計費,同時,由于時鐘芯片本身集成有微型電池,可以在斷電的情況下繼續(xù)運行,保證了在智能電表斷電的同時,計時系統(tǒng)不至于停止工作。</p><p> 在本方案中,由ADE7758進行功率的計算并
24、進行校準,在該芯片中,通過每相有功增益寄存器寫入數(shù)據(jù),可對輸出產(chǎn)生的平均功率經(jīng)行改變,該芯片中在每個相位集成了一個有功偏移寄存器,該寄存器為12位寄存器,用以對有功功率經(jīng)行校準,由于實際電路的工作環(huán)境的復雜和多變,以及芯片本身制造工藝和各通道之間經(jīng)行的干擾,都會造成誤差的產(chǎn)生,有功功率寄存器的一個LSB相當于有功功率乘法器輸出的LSB的1/16。在滿刻度輸出時,如果乘法器的輸出為XCCCCS(838861d),LPF2輸出端的1個LSB
25、相當于在電流通道滿刻度-60dB計量誤差的0.0075%。在滿刻度時,-60dB(輸入信號級別為滿刻度信號輸入的1/1000),LPF2的平均數(shù)值為838.861 (838,861/1,000)。LSB=1/838.861/16×100% = 測量值的0.0075% 。有功功率偏移寄存器修正分辨率為0.0075% (? 60 dB)[4]。</p><p> 另外ADE7758的各相有擁有一個空載閥值
26、,如果有功公功率的測量值低于滿刻度的0.005%,則該值不會被累加,有效的避免了電表的淺動。ADE7758通過41個電能寄存器連續(xù)累加有功功率以實現(xiàn)對信號的積分作用,這種離散的累加作用就相當于連續(xù)時間的積分作用,平均有功功率的計算時,是有符號運算的,負電能將會在有功功率寄存器中被扣除。當有功功率為正,且達到最大值時,有功功率的數(shù)值將反轉(zhuǎn)到達滿刻度的負值0X800,并繼續(xù)增加,當有功功率為負值,且持續(xù)減小到達最小時,會自動轉(zhuǎn)為正的對大刻度
27、0X7FFF,并繼續(xù)降低。</p><p> 在軟件系統(tǒng)上,該方案與方案一的區(qū)別在于,重點在對于ADE7738和DS12887兩塊芯片的讀寫程序的書寫,在硬件的搭建上降低了難度,但是在程序書寫上難度有所增加。 </p><p><b> 2.2 方案選擇</b></p><p> 通過對以上兩種方案的具體描述,對他們各自的優(yōu)缺點有了一定的
28、了解。要完成對于電費的準確計算,并綜合本次課程設計成本進行考慮,最終選擇了方案二為本次設計的最終設計方案。</p><p> 3 器件介紹和單元模塊設計</p><p> 只有各個系統(tǒng)單元模塊的有機結(jié)合,才可以構(gòu)成一個完整的系統(tǒng)。下面將介紹本次設計中使用的一些特殊器件和具體的各功能模塊電路組成。</p><p><b> 3.1單元模塊設計</
29、b></p><p> 3.1.1 電源模塊電路</p><p> 電源模塊電路從電網(wǎng)220V電壓作為輸入,通過該電路后,輸出端輸出大小為5V的電壓,作為單片機及其他芯片的VCC電源,具體的電路圖如下圖所示:</p><p> 圖3.1 電源接線圖</p><p> 圖3-1為電壓模塊的電路圖,該模塊以電網(wǎng)220交流電作為輸入,
30、通過整流橋整流后,再經(jīng)過濾波,最后通過一塊78L05穩(wěn)壓芯片進行穩(wěn)壓,得到一個穩(wěn)定的5V電源,78L05的輸出電流可達到100mA,無需外接元件,內(nèi)部本身帶有熱過載保護,自帶內(nèi)部短路電流限制。該模塊的仿真電路如下圖所示:</p><p> 圖3.2 電源仿真圖</p><p> 圖3-2為該電源電路的仿真效果圖,可以看到,該模塊可以很好的工作得到一個穩(wěn)定的5V的電源。</p>
31、;<p> 3.1.2 信號采集電路</p><p> 本次設計為智能電表,所以要對用戶的電壓和電流都進行采樣,再通過ADE7758芯片來得到一個較為準確的功率值并輸入單片機中,因此電壓電流的采集電路如下圖所示:</p><p><b> 圖3.3 采集電路</b></p><p> 圖3-3為電流電壓采集電路,在電流采集
32、電路中,通過將電流互感器TA32BM串聯(lián)到用戶電路中,以采集用戶的電流信息,TA32BM額定輸入輸出為5A/2.5mA,通過電流互感器將大電流轉(zhuǎn)換到ADE7758可以接受的小電流范圍內(nèi),然后通過濾波降低信號的干擾,最終輸入芯片,在電壓采集電路中,通過將電壓互感器TV31B-02并聯(lián)到用戶的負載上,采集用戶的電壓信息,TV31B-02是一款電流型電壓互感器,額定電流是2mA/2mA,所以要在電壓互感器的緣邊串聯(lián)一個51K的電阻一降低互感器
33、原邊的電流值到可承受的范圍,最后通過RC電路濾波后,得到一個近似0.5V的電壓以輸入到ADE7758芯片,和前面的電流值一起,計算出用戶的功率。</p><p> 電壓互感器相當于一個內(nèi)阻很小的電壓源,正常運行時它的負載阻抗會很大,相當于開路狀態(tài),二次側(cè)只有很小的電流,當二次側(cè)短路時,負載阻抗為零,將產(chǎn)生很大的短路電流,會將電壓互感器燒壞。因此,電壓互感器二次側(cè)嚴禁短路。</p><p>
34、; 電流互感器在正常運行時,二次電流產(chǎn)生的磁通勢對一次電流產(chǎn)生的磁通勢起去磁作用,勵磁電流很小,鐵芯中的總磁通就很小,二次繞組的感應電動勢不會超過幾十伏。如果二次側(cè)開路,二次電流的去磁作用消失,其一次電流完全變?yōu)閯畲烹娏鳎瑫痂F芯內(nèi)磁通劇增,鐵芯處于高度飽和狀態(tài),加之二次繞組的匝數(shù)很多,就會在二次繞組兩端產(chǎn)生很高(甚至可達數(shù)千伏)的電壓,不但可能損壞二次繞組的絕緣,再者,由于磁感應強度劇增,使鐵芯損耗增大,嚴重發(fā)熱,甚至燒壞絕緣。&
35、lt;/p><p> 3.1.3 計量模塊</p><p> 計量模塊的核心是通過一塊ADE7758芯片來完成,通過信號采集電路,將變換后的電壓電流信號輸入到該芯片,ADE77581是一款高準確度的三相電能計量芯片,帶有兩路脈沖輸出功能和一個串行接口。ADE7758 集成了二階Σ-D模數(shù)轉(zhuǎn)換器, 數(shù)字積分器,基準電路,溫度傳感器,以及所有進行有功,無功和視在電能計量以及有效值計量所需的信號
36、處理元件[1]。</p><p> 圖3.4 ADE7758接線圖</p><p> 圖3-4為芯片ADE7758的具體接線圖,ADE7758作為一款適用范圍極廣且功能強大的電能計量芯片在本次設計中擔任了重要的角色,通過DOUT管教直接與單片機連接,通過SPI總線方式,與單片機實現(xiàn)數(shù)據(jù)之間相互通信,從而實現(xiàn)功率的計算,其中DOUT管角與單片機P1.4連接,SCLK與P1.3連接,DIN
37、與單片機P1.7連接,CS片選信號與單片機P1.2連接。</p><p> 3.1.4 時鐘及LCD顯示模塊</p><p> 本次設計設計中,該電表要實現(xiàn)分時計費,既必須引入時鐘系統(tǒng),該時鐘系統(tǒng)必須準確,且在電表短時間斷電之內(nèi),不會停止工作,因此,該模塊采用了一塊時鐘芯片DS12887,該芯片為一款使用很廣泛的時鐘芯片,具體電路圖如下圖所示:</p><p>
38、 圖3.5 DS12887接線圖</p><p> 圖3.5為時鐘芯片DS12887的連線圖,其中DS與單片機P2.1口連接,R/W與單片機P2.5口連接,AS與單片機P2.4口連接,CS與單片機2.2口連接。通過該芯片可以提供比較精確的萬年歷。</p><p> 同時智能電表的顯示模塊選用LCD顯示,下圖為LCD1602顯示電路:</p><p> 圖3.
39、6 LCD1602接線圖</p><p> 通過該LCD液晶顯示器,顯示我們需要的一些信息。上述兩個模塊通過與STC89C52單片機進行連接,可以實現(xiàn)萬年歷的功能,且可以保證,在智能電表短時間斷電的情況下,時鐘不會停止運行,繼而實智能電表的分時計費系統(tǒng)可以準確的運行,我們用Protues仿真,電路圖如下圖所示:</p><p> 圖3.7 萬年歷顯示仿真圖</p><
40、;p> 圖3.7為萬年歷顯示模塊,上圖中可以通過按鍵對LCD顯示進行調(diào)整,可以顯示萬年歷,分時電價,余額等信息。</p><p> 3.1.5 接觸式IC卡模塊</p><p> 這里IC卡模塊我們選用的是西門子的SLE4442加密型IC卡,SLE4442是一種具有加密邏輯電路的智能IC卡, 內(nèi)含256×8位EEPROM主存儲器和一個32位帶PROM 功能的保護存儲器
41、,其觸點配置和串行接口符合ISO 7816 標準(同步傳送),具備只有輸入正確的3字節(jié)可編程密碼(加密存儲區(qū)) 后才能修改數(shù)據(jù)的特性。下圖為具體模塊[2]:</p><p> 圖3.8 SLE4442卡座</p><p><b> 3.2 器件介紹</b></p><p> 3.2.1 STC89C52單片機</p><
42、;p> STC89C52是一款高速度,高密度,低功耗的單片機,內(nèi)置8位中央處理單元,256字節(jié)片內(nèi)數(shù)據(jù)RAM,8K片內(nèi)程序ROM,32個雙向I/O口,還包含3個定時/計數(shù)器,擁有PDIP(40pin)和PLCC(44pin)兩種封裝形式,本次設計中采用40管腳雙列直插封裝,功能強大,可以適用于較為復雜的工作環(huán)境,下圖為STC89C52單片機管腳圖:</p><p> 圖3.9 STC89C52管腳圖&l
43、t;/p><p> 3.2.2 ADE7758</p><p> ADE7758是一款高精度的電能計量芯片,具有高準確度,適用于三相/三線,三相/四線和其他各種三相系統(tǒng),該芯片通過SPI數(shù)據(jù)串行接口和單片機進行連接,模擬電源端(AVDD)=數(shù)字電源(DVDD)=5V±5%,模擬地端(AGND)=數(shù)字地(DGND) = 0 V, 使用片內(nèi)基準源,CLKIN =10 MHz XTAL
44、,溫度范圍為?40°C至+85°C[3]。ADE7758的管腳圖如下圖所示:</p><p> 圖3.10 ADE7758管腳圖</p><p> ADE7758通過SPI串口讀寫時序圖:</p><p> 圖3.11 ADE7758寫時序</p><p> 圖3.12 ADE7758讀時序</p>
45、<p> 3.2.3 DS12887</p><p> DS12887為一款時鐘芯片,該器件可以提供RTC/日歷,鬧鐘,三個可屏蔽中斷和一個可編程方波以及一個114字節(jié)的RAM,此RAM有電池備份,不會導致斷電后時鐘停止的現(xiàn)象,該器件把石英晶體和電池集成在了一起,少于31天的月份月末日期可自動調(diào)整,其中包括閏年補償,該芯片還有一個精密的溫度補償電路用來監(jiān)視VCC的狀態(tài),如果檢測到主電源故障可自動轉(zhuǎn)換
46、到備用供電,該芯片接口支持Intel和Motorola兩種模式,在本次設計中,采用的是Intel模式,具體讀寫時序圖如下:</p><p> 圖3.13 DS12887寫時序</p><p> 圖3.14 DS12887讀時序</p><p> 3.2.4 LCD1602</p><p> LCD1602是一款工業(yè)字符型液晶顯示屏,能
47、夠同時顯示32個字符,內(nèi)部帶有80*8為的內(nèi)部RAM緩沖區(qū),可顯示阿拉伯數(shù)字,引文字母大小寫,常用符號和日文片假名等,每一個字符都有一個固定的代碼,在本次設計中,可以通過LCD顯示萬年歷,分時電價,剩余金額等數(shù)據(jù)信息,可以通過鍵盤來切換顯示。部分主要指令說明如下:</p><p> 表3.1 LCD1602指令碼</p><p> LCD1602讀寫數(shù)據(jù)時序如下圖所示:</p&g
48、t;<p> 圖3-15 1602讀數(shù)據(jù)時序</p><p> 圖3-16 1602寫數(shù)據(jù)時序</p><p> 3.2.5 SLE4442</p><p> SLE4442是德國西門子公司的接觸式加密型IC卡,接口電路簡單,編程方便,保密性好,其內(nèi)部用于一個256*8位的EEPROM主存儲器,另其還含有一個帶有PROM功能的保護存儲器,可進行
49、加密處理,工作溫度范圍在0℃~70℃,至少可擦寫10萬次以上,數(shù)據(jù)保存期最少為10年,工作電壓為5V。對IC卡操作的命令分為控制,地址,數(shù)據(jù)三個部分,傳送從控制字節(jié)LSB開始,其具體命令如下面所示:</p><p> 表3.2 IC卡命令格式及功能</p><p><b> 4 軟件設計</b></p><p> 本設計中,以STC89C
50、52作為微處理器,采用C語言進行編程,配合硬件電路,共同構(gòu)成了本次設計的核心部分。</p><p> 4.1 主要芯片讀寫程序設計及設計工具</p><p> 本次設計采用C語言,C語言具有簡潔明了的特點,在本次設計中,按照各芯片的讀寫操作時序,以SPI總線操作方式,分別對DS12887時鐘芯片,ADE7758電能計量芯片進行讀寫操作,即可基本完成本次設計的主要功能,同時兼顧完成切換顯
51、示時間,電價以及查詢余額,并可以調(diào)節(jié)電價。</p><p> 在讀取DS12887時鐘芯片時,按照其讀寫時序,當要寫入數(shù)據(jù)時,先要寫入地址,將CS置低,SA,DS分別置高,RW置高,然后給P0口賦值,即要寫入的地址,然后將AS,RW置低,再一次給P0口賦值,即要寫入的數(shù)據(jù),最后將AS,RW,CS,拉高,同理,在讀取數(shù)據(jù)時,也要先寫入一個地址,將AS,DS,RW置高,將CS置低,給P0口賦值地址,然后將AS,DS
52、拉低,P0讀取數(shù)據(jù),最后DS,AS,CS,全部拉高,具體C語言函數(shù)如下:</p><p> void write_ds(uchar add,uchar date)</p><p><b> {</b></p><p><b> dscs=0;</b></p><p><b> ds
53、as=1;</b></p><p><b> dsds=1;</b></p><p><b> dsrw=1;</b></p><p><b> P0=add;</b></p><p><b> dsas=0;</b></p>
54、;<p><b> dsrw=0;</b></p><p><b> P0=date;</b></p><p><b> dsrw=1;</b></p><p><b> dsas=1;</b></p><p> dscs=1;
55、</p><p><b> }</b></p><p> uchar read_ds(uchar add)</p><p><b> {</b></p><p> uchar ds_date;</p><p><b> dsas=1;</b>
56、;</p><p><b> dsds=1;</b></p><p><b> dsrw=1;</b></p><p><b> dscs=0;</b></p><p><b> P0=add;</b></p><p>&l
57、t;b> dsas=0;</b></p><p><b> dsds=0;</b></p><p><b> P0=0xff;</b></p><p> ds_date=P0;</p><p><b> dsds=1;</b></p>
58、<p><b> dsas=1;</b></p><p><b> dscs=1;</b></p><p> return (ds_date);</p><p><b> } </b></p><p> 同時,在讀取ADE7758芯片中有功功率時,同樣,按
59、照其讀時序圖,先將CS拉低,選中信號,再用SCK模擬一個時鐘信號輸入,先向ADE7758寫入一個地址,再從芯片讀出數(shù)據(jù),ADE7758和DS12887讀寫程序最大的不同在于,DS12887可以將8位數(shù)據(jù)一次性讀出,而ADE7758只能一位一位的讀取,因此,在書寫讀寫函數(shù)的時,需要指明,讀取數(shù)據(jù)的位數(shù)。在CS保持低電平的時候,所有的數(shù)據(jù)傳輸必須全部完成,另外,除了整體器件復位以外,沒有其他方法可以讓ADE7758返回通信狀態(tài),所以必須傳輸
60、各寄存器的LSB,復位的方法是運用軟件進行復位。如前所述,在第一個字節(jié)正在向目標寄存器傳送是,可以同時開始另一個字符的傳送,但是第二個字節(jié)的傳輸過程不應該在第一個字節(jié)傳送完成前至少900ns內(nèi)不應該結(jié)束。當ADE7758寄存器經(jīng)行讀取操作訪問時,讀取命令個寫入命令之間至少需要有1.1us的時間間隔,若果間隔過小,將會導致寫入操作的最后一個字節(jié)丟失,具體位數(shù)參見芯片說明書,具體讀取函數(shù)如下:</p><p> u
61、nsigned long read7753(unsigned char type,unsigned char databit) </p><p><b> { </b></p><p> unsigned char loop=0; </p><p> unsigned long rtdata=0; </p><p>
62、; type=type&0x7F; </p><p> type=type|0x00; </p><p> for(loop=0;loop<8;loop++) </p><p><b> { </b></p><p><b> SCK=1; </b></p>
63、<p><b> _nop_(); </b></p><p> if( type&0X80 )</p><p><b> SDO = 1;</b></p><p><b> else</b></p><p><b> SDO = 0;<
64、;/b></p><p><b> _nop_(); </b></p><p><b> SCK=0; </b></p><p><b> _nop_(); </b></p><p> type=(type<<1); </p><p
65、><b> } </b></p><p> for(loop=0;loop<databit;loop++) </p><p><b> { </b></p><p><b> SCK=1; </b></p><p><b> _nop_(
66、); </b></p><p> rtdata=(rtdata<<1); //上升沿讀出數(shù)據(jù)</p><p><b> if(SDI) </b></p><p> rtdata+=1; </p><p><b> _nop_(); </b></p>&l
67、t;p><b> SCK=0; </b></p><p><b> _nop_(); </b></p><p><b> } </b></p><p> return(rtdata); </p><p><b> }</b></p&g
68、t;<p> 本次設計的另一個重點就是現(xiàn)實程序,1602的顯示程序同樣按照其讀寫時序圖完成,不同的是,1602的顯示,需要在主程序的開始寫一個初始化函數(shù)用以設定1602的顯示方式,光標等等,在本次設計中,只涉及到1602的寫程序,寫數(shù)據(jù)時,同樣需要先寫入地址,寫地址時,先將RS,EN置低,延遲后再將EN拉高,賦予地址,最后將EN拉低,寫數(shù)據(jù)與讀不同之處在于要將RS拉高其余同寫地址時一樣,具體初始化函數(shù),寫函數(shù)如下:<
69、;/p><p> void init()</p><p><b> {</b></p><p><b> lcden=0;</b></p><p><b> dula=0;</b></p><p><b> wela=0;</b&g
70、t;</p><p> set_time(); </p><p> write_com(0x38);</p><p> write_com(0x0c);</p><p> write_com(0x06);</p><p> write_com(0x01);</p><p>&
71、lt;b> }</b></p><p> void write_com(uchar com)</p><p><b> {</b></p><p><b> rs=0;</b></p><p><b> lcden=0;</b></p>
72、<p><b> delay(5);</b></p><p><b> lcden=1;</b></p><p><b> P0=com;</b></p><p><b> lcden=0;</b></p><p><b>
73、 }</b></p><p> void write_date(uchar date)</p><p><b> {</b></p><p><b> rs=1;</b></p><p><b> lcden=0;</b></p><p
74、><b> delay(5);</b></p><p><b> lcden=1;</b></p><p><b> P0=date;</b></p><p><b> lcden=0;</b></p><p><b> }&l
75、t;/b></p><p> 本次設計采用Keil uVision2作為編程工具,用Protues進行實物制作前的仿真,Keil作為現(xiàn)在主流的單片機編程工作具有操作簡單,快捷的優(yōu)點,同時可以與Protues聯(lián)動方便調(diào)節(jié)和仿真,另用STC-ISP V31將程序下載至單片機上運行。</p><p> 在本次軟件設計中,最困難的地方在于對ADE7758的讀寫操作,ADE7758是一塊應
76、用非常廣泛的電能計量芯片,第一次使用該芯片時,對于串行的讀寫操作了解不夠深入,導致在書寫程序的過程中,時序先后發(fā)生錯誤,不知道如何移位讀取等等,后來參考一些例子以后最終調(diào)試成功。</p><p> 4.2 主要軟件設計流程框圖及說明</p><p> 主要流程圖如下圖所示:</p><p> 圖4-1 主程序流程圖</p><p>
77、本次設計的主要流程為當IC卡插入卡座,單片機檢測到IC卡并讀取其金額開始計時,當按照開始設定好紅燈亮起,同時,LCD顯示屏強制轉(zhuǎn)換到余額界面,字體開始閃爍,蜂鳴器長鳴,此時停止計費,并且開始檢測鍵盤,當按下鍵盤key4后,警告解除,LCD顯示界面重新返回時間界面。令一方面,在計費系統(tǒng)正運行時,可以通過鍵盤檢測,切換顯示界面,顯示界面共有4種,分別為當前時間,3種電價,余額,共計5種界面,當按下鍵盤key1后,在當前時間界面和3種電價界面
78、,可以調(diào)整時間和電價,增加或者減少,分別由鍵盤key2,key3來控制,由此來完成時間,電價的調(diào)整。比照DS12887中去讀的時間參數(shù),選取電價開始計算余額,當余額定于30元時,蜂鳴器每一分鐘鳴一次,當余額為0時,蜂鳴器長鳴。</p><p><b> 5 系統(tǒng)硬件調(diào)試</b></p><p> 由于時間和條件的顯示,此插卡式自能電表只是簡略的實現(xiàn)其功能,在實物的
79、構(gòu)架中,利用一塊單片機開發(fā)板,并自己利用萬用板搭建了其他的外圍電路,因此該硬件總共分為三大部分:電源部分,采集部分,核心處理部分。</p><p> 如前期仿真中所示,電源部分使用220V交流電,通過變壓器變壓為12V之后,利用一塊L7805穩(wěn)壓芯片,很好的得到了一個較為穩(wěn)定,且接近5V的電壓,誤差在+0.02V左右,可以利用其很好為單片機與其他核心芯片進行供電,且在自己搭建的電路中,采取了濾波等措施,電源質(zhì)量
80、較良好。下圖為電源模塊實物圖:</p><p> 圖5-1 電源實物圖</p><p> 采集電路部分,也是自己利用萬用板搭建,運用電壓互感器,電流互感器為核心,進行變壓采樣,變壓后的電壓理想值為0.5V,由于實際環(huán)境等影響,其電壓真實值為0.55V,但不會對功率計算造成太大的影響,電壓電流信號進ADE7758之后,即可由單片機進行讀取,獲得有功功率,用于計算電價,在制作過程中,用15
81、W的燈泡作為用戶的負載真實的采集電路如下圖所示:</p><p> 圖5-2 采集電路實物圖</p><p> 核心處理器件部分以89C52單片機為核心運行,分別可以顯示萬年歷,電價,余額等等信息,整體設計的實物圖如下圖所示,令附帶效果演示,萬年歷,電價,以及余額。</p><p> 圖5-3 萬年歷實物效果圖</p><p> 圖5
82、-4 峰時電價顯示實物效果圖</p><p> 圖5-5 剩余電價顯示實物效果圖</p><p> 圖5-6 警告顯示效果圖</p><p> 圖5-7 實物整體效果圖</p><p> 在硬件搭建過程遇見了很多問題,比如,ADE7758是一塊貼片封裝的芯片,由于條件限制萬用板上不能進行焊接,后來經(jīng)過尋找,在網(wǎng)上發(fā)現(xiàn)了一種小型PC貼片
83、轉(zhuǎn)雙列直插式的PCB電路板,后來通過小心焊接,終于完成,但是由于技術(shù)水平有限,PCB版還是出現(xiàn)了輕微的損壞。在調(diào)試LCD1602顯示的時候,由于操作不當,導致1602損壞,屏幕只能進行一半的顯示,造成了元器件的浪費,同時在采集回路中,由于考慮不全,在采購電阻時,只考慮到其電阻值的大小,沒有考慮到其功率的承受能力,導致51K電阻在稍微長時間的運行狀態(tài)下發(fā)熱比較嚴重,也導致功率的計算結(jié)果也產(chǎn)生了一定的誤差。另外在調(diào)試板子的過程中,由于220
84、V電源側(cè)開始沒有采取措施保護,在調(diào)試過程中手指跨接在電極之間被電擊,進過這次事故之后,自己的安全意識也得到了提高。</p><p><b> 6 系統(tǒng)軟件調(diào)試</b></p><p> 該程序是用C語言完成,C語言具有簡潔緊湊,靈活方便的特點,在調(diào)試程序的時候,軟件部分大致可以分為兩個部分,一部分是萬年歷等信息的顯示部分,一部分是信號采集部分。第一部分,萬年歷等信
85、息的顯示部分,可以用Protues進行仿真,Protues是一款非常實用的仿真原件,通過載入程序到單片機中,利用DS12887時鐘芯片構(gòu)成的仿真效果圖,如下圖所示:</p><p> 圖6-1 仿真演示效果圖Ⅰ</p><p> 如上圖所示,當路燈亮的時候,表示計價開始,圖中4個鍵盤,通過鍵盤掃描程序,可以切換顯示萬年歷,電價,余額等信息,當電價為零時,蜂鳴器長鳴,同時,綠燈熄滅,紅燈
86、亮起,LCD顯示屏顯示余額為零,效果如下圖所示:</p><p> 圖6-2 仿真演示效果圖Ⅱ</p><p> 由于ADE7758在Protues的庫里面沒有,所以無法進行仿真,只有用實物進行演示。</p><p> 本次軟件設計中比較艱難的部分在于ADE7758的讀寫程序以及DS12887在沒有實物的情況下經(jīng)行仿真,前者是因為對于SPI接口的讀取掌握還是不
87、到位,后者是因為軟件版本問題,Protues7.6版本以前的庫中沒有DS12887時鐘芯片,出于經(jīng)費和穩(wěn)妥起見的考慮長時間滯留在此處,后來在朋友的幫助下得以解決。</p><p><b> 7 總結(jié)與體會</b></p><p> 本次設計讓我受益匪淺,作為即將應屆畢業(yè)生,本次畢業(yè)設計讓我將4年所學的知識有機的進行整合,對于即將踏上工作崗位的我有著重要的意義,本次
88、設計的題目為強弱電結(jié)合,對我來說頗有難度,同時具有很強的實際意義,近幾年,國家電網(wǎng)建設飛速發(fā)展,在建設堅強智能電網(wǎng)的口號下,國家正在大力推行新型智能電表,通過本次設計對于智能電表在設計過程存在的問題有了一些初步的了解,并著手解決這些問題,并且本次設計是第一次自己獨立的設計并制作出可以使用的實物,雖然離目標還有一定的距離,精度是不很高,但是大大提升了自己的綜合實踐能力。</p><p> 其次,在本次設計中,所有
89、的數(shù)據(jù)計算,器件的購買,搭建都是自己獨立完成,進一步了解了產(chǎn)品制作的流程為了完成設計,同時查閱了大量的書籍和資料,自己獨立思考和學習能力得到了很好的鍛煉和提升,在設計同時,大量運用了Keil,Protues等軟件,大大提升了熟練度,并在Protel繪制電路圖,并了解到仿真與實際電路效果之間存在較大的差距,并通過自己的努力不斷的實現(xiàn)預定目標。</p><p> 本次設計中存在不少遺憾,如ADE7758的校準調(diào)試程
90、序,IC卡的加密等等,留下了不少的遺憾,通過本次設計,我發(fā)覺了自己很多的不足之處,對于一個即將進入社會的我,有這樣而一個機會想當難得,并且伴隨實物調(diào)試的順利完成,增強了信心,我會在以后的工作和學習中不斷努力,奮進。</p><p><b> 8 謝辭</b></p><p> 在本次設計中,遇見了很多的困難,但是在指導老師的悉心指導和同學們的幫助下,基本實現(xiàn)了預定
91、功能,完成了設計,從最開始茫然無措,到后來慢慢步入正軌,三個月的奮斗,讓我收獲良多,在老師的悉心知道下,從最開始的仿真模擬,到后來的實物調(diào)試,每一個微小的進步都讓我興奮不已。</p><p> 再此我要特別感謝本次畢業(yè)設計的指導老師,謝維成老師,通過每周的見面,老師對我進行了悉心的指導,對我設計中存在的問題和不足進行了批評和指正,不厭棄煩的進行講解,讓我受益匪淺,本次設計的順利完成和老師的悉心指導密不可分,感謝
92、謝老師。</p><p><b> 9 參考文獻 </b></p><p> [1]李泉,海保軍.RS-232 收發(fā)器接口芯片SP3223E/3243E 的原理及應用[J]. 國外電子元器件,2004(9):42-44.</p><p> [2]李樹靖,林凌,李剛.LOC11X 系列光耦合器的特性及應用[J]. 國外電子元器</p&
93、gt;<p> 件,2003(6):42-44.</p><p> [3]小型三色SPI 總線LED 驅(qū)動器NLSF595[J]. 國外電子元器件,2003(2):78.</p><p> [4] 何仰贊、溫增銀.電力系統(tǒng)分析[M].武漢:華中科技大學出版社,2009.1</p><p> [5] 張毅剛.單片機原理及應用[M].北京:高等教育
94、出版社,2009.2</p><p> [7] 張廣軍.微機原理及接口技術(shù)[M].成都:電子科技大學出版社,2007.7</p><p> [8] 羅興垅, 黃隆勝. 基于AT89C51 控制的0.01℃數(shù)顯溫度計的設計[J]. 微計算機信息,2006(5-2) :70-72.</p><p> [9] 余永權(quán).ATMAEL89 系列單片機應用技術(shù)[M]. 北
95、京: 北京航空航天大學出版社,2002.</p><p> [10] 李軍. 系列單片機高級實例開發(fā)指南[M]. 北京: 北京航空航天大學出版社,2004.</p><p> [11] 李長林.Visual Basic 串口通信技術(shù)與典型實例[M]. 北京:清華大學出版社,2006.</p><p> [12] 孫涵芳.MCS-51/96 系列單片機原理及應用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設計--智能預付費電能表設計
- 智能IC卡電能表研制.pdf
- 電能表畢業(yè)設計--單相電子式電能表的設計
- 電能表畢業(yè)論文---智能電能表軟件設計程序
- 電子式電能表的設計畢業(yè)設計
- 畢業(yè)設計--電能表的校驗系統(tǒng)
- 單相智能電能表設計.pdf
- 插卡式自動計費空調(diào)器控制系統(tǒng)研究.pdf
- 智能電能表電源相關(guān)設計優(yōu)化研究
- 智能電能表的防靜電設計.pdf
- 單相費控智能電能表設計.pdf
- 智能電能表的研究與設計.pdf
- 改進分時數(shù)字電能表IC的前端設計.pdf
- 畢業(yè)設計-單片機控制的數(shù)字電能表的設計
- 單相遠程費控智能電能表設計.pdf
- 基于arm多用戶智能電能表設計.
- 電能表智能檢定裝置的設計.pdf
- 新型智能電能表的設計與開發(fā).pdf
- 基于IC卡電能表的預付費系統(tǒng)設計.pdf
- 電子式電能表設計畢業(yè)論文
評論
0/150
提交評論