《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于CPLD的光伏數(shù)據(jù)采集系統(tǒng)的設(shè)計
基于CPLD的光伏數(shù)據(jù)采集系統(tǒng)的設(shè)計
2016年電子技術(shù)應(yīng)用第2期
卞 楠,馬 聰
天津理工大學(xué) 自動化學(xué)院,天津300384
摘要: 為了提升光伏陣列的輸出效率,設(shè)計了一種以復(fù)雜可編程邏輯器件(CPLD)為核心,基于MSP430F169單片機的光伏數(shù)據(jù)采集系統(tǒng)。針對傳統(tǒng)的數(shù)據(jù)采集方式速度慢、外圍電路復(fù)雜、安全性低的問題,開發(fā)設(shè)計了基于CPLD的光伏發(fā)電數(shù)據(jù)采集系統(tǒng),并且內(nèi)部采用了先進的先入先出隊列(FIFO)存儲結(jié)構(gòu)。通過RS232串口方式和無線模塊方式與上位機通信傳輸。實驗證明,本設(shè)計數(shù)據(jù)采集速度快、功耗低、傳輸穩(wěn)定可靠。
中圖分類號: TP274.2
文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2016.02.018
中文引用格式: 卞楠,馬聰. 基于CPLD的光伏數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].電子技術(shù)應(yīng)用,2016,42(2):68-70.
英文引用格式: Bian Nan,Ma Cong. Design of photovoltaic data acquisition system based on CPLD[J].Application of Electronic Technique,2016,42(2):68-70.
Design of photovoltaic data acquisition system based on CPLD
Bian Nan,Ma Cong
School of Automation,Tianjin University of Technology,Tianjin 300384,China
Abstract: This paper designs a photovoltaic(PV) data acquisition system based on CPLD and MSP430F169 micro-controller in order to improve the output efficiency of PV array. In view of the problem of the slow speed of the traditional data collection, the complex and insecurity peripheral circuit, it develops and designs a photovoltaic power data acquisition system based on CPLD, and adopts the advanced internal FIFO storage structure. This paper uses RS232 serial port and the wireless module to communicate with PC. Experiments show that this design has a high speed data acquisition, low consumption and the transmission is stable and reliable.
Key words : photovoltaic system;data acquisition;CPLD;micro-controller

0 引言

    當(dāng)光伏陣列處于遮陰條件時,需要對每個電池板進行光照強度的采集,以便完成最大功率點跟蹤控制的設(shè)計,使光伏陣列更高效穩(wěn)定地工作[1]。高速數(shù)據(jù)采集系統(tǒng)在現(xiàn)代工業(yè)的各個領(lǐng)域中應(yīng)用越來越廣泛,基于單片機、ARM的數(shù)據(jù)采集技術(shù)已經(jīng)很成熟,作為一種復(fù)雜可編程邏輯器件,CPLD(Complex Programmable Logic Device)這些年來發(fā)展迅猛,以其極高的集成度、穩(wěn)定的性能以及高速、易用的特點,在各個領(lǐng)域都得到了廣泛的應(yīng)用[2]。因此,本文為了實現(xiàn)對光照強度數(shù)據(jù)進行多路并行采集,采用CPLD作為核心器件進行系統(tǒng)設(shè)計。

    在檢測控制系統(tǒng)中,當(dāng)需要采集的信號特別多時,傳統(tǒng)的方法是利用單片機及其他芯片擴展系統(tǒng)資源來實現(xiàn),但是這樣做會增加大量的外部電路和系統(tǒng)成本,并且增大了系統(tǒng)設(shè)計的復(fù)雜性。CPLD是一種具有豐富的可編程I/O 引腳的器件,具有在系統(tǒng)可編程、使用方便靈活、可用I/O端口多的特點,可實現(xiàn)復(fù)雜的數(shù)字邏輯功能。和單片機結(jié)合可較容易實現(xiàn)數(shù)據(jù)的采集任務(wù)[3]

    FIFO(First Input First Output)是一種廣泛應(yīng)用在設(shè)計中的用來作為緩沖的存儲器,它能對數(shù)據(jù)進行快速順序的存儲和發(fā)送,主要用來解決不同速率器件間的速率匹配問題。本系統(tǒng)通過精心設(shè)計FIFO體系結(jié)構(gòu),可以實現(xiàn)FIFO工作性能的大幅提升[4]。

