引言
對于機器人控制技術(shù),實時性和穩(wěn)定性是研究的重點?,F(xiàn)階段,機器人控制的主要方法是在離線狀態(tài)下對步態(tài)進行規(guī)劃,并在主控機上對機器人的運動進行實時的補償,這種處理方法對處理器的運算速度和處理能力提出了很高的要求。傳統(tǒng)的機器人控制器大多以80C196系列單片機作為處理器,當(dāng)采用12MHz晶振時,其狀態(tài)周期為167ns,機器周期為1ms,不能滿足機器人控制的需要。
DSP芯片處理速度可以達到幾納秒,甚至更高,非常適合于機器人控制。因此,本文選用DSP來代替原有的單片機,同時借助底層電壓反饋技術(shù),設(shè)計出一種分布式機器人多軸運動控制器。
控制系統(tǒng)結(jié)構(gòu)與功能
本機器人控制系統(tǒng)結(jié)構(gòu)是一個典型的“PC+運動控制器”模式,其中,主控計算機要求體積小、運算速度快,通常采用嵌入式工控機。主要負責(zé)整個系統(tǒng)的在線運動規(guī)劃、動作級運動控制、語音交互控制、視覺導(dǎo)引控制以及人機交互等功能。底層控制單元以控制器為核心,采用電壓反饋的方式對各運動軸系進行控制,具體結(jié)構(gòu)如圖1所示。控制器和主控計算機通過CAN總線相連。這種通信方式降低了連線的復(fù)雜程度,提高了通信的速度,增強了系統(tǒng)的穩(wěn)定性。此外,由于只用兩根線進行通信,結(jié)構(gòu)也十分靈活。
控制器是整個控制系統(tǒng)的核心,通過接收主控計算機的控制命令對各關(guān)節(jié)執(zhí)行軸系進行控制,同時把底層信息反饋給主控計算機,實現(xiàn)大回路反饋,以便于主控計算機協(xié)調(diào)規(guī)劃,統(tǒng)一管理??刂破鞯目刂菩阅苤苯雨P(guān)系到機器人的運動能力,本文專門設(shè)計了基于DSP和電壓反饋的多軸運動控制器。
控制器設(shè)計
機器人的各種運動由各個關(guān)節(jié)軸系完成,每個軸系具有一個自由度,可以完成某一方向的轉(zhuǎn)動任務(wù),所有軸系同時協(xié)調(diào)工作就可以完成相對復(fù)雜的運動。本文研究的所有軸系均由PWM脈沖信號驅(qū)動控制。
本多軸運動控制器結(jié)構(gòu)如圖2所示。整個控制器以DSP為核心,分為四大部分: DSP主處理器模塊主要完成信息處理和各種控制功能;A/D轉(zhuǎn)換模塊為主處理器提供運動軸系的位置信息;外圍電路完成電壓監(jiān)控、參數(shù)存儲、電路譯碼、光電隔離等功能;通信模塊負責(zé)與主控計算機進行信息交互。
DSP主處理器模塊
DSP主處理器是整個控制器的核心,負責(zé)各種信息的處理,同時與主控計算機進行通信,其運算速度、對信息的處理能力等方面直接影響控制器的性能。本文選用的是TI公司的TMS320LF2407A芯片,該產(chǎn)品集實時處理能力和控制器外設(shè)于一身,非常適用于工業(yè)控制。
在本文設(shè)計的控制器中,TMS320LF2407A 工作電壓為3.3V、系統(tǒng)時鐘為40MHz,數(shù)據(jù)總線與A/D轉(zhuǎn)換模塊相連,接收A/D轉(zhuǎn)換結(jié)果;地址總線和控制總線與外圍電路中的譯碼部分相連,完成各種譯碼和控制功能;PWM輸出端口為運動軸系提供控制信號;通信接口與通信模塊相連,負責(zé)與主控計算機交互信息;中斷接口與譯碼電路相連,接受A/D轉(zhuǎn)換結(jié)束信號觸發(fā)的外部中斷;復(fù)位接口連接外部看門狗電路,當(dāng)外部電壓超出規(guī)定的范圍時復(fù)位主處理器;串行接口連接外部存儲器,從外部存儲器中讀取控制算法所需的參數(shù)。
A/D轉(zhuǎn)換模塊
外部電壓傳感器把運動軸系的位置信息轉(zhuǎn)換成電壓信號,A/D轉(zhuǎn)換模塊通過對此電壓信號進行A/D轉(zhuǎn)換,為主處理器提供能夠識別的數(shù)字信號。本文設(shè)計的A/D轉(zhuǎn)換電路如圖3所示。ADG508A為8選1多路選擇器,對輸入的多路電壓進行選擇,選出一路電壓送轉(zhuǎn)換器。AD622為電壓放大器,同時具有濾波功能,可以把輸入的-5V~+5V電壓放大到-12V~+12V,以提高A/D轉(zhuǎn)換的精度。AD976為16位A/D轉(zhuǎn)換器,把放大后的電壓轉(zhuǎn)換成+5V數(shù)字信號。74LVTH245為8位電平轉(zhuǎn)換器,把+5V數(shù)字信號轉(zhuǎn)換成主處理器能夠接受的+3.3V數(shù)字信號送TMS320LF2407A,使用時需兩塊并聯(lián)組成一個16位的電平轉(zhuǎn)換器。
外圍電路模塊
外圍電路模塊主要負責(zé)控制器的電壓監(jiān)控、參數(shù)存儲、電路譯碼、光電隔離等功能。其中,電壓監(jiān)控任務(wù)由外部看門狗電路完成,本文選用的是DS1834A芯片。此芯片可同時對電路板上+5V和+3.3V電壓進行監(jiān)控,電壓安全范圍可進行調(diào)節(jié),還具有手動復(fù)位功能。如果電壓超出安全范圍,則在相應(yīng)引腳產(chǎn)生低電平復(fù)位信號,直到電壓恢復(fù)正常后再經(jīng)過350ms,復(fù)位引腳才恢復(fù)高電平。若手動復(fù)位則兩個復(fù)位引腳同時產(chǎn)生復(fù)位信號。
DSP主處理器執(zhí)行控制算法所需要的參數(shù)存放在外部存儲器X25650中,DSP通過串行外設(shè)接口(SPI口)模塊與X25650相連,從中讀取需要的參數(shù)數(shù)據(jù)。
電路譯碼功能由一塊CPLD實現(xiàn),主要功能包括為ADG508A提供端口選擇信號、為AD976提供轉(zhuǎn)換開始信號、為74LVTH245提供輸出使能信號、接收AD976轉(zhuǎn)換結(jié)束信號并為DSP提供A/D轉(zhuǎn)換結(jié)束中斷信號、接收DS1834A的復(fù)位信號并為DSP提供復(fù)位脈沖信號等。
光電隔離器件選用高速光耦6N137,主要是為控制器與外部環(huán)境提供隔離,包括PWM脈沖控制信號的隔離和CAN總線通信的隔離。
通信模塊
通信模塊主要是與主控計算機進行通信,接收主控計算機的命令并為主控計算機提供必要的數(shù)據(jù)。由于TMS320LF2407A內(nèi)部帶有CAN總線通信模塊,所以只需外接一塊CAN收發(fā)器就可以與外界進行通信。收發(fā)器選用的是SN65HVD230芯片,此芯片與傳統(tǒng)CAN收發(fā)器PCA82C250兼容,且支持3.3V電壓,可直接與TMS320 LF2407A連接。為提高通信質(zhì)量,中間需用光耦進行隔離。
控制流程與分析
此控制器可同時為8路軸系提供控制功能,其工作流程如圖4所示,圖中虛線所包圍部分的功能由控制器完成。
具體工作過程為:系統(tǒng)開始運行并完成初始化工作;電壓傳感器把執(zhí)行軸系的位置信息轉(zhuǎn)換成電壓信號;DSP主處理器向ADG508A發(fā)送選擇信號,選通一路電壓信號經(jīng)放大器AD622放大后送AD976進行A/D轉(zhuǎn)換。選擇哪一路電壓由主處理器地址線經(jīng)譯碼后對ADG508A的端口選擇位進行控制,通常是八路輪流選擇。AD976的轉(zhuǎn)換起始也由主處理器控制,轉(zhuǎn)換結(jié)束時發(fā)出結(jié)束信號,經(jīng)譯碼后提供給主處理器產(chǎn)生外部中斷,主處理器在中斷子程序中通過啟動電平轉(zhuǎn)換電路讀取轉(zhuǎn)換后的數(shù)據(jù)。AD976的最高轉(zhuǎn)換速率為100KSPS,此速率下,8路同時轉(zhuǎn)換,每一路的轉(zhuǎn)換速率為12.5KSPS,完全可以滿足控制的需要。
結(jié)語
本文設(shè)計的控制器,采用先選路、再放大、最后轉(zhuǎn)換的方式為DSP主處理器提供需要的位置信息。整個控制器結(jié)構(gòu)簡單靈活,工作穩(wěn)定可靠,非常適用于機器人控制,經(jīng)實踐證明,此方法是行之有效的。此控制器最多可同時控制8路軸系,可根據(jù)實際情況進行選擇,單路轉(zhuǎn)換速率最高達100KSPS。同時,本設(shè)計還可以方便地移植到其它類似的控制機構(gòu)中去,以對各種PWM脈沖驅(qū)動的軸系進行控制,是一種多功能通用型控制器?!?
參考文獻
1 方海軍等.基于CAN總線的自主式仿人型機器人控制系統(tǒng).機器人,2002,24(1)
2 曹禺.仿人步行機器人機載運動控制器的設(shè)計與應(yīng)用.長沙:國防科技大學(xué)機電工程與自動化學(xué)院檔案室(內(nèi)部資料),2002
3 石宗英等.基于現(xiàn)場總線的仿人型機器人控制系統(tǒng).工程與應(yīng)用,2002,(2)
4 饒運濤等.現(xiàn)場總線CAN原理與應(yīng)用技術(shù).北京:北京航空航天大學(xué)出版社,2003
5 江思敏等.TMS320LF240x DSP硬件開發(fā)教程.北京:機械工業(yè)出版社,2003
6 黃正瑾等.CPLD系統(tǒng)設(shè)計技術(shù)入門與應(yīng)用.北京:電子工業(yè)出版社,2002