朱浩 夏范昌 吉祥 杜勇志 江銀鋒 鄂加強 鄧元望
(1.湖南大學;2.湖南宏迅億安新能源科技有限公司)

1.1.4 低功耗藍牙主從機電路板
低功耗藍牙模塊采用美國某公司的CC2541 芯片,如圖5 所示。該芯片遵循V4.0 BLE 藍牙協議規范,配置空間為256 KB,支持AT 指令,用戶可根據需要對串口波特率、配對密碼、設備名稱等參數進行設置,使用靈活。另外,模塊支持UART 接口,具有成本低、體積小、功耗低及收發靈敏度高等優點[10]。通過DC/DC 轉換電路將輸入的5 V 直流電壓轉換為3.3 V 直流電壓,給藍牙4.0 主從機供電,工作頻率為2.4 GHz,自動休眠,待機電流為400~1.5 mA,傳輸時電流為8.5 mA。

圖5 藍牙4.0 主從機電路原理截圖
低功耗藍牙模塊的27 腳(P0_7)是軟/硬件主從設置選擇口。如果此口置低(或懸空),則為硬件設置主從模式,如果置3.3 V 高電平,則為軟件設置主從模式。低功耗藍牙主從機選擇軟件設置主從方式,此口接3.3 V 電源。通過28 腳設置實現主從模式;如果選擇軟件主從模式,可以通過AT 命令查詢和設置,所以本低功耗藍牙主從機采用AT 指令設置主從模式。狀態指示燈D2 接藍牙4.0 模塊的P1_2(24 腳),用于指示其所處狀態。慢速閃爍表示搜索及連接中,長亮表示已經建立連接。
1.1.5 智能車整車控制器電路板
智能車整車控制器采用某公司的16位單片機MC9S12XS128MAA。該芯片的最小系統,如圖6 所示。在該芯片最小系統中,芯片起振采用接在33 引腳(EXTAL)和34 引腳(XTAL)的16 MHz 的無源晶振Y1;電源使用5 V 直流電供給電源77 引腳(VDDX1)、29 引腳(VDDX2)和31 引腳(VDDR);復位為接30 引腳的按鈕PB1 控制的低電平復位。

圖6 MC9S12XS128MAA 芯片最小系統電路原理截圖
智能車的車速信號通過EA62- CS3C 歐姆龍編碼器的200 線進行采集,信號經PT7 引腳輸入單片機MC9S12XS128MAA 的定時器模塊,經過脈沖累加功能進行車速信號計算的前期處理。智能車轉向機構采用舵機與連桿機構,舵機作為原動機,連桿機構作為從動件。舵機與連桿機構控制信號由接收機的通道進入信號調制芯片,獲得直流偏置電壓。在內部設計一個基準電路,產生的基準信號周期約為20 ms,寬度為0.5~2.5 ms,然后比較直流偏置電壓與電位器的電壓,獲得電壓差輸出。最后,電壓差的正負輸出到電機驅動芯片,決定電機的正反轉。當電機轉速一定時,通過級聯減速齒輪帶動電位器旋轉,使得電壓差為0,電機停止轉動。通過PWM信號占空比的改變控制舵機的位置變化。
CAN 總線采用MC9S12XS128MAA 芯片內部集成的MSCAN 模塊,符合CAN2.0A 和CAN2.0B 通信協議要求,采用某公司的TJA1050 作為CAN 總線收發器。CAN 總線系統,如圖7 所示。CANTX 和CANRX 分別接MC9S12XS128MAA 芯片的74 引腳和75 引腳,經過TJA1050 后,轉換為CAN 總線的CANH 和CANL,然后接雙絞線進行CAN 通信[11]。

圖7 CAN 總線系統框圖
程序設計主要包括鋰電池充放電板程序、鋰電池溫度采集板程序、藍牙4.0 主從機配對指令和智能車整車控制器程序三部分。程序通過C 語言進行編寫后,利用串口或BDM下載器進行程序燒錄,然后進行硬件測試。
1.2.1 鋰電池充放電板程序設計
鋰電池充放電程序框圖設計,如圖8 所示。LTC2943 鋰電池監測程序主要通過I2C總線獲取鋰電池的實時狀態信息,I2C 總線通信的程序主要包括啟動I2C總線、停止I2C總線、響應、讀/寫一個字節及I2C總線時鐘。通過對相應地址的寄存器進行讀取/寫入操作,實現對鋰電池電壓、電流、溫度及電量的實時監測。首先,實現STC89C52RC 單片機和LTC2943 芯片的I2C總線通信,通過STC89C52RC 單片機向LTC2943 芯片寫入所需訪問的寄存器地址,然后返回原始的鋰電池狀態數據;通過STC89C52RC 對數據的轉換和運算后,得到可以直接顯示的鋰電池電壓、電流、溫度及電量,再通過電腦軟件或LCD12864 液晶顯示器實時顯示。

圖8 鋰電池充放電程序流程圖
1.2.2 鋰電池溫度采集板程序設計
3 個DS18B20 溫度傳感器單線、總線溫度監測程序的流程圖,如圖9 所示。主要使用的協議命令有33h(讀ROM),44h(溫度轉換),55h(ROM 匹配)、BEh(讀暫存器)。流程圖分兩部分,首先讀取3 個DS18B20 的64位光刻ROM地址,然后進行溫度傳感器單線、總線的編程,通過單線、總線實現3 個DS18B20 溫度傳感器測量單體鋰電池多部位溫度的目的。其中DS18B20 的ROM地址通過串口助手輸出8 個字節。

