盧佳慧,張寶珍
(福建省機械科學研究院,福建 福州 350005)
直流電機控制器調整電機轉速的控制信號是模擬量信號,電壓值范圍是0.8~3.6 V,其中0.8~1.0 V表示待機工作狀態,1.0~3.6 V表示電機開始運轉,電壓越高,電機轉速越快。常用輸出模擬量信號的設計包括DA(Digital-to-Analog Converter)數字量轉化成模擬量模塊(以下簡稱“DA轉化模塊”)和ADJ開關電源模塊。在新能源無人船的控制應用中,無人船動力電機運行時會出現瞬態大負荷沖擊電流,這些沖擊電流會耦合出強干擾信號,由于DA轉化模塊的驅動能力較小,抗干擾能力較弱,容易被干擾信號損壞;ADJ開關電源模塊屬于電源特性的模塊,其輸出驅動能力和抗沖擊干擾的性能均較DA轉化模塊更強、更可靠。基于此,本文通過控制ADJ開關電源模塊輸出模擬量信號的設計提供新能源無人船所需模擬量信號。
ADJ 開關電源模塊的電氣特性是輸出可調,工作模式是通過改變反饋引腳的電阻阻值調節反饋電壓,輸出可調的模擬量信號。本文采用單片機的SPI總線發送命令操作數字電位器,數字電位器根據獲得的命令輸出對應的電阻阻值,提供給ADJ開關電源模塊的反饋引腳,從而輸出可調的模擬量信號。為了確定輸出的模擬量信號值是否正確,單片機通過AD(Analog-to-Digital Converter)模擬量轉化成數字量模塊(以下簡稱“AD轉化模塊”)檢測輸出的模擬量電壓值。功能原理圖如圖1所示。

圖1 ADJ開關電源模塊功能原理圖
常用的ADJ開關電源模塊如LM2576-ADJ,工作原理圖如圖2。通過改變外部電阻R2的阻值得到不同的分壓值,分壓值輸入到反饋引腳F,反饋引腳內是一個穩壓基準比較器,穩壓基準比較器將分壓值和基準值根據比較器的差值輸出不同的模擬量信號,實現輸出可調的模擬量信號。U out是輸出的模擬量信號,Uref是穩壓基準比較器的基準電壓,電壓值是1.23 V,Uout和外部電阻R2的計算關系如式⑴所示。

圖2 ADJ開關電源模塊工作原理圖
根據式⑴,無論電阻R2取任何阻值,模擬量信號Uout的電壓值都無法低于1.23 V,因此,要滿足直流電機控制器接收模擬量信號的電壓范圍0.8~3.6 V,需要對基準電壓進行分析,選擇小于0.8 V的基準電壓。
ADJ 開關電源模塊內部需要一個已知而且與溫度系數無關的準確電壓作為參考電壓,這樣ADJ開關電源模塊才能輸出一個穩定的準確的電源電壓值,如式⑴中的1.23 V這個值就是基準電壓值。ADJ開關電源模塊內部采用雙極結點帶隙基準工作模式作為基準電壓,帶隙基準是利用一個具有正溫度系數的電壓與具有負溫度系數的電壓之和,二者溫度系數相互抵消,實現與溫度無關的電壓基準。雙極結點的基極(b)和發射極(e)的特性,正向電流情況下電壓值Vbe隨溫度升高而變小(Vbe為0.63V),另一個特性,反向電流情況下ΔVbe電壓值隨溫度升高而變大(ΔVbe為0.60V),Vbe和ΔVbe溫度變化系數一樣,但是方向相反,正負相互抵消,消除了溫度系數的影響,因此雙極結點帶隙基準的電壓值為0.63 V+0.6 V=1.23 V。若在ADJ開關電源模塊內部的雙極結點帶隙基準電路上加一個divider電路(除法電路),可獲得更低的ADJ開關電源模塊的基準電壓值。MCP1726-ADJ開關電源模塊的基準電壓Uref是0.41 V,其模塊內部就采用了除3的divider電路1.23 V÷3=0.41 V,得到0.41 V的基準電壓。
根據式⑴,MCP1726-ADJ開關電源模塊的R2阻值與輸出Uout模擬量信號電壓值的對應關系如表1所示,當R1取10 kΩ,R2的取值范圍從9.6~79.6 kΩ,輸出電源Uout電壓值相應變化范圍為0.8~3.6 V。

