該電機驅(qū)動器能夠通過I2C接口使用PID算法控制電機,精確控制電機從未如此簡單。
項目描述
這是一款智能電機驅(qū)動器(又稱SAMI),設(shè)計用于運行微型齒輪電機,該電路板的目標(biāo)是通過相應(yīng)的轉(zhuǎn)速反饋對該電機實施PID控制。板子上包含了所有必需的組件,因此可以自行工作運行。
供電和命令發(fā)送都是通過I2C接口。
主機控制器和電機驅(qū)動器之間通過I2C進(jìn)行通信,發(fā)送包括電機速度、轉(zhuǎn)向在內(nèi)的命令。SAMI自動實現(xiàn)PID控制。SAMI上的電路板執(zhí)行具體的電機控制算法,從而減輕了主機控制器的負(fù)荷。您還可以通過I2C讀取電機的狀態(tài)并對它進(jìn)行配置。
SAMI能夠驅(qū)動電機,使軸上負(fù)載走完所需的距離或達(dá)到一定的角度,然后在達(dá)到目標(biāo)值時自動停止。這是機器人技術(shù)的理想選擇,簡化了執(zhí)行精確運動控制所需的許多艱苦工作。而且,可以把多個模塊連接到同一條I2C總線上,注意,這里的多個模塊是指很多電機!
對于任何人來說,制作先進(jìn)的機器人從來沒有這么簡單過!現(xiàn)在,只需要把SAMI這個模塊和你的電機連接到一起即可。
項目細(xì)節(jié)
這是一款設(shè)計用來控制微型齒輪電機的智能電機驅(qū)動器(也稱為SAMI),這塊電路板的目標(biāo)是使用霍爾效應(yīng)傳感器檢測到的轉(zhuǎn)速反饋,輕松地在SAMI上實現(xiàn)PID控制。SAMI有自己的微控制器和H橋,能夠自己完成電機控制和驅(qū)動操作。
主機上的微控制器(或者任何支持I2C端口的系統(tǒng))通過I2C和智能電機驅(qū)動器進(jìn)行通信,發(fā)送包括電機速度、轉(zhuǎn)向在內(nèi)的命令。SAMI自動實現(xiàn)PID控制算法,保持速度,并在電機的動態(tài)運行中增加或減少功率以控制轉(zhuǎn)矩和速度。
此外,該控制器能夠驅(qū)動電機軸上負(fù)載走完所需的距離或角度,然后在達(dá)到目標(biāo)值時自動停止。因此,如果用來驅(qū)動一個輪子,你必須同時制定輪子的直徑和變速比等參數(shù)。
為了感應(yīng)電機的轉(zhuǎn)速,我使用了磁編碼器盤,它沿著磁盤表面極化。因此霍爾效應(yīng)傳感器可以檢測磁盤磁場的變化并將信號發(fā)送到微控制器上。微控制器使用定時器和中斷計算電機轉(zhuǎn)速,微控制器利用轉(zhuǎn)速作為反饋,運行PID控制算法,并處理和主機的通信。
這款智能電機驅(qū)動器的主要設(shè)計思想是用在機器人中,通過使用它來控制機器人的輪子,無論表面是否光滑,電池電量是否充足還是機器人負(fù)荷重量發(fā)生了變化,都可以進(jìn)行精確的運動控制。
此外,它還可以防止因為突然加速或者制動造成齒輪脫載,并避免電流沖擊,這樣可以保證您寶貴的電機的安全。
提供了一個Arduino庫,幫助你方便地使用該智能電機驅(qū)動器。你可以快速、方便地把它插入到大量電機上使用。
特征
安裝在微型直流電機的背面,安裝方便;
可以輕松控制電機的速度和轉(zhuǎn)向;
達(dá)到既定距離或角度時自動停止;
支持多種控制模式,包括帶有或者不帶自動停止功能的簡單PWM控制或PID控制;可添加安全的方向轉(zhuǎn)變功能;
通過I2C進(jìn)行通信,可以通過軟件更改地址;
可同時控制很多電機,最多支持在同一條I2C總線上掛載128個模塊;
可以通過軟件啟動或禁用I2C的內(nèi)部上拉電阻;
可以把配置保存在EEPROM中;
讀取電機的實際轉(zhuǎn)速,并檢查是否發(fā)生了故障;
完全可配置;
易于使用的高精度電機控制;
尺寸小;
提供可用的Arduino庫。
技術(shù)規(guī)格
電機電壓可達(dá)11v;
最大電機連續(xù)電流峰值高達(dá)1.7A和1.8A;
邏輯電壓范圍為3-5v;(稍后的版本經(jīng)測試后可支持到1.8v范圍)
默認(rèn)I2C地址為0x24;
過流保護(hù)和過熱保護(hù);
要復(fù)位默認(rèn)的I2C地址,請在上電時將MCLR焊盤連接到地上;
標(biāo)準(zhǔn)1mm 5針JST連接器。
優(yōu)點
獨立進(jìn)行電機控制;
可實現(xiàn)更平穩(wěn)、更精確的動作控制;
具有電機保護(hù)功能;
解決方案方便易用;
內(nèi)置電機速度反饋;
高響應(yīng)速度的PID控制算法,保持電機速度恒定;
避免出現(xiàn)可能損壞電源或電池的瞬態(tài)電流峰值;
如果事先指定,可自動停在所需的距離或角度上;
與IMU等其他傳感器結(jié)合使用時,可實現(xiàn)性能強大的機器人導(dǎo)航解決方案;
開源設(shè)計。
安裝
要將SAMI安裝到電機上,只需要把它和電機的驅(qū)動線、反饋線焊接在一起,并如下視頻所示放置編碼器。
重要提示:您的電機軸上必須留出足夠的位置,以便放置編碼器!
管腳
通過JST連接器和SAMI進(jìn)行通信;
ICSP管腳用于更新固件;
MCLR管腳用于復(fù)位模塊的默認(rèn)I2C地址。
PCB布局
PCB厚0.8mm,尺寸為10 mm x 20 mm,雙層板。
這是一個還在開發(fā)階段的項目,也是一個開源項目,如果您有任何能夠改進(jìn)它的想法,隨時歡迎修改。你還可以自行調(diào)整硬件和軟件設(shè)計,以支持更大功率的電機,你還可以增加第二個編碼器,甚至可以用它來運行步進(jìn)電機。
-
驅(qū)動器
+關(guān)注
關(guān)注
53文章
8267瀏覽量
146793 -
PID
+關(guān)注
關(guān)注
35文章
1473瀏覽量
85692 -
I2C
+關(guān)注
關(guān)注
28文章
1495瀏覽量
124216
原文標(biāo)題:電機驅(qū)動器還能玩出什么花樣,這個工程師的小項目告訴你
文章出處:【微信號:wwygzxcpj,微信公眾號:電機技術(shù)及應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論