1 硬件電路設(shè)計

    本設(shè)計的接收點為將每一路光照強度傳感器產(chǎn)生的模擬量轉(zhuǎn)化為CPLD可以接收并處理的數(shù)字量的信號調(diào)理電路,將它直接連入I/O口即可。本設(shè)計使用了40個接收點來接收40塊光伏電池板的光照強度數(shù)值,由于受到芯片資源的限制,故使用了3片CPLD同時工作。

    本設(shè)計選用的CPLD芯片為Altera公司的MAX II  EPM1270T144C5N芯片,此芯片在所有CPLD系列中其單位I/O成本最低,功耗最低,包含1 270個LE,相當(dāng)于40 000門數(shù)、980個等效宏單元數(shù)、8 KB用戶可用Flash 比特數(shù)。硬件電路設(shè)計如圖1。

ck3-t1.gif

1.1 CPLD采集電路的設(shè)計

    因為數(shù)據(jù)通過信號調(diào)理電路已經(jīng)轉(zhuǎn)化為CPLD可以直接讀取的數(shù)字量,所以各信號直接接入CPLD 的普通I/O口即可。設(shè)計時對精度、穩(wěn)定性、功率等方面綜合考慮,采用了50 MHz有源晶振。CPLD在線編程和芯片自身的測試可通過JTAG接口來實現(xiàn)。

1.2 通信電路設(shè)計

    系統(tǒng)與上位機通信數(shù)據(jù)輸出電路采用了無線傳輸模塊和RS232串口通信電路,采用雙通信是為了適應(yīng)不同環(huán)境下的工作,無線傳輸模塊采用了挪威NORDIC公司的NRF905射頻發(fā)射芯片。RS232串口通信電路則采用以MAX232電平轉(zhuǎn)換芯片為核心設(shè)計而成的串口通信電路。

1.3 電源電路設(shè)計

    本系統(tǒng)控制器單片機與CPLD使用的都是3.3 V電源,但是液晶顯示屏、電池供電等采用的是5 V電源,故需要對電源進行變換才能給芯片供電,故對電源模塊進行了設(shè)計,采用了以穩(wěn)壓塊LM1117T為核心的5 V轉(zhuǎn)3.3 V電路。

1.4 控制電路設(shè)計

    系統(tǒng)數(shù)據(jù)采集芯片采用的是CPLD,但是控制核心采用了TI公司的MSP430F169單片機,MSP430具有處理能力強、運算速度快、低能耗、片內(nèi)資源豐富、方便高效的開發(fā)環(huán)境等優(yōu)點,被廣泛應(yīng)用在各種工業(yè)場合。

2 軟件設(shè)計

2.1 CPLD采集數(shù)據(jù)主程序設(shè)計

    由于CPLD芯片的設(shè)計特點,工作方式不像單片機等屬于順序執(zhí)行,而是采用速度更快的并行執(zhí)行,這意味著所有的接收口可以同時工作。每串?dāng)?shù)據(jù)都有起始位和停止位,并且起始位都為低電平,停止位為高電平。檢測數(shù)據(jù)是否開始傳輸只需判斷是否來了低脈沖,但這也可能是誤差信號,所以需設(shè)置判斷是否是真正的起始位,本設(shè)計采用的方法是每隔十分之一數(shù)據(jù)位的時間檢測一次,如果連續(xù)五次都為低脈沖,則確認(rèn)為有效數(shù)據(jù),并且每隔一個數(shù)據(jù)位開始接收。由于篇幅限制,只給出如圖2所示的一路數(shù)據(jù)端的主程序流程圖。

ck3-t2.gif

