(吉林大學 應用技術學院,長春 130022)
Arduino是一款靈動性較強的電子原型平臺,包含所有型號的Arduino板硬件設備和Arduino IDE操作軟件,具備極高的實用適應能力。這種單片機平臺組織的開放原始碼以simple I/O介面版語言作為編寫依據,且融合C語言、Java、Processing/Wiring等多種編程代碼作為新條件語句的生成環境。最基本的Arduino單片機包含軟、硬件組織兩種組成成分,其中硬件部分可以簡單概括為用作連接電路的Arduino電路板結構,而軟件部分則是具備更改操作能力的Arduino IDE代碼[1-2]。當系統計算機在IDE組織中編寫程序代碼時,輸出設備會將這些信息直接傳輸至Arduino電路板,并以此達到執行系統語句指令的目的。
近年來太陽能智能充電控制器在多項工業領域中都出現迅猛發展的勢頭,但隨著器件設備運行時間的不斷增加,連接穩固性下降、控制通路無序等問題,都對控制元件自身的應用執行能力造成嚴重負面影響。為解決上述問題,搭建一種基于Arduino單片機的太陽能智能充電控制器監測系統,按照軟硬件平臺搭建、控制器監測方案選型、實用誤差標定的操作流程,將相關系統執行參數調試至最佳應用狀態。
在總體硬件結構的基礎上,連結Arduino單片機模塊,并對監測協議進行有效移植,實現節點的定向傳輸,完成充電控制器監測系統的結構組織搭建。
太陽能智能充電控制器監測系統設計參數:采用atmega8515l-8muavr單片機,40S68S37N03芯片,CC2530F64兼容設備,772100 PNOZ m B0基礎繼電器,ARM8227嵌入式主板ARM9處理器,MC34063API 34063AP1 DIP8/DC-DC/轉換器設備。
太陽能智能充電控制器監測系統的硬件總體結構包含感知數據采集、控制傳輸、監測數據分析3個組成環節。其中,感知數據采集單元由Arduino單片機模塊、CC2530設備和基礎繼電器組成,在執行充電數據選擇、控制連接、監測對照功能的基礎上,實現充電控制器的監測數據采集。系統硬件總體結構如圖1所示。

圖1 系統硬件總體結構圖
Arduino單片機的功能是促進太陽能智能充電控制器監測程序的迅速執行,并以此達到鞏固系統連接穩定能力的目的[3-4]。控制傳輸單元在太陽能智能充電控制器監測系統中起到承上啟下的作用,在IEEE802.15數據傳輸模塊與ARM處理器的促進下,連結太陽能以太接口,并整合器件電路與系統電源,在符合控制調試接口傳輸要求的前提下,供應系統控制監測數據的快速傳輸。監測數據分析單元在CC2530設備的基礎上,利用DC-DC控制器截取充電控制器監測數據的模式運行條件,并將其傳輸至太陽能充電板中進行深入分析研究。
單片機控制器在外接自主計算機組織的同時,可以接受7~12 V的直流輸入電壓。在模塊單獨運行的過程中,充電控制數據保持數字輸入狀態,且可對器件電路提供5 V和3.3 V兩種備選輸出電壓條件。
Arduino單片機模塊采用BST-V51的智能集成底板,在太陽能充電線路處于閉合狀態的前提下,調整控制器電機轉速,使系統驅動能力在短時間內達到頂峰狀態,并以此迫使未經完全利用的太陽能電子快速流入器件控制電路,達到減少無功監測消耗的目的。
太陽能智能監測協議是Light Weight IP協議與lwipopts協議的組合形式,既定義了固有的IP輕量級連接條件,也可在精簡控制條件下,更改充電控制器監測源代碼的開放性強度。Light Weight IP協議可單獨移植充電控制器在監測系統中的智能內核,并且只能在監測程序保持自定義開發狀態的前提下,才能對控制器裝置起到太陽能充電調節作用。lwipopts協議是一種存在于宏觀狀態下的太陽能充電調節指令,可以根據監測系統智能內核的連接情況,選擇控制器裝置所需的初始化條件[5-6]。根據上文可知,Arduino單片機是監測系統硬件運行環節中的主要執行設備,且BST-V51集成底板中的太陽能充電線路具備一定的電子輸出能力。太陽能智能監測協議作為監測系統中具有實體形態的軟件結構,可以通過編寫兩類分組小協議頭結點的方式,建立宏觀模式下的臨界代碼框架,再借助特定的子網掩碼,實現從基礎系統執行記錄數據到完整監測指令的協議移植操作。具體太陽能智能監測協議移植操作流程如圖2所示。

