聶士昂 朱曉梅 謝燦 裘陳成
摘要:該文介紹了一種基于可編程片上系統(tǒng)PSoC的自動跟蹤太陽光的設(shè)計。與傳統(tǒng)利用普通單片機實現(xiàn)自動跟蹤太陽相比,該設(shè)計使用低成本低功耗的PSoC4作為主控板,利用片內(nèi)提供的I2C模塊能夠準確采集當前某一點的光強大小,從而控制兩個步進電機在三維空間里尋找光最強的點,實現(xiàn)了系統(tǒng)的小型化、低能耗化、高精度化。在此基礎(chǔ)上添加了外界環(huán)境感應(yīng)模塊,使系統(tǒng)能夠在環(huán)境惡劣情況下能夠自我保護,頗具應(yīng)用價值。
關(guān)鍵詞:PSoC 4;I2C接口;UART串口;自動跟蹤
中圖分類號:TP273 文獻標識碼:A 文章編號:1009-3044(2015)24-0165-04
Design of PSoC4 Based Solar Energy Automatic Tracking System
NIE Shi-ang, ZHU Xiao-mei, XIE Can, QIU Chen-cheng
(College of computer science and technology Nanjing Tech University, Nanjing 211816, China)
Abstract:This paper introduces a kind of system on programmable chip PSoC design of automatic tracking the sun.Compared with the traditional use the normal single chip microcomputer automatic tracking the sun,This design using the low cost of low power consumption PSoC4 as main control board,Use on chip with I2C module can collect accurate optical power of the current point,To control two stepper motors in three-dimensional space looking for light's strongest point,To realize the system miniaturization, low energy consumption, high precision.On this basis we added external environment sensing module,The system can be able to protect themselves in harsh circumstances,An application value.
Key words: PSoC 4; I2C interface; UART serial port; automatic tracking
當今人們的環(huán)保意識越來越強,光伏發(fā)電系統(tǒng)和太陽能的應(yīng)用普遍受到各國政府的重視。因為它不僅能提供用之不竭的可持續(xù)再生電能,并更好的保護人類賴以生存的環(huán)境。但其發(fā)電效率較低,發(fā)電成本較高仍然是制約太陽能大規(guī)模應(yīng)用的重要因素。在沒有出現(xiàn)高效的光伏電池材料之前,研制具有實用價值的陽光自動系統(tǒng)以降低成本,是促進太陽能廣泛應(yīng)用的主要途徑之一。近年來,有許多采用普通單片機作為主控板來進行光照的采集以及跟蹤,但是傳統(tǒng)單片機功耗大、程序繁瑣等等因素制約著太陽跟蹤的發(fā)展。另一方面,傳統(tǒng)太陽能跟蹤系統(tǒng)大多沒有考慮到外接環(huán)境因素對系統(tǒng)本身的影響,如果在大風(fēng)大雨惡劣情況下,很容易導(dǎo)致系統(tǒng)的毀壞。本文提出了一種基于PSoC4平臺的太陽能自動跟蹤系統(tǒng),該系統(tǒng)充分利用了PSoC4平臺的處理速度快、控制效果好、編程效率高、硬件功耗低的特性,采用片內(nèi)獨有的I2C接口,準確采集當前某一點的光強大小,從而控制兩個步進電機在三維空間里尋找光最強的點,實現(xiàn)了系統(tǒng)的小型化、低能耗化、高精度化。在此基礎(chǔ)上系統(tǒng)添加了外界環(huán)境感應(yīng)模塊,使系統(tǒng)能夠在環(huán)境惡劣情況下能夠自我保護,從而大大降低系統(tǒng)損壞的可能,頗具應(yīng)用價值。
1 系統(tǒng)整體設(shè)計方案
太陽能跟蹤控制器設(shè)計為兩個自由度運動,即一個水平平面和一個垂直平面,由兩個步進電機來驅(qū)動。光照采集模塊采用BH1750傳感器,該傳感器具有I2C接口,PSoC4片內(nèi)具有I2C接口,完美搭配,能夠讀出精確地光照數(shù)值。在跟蹤太陽的平面上,放置4個BH1750傳感器,分別檢測上下左右4個點的光照數(shù)值大小,這樣可以正好將平面對準太陽光。但是在實際環(huán)境下,太陽遠遠比地球大,所以在很大的一個平面上光強差不多是一樣的,為了解決這一問題,我們借鑒了古代的日晷,在跟蹤平面上我們放置一圓柱,這樣當太陽移動一點點,就會在跟蹤平面上產(chǎn)生陰影,這樣可以避免了一個平面內(nèi)光強一樣的問題了。
本系統(tǒng)主要由PSoC4作為主控芯片、BH1750傳感器模塊、步進電機、雨滴傳感器、風(fēng)速傳感器組成,系統(tǒng)整體設(shè)計框圖如圖1所示。
系統(tǒng)工作原理:系統(tǒng)加電后并完成對所有模塊的初始化工作后,PSoC 4開始檢測跟蹤面上的四個點(平面的上下左右四個點,四個點相距間隔3cm)的光強大小,并進行左右和上下兩個點的比對,如果左右光強不相等并確定光強強的一點,然后驅(qū)動水平步進電機向光強強的一點轉(zhuǎn)動;同理,如果上下兩個點的光強不相等,然后驅(qū)動垂直電機向光強強的一點轉(zhuǎn)動,就這樣一直循環(huán)著檢測、驅(qū)動、檢測、驅(qū)動;如果遇到大雨天氣,系統(tǒng)會執(zhí)行中斷,水平步進電機停止轉(zhuǎn)動,垂直步進電機向下轉(zhuǎn)動一定的角度,使得傳感器平面與地面垂直,使傳感器平面盡可能地避免接觸到大量的雨水,保護傳感器等硬件設(shè)施;同理,遇到大風(fēng)天氣,系統(tǒng)會執(zhí)行中斷,水平步進電機停止轉(zhuǎn)動,垂直電機向下轉(zhuǎn)動一定的角度,直到平面與地面平行,達到縮小整個系統(tǒng)體積的目的,避免被強風(fēng)損毀。如果遇到既有強風(fēng)又有大雨的情況下,程序執(zhí)行中斷,水平電機不動,垂直電機向下轉(zhuǎn)動,使得傳感器平面面朝下,達到了既避免大雨又避免強風(fēng)的目的;等惡劣天氣過去后,程序跳出中斷,繼續(xù)執(zhí)行檢測跟蹤。到了夜晚,在露天沒有其他光源干擾的情況下,跟蹤面上的光強在0左右,所以,當跟蹤面檢測到光強為0時,判斷為晚上,然后垂直電機不轉(zhuǎn)動,水平電機逆時針轉(zhuǎn)動180°,等待第二天太陽的升起。
2 系統(tǒng)硬件設(shè)計
2.1 PSoC4內(nèi)部資源配置
PSoC4 是基于ARM Cortex-M0 CPU(處理器)的可編程嵌入式系統(tǒng)控制器家族,為嵌入式應(yīng)用提供了強大的可編程平臺。它集合了可編程模擬資源、可編程內(nèi)部互聯(lián)、用戶可編程數(shù)字邏輯、通用的固定功能外設(shè)計以及高性能的ARM Cortex-M0 CPU子系統(tǒng)。
PSOC4是Cypress賽普拉斯公司于2013年四月剛剛推出的一款低成本的片上系統(tǒng),主要硬件資源包括32位ARM Cortex—M0微處理器內(nèi)核、數(shù)字系統(tǒng)、模擬系統(tǒng)、低電壓電源工作范圍、簡單的LCD模塊驅(qū)動、通信接口SPI和IIC模塊、脈沖寬度調(diào)制PWM模塊,最高可用36個可編程通用IO口,同時支持線上調(diào)試和編程,其應(yīng)用范圍可擴展至自動控制、儀表分析、觸摸系統(tǒng)設(shè)計等高新領(lǐng)域。PSoC 是一顆真正的可編程單芯片系統(tǒng),它集成了可配置的模擬和數(shù)字外設(shè),內(nèi)嵌存儲器以及微處理器。 PSoC 內(nèi)置了處理器,但是它有別于傳統(tǒng)的單片機。一個典型的單片機往往包含一個處理器單元(例如 8051 或者ARM), 同時還有一系列的外設(shè),處理器在芯片中扮演著核心的角色,它管理著所有的數(shù)據(jù)流和時序。離開了這個核心,單片機不再是一個獨立的單片機。PSoC 則完全不同。系統(tǒng)中的處理器,模擬子系統(tǒng),數(shù)字子系統(tǒng)和輸入/輸出系統(tǒng)都是同等重要,都能相對獨立的工作。系統(tǒng)的核心不再是處理器本身,而是各個子系統(tǒng)的互聯(lián)以及可編程性。換言之, PSoC 是通用單片機的一個超集。你可以通過編程用 PSoC 來模擬通用單片機,但是無法使用一個通用單片機來模擬實現(xiàn) PSoC 的功能。
2.2 光照采集模塊
本系統(tǒng)使用BH1750光照傳感器,其具有I2C接口,能夠精確地采集某一點的光強大小,其精確度可達個位。PSoC4內(nèi)部具有I2C接口如圖2,在Creator平臺上面可對I2C進行配置如圖3,可與BH1750建立通信,通過PSoC的SCl端輸出時鐘信號給BH1750,BH1750接受到信號后將實時采集的8位數(shù)據(jù)(如圖4)通過I2C輸送到PSoC中然后再經(jīng)數(shù)學(xué)變換成光強數(shù)值,如圖5為四個點處的光強大小。
2.3 步進電機驅(qū)動模塊
為了降低成本,縮小系統(tǒng)的體積,本系統(tǒng)采用步進電機作為驅(qū)動。步進電機是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元步進電機件。在非超載的情況下(本系統(tǒng)不會超載),電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負載變化的影響。當步進電機接收到一個脈沖信號,它就驅(qū)動步進電機按設(shè)定的方向轉(zhuǎn)動一個固定的角度,它的旋轉(zhuǎn)是一步步運行的??梢酝ㄟ^控制脈沖個數(shù)來控制角位移量,從而達到準確定位的目的,用在本系統(tǒng)再合適不過了。在PSoC內(nèi)部配置8個輸出IO口(如圖6)來控制2個步進電機,驅(qū)動芯片采用ULN2003,該芯片具有電流增益高、工作電壓高、溫度范圍廣、帶負載能力強等特點。
2.4 雨滴采集模塊
雨滴檢測模塊主要用于檢測外接環(huán)境是否下雨。下雨與否會有電平變化。將電平變化端接入PSoC4芯片上,PSoC配置一輸出IO口與之相對應(yīng),采集外界雨水情況。下雨則產(chǎn)生中斷,雨停則系統(tǒng)正常運行。
2.5 風(fēng)速傳感器模塊
風(fēng)速傳感器本系統(tǒng)采用已經(jīng)集成化好了的,其采用標準通信協(xié)議,輸出數(shù)字信號。其具有RXD和TXD與PSoC相連接,PSoC4具有UART串口(如圖7),可配置為全雙工、半雙工、單接收RX或單發(fā)送TX通信方式(如圖8)。所有通信方式都提供相同的基本功能,他們之間的差異僅在于使用的資源量。為了幫助處理UART接收和傳送數(shù)據(jù),PSOC為UART提供了獨立的大小可配置的緩沖區(qū)。這種機制有利于CPU利用更多的時間處理關(guān)鍵的實時任務(wù),而不是連續(xù)服務(wù)于UART。在基于PSoC的多數(shù)應(yīng)用中,可通過選擇波特率、奇偶校驗、數(shù)據(jù)位數(shù)以及起始位數(shù)輕松配置UART。RS232最常見的配置通常為8N1。這是UART組件的默認配置。因此,在多數(shù)應(yīng)用中只需設(shè)置波特率。主要性能包含:
1)帶有硬件地址檢測功能的9位尋址模式;
2)波特率范圍為110~921600bps,最高波特率可達4Mbps;
3)Rx和Tx緩沖區(qū)范圍為4~65535Byte;
4)幀檢測、奇偶校驗檢測和溢出檢測;
5)可優(yōu)化的硬件模式選擇,全雙工、半雙工、單發(fā)送Tx和單接收Rx;
6)每個比特按照3取2表決原則來判斷;
7)中斷信號產(chǎn)生和檢測;
8)8倍或16倍過采樣。
3 系統(tǒng)軟件設(shè)計
Cypress公司針對PSoC的特點設(shè)計開發(fā)了PSoC Creator開發(fā)工具。在PSoC Creator集成開發(fā)環(huán)境中,片上資源均提供了對應(yīng)的API程序供選用,如需額外實現(xiàn)程序邏輯可以使用C語言編程,設(shè)計完成后可以進行線上調(diào)試而且能隨時中斷程序的運行。本系統(tǒng)軟件設(shè)計使用PSoC Creator3.0集成開發(fā)環(huán)境,很多程序都可用C編寫。
程序邏輯設(shè)計:首先初始化各個模塊,在while死循環(huán)里面實時檢測當前四個傳感器的大小,然后選擇相應(yīng)的步進電機進行相應(yīng)的跟蹤,直到對準光照最強的位置,然后實時的跟著太陽移動,風(fēng)速傳感器和雨滴傳感器設(shè)置相應(yīng)的中斷,放在while死循環(huán)里,如遇到相應(yīng)的中斷,則跳出死循環(huán)執(zhí)行相應(yīng)的程序。
對應(yīng)的算法流程圖如圖9:
4 系統(tǒng)調(diào)試與結(jié)果分析
系統(tǒng)PSoC4的片內(nèi)硬件資源部署以及相關(guān)軟件程序的下載和調(diào)試通過PSoC5 LP編程調(diào)試器完成。與以往的PSoC芯片必須使用MiniProg3編程器離線下載程序不同,PSoC4通過PSoC LP編程器可以實現(xiàn)PSoC Creator在線下載與調(diào)試。以PSoC5 LP為核心的編程調(diào)試器的一端通過SWD串行線調(diào)試接口與PSoC4通信,另一端通過MiniUSB接口與計算機建立聯(lián)系。只需在PSoC Creator中執(zhí)行Program命令完成程序下載與編譯,然后執(zhí)行Debug命令進入調(diào)試模式,直到硬件軟件均符合系統(tǒng)設(shè)計的邏輯。
測試方法:將整個系統(tǒng)放在露天環(huán)境下,在傳感器平面上取正中心一點,在該點放置一與平面垂直的長為H的細桿(為長圓柱形,底面直徑在0.5mm到1mm之間),以該點為中心,以面的水平軸為X軸(左負右正),以面的垂直軸為Y軸(上正下負),建立坐標系,在一天的時間里(從早上8點到黃昏6點),在每個整點時刻記錄細桿在傳感器平面的陰影位置,然后利用三角函數(shù)公式
求得水平和垂直方向的偏移角,然后分別在晴朗和陰天的條件下測得一系列數(shù)據(jù),測試結(jié)果如表 1 所示。
結(jié)果分析:在天氣晴朗的情況下,跟蹤太陽情況良好,對于惡劣天氣的反應(yīng)狀態(tài)良好,達到了設(shè)計的預(yù)期。在陰天的情況下,不能夠準確的跟蹤太陽,相對誤差較大。在長時間運作下,系統(tǒng)無不良反應(yīng)出現(xiàn),一切運作正常。
5 結(jié)束語
本設(shè)計的自動跟蹤太陽的系統(tǒng),不僅實現(xiàn)了跟蹤的基本功能,而且添加了檢測外界的傳感器,使得本系統(tǒng)更加的人性化。本系統(tǒng)設(shè)計靈巧、輕便、實用,采用PSoC4后更加大大地降低了系統(tǒng)的能耗,提升了系統(tǒng)的穩(wěn)定性和準確性。
本文設(shè)計的系統(tǒng)可應(yīng)用于車載系統(tǒng)、家用太陽能系統(tǒng)、太陽能發(fā)電系統(tǒng)、舞臺燈光系統(tǒng)等等,大大提高太陽能的利用率,為現(xiàn)實綠色能源提供技術(shù)支持。
參考文獻:
[1] 王化格, 趙洪亮. 基于PSoC的太陽能路燈控制器設(shè)計[J]. 科技信息, 2013(5): 83-84.
[2] 李鵬. 雙軸太陽跟蹤系統(tǒng)運動規(guī)律的研究[J]. 機械制造, 2010(6): 25-26.
[3] 肖玉華, 熊合金. 基于Atmega8的雙核太陽跟蹤器的設(shè)計[J]. 電子設(shè)計工程, 2010(3): 46-47.
[4] 張磊, 鄭喜貴. 高精度太陽能自動跟蹤裝置的研制[J]. 制造業(yè)自動化, 2014(5):129-132.
[5] 中國氣象局, 地面氣象觀測規(guī)范[M]. 北京: 氣象出版社, 2013: 133.
[6] 徐澤清, 高旭東, 韓喜春. 基于psoc的電子稱設(shè)計[J]. 黑龍江工程學(xué)院學(xué)報, 2012, 26(4): 48-51.