2.2 CPLD內(nèi)部FIFO算法判斷程序設(shè)計

    為達到高速緩存的目的,以及解決存入數(shù)據(jù)與取出數(shù)據(jù)的速率不同步的問題,設(shè)計了一套FIFO寄存器的執(zhí)行流程,因為CPLD是并行操作,所以流程圖中各個判斷位是同時執(zhí)行。圖3為CPLD內(nèi)部FIFO寄存器的執(zhí)行程序。

ck3-t3.gif

2.3 單片機程序流程圖

    單片機作為控制核心,但由于單片機I/O資源有限,所以3片CPLD采集芯片的輸出端接在一起,這就意味著需要MSP430單片機對CPLD進行片選控制,否則會出現(xiàn)數(shù)據(jù)紊亂。流程圖中的寄存器狀態(tài)位為本設(shè)計中設(shè)定的一個標(biāo)志位,設(shè)定的依據(jù)為當(dāng)數(shù)據(jù)超過FIFO寄存器的2/3時,就認(rèn)定FIFO即將溢出,將狀態(tài)位置1,否則置0。當(dāng)讀取到其中一片CPLD芯片的寄存器狀態(tài)位為1時,就讓其余2片CPLD所有的數(shù)據(jù)輸出為高阻態(tài),即輸出喪能??刂坪诵膯纹瑱C則作為數(shù)據(jù)的接收端根據(jù)需要來產(chǎn)生時鐘信號,被選中的CPLD按照單片機的時鐘信號進行數(shù)據(jù)傳輸,如圖4所示。

ck3-t4.gif

3 實驗結(jié)果分析

    仿真驗證是CPLD設(shè)計中的重要一環(huán),Altera公司的CPLD自帶的Quartus II軟件本身帶有仿真功能,但是無法使用TestBench(類似于一種激勵產(chǎn)生器),對于復(fù)雜的設(shè)計,畫波形圖顯然不是明智的選擇。而Modelsim是業(yè)界最優(yōu)秀的HDL仿真軟件,其突出優(yōu)點能為用戶提供全面完善以及高性能的驗證功能,不需要硬件就能對CPLD的設(shè)計進行仿真,而且能夠觀察具體的模擬波形圖[5]。

    本系統(tǒng)根據(jù)設(shè)計目標(biāo)要求做了實驗驗證,如圖5所示。CPLD的仿真驗證使用Modelsim-altera編寫了腳本程序?qū)庹諒姸葦?shù)據(jù)采集結(jié)果進行了實驗。Lock信號是單片機讀取數(shù)據(jù)的時鐘信號,高電平時讀取一串?dāng)?shù)據(jù)的高8位,低電平時讀取數(shù)據(jù)的低8位,data為輸出信號,txdb模擬輸入的信號。仿真顯示能夠順利讀取數(shù)據(jù),基本達到了設(shè)計要求。圖6為Modelsim的仿真波形圖,從圖中可直觀地看出讀取的數(shù)據(jù)。

ck3-t5.gif

ck3-t6.gif

4 結(jié)論

    本文研究設(shè)計了基于CPLD和MSP430F169單片機的光伏數(shù)據(jù)采集系統(tǒng),完成了電路板的設(shè)計,測試了工作性能。通過不斷地在線編程完善和調(diào)試,該系統(tǒng)可以快速可靠地進行數(shù)據(jù)采集和處理,效果理想,可以應(yīng)用于光伏系統(tǒng)中。

參考文獻

[1] 龔耀,林小玲.光伏系統(tǒng)數(shù)據(jù)采集的設(shè)計與實現(xiàn)[J].儀表技術(shù)與傳感器,2011(8):108.

[2] 張云梓.基于CPLD的高速數(shù)據(jù)采集系統(tǒng)的實現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.

[3] 程明,畢立恒,楊曉光.基于CPLD的數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].自動化技術(shù)與應(yīng)用,2007(8):100.

[4] 李冬,趙志凱.一種高性能異步FIFO的設(shè)計與實現(xiàn)[J].微電子學(xué)與計算機,2010(8):145.

[5] 張桂興,張英敏,張鵬.基于IP核與ModelSim的正弦波發(fā)生器仿真平臺建立[J].測控技術(shù),2011(1):28.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。