電機驅動芯片DRV8823在XBT自動投放系統中的應用
,因此需要控制8個直流12V減速電機。因此,成功實現多枚XBT自動投放的一個關鍵技術點就是,系統如何通過控制多個電機運動實現閥門的自動打開和關閉。
本文引用地址:http://www.104case.com/article/201610/308040.htmTI公司推出的4H橋電機驅動芯片DRV8823為該項關鍵技術的實現提供了很好的解決方案。
1 DRV8823簡介
DRV8823是TI公司推出的1.5 A四路刷式或雙路雙極步進電機驅動器,它內部采用4H橋電機驅動模塊,可以驅動2個步進電機或者4個直流電機。其內部使用4組N溝道功率MOS FET組成H橋,構成獨立的電機驅動模塊來驅動電機繞組,非常適合多路電機驅動使用,它為自動化設備的應用提供了一個集成的電機驅動解決方案。芯片的供電電壓為8~32 V,每相通道的電流最大可達1.5 A,并且可以通過軟件編程設置為8個不同等級的值。芯片具有低電壓睡眠模式,在系統過壓、過溫或過流后均可以自動關閉電機、斷開電機負載加以保護,其內部組成結構略——編者注。DRV8823與微控制器僅需要通過簡單的串行接口就可完成所有的信號控制功能。
2 DRV8823時序及寄存器介紹
2.1 DRV8823的時序
DRV8823的串行數據時序如圖1所示,SSTB信號在原理圖中一直為高電平,因此串行接口一直有效并且輸出使能。數據包的傳輸包括16個數據位,需要注意的是,與常規SPI總線不同,控制器需要先向DRV8823芯片傳輸數據字節的低位。

控制器將串行數據寫入DRV8823,額外時鐘邊沿之后的最后數據位將繼續移位到數據寄存器,因此,最后的16位數據將被鎖定和使用。通過設置兩個電機控制寄存器字段中的高4位來選擇控制1#電機或者2#電機,即:如果串行數據的高4位是0000,則對電機1(橋A和B)進行操作;反之,如果是0001,則對電機2(橋C及D)進行操作。只有SCS輸入引腳為高電平有效時,數據才能被轉移到串行接口。數據最初只是被移入到一個臨時寄存器,該數據在SSTB上升沿時才被寫入電機驅動器。如果SSTB一直處于高電平,則16位數據傳輸完畢后才全部鎖存。
2.2 DRV8823的寄存器
DRV8823的各路電機控制是通過寫寄存器實現的,電機驅動命令寄存器如表1和表2所列。

3 DRV8823與C8051F020的接口
3.1 硬件連接
項目中使用DRV8823驅動8個直流減速電機,直流減速電機的正常運轉電流僅為100 mA,每片DRV8823可以驅動4個直流減速電機,因此需要兩片DRV8823與CPU連接。由于工程中選取的直流減速電機的供電電壓是12 V,因此芯片的供電電壓是12 V,其中一片DRV8823與C8051F020的接口如圖2所示。圖中V3P3是DRV8823內置3.3 V基準輸出,芯片與CPU之間采用模擬SPI接口進行通信,即采用C8051F020的兩個I/OP3.6和P3.7引腳模擬與DRV8823通信。C8051F020的MTSDI(P3.7)連接至DRV8823的SDATA,MTSCLK(P3.6)連接至DRV88 23的SCLK,在MTSCLK為上升沿的時候將串行數據移入,SCS作為DRV8823的片選,高電平有效,高電平鎖存串行數據,使用C8051F020的一個I/O口連接SCS即可。

3. 2 限流電阻計算
每個通道電機滿量程電流計算公式如下:

其中,VREFX是采用的基準電壓,這里取芯片的基準電源電壓,3.2
電機命令寄存器如表1所列。以B橋為例,D15~D12固定寫0000,D11是BDECAY模式寫0即可,D10~D8為電流控制位,硬件設置為1.36 A
4 DRV8823編程實現
DRV8823芯片智能化程度高,使用C8051F020的兩個I/O口對其進行寫操作即可實現編程控制。寫操作的命令很少,僅是對一個寄存器進行寫操作,即電機命令寄存器,便可實現每相電機的打開、關閉等功能。編程時應參考芯片資料的時序圖,SSTB信號在原理圖中一直為高,因而串行接口一直有效,并且輸出使能。
4.1 SPIO接口的初始化
DRV8823的初始化要求所有電機都無效(ENBL=0),所有電機的DECAY=0,X12-10設置成001。為節省代碼篇幅,以電機的A橋為例,使用如下代碼完成DRV8823的初始化。

4.2%20DRV8823控制函數
DRV8823驅動函數完成對各路電機的控制,包括正反轉控制、使能控制和關閉控制等功能。函數的輸入參數包括電機編號(1,2,3,4),電機使能位(0為禁止,1為使能),電機正反轉(0為反轉,1為正轉),輸出參數為空。
在程序的編制過程中,要求必須保持其他電機的原狀態,不能對其他不需要操作的電機進行操作,即在操作時會用到大量的邏輯與或操作。在對電機進行控制時,首先要判斷電機的狀態,然后確定相應操作。實現代碼:
電機控制流程圖如圖3所示。

結語
多枚XBT自動投放與測量系統是2010年國家海洋公益性項目“投棄式溫深剖面測量儀產品化研究與示范”所支持的一個研制子項目。2014年3月,本文設計的系統安裝在某海洋調查船上,在南海進行了投放實驗,取得了良好的測量效果,系統利用C8051F020控制兩片DRV8823實現了通過8路直流減速電機控制閥門的自由開啟和關閉,并得到了很好的應用和驗證。與其他多路電機控制設計方案相比,該實現方法具有電路簡單、體積小、控制可靠和操作簡單等特點。
因此,DRV8823為多枚XBT自動投放與測量系統的成功實現提供了很好的幫助,具有較高的工程應用價值。
評論