圖2 太陽能智能監測協議移植流程圖
充電控制器監測節點始終按照IEEE802.15.4規則排列,且直接受到太陽能智能監測協議的干擾影響。在充電控制器監測節點的傳輸過程中,Arduino單片機首先根據太陽能智能監測協議的移植程度,來判斷臨界代碼框架的完整情況。再在滿足系統監測要求的情況下,排查可供選擇智能控制器執行數據的解析結果。若排查結果為通過,則太陽能智能控制器數據自發進入充電監測節點中,并跟隨系統的運行速度,完成整體的監測循環流程;若排查結果為未通過,則智能控制器數據再需要經歷太陽能監測協議的解析處理,直至排查結果為通過,方可自發進入充電監測節點中,完成系統的監測循環操作。在整個監測節點的傳輸過程中,智能控制器數據始終遵循Coord偽代碼編寫原理,且在接入監測申請后的節點覆蓋情況由局部狀態直接轉化為全網覆蓋狀態,在不改變系統運行監測初衷的前提下,可根據如下所示程序語言完成監測節點傳輸的偽代碼編譯處理。
void main (void);
{
Protocol stack initialisation;
Global Enable Interrupy(); //臨界代碼框架生成
aplJoinNetwork(); //智能控制器執行數據解析
APS DSTMODE SHORT;
If 'YES';
apl SendMSCi; //充電控制器監測節點定向傳輸
If 'NO';
aplJoinNetwork();
Until 'YES';
apl SendMSCi;
Return;
}
利用充電控制器監測系統軟硬件平臺結構,循跡太陽能控制器的監測流程,并對其中的重要處理節點進行避障處理,完成智能充電控制器監測方案的選型操作處理。
太陽能控制器循跡分為內監測走線、外監測走線、環形走線3種選型方向,由其中兩種或兩種以上循跡方式結合,又額外獲得4種選型方向,故基于Arduino單片機的太陽能智能充電控制器監測系統共包含7種循跡選型方式。
1)內監測走線型太陽能控制器循跡:配置兩個減速電機作為輔助太陽能智能充電控制器的輔助監測設備,所有連接走線均采用杜邦線。這種控制器循跡方式從系統內部直接連接了Arduino單片機與監測控制器,既節省了架構搭建費用,也提升了系統監測精準性,但整體后期循跡避障處理過程的運算量相對較大,不利于系統的綜合誤差標定處理。
2)外監測走線型太陽能控制器循跡:配置一個SMARTDUINO裝置并外接一個電機固定件,用以獲取太陽能智能充電控制器的實際監測消耗情況,所有連接走線均采用Web數據線。這種控制器循跡方式完全暴露于監測系統外部,且整個操作過程中,太陽能充電控制器的實時消耗情況始終保持明朗狀態,具備最大化系統監測精度的應用能力[7]。
3)環形走線型太陽能控制器循跡:僅配置一個平臺共享裝置,位于監測系統內部的走線采用杜邦線、位于監測系統外部的走線采用Web數據線[8]。這種循跡方式的監測精準性相對受限,但總體消耗費用極地,應用范圍也不受系統監測運行周期的絲毫影響。
4)內監測走線+外監測走線型太陽能控制器循跡:這種循跡方式既具備較好的監測精準性,又不需經歷復雜的誤差數據處理過程。
5)內監測走線+環形走線型太陽能控制器循跡:免去了監測系統內部走線對太陽能智能充電控制器實時消耗數據獲取的限制,且使系統的監測精確度得到了最大化提升。
6)外監測走線+環形走線型太陽能控制器循跡:可同時獲取監測系統內、外部太陽能智能充電控制器的實時消耗數據,且可將系統的監測精確度長時間保持在最佳狀態。
7)內監測走線+外監測走線+環形走線型太陽能控制器循跡:融合3種循跡方式的所有優點。

