衛(wèi)芃毅 任一峰 陳昌鑫 郭睿 欒天
摘 ?要: 針對(duì)分布式光伏組件清潔難度大、人工清潔效率低等問題,設(shè)計(jì)一種新型的基于STM32的光伏組件清潔裝置。在裝置運(yùn)行時(shí),由于雙電機(jī)存在差速,裝置會(huì)向別的方向偏移,提出以攝像頭為主、陀螺儀與編碼器結(jié)合修正方向,從而達(dá)到自主運(yùn)行的目的;采用神經(jīng)網(wǎng)絡(luò)PID算法對(duì)多輸入系統(tǒng)進(jìn)行軟件編程,并與傳統(tǒng)PID算法比較。此設(shè)計(jì)經(jīng)過了多次實(shí)驗(yàn)驗(yàn)證,得到了大量的數(shù)據(jù),對(duì)智能光伏清潔、裝置規(guī)劃路徑和分布式光伏清潔的發(fā)展都有著一定的意義。
關(guān)鍵詞: 光伏清潔; 姿態(tài)控制; STM32; 神經(jīng)網(wǎng)絡(luò)PID; 方向修正; 實(shí)驗(yàn)驗(yàn)證
中圖分類號(hào): TN711?34; TP273 ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A ? ? ? ? ? ? ? ? ? ? ?文章編號(hào): 1004?373X(2020)02?0041?04
Attitude control of photovoltaic module cleaning device based on neural network PID
WEI Pengyi, REN Yifeng, CHEN Changxin, GUO Rui, LUAN Tian
Abstract: A new STM32?based photovoltaic module cleaning device is designed to solve the high cleaning difficulty and low manual cleaning efficiency of distributed photovoltaic modules. The device can offset in other directions caused by the differential speed between the two motors while it running, with which the direction correction in combination of the gyro and encoder with the camera as the principal thing is proposed to achieve the goal of autonomous operation. The neural network PID algorithm is applied to program the software of the multi?input system, and compared with the traditional PID algorithm. This design has been verified by many experiments, and a large number of data has been obtained, which has certain significance for the development of intelligent photovoltaic cleaning, device planning path and distributed photovoltaic cleaning.
Keywords: photovoltaic cleaning; attitude control; STM32; neural network PID; direction correction; experimental verification
0 ?引 ?言
近年來,我國(guó)分布式光伏得到大力發(fā)展。分布式光伏電站因其規(guī)模小、位置分散、并網(wǎng)等級(jí)低,通常建在城市或鄉(xiāng)村建筑物的屋頂,因此在光伏板表面會(huì)容易落上灰塵與鳥糞?;覊m會(huì)使得光伏組件的發(fā)電效率降低2%~5%;而鳥糞的存在使得在太陽光的照射下,光伏組件會(huì)產(chǎn)生熱斑效應(yīng),進(jìn)而損壞光伏組件[1?3]。且通常屋頂不易攀爬,對(duì)工作人員的安全難以保障,這對(duì)光伏清潔提出了更高的要求。目前光伏組件清潔裝置大多采用半自動(dòng)化方式,未能實(shí)現(xiàn)自主運(yùn)行?;谝陨瞎夥鍧崿F(xiàn)狀,采用履帶式雙電機(jī)機(jī)械結(jié)構(gòu),設(shè)計(jì)了一種基于STM32的能夠自主運(yùn)行的多傳感器光伏組件清潔裝置。這對(duì)高效光伏清潔有著重要意義。
采用神經(jīng)網(wǎng)絡(luò)PID控制算法控制脈沖寬度調(diào)制(Pulse Width Modulation,PWM)信號(hào)的占空比,進(jìn)而實(shí)現(xiàn)直線行駛、轉(zhuǎn)彎等復(fù)雜動(dòng)作。在實(shí)際工作條件下難以按照布線的形式來做巡線設(shè)計(jì),在沒有了參照的情況下,如何使裝置仍能按照預(yù)定規(guī)劃路線行走成為研究的關(guān)鍵[4?6]。
1 ?硬件設(shè)計(jì)
1.1 ?光伏清潔裝置總體硬件結(jié)構(gòu)
光伏清潔裝置硬件結(jié)構(gòu)由主控制器STM32、行走機(jī)構(gòu)、電源模塊、電機(jī)驅(qū)動(dòng)模塊和傳感器構(gòu)成。主控制器輸出PWM信號(hào)經(jīng)驅(qū)動(dòng)模塊驅(qū)動(dòng)電機(jī)運(yùn)行;編碼器將電機(jī)運(yùn)行的速度以脈沖的形式反饋給控制器;攝像頭OV7725與陀螺儀反饋角度的變化,控制整個(gè)裝置直線行走[7?8]。清潔裝置硬件系統(tǒng)結(jié)構(gòu)圖如圖1所示。
1.2 ?控制芯片
控制器是整個(gè)控制系統(tǒng)的核心,本設(shè)計(jì)采用STM32作為控制芯片。STM32系列是基于高性能、低功耗、低成本的需求而設(shè)計(jì)的ARM Cortex內(nèi)核。有豐富的外設(shè),強(qiáng)大的軟件支持,多種芯片型號(hào),最重要的是有固件庫這種獨(dú)特的編程方式,滿足了本設(shè)計(jì)的需要。
1.3 ?電源管理模塊
電源模塊為整個(gè)系統(tǒng)供電。系統(tǒng)的外部接入24 V電源,根據(jù)不同的設(shè)備需要工作在不同的電壓條件,需要進(jìn)行調(diào)壓,各設(shè)備的具體工作電壓如表1所示。
由表1可知設(shè)備主要工作在3.3 V,5 V,7.2 V,12 V等4個(gè)電壓。選用DC?DC LM2841B降壓斬波模塊實(shí)現(xiàn)調(diào)壓LM2841B器件是PWM直流/直流降壓穩(wěn)壓器。該器件具有4.5~42 V的輸入范圍,適合各種應(yīng)用(例如,從非穩(wěn)壓源進(jìn)行電源調(diào)節(jié))。它具有低RDSON(典型值0.9 Ω)內(nèi)部開關(guān),可實(shí)現(xiàn)最大效率(典型值85%)。此外,它還具有550 kHz(X選項(xiàng))和1.25 MHz(Y選項(xiàng))的固定工作頻率,可在保證低輸出電壓紋波的同時(shí)支持小型外部組件??赏ㄟ^結(jié)合使用關(guān)斷(SHDN)引腳和外部RC電路來執(zhí)行軟啟動(dòng),從而方便用戶根據(jù)特定應(yīng)用調(diào)整軟啟動(dòng)時(shí)間。電源模塊如圖2所示。
1.4 ?直流電機(jī)驅(qū)動(dòng)模塊
選用英飛凌大功率驅(qū)動(dòng)芯片BTN7971對(duì)直流電機(jī)進(jìn)行驅(qū)動(dòng)。BTN7971是大電流(68 A)H橋驅(qū)動(dòng),有著過熱過流保護(hù)功能,有效隔離單片機(jī)與電機(jī)驅(qū)動(dòng)保護(hù) BTN7961 和單片機(jī)芯片,防止BTN7961損壞后將電池電壓直接輸入到單片機(jī),進(jìn)而燒壞單片機(jī)控制引腳。選用2片BTN7971構(gòu)成H橋能夠靈活實(shí)現(xiàn)電機(jī)正反轉(zhuǎn),OUT兩端直接與電機(jī)正負(fù)極相連,IN1,IN2接輸入PWM信號(hào),通過調(diào)節(jié)兩輸入PWM信號(hào)占空比來控制電機(jī)速度與正反轉(zhuǎn)。驅(qū)動(dòng)電路如圖3所示。
1.5 ?OV7725攝像頭
鷹眼攝像頭OV7725傳感器是一個(gè)高性能VGA攝像機(jī)和圖像處理器,占用空間小。OV7725功能齊全。OV7725包含一個(gè)640× 480的圖像陣列,可以在VGA模式下以60 f/s的速度運(yùn)行。在運(yùn)行時(shí)需要對(duì)攝像頭進(jìn)行配置,OV7725通過SCCB協(xié)議配置內(nèi)置的172個(gè)寄存器。OV7725攝像頭傳感器外部電路如圖4所示。
1.6 ?其他設(shè)備
采用1060線的編碼器對(duì)電機(jī)運(yùn)行進(jìn)行測(cè)速,將采集到的編碼器線數(shù)返回單片機(jī),從而可以保證在裝置直線行駛時(shí),保持左右速度一致。MPU6050陀螺儀能夠?qū)崟r(shí)地將機(jī)器人的當(dāng)前姿態(tài)傳輸給MCU,在實(shí)際運(yùn)行過程中,MPU6050會(huì)存在一定的漂移,約為0.2 (°)/min,通過加速度計(jì)與地磁校正來減少漂移帶來的影響。裝置在光伏面板上自主行駛,需要控制自轉(zhuǎn)角與章動(dòng)角來確定機(jī)器人姿態(tài)。
2 ?系統(tǒng)程序設(shè)計(jì)
2.1 ?整體程序設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)主要包括攝像頭坐標(biāo)偏離控制、陀螺儀章動(dòng)角與自轉(zhuǎn)角控制、編碼器轉(zhuǎn)速控制。三者共同作用于控制雙電機(jī)的PWM信號(hào),使其能夠自主控制速度與方向[9?10]。另外,對(duì)角度校正采取限幅的方式,否則會(huì)使得裝置在實(shí)際運(yùn)行過程中出現(xiàn)嚴(yán)重偏擺。主程序流程圖如圖5所示。
在系統(tǒng)初始化之后,將當(dāng)前陀螺儀自轉(zhuǎn)角與章動(dòng)角的數(shù)值記錄下來,并且以此為基準(zhǔn),使系統(tǒng)達(dá)到穩(wěn)定的轉(zhuǎn)速與方向。但是所有的輸入都直接控制輸入PWM信號(hào)的占空比,在改變了裝置的轉(zhuǎn)速后,必然會(huì)改變裝置的方向。系統(tǒng)存在一定的耦合現(xiàn)象,正確處理其中的耦合是程序設(shè)計(jì)的關(guān)鍵[11?14]。
2.2 ?神經(jīng)網(wǎng)絡(luò)PID控制算法設(shè)計(jì)
傳統(tǒng)的PID控制有著原理簡(jiǎn)單、易于實(shí)現(xiàn)的優(yōu)點(diǎn),但是對(duì)隨機(jī)性與非線性系統(tǒng)控制較為困難,對(duì)系統(tǒng)的模型化也較困難;而神經(jīng)網(wǎng)絡(luò)對(duì)于不確定、多輸入、復(fù)雜系統(tǒng)模型有著很好的應(yīng)用。選取合適的激活函數(shù),獲取大量的數(shù)據(jù),對(duì)系統(tǒng)訓(xùn)練,使系統(tǒng)有著良好的適應(yīng)性。將兩者結(jié)合的優(yōu)點(diǎn)結(jié)合在一起,可以提升系統(tǒng)的穩(wěn)定性與魯棒性。設(shè)計(jì)的神經(jīng)網(wǎng)絡(luò)PID如圖6所示。
圖中y1,y2,y3分別為裝置編碼器輸入、陀螺儀輸入和攝像頭坐標(biāo)輸入。很明顯,三者存在耦合關(guān)系,當(dāng)編碼器輸入y1改變時(shí),即兩輪速度不同,必然會(huì)引起裝置方向的改變(y2,y3會(huì)發(fā)生改變),這使得裝置的穩(wěn)定性變差,甚至不穩(wěn)定。采用三層神經(jīng)網(wǎng)絡(luò),獲取一定量的數(shù)據(jù),對(duì)系統(tǒng)進(jìn)行訓(xùn)練。輸出層為左右兩輪的PWM信號(hào)占空比。通過比例、積分、微分神經(jīng)元輸出構(gòu)造正向傳遞與反向求導(dǎo)。在訓(xùn)練過程中不斷更新參數(shù),最后達(dá)到能夠?qū)崿F(xiàn)系統(tǒng)的穩(wěn)定運(yùn)行。
選取ReLU作為激活函數(shù)。相比sigmoid函數(shù)有著更快的收斂速度,缺點(diǎn)是容易陷入局部最優(yōu)點(diǎn),造成訓(xùn)練后兩輪的速度不一致。但是在樣本較少,結(jié)構(gòu)簡(jiǎn)單,面臨情況簡(jiǎn)單的實(shí)際條件下,選用ReLU作為激活函數(shù),快速性良好。
3 ?實(shí)驗(yàn)驗(yàn)證
裝置在傾斜角度為25°的光伏組件上進(jìn)行多次實(shí)驗(yàn),得到穩(wěn)定的數(shù)據(jù)。通過串口輸出相應(yīng)的數(shù)據(jù),將數(shù)據(jù)用Matlab繪圖,繪制PWM信號(hào)的響應(yīng)曲線,并與傳統(tǒng)PID比較,得到的PWM信號(hào)響應(yīng)曲線如圖7所示。
由曲線可以看出,相較PID算法,神經(jīng)網(wǎng)絡(luò)PID算法更快達(dá)到穩(wěn)定,且調(diào)節(jié)時(shí)間更短。在第6 s時(shí),人為加入擾動(dòng),使裝置偏離原來的航線,可以看到神經(jīng)網(wǎng)絡(luò)PID的抗干擾能力更強(qiáng),魯棒性更好。
4 ?結(jié) ?語
本文設(shè)計(jì)基于STM32光伏清潔裝置和神經(jīng)網(wǎng)絡(luò)PID算法。經(jīng)實(shí)驗(yàn)驗(yàn)證,該設(shè)計(jì)能夠?qū)⒍鄠鞲衅鬏斎胍陨窠?jīng)網(wǎng)絡(luò)PID的方式使裝置能夠穩(wěn)定在光伏組件表面行駛,并有著很好的魯棒性;對(duì)裝置能夠自主行駛,規(guī)劃路徑建立了基礎(chǔ),對(duì)智能光伏清潔有著一定的意義。
參考文獻(xiàn)
[1] 龔芳馨,劉曉偉,王靚.光伏電站太陽能板的清潔技術(shù)綜述[J].水電與新能源,2015(5):71?73.
[2] 周揚(yáng),吳文祥,胡瑩,等.西北地區(qū)太陽能資源空間分布特征及資源潛力評(píng)估[J].自然資源學(xué)報(bào),2010(10):1738?1749.
[3] 溫巖,趙東,袁春紅,等.積塵對(duì)光伏系統(tǒng)發(fā)電的影響研究綜述[J].太陽能,2014(11):36?41.
[4] 王海峰,李鳳婷,賈言爭(zhēng),等.適用于大規(guī)模光伏陣列的無水清掃機(jī)器人[J].可再生能源,2015,33(10):1439?1444.
[5] WHELAN T, KAESS M, JOHANNSSON H, et al. Real?time large?scale dense RGB?DSLAM with volumetric fusion [J]. International journal of robotics research, 2014, 34(4/5): 598?626.
[6] CHRISTIAN Brecher, STEPHAN Baumler, ALEXANDER Guralnik. Experimental modal analysis using a tracking interferometer [J]. CIRP annals, 2014, 63(1): 345?348.
[7] 孫勇,孫田豐.我國(guó)太陽能光伏發(fā)電技術(shù)應(yīng)用綜述[J].科技創(chuàng)新與應(yīng)用,2016(27):88.
[8] 侯杰,倪受東.一種光伏清潔機(jī)器人的研究與設(shè)計(jì)[J].機(jī)械制造與自動(dòng)化,2018(6):162?166.
[9] 劉金琨.先進(jìn)PID控制Matlab仿真[M].4版.北京:電子工業(yè)出版社,2016.
[10] 李娟,隋霄.基于RBF神經(jīng)網(wǎng)絡(luò)PID控制的SSSC控制器研究[J].控制工程,2018(10):1819?1823.
[11] 劉鵬,田玉平,張亞.有限時(shí)間一致無跡Kalman濾波器[J].自動(dòng)化學(xué)報(bào),2018(5):17?20.
[12] 汪偉,譚倫農(nóng),楊澤斌,等.無軸承異步電機(jī)BP神經(jīng)網(wǎng)絡(luò)PID控制[J].電力電子技術(shù),2018(11):26?29.
[13] LIU Qingqian, WANG Bo, MA Xiaowei. The research of intelligent vehicle′s steering control system based on fuzzy control [C]// IEEE Fifth International Conference on Advanced Computational Intelligence. Nanjing: IEEE, 2012: 474?478.
[14] 李大志,高艷,蔡宏,等.基于改進(jìn)BP神經(jīng)網(wǎng)絡(luò)算法的PID參數(shù)整定[J].工程與試驗(yàn),2013,53(2):45?48.
作者簡(jiǎn)介:衛(wèi)芃毅(1993—),男,山西長(zhǎng)治人,碩士研究生,主要從事控制科學(xué)與工程、嵌入式方面的工作。
任一峰(1967—),男,山西太原人,博士,教授,主要從事電氣傳動(dòng)與控制、復(fù)雜系統(tǒng)仿真與控制方面的工作。
陳昌鑫(1988—),男,河南信陽人,博士,講師,主要從事動(dòng)態(tài)測(cè)控與智能儀器方面的研究工作。