Motionchip 是一種性能優(yōu)異的專用運(yùn)動(dòng)控制芯片,擴(kuò)展容易,使用方便。本文基于該芯片設(shè)計(jì)了一款可用于直流有刷/無刷伺服電機(jī)的智能伺服驅(qū)動(dòng)器,并將該驅(qū)動(dòng)器運(yùn)用到加氫反應(yīng)器超聲檢測成像系統(tǒng)中,上位機(jī)通過485總線分別控制直流有刷電機(jī)和無刷電機(jī),取得了很好的控制效果,滿足了該系統(tǒng)的高精度要求。
在傳統(tǒng)的電機(jī)伺服控制裝置中,一般采用一個(gè)或多個(gè)單片機(jī)作為伺服控制的核心處理器。由于這種伺服控制器外圍電路復(fù)雜,計(jì)算速度慢,從而導(dǎo)致控制效果不理想。近年來,許多新的電機(jī)控制算法被研究并運(yùn)用于電機(jī)控制系統(tǒng)中,如矢量控制、直接轉(zhuǎn)矩控制等。隨著這些控制算法的日益復(fù)雜,必須具備高速運(yùn)算能力的處理器才能實(shí)現(xiàn)實(shí)時(shí)計(jì)算和控制。為了適應(yīng)這種需要,國外許多公司開發(fā)了控制電機(jī)專用的高檔單片機(jī)和數(shù)字信號(hào)處理器(DSP)?,F(xiàn)在,通常使用的伺服控制器的控制核心部分大都由DSP和大規(guī)??删幊踢壿嬈骷M成,這種方案可以根據(jù)不同需要,靈活的設(shè)計(jì)出性能很好的專用伺服控制器,但是一般研制周期都比較長。
MotionChip的特點(diǎn)
MotionChip是瑞士Technosoft公司開發(fā)的一種高性能且易于使用的電機(jī)運(yùn)動(dòng)控制芯片,它是基于TMS320C240的 DSP,外圍設(shè)置了許多電機(jī)伺服控制專用的可編程配置管腳。TMS320C240是美國TI公司推出的電機(jī)控制專用16位定點(diǎn)數(shù)字信號(hào)處理器,其具有高速的運(yùn)算能力和專為電機(jī)控制設(shè)計(jì)的外圍接口電路。MotionChip很好的利用了該DSP的優(yōu)點(diǎn),并集成多種電機(jī)控制算法于一身,以簡化用戶設(shè)計(jì)難度為目的,設(shè)計(jì)成為一種新穎的電機(jī)專用控制芯片。MotionChip有著集成全部必要的配置功能在一塊芯片的優(yōu)點(diǎn),它是一種為各種電機(jī)類型進(jìn)行快速和低投入設(shè)計(jì)全數(shù)字、智能驅(qū)動(dòng)器的理想核心處理器。具有如下特點(diǎn):
·可用于控制5種電機(jī)類型:直流有刷/無刷電機(jī)、交流永磁同步電機(jī)、交流感應(yīng)電機(jī)和步進(jìn)電機(jī),且易于嵌入到用戶的硬件結(jié)構(gòu)中;
·可以選擇獨(dú)立或主從方式工作,并可根據(jù)需要,設(shè)置成通過網(wǎng)絡(luò)接口進(jìn)行多伺服控制器協(xié)同工作;
·全數(shù)字控制環(huán)的實(shí)現(xiàn),包括電流/轉(zhuǎn)矩控制環(huán)、速度控制環(huán)、位置控制環(huán);
·可實(shí)現(xiàn)各種命令結(jié)構(gòu):開環(huán)、轉(zhuǎn)矩、速度、位置或外環(huán)控制,步進(jìn)電機(jī)的微步進(jìn)控制,并可實(shí)現(xiàn)控制結(jié)構(gòu)的配置,其中包括交流矢量控制;
·可以配置使用各種運(yùn)動(dòng)和保護(hù)傳感器(位置、速度、電流、轉(zhuǎn)矩、電壓、溫度等);
·使用各種通訊接口,可以實(shí)現(xiàn)RS232/RS485通訊、CAN總線通訊;
·基于Windows95/98/2000/ME/NT/XP平臺(tái),強(qiáng)大功能的IPM Motion Studio 高級(jí)圖形編程調(diào)試軟件:可通過RS232快速設(shè)置,調(diào)整各參數(shù)與編程運(yùn)動(dòng)控制程序。其功能強(qiáng)大的運(yùn)動(dòng)語言包括:34種運(yùn)動(dòng)模式、判決、函數(shù)調(diào)用,事件驅(qū)動(dòng)運(yùn)動(dòng)控制、中斷。因此便于開發(fā)和使用。
·可以通過動(dòng)態(tài)鏈接庫TMLlib,利用VC/VB實(shí)現(xiàn)PC機(jī)控制;也可以與Labview和PLC無縫連接,通過動(dòng)態(tài)鏈接庫,用戶可以在上層開發(fā)電機(jī)的控制程序,研究控制策略。
運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)
本文是以MotionChip為控制器核心,直流無刷電機(jī)/有刷電機(jī)/永磁同步電機(jī)為控制對象進(jìn)行伺服驅(qū)動(dòng)器設(shè)計(jì)。設(shè)計(jì)指標(biāo)為:適應(yīng)12—36V寬范圍直流母線電壓輸入,工業(yè)標(biāo)準(zhǔn)5V邏輯電源輸入,最大輸出電流3A,峰值電流6A。在進(jìn)行伺服控制器設(shè)計(jì)之前,根據(jù)MotionChip的特點(diǎn)和伺服電機(jī)的特性進(jìn)行總體功能設(shè)計(jì)如下:
·采用位置環(huán)、速度環(huán)、電流環(huán)的三環(huán)結(jié)構(gòu);三環(huán)都采用PID調(diào)節(jié)器;電機(jī)參數(shù)設(shè)置采用計(jì)算機(jī)輔助計(jì)算和工程整定相結(jié)合的辦法;
·具有通用伺服控制器接口,并可利用提供的人機(jī)接口進(jìn)行獨(dú)立參數(shù)設(shè)置,有網(wǎng)絡(luò)通訊接口進(jìn)行獨(dú)立參數(shù)設(shè)置,有網(wǎng)絡(luò)通訊接口方便外部監(jiān)視和控制。
伺服系統(tǒng)的總體系統(tǒng)結(jié)構(gòu)可以分為:MotionChip最小系統(tǒng)、驅(qū)動(dòng)電路、電流反饋檢測、外部控制接口、通訊接口等,如圖1所示。伺服驅(qū)動(dòng)器的硬件結(jié)構(gòu)分為2個(gè)主要部分:驅(qū)動(dòng)電路部分:主要包括逆變橋、前置驅(qū)動(dòng)、電流檢測;
控制電路部分:包括反饋檢測、外部控制接口、通訊接口、MotionChip最小系統(tǒng)。
控制系統(tǒng)設(shè)計(jì)
在MotionChip的基本系統(tǒng)中,選用美國 Xicor公司的SPI串行EEPROM:X25650來存儲(chǔ)TML運(yùn)動(dòng)指令。該EEPROM的存儲(chǔ)容量為8K×8bit,最大時(shí)鐘頻率可達(dá)5MHz。由于在MotionChip正常運(yùn)行時(shí)指令訪問時(shí)間21ns,所以為了使程序高速有效的運(yùn)行,增加了2片32可×8bit的靜態(tài) RAM:ASC256-12JC,該SRAM的存取時(shí)間為12ns,所以MotionChip對該芯片的存取時(shí)間為12ns,所以MotionChip對該芯片的存取數(shù)據(jù)時(shí)不需要插入等待狀態(tài)。并且該SRAM具有較低的活躍功耗,在待機(jī)狀態(tài)時(shí)可自動(dòng)進(jìn)入更加低功耗的節(jié)能狀態(tài)。MotionChip芯片本身提供了電機(jī)控制專用的接口,包括6路PWM信號(hào),在使用中可以配置作為三相電機(jī)逆變橋的驅(qū)動(dòng)信號(hào)。當(dāng)保護(hù)中斷PDPINT有效或電機(jī)使能信號(hào)ENABLE 無效時(shí),6路PWM信號(hào)立即進(jìn)入高阻狀態(tài),使逆變橋全部截至,電機(jī)停轉(zhuǎn)。另外,MotionChip為每個(gè)PWM輸出對提供了可編程死區(qū)時(shí)間設(shè)置(0— 102μs),所以不需要外部的死區(qū)邏輯電路。碼盤反饋信號(hào)接口有ENCA,ENCB,ENCZ,其中ENCA和ENCB是相位差90°的脈沖信號(hào),ENCZ是碼盤清零信號(hào)。MotionChip可以對ENCZ和ENCB信號(hào)進(jìn)行四倍頻和辨向,然后送入增量計(jì)數(shù)器計(jì)數(shù)產(chǎn)生電機(jī)的位置信號(hào),碼盤清零信號(hào)ENCZ可對計(jì)數(shù)誤差進(jìn)行修正。電機(jī)霍爾反饋信號(hào)HALL1,HALL2,HALL3,是為直流無刷電機(jī)/永磁同步電機(jī)進(jìn)行定位磁極設(shè)計(jì)的。其它重要引腳如DIR、PULSE直接作為電機(jī)脈沖指令的輸入接口。LSP,LSN可用來擴(kuò)展作為運(yùn)動(dòng)系統(tǒng)左、右限位事件的捕捉輸入。MotionChip有2個(gè) 10位的A/D轉(zhuǎn)換器,每個(gè)都內(nèi)建了采樣保持電路,最快采樣速率可達(dá)10kHz。模擬信號(hào)的輸入范圍通過MotionChip參考電平輸入管腳 VREFLO和VREFHI確定。MotionChip可以工作在獨(dú)立運(yùn)行和檢測引腳AUTORUN進(jìn)行方式選擇的,該引腳接高電平,MotionChip工作在從屬方式,接低電平工作在獨(dú)立運(yùn)行方式。在獨(dú)立方式的工作條件下,MotionChip上電后,選檢測到AUTORUN的低電平,進(jìn)入獨(dú)立運(yùn)行方式;然后自動(dòng)從SPI串行EEPROM中的開始執(zhí)行TML程序。
驅(qū)動(dòng)系統(tǒng)設(shè)計(jì)
電機(jī)的驅(qū)動(dòng)主要包括2個(gè)環(huán)節(jié):電機(jī)PWM驅(qū)動(dòng)電路和電流檢測。
電機(jī)的PWM驅(qū)動(dòng)電路如圖2所示。本電路中,無刷直流電機(jī)采用全橋驅(qū)動(dòng),這樣可以使用電機(jī)工作于四象限(正向驅(qū)動(dòng)、制動(dòng)及反向驅(qū)動(dòng)、制動(dòng))。驅(qū)動(dòng)一個(gè)無刷直流電機(jī)需要6路PWM信號(hào),而MotionChip的每個(gè)事件管理模塊(EV)中3個(gè)帶可編程死區(qū)控制的比較單元可以產(chǎn)生獨(dú)立的3對共6路PWM 信號(hào)。所以在電路中,直接選用事件管理模塊B(EVB)中的比較單元來產(chǎn)生6路所需要的PWM信號(hào),其輸出引腳為PWM7~PWM12,其中 PWM7~PWM9輸出設(shè)為驅(qū)動(dòng)MOSFET功率管橋路的上半橋,PWM10~PWM12輸出驅(qū)動(dòng)下半橋。DSP輸出的這兩種3路PWM信號(hào)經(jīng)過 IR2102前置放大后分別驅(qū)動(dòng)MOSFET功率管橋路的上半橋(Q1,Q3,Q5)和下半橋(Q2,Q4,Q6)進(jìn)行電機(jī)的驅(qū)動(dòng)。
電流檢測
電機(jī)電流檢測電路可提供重要的反饋信息,將該信息與來自主控DSP的控制信號(hào)相結(jié)合,可以控制MOSFET或IGBT的柵極驅(qū)動(dòng)芯片并最終調(diào)整電機(jī)速度。如果要實(shí)現(xiàn)過流保護(hù),還必需進(jìn)行電流監(jiān)控,不過對于低端應(yīng)用而言,傳統(tǒng)的過流保護(hù)卻顯得過于昂貴。電流采樣的方案是在逆變橋的下橋臂串一 0.027Ω采樣電阻如圖3(a),采樣電流范圍為0~6.22A,采樣后的電壓放大倍數(shù)為14.63倍,放大電路如圖3(b),并經(jīng)2.5V電壓抬升輸入DSP,所以輸入DSP的電流模擬電壓量為:
UAD=2.5+I×0.027×14.63。
MotionChip AD口的模擬量輸入電壓為0~5V,所以電流采樣經(jīng)量化的值為:
引腳8:RESET,高電平復(fù)位輸出脈沖端。這個(gè)信號(hào)是RESET的反相信號(hào),由RESET通過一個(gè)內(nèi)部的反相器產(chǎn)生。
利用MAX708的1腳,對外接人的信號(hào)可以是振蕩器等轉(zhuǎn)換的信號(hào),每隔一定時(shí)間由CPU復(fù)位振蕩器使其不輸出低電平復(fù)位信號(hào),如CPU死機(jī),一定時(shí)間內(nèi)不輸出復(fù)位電平,則振蕩器輸出低電平使MAX708輸出復(fù)位信號(hào)使CPU復(fù)位。集成MAX708是通電、斷電監(jiān)控電路,在通電和斷電時(shí)可產(chǎn)生復(fù)位信號(hào)輸出,也將可靠復(fù)位CPU。MAX708對電源電壓的監(jiān)視門檻為4.40 V的復(fù)位功能和過程如下:
a) 通電復(fù)位:在接上電源VCC使MAX708通電時(shí),電源VCC從0→5 V,這時(shí)有一個(gè)過渡過程。在過渡過程中的一部分時(shí)間中,存在VCC<4.65 V的情況,則上電比較器就會(huì)輸出低電平送到復(fù)位發(fā)生器中,從而產(chǎn)生200 mS的復(fù)位脈沖輸出。
b) 手動(dòng)復(fù)位:在MR端接一個(gè)按鍵,按鍵另一端接地,則按鍵按下時(shí),會(huì)產(chǎn)生一個(gè)低電平脈沖送到復(fù)位發(fā)生器中,從而產(chǎn)生200 ms復(fù)位脈沖輸出。
c) 電源下降復(fù)位:把電源與電源下降輸入端PFI相連,當(dāng)電源下降,并且有PFI電平小于1.25 V時(shí),就在PFO端輸出低電平。如果把PFO端和MR相連,則使PFO輸出的低電平加到MR端而送入復(fù)位發(fā)生器,因而使復(fù)位發(fā)生器產(chǎn)生200 ms復(fù)位脈沖信號(hào)輸出。
2 基于MAX708的數(shù)據(jù)保護(hù)系統(tǒng)設(shè)計(jì)
在這里,MAX708用于監(jiān)視第2個(gè)電源信號(hào),為處理器提供電壓跌落的預(yù)警功能。利用此功能,系統(tǒng)可在電源跌落時(shí)到復(fù)位前執(zhí)行某些安全操作,如保存參數(shù)、發(fā)送警報(bào)信號(hào)或切換后備電池等數(shù)據(jù)保護(hù)性的操作。如果利用MAX708在電源出現(xiàn)毛刺或停電前把當(dāng)前數(shù)據(jù)保存到E2PROM中,就可有效解決 E2PROM中的數(shù)據(jù)掉失(數(shù)據(jù)保護(hù))問題,特別是在智能計(jì)量裝置(如智能電度表、智能煤氣流量計(jì)、智能水表等)停電時(shí)將當(dāng)前數(shù)據(jù)保存等方面都有較好的應(yīng)用。
使用該電路必須選擇適當(dāng)?shù)念A(yù)警電壓點(diǎn),以保證靠電源的儲(chǔ)能供電情況下,VCC電壓從預(yù)警電壓跌到復(fù)位電壓的維持時(shí)間TB必須足夠長,一般E2PROM的寫周期約為10 ms到20 ms,取TB>200 ms就可確保數(shù)據(jù)穩(wěn)定寫入。
預(yù)警電壓調(diào)整方法如下:當(dāng)VDC等于預(yù)警電壓時(shí),調(diào)整R1和R2使PFI的電壓為1.25 V此時(shí)可檢測PFO,來確認(rèn)內(nèi)部的電壓比較器是否動(dòng)作。
3 結(jié)束語
MAX708除上電復(fù)位和掉電復(fù)位外,還有監(jiān)控系統(tǒng)電源和數(shù)據(jù)保護(hù)的功能。用做監(jiān)控系統(tǒng)電源時(shí),當(dāng)電源測控供電電壓出現(xiàn)異常時(shí),提供預(yù)警指示或中斷請求信號(hào),方便系統(tǒng)實(shí)現(xiàn)異常處理;用做數(shù)據(jù)保護(hù)時(shí),當(dāng)電源或系統(tǒng)工作異常時(shí),對數(shù)據(jù)進(jìn)行必要的保護(hù):如寫保護(hù)、數(shù)據(jù)備份或切換后備電池,同時(shí)當(dāng)系統(tǒng)程序跑飛或死鎖時(shí),看門狗定時(shí)器會(huì)自動(dòng)復(fù)位系統(tǒng),讓系統(tǒng)重新回到正常的工作狀態(tài),程序恢復(fù)正常運(yùn)行。