(1)
其中,w1、w2、w3分別代表內、外、環3種走線循跡方式監測避障指標,f′代表杜邦線中太陽能充電電子的平均傳輸速率,y1、y2分別代表兩個減速電機的輔助監測參量,|e|代表SMARTDUINO裝置的智能充電系數,ut代表最長充電時間條件下Web監測數據線的消耗常量,p代表太陽能充電控制器的實時消耗狀態參量,k代表環形循跡方式的物理監測周期。
復合型太陽能控制器循跡方式不具備明確的計算公式,只是在公式(1)的基礎上,通過分布加工w1、w2、w3三類監測避障指標的方式,得到全新的復合型避障處理規則,其具體運算原理如公式(2)所示:
(2)
上式中,w4、w5、w6、w7分別代表內監測走線+外監測走線型太陽能控制器循跡的避障指標、內監測走線+環形走線型太陽能控制器循跡的避障指標、外監測走線+環形走線型太陽能控制器循跡的避障指標、內監測走線+外監測走線+環形走線型太陽能控制器循跡的避障指標,i、l、j分別代表與內、外、環3種走線循跡方式監測避障指標相關的監測利用系數。
在太陽能智能充電控制器監測系統運行過程中,產生誤差的因素來自多個方面。特別是在控制器設備循跡等多個執行處理流程中,往往不僅要考慮到多種應用線路器件間的結合適配性,還要通過多種技術手段,使系統的監測精準程度不斷向預期標準數值靠近[9-10]。簡單來說,誤差標定就是在保持系統運行設備主觀能動性完整的前提下,利用數據逼近的處理手段,使與監測精準度相關的可變偏差結果逐漸縮小,直至最終結果滿足人為可接受物理范圍需求。
控制器數據采集誤差、監測目標選取誤差、運行環境誤差是三類主要系統誤差條件。控制器數據采集誤差多發生于監測系統軟、硬件設備原件的安裝過程,受到Arduino單片機充電干擾條件χ的直接影響,取D作為控制器數據采集上限條件,可將該項采集誤差結果表示為:
(3)
其中,d代表控制器數據的隨機采集向量,λ代表Arduino單片機的智能化干擾頻率,s代表太陽能控制器所承受的平均監測干擾數據量。
監測目標選取誤差標定以避障處理原則選取作為執行依據,在默認基于Arduino單片機太陽能智能充電控制器監測系統采用內走線循跡方式的前提下,可將該項誤差采集結果表示為:
(4)
δ代表與內走線循跡方式相關的選取系數,s代表與監測目標選取相關的被積向量,F(w1)代表監測系統默認定義的、與內走線循跡相關的目標函數,?F(w1)代表該函數定義式的定積分表達式。
運行環境誤差是與太陽能充電控制器監測系統執行結果最相關的物理系數條件。設ξ1、ξ2代表兩個不同的監測系統默認控制器充電偏移向量,F3代表該項誤差采集結果,則其具體表達式如下。
(5)