圖9 溫度傳感器的溫度監測程序流程圖
1.2.3 智能車整車控制器程序設計
智能車整車控制器程序流程,如圖10 所示。程序先進行鎖相環倍頻后,分頻給各功能模塊,包括脈寬調制模塊PWM、定時器模塊PIT、串口通信模塊SCI 等。電機和舵機驅動都采用PWM信號,但PWM 信號頻率不同。對于電機,通過對PWM信號的占空比的控制,改變流過電機電流的大小,進而改變電機的轉速,最終達到控制智能車車速的目的。對于舵機,通過對PWM信號占空比的控制,改變舵機的輸出轉角,實現控制智能車轉向角的目的。

圖10 智能車整車控制器程序流程圖
通過LabVIEW 設計了與硬件相匹配的軟件及安裝包,系統軟件包括串口通信模塊、數據處理模塊和顯示與報警模塊。串口通信模塊的作用是從智能車上獲取其狀態原始數據,經數據處理模塊后得到所需的顯示結果,通過顯示與報警模塊進行結果顯示與報警,并返回字符串給智能車,實現了對智能車狀態的實時監測,包括智能車車速和轉向角數據處理與顯示、車載鋰電池信息(電壓、電流、溫度、電量)數據的處理與顯示。
本系統通過CodeWarrior 5.1 軟件進行編譯和測試,測試智能車整車控制器能否對輸出PWM 控制電機和舵機,以實現智能車的基本行駛功能。通過1 塊1.3英寸(3.3 cm)的12864 液晶顯示屏和2 個四位數碼管顯示,內容包括編碼器15 ms 產生的脈沖數、舵機的PWM占空比。測試結果,如圖11 所示。

圖11 整車控制器調試電腦串口測試結果顯示界面
圖11 顯示結果為智能車正常行駛時,串口助手接收到的6位字符串數據。從圖11 可以看出,其中第1位是舵機PWM 占空比,第2~6位是編碼器產生的脈沖數。編碼器產生的脈沖數不斷變化,說明智能車車速在改變,且數值越大、車速越高;智能車整車控制器實現了PWM信號的輸出,說明智能車能完成基本行駛功能。
低功耗藍牙無線通信利用串口助手配置藍牙4.0主從機的配對密碼、波特率、主從模式等,然后把藍牙4.0 從機連接到智能車鋰電池溫度采集板的藍牙接口上,接通電源等待藍牙4.0 主機搜索與連接,實現主從機連接;連接完成后,串口助手開始顯示鋰電池溫度采集板的監測結果。顯示的結果,如圖12 所示。

圖12 無線監測鋰電池溫度數據顯示界面
文章開發使用的是LabVIEW 2013,該版本支持WIN7 系統、軟件安裝包自動生成等功能,編寫的軟件具有移植性好、安裝簡單、界面美觀、人機交互性好等優點。可通過軟件安裝包在其它電腦上安裝,方便用于未裝LabVIEW 軟件的電腦使用。圖13 示出智能車狀態監測系統的完整硬件。

圖13 智能車監測系統完整硬件示意圖
從圖13 可知,智能車監測系統硬件包括電路設計的全部電路板,并通過杜邦線等進行了電氣連接,然后,將其安裝到某B 型車上,主要是電機、舵機、編碼器及鋰電池的電氣連接,還有硬件與車體的六角銅柱機械連接,最終形成一個完整的智能車狀態監測系統。
圖14 示出本系統的軟件界面。在系統軟件安裝完且保證其硬件供電正常條件下,打開并選擇相應的硬件COM口,就可實現智能車狀態的監測。軟件顯示有2 個溫度監測,分別標有溫度和DS18B20 字樣。其中標溫度的顯示模塊為LTC2943 芯片內部集成的溫度傳感器,用于監測放電板的溫度;標DS18B20 的顯示模塊循環顯示鋰電池前側、上側和右側的溫度,用于監測單體鋰電池的溫度。本系統軟件實現了鋰電池的電壓、電流、溫度及電量值的實時監測顯示,還能對高于或低于設定閾值的某1 項或幾項進行報警,即點亮對應報警按鈕。另外,軟件還可實時繪制電壓和電流的時間變化曲線圖,方便以后對鋰電池進行SOC 估算。此智能車監測系統軟硬件的正常運行,實現了監測功能。

圖14 智能車監測系統顯示的軟件顯示界面
基于藍牙4.0 和某大賽B 型車,以優化純電動車實時監測系統的線束和控制為目的,設計了低功耗藍牙電動車智能監測系統,包括硬件電路設計、程序設計、軟件設計及軟件測試。以C 語言的定時器中斷方式設計了驅動程序,用LabVIEW 生成了界面可視化的軟件。實測樣機表明本系統軟件實現了鋰電池的電壓、電流、溫度和電量值的實時監測顯示,還能對高于或低于設定閾值的某1 項或幾項進行報警,智能車監測系統軟硬件正常運行,實現了監測功能,證明該設計可行。
(續完)