表1 R2阻值與輸出Uout模擬量信號電壓值的對應關系
由表1可以看出R2電阻取值范圍為9.6~78.96 kΩ,對應輸出Uout模擬量信號范圍為0.8~3.6 V,滿足了直流電機控制器的控制信號要求。本文采用X9C104數字電位器(以下簡稱“數字電位器”)輸出變化的電阻阻值,其工作原理圖如圖3所示,數字電位器有100階檔位,電阻阻值范圍為0.04~100 kΩ,滑動增量為1.01 kΩ。X9C104內部有99個電阻單元的電阻陣列,每個電阻單元和兩端點(RH、RL)都有被滑動單元(RW)訪問的觸頭,阻值升降控制數據線(U/D)、遞增控制數據線(INC)、芯片被選擇控制數據線(CS)組成的數據總線接收單片機的命令,獲得命令后通過譯碼器控制滑動單元訪問對應的電阻單元,輸出需要的電阻阻值。數字電位內部還有一個非易失性存儲器,可以存儲記憶控制的電阻數據,并且斷電后不會丟失。

圖3 數字電位器工作原理圖
數字電位器的工作時序如圖4所示。CS引腳為高電平時,停止總線接收數據;為低電平時,U/D和INC引腳才能接收數據。U/D引腳為高電平時,計數器開始往99累加;為低電平時,往0遞減。INC引腳由高電平變為低電平時,計數器根據U/D狀態累加或遞減一次。

圖4 數字電位器工作時序圖
數字電位器的控制軟件流程如圖5所示,先判斷是否有調整電阻值標志,需要調整電阻值時,判斷是否增加或者減小電阻阻值。相應配置U/D引腳高電平或者低電平,置INC引腳高電平為改變RW滑動單元準備,延時1μs確定INC高電平有效,配置CS引腳低電平,延時2μs確定CS的低電平有效;數字電位器開始允許接收命令,置INC引腳為低電平,延時2μs確定INC由高電平變為低電平為有效操作,完成一次RW滑動單元累加或遞減改變電阻阻值。之后重新配置CS引腳高電平,禁止數字電位器被干擾信號誤操作,配置INC引腳為高電平,為下一次命令做準備,清除調整電阻值標志,完成調整電阻阻值軟件操作。

圖5 數字電位器的控制軟件流程
數字電位器硬件控制電路設計如圖6所示。圖中U2器件是單片機PIC18F67J11,IC2器件是ADJ開關電源模塊芯片MCP1726-ADJ,IC3器件是X9C104數字電位器芯片,ADJ開關電源模塊的ADJ引腳外圍電路由電阻R1、R3,數字電位器電阻陣列的2端RH、RL引腳,以及滑動單元RW引腳組成。X9C104芯片電阻阻值范圍為0.04~100 kΩ,參考表1可以看出,X9C104自身的阻值范圍就可以滿足0.8~3.6 V的模擬量值。但是,實際操作中X9C104初始化時會出現RW端滑到第0值(參考圖3)的情況,此時RH、RL、RW引腳都連接在一起,數字電位器輸出最小電阻0.04 kΩ,根據式⑴,0.41×(1+0.04/10)得到電壓值約0.41 V,該電壓值小于0.8 V,直流電機控制器無法進入待機工作狀態,因此電路設計時加入起始電阻R3阻值為9.6 kΩ,X9C104初始化后根據式⑴可得:0.41×[1+(9.6+0.04)/10]=0.81 V,直流電機控制器正常進入待機工作狀態。通過控制CS、U/D、INC數據總線調整X9C104的RW端,RW端每調整一次為1.01 kΩ,從0.04 kΩ到70 kΩ可以滑動70次,說明了直流電機控制器可以輸出多達70檔的速度,電機轉速可以做到很平穩的變速運轉。

圖6 數字電位器硬件控制電路設計
判斷ADJ開關電源模塊輸出的模擬量信號V0(參考圖6)是否達到預期值,就需要跟蹤讀取輸出模擬量信號的電壓值,單片機PIC18F67J11的RA0引腳是AD轉換模塊AN0通道,通過配置AD轉換模塊的功能屬性,開啟AD轉換功能,實時跟蹤模擬量信號,將模擬量信號轉化成數據格式,通過軟件進行計算和比較,確定是否達到預期值,若與預期值不相符,則軟件重新控制調整數字電位器的輸出電阻阻值,做到精準控制直流電機控制器。
在新能源無人船動力電機的直流無刷雙模控制器設計中,采用ADJ開關電源模塊輸出模擬量信號作為控制信號,滿足了0.8~3.6 V電壓范圍,通過單片機控制數字電位器,實現多檔可調輸出,使電機轉速變化更加平穩,應用AD轉換跟蹤技術實現精準控制。本文分析了基準電壓原理,使模擬量輸出范圍更寬,并通過軟件設計和硬件設計相結合,在無人船動力電機應用中取得很好的控制效果,可靠性高,具有較高的經濟價值。