聯立公式(3)、(4)、(5),利用數據逼近處理要求,可將基于Arduino單片機太陽能智能充電控制器監測系統的誤差標定結果表示為:
(6)
上式中,n代表太陽能智能充電控制器的監測可信賴度,x代表平均誤差標定系數。
系統運行調試主要包括監測太陽能控制器連接穩固能力測試、通路控制曲線繪制兩個方面。已知控制器穩固性越高、通路曲線密集區域越多,系統監測精準程度越高,反之則越低。
在40S68S37N03芯片的支持下,將8個外接充電腳柱樁分別與Arduino單片機、IEEE802.15數據傳輸模塊、ARM處理器、CC2530設備順次相連,其中每2個腳柱樁對應一個系統原件,按照從上之下、從左至右的連接順序。C18、R11、C8、U5是4個相同的定向設備控制開關,其中C18、R11開關直接控制40S68S37N03芯片的連接閉合狀態,C8、U5則與外接電阻相連,通過相同的連接或閉合狀態來控制電阻是否接入電路。
在確保40S68S37N03芯片正常運行,C18、R11、C8、U5開關同時閉合,外接電阻直接連入充電電路的前提下,開始對太陽能智能控制器監測效果的實驗檢測。
分別將基于Arduino單片機太陽能智能充電控制器監測系統和普通監測系統與實驗用外界檢測采集裝置相連,前者為實驗組、后者為對照組。多次調節CC2530設備,使監測用控制器設備的充電頻率處于30~50 Hz之間,為減少實際操作次數,本次實驗共取30 Hz、40 Hz、50 Hz三種控制器設備充電頻率作為實驗備選條件。每次調節操作后保持1 min的靜置時間,使外界檢測數值表中數據趨于穩定,并記錄此時數值表中所顯示的NS數值(控制器連接穩固系數),詳細實驗數據結果如表1、表2所示。

表1 實驗組NS數值表 Mb

表2 對照組NS數值表 Mb
縱向觀察實驗組NS數值可知,隨著充電頻率不斷增加,NS數值增加明顯。已知NS數值與系統監測精準性呈現正相關影響關系,在整個實驗過程中,實驗NS數值最大值可達0.96,即為接近1(NS數值永遠不可能超過1),極為符合系統實際監測需求。而對照組NS數值僅能在充電頻率處于30~40 Hz之間時,保持明顯上升情況,充電頻率達到50 Hz時,對照組NS數值變化異常,甚至有可能低于30 Hz情況下的NS數值,且最大值也遠低于1,對系統實際監測需求的符合程度遠低于實驗組。
監測通路控制曲線由多個degee節點連接而成,在保持4.2中操作步驟不變的前提下(已知控制器設備充電頻率對degee監測器數值并無影響,本次實驗默認頻率參量為30 Hz),在每次CC2530設備調節操作后,觸動ARM處理器,直至degee監測器數值發生改變,并記錄第一次改變時的數值情況,作為一個degee節點,經過多次記錄后,可繪制如圖3所示的監測通路控制曲線。

圖3 監測通路控制曲線圖
由圖3可知,基于Arduino單片機的太陽能智能充電控制器監測系統,信號波形較為穩定、規律。該系統能有效地改變傳統系統在檢測過程中,檢測通路信號突變較大的問題。
為保證實驗結果的真實性,取第10~40次的中端實驗數據作為主要參考依據。分析圖3可知,在該段時間內,實驗組監測通路控制曲線出現了相對明顯的周期性變化趨勢,且最大值、最小值的變化趨勢均有據可循,對于太陽能智能充電控制器監測系統來說,這種周期性波動趨勢極易提升系統自身的監測精準性。對照組監測通路控制曲線在該段時間內,無明顯波動變化趨勢,且最大值、最小值的變化狀態也不唯一,不利于系統監測精準度的提升。
在Arduino單片機的支持下,太陽能智能充電控制器監測系統具備了一定的穩固能力,且使控制通路信號突變的物理現狀得到了有效改善。軟硬件設備方面,也不再受到節點傳輸限制等條件的影響,可對系統誤差等運算物理量進行基本標定處理,對提升系統自身的監測精準度具備極強的促進意義。