無刷電機(jī)控制器驅(qū)動(dòng)部件包括:電源電路、主控制器,電機(jī)驅(qū)動(dòng)電路,驅(qū)動(dòng)器系統(tǒng)電壓信號(hào)采集電路,CAN通信電路和霍爾傳感器,一般安裝在無刷電機(jī)的端部,客戶可根據(jù)自身搭配的無刷電機(jī)選用有感或無感。
無刷電機(jī)控制器驅(qū)動(dòng)系統(tǒng)的軟件設(shè)計(jì)中,開/閉環(huán)控制功能模塊程序設(shè)計(jì),系統(tǒng)監(jiān)控功能模塊程序設(shè)計(jì),驅(qū)動(dòng)器功能分配,軟啟動(dòng)實(shí)現(xiàn)原理和代碼的實(shí)現(xiàn),下面我們來講述無刷電機(jī)控制器驅(qū)動(dòng)系統(tǒng)CAN通信設(shè)計(jì),其中包括STM32的bxCAN概述和在EZCAN通信協(xié)議基礎(chǔ)上實(shí)現(xiàn)上位機(jī)對(duì)電機(jī)的控制。
主控制器是72MHZ的Cortex-M3內(nèi)核的STM32F103C8T6芯片,48個(gè)引腳,F(xiàn)LASH的容量是64KB,SRAM容量是20KB左右,工作溫度為-45℃-85℃,如使用TIMER產(chǎn)生PWM波,通過ADC讀取電流電壓信號(hào)對(duì)電路進(jìn)行保護(hù),使用bxCAN進(jìn)行驅(qū)動(dòng)器與上位機(jī)的CAN通信,通過CAN通信實(shí)現(xiàn)程序的內(nèi)存讀寫擦除等功能。
那么,無刷電機(jī)控制器主要有哪幾個(gè)模塊組成呢?
主要包括算法層、驅(qū)動(dòng)層和應(yīng)用層,其中驅(qū)動(dòng)層有5個(gè)模塊,這5個(gè)模塊分別負(fù)責(zé)著各自的工作。
1、用于電機(jī)的閉環(huán)反饋控制以及位置環(huán)控制——霍爾測試速模塊;
2、溫度、電壓、外部模擬信號(hào)和內(nèi)部電位器采集,輸入信號(hào)和條線設(shè)置采集及LED控制——板級(jí)驅(qū)動(dòng)模塊;
3、一些電機(jī)驅(qū)動(dòng)函數(shù)——電機(jī)驅(qū)動(dòng)模塊;
4、ADC采樣,采樣結(jié)果用于監(jiān)控線程來對(duì)驅(qū)動(dòng)器做保護(hù)等——電流采集模塊;
5、用于上位機(jī)通過USB轉(zhuǎn)CAN設(shè)備對(duì)驅(qū)動(dòng)系統(tǒng)進(jìn)行實(shí)時(shí)控制和速度圖形化顯示——CAN通訊模塊;
無刷電機(jī)控制器的CAN通訊有哪些特點(diǎn)?
1、多主控制。總線空閑時(shí),所有單元都可發(fā)送消息,而兩個(gè)以上的單元同時(shí)發(fā)送消息時(shí),根據(jù)標(biāo)識(shí)符(ID, 非地址)決定優(yōu)先級(jí);
2、系統(tǒng)柔軟性。在總線上添加單元時(shí),以連接的其他單元的軟硬件和應(yīng)用層都不需要做改變;
3、速度快,距離遠(yuǎn)。1Mbps(距離<40m),最遠(yuǎn)可達(dá)10KM(速率<5Kbps)。
4、具有錯(cuò)誤檢測/錯(cuò)誤通知和錯(cuò)誤恢復(fù)功能。
5、故障封閉功能。CAN可以判斷出錯(cuò)誤的類型是總線上數(shù)據(jù)錯(cuò)誤(如外部噪聲等)還是持續(xù)的數(shù)據(jù)錯(cuò)誤(如單元內(nèi)部故障、驅(qū)動(dòng)器故障、斷線等)。
6、連接節(jié)點(diǎn)多。CAN總線可同時(shí)可同時(shí)連接多個(gè)單元。