李以聰++戴福全++肖明偉++陳劍枰++陳志偉++吳國安



文章編號:2095-6835(2017)10-0027-02
摘 要:目前,針對協(xié)作機器人的柔順控制、零力控制問題,提出了一種基于以ST公司的STM32為微控制器的協(xié)作機器人機械臂控制系統(tǒng)。該系統(tǒng)采用數(shù)字PID閉環(huán)算法改善機械臂的柔順運動,增強其穩(wěn)定、可靠性能,并加上力矩傳感器或電流檢測電路感知外界的力矩變換情況,補償機械臂的自重,實現(xiàn)零力控制,為機器人的快速示教奠定基礎(chǔ)。實驗結(jié)果表明,將STM32系列微控制器作為主控制器具有可行性,可以應(yīng)用于協(xié)作機器人的機械臂控制系統(tǒng)中,且具有廣闊的應(yīng)用前景,并最終將其運用于實際工業(yè)生產(chǎn)加工中。
關(guān)鍵詞:機械臂;協(xié)作機器人;PID;STM32
中圖分類號:TP242 文獻標識碼:A DOI:10.15913/j.cnki.kjycx.2017.10.027
一直以來,控制器都是機器人控制系統(tǒng)的核心,但是,國外相關(guān)產(chǎn)業(yè)公司對我國實行嚴厲的保密措施。隨著微處理器行業(yè)的快速發(fā)展,市面上陸續(xù)出現(xiàn)了高性能、高性價比的32位微處理器,它們的性能能夠滿足機械臂對控制器的運算需求。針對目前協(xié)作機器人控制系統(tǒng)資源匱乏,價格昂貴且工作不穩(wěn)定等問題,提出了一種改進設(shè)計,以滿足中小企業(yè)對機械臂的控制需求。在設(shè)計該控制系統(tǒng)時,首先提出了電機的硬件驅(qū)動電路設(shè)計方案。主控芯片采用一種抗干擾能力比較強、運算速度快、價格合理的STM32微控制器,相比現(xiàn)在廣泛使用的電機控制的DSP,STM32成本比較低,自帶能產(chǎn)生電機控制所必須的PWM輸出的TIM,且外圍電路較為簡單,適用于機械臂的電機控制。接著分析機械臂電機伺服控制所需要的PID位置環(huán)算法,最后通過實物樣機試驗機械臂的運動柔順度,通過Matlab進行電機旋轉(zhuǎn)位置的數(shù)據(jù)擬合,得出響應(yīng)曲線,并最終證實了該設(shè)計方案的可行性。
1 硬件驅(qū)動電路設(shè)計
機械臂的電機驅(qū)動電路是整個研究的基礎(chǔ),具有良好的啟動和調(diào)速性能,而其穩(wěn)定控制也成了重要的研究對象。
1.1 電機的選型
本文研究選用的是直流有刷電機。與無刷直流電機相比,有刷電機具有更好的啟動和調(diào)速性能以及控制簡單、價格低廉等特性,常被應(yīng)用于對啟動和調(diào)速有較高要求的場合,例如精密機床和工業(yè)機器人裝配等場合。
1.2 電機位置傳感器的選用
編碼器有增量型編碼器和絕對型編碼器2種。增量型編碼器是測量以前一個時刻為基點測角的位移增量,它測量的小角度準,測量的大角度則有誤差累計;絕對型編碼器是測量從開始工作后的角位移量,它測量小角度不準,但是,測量的大角度沒有累計誤差。因為機械臂轉(zhuǎn)動角度不大,所以,取舍后采用增量型編碼器,以減少小角度的測量誤差。
1.3 電機控制電路設(shè)計
電機驅(qū)動采用的是H橋電路,選用4個常見的功率開關(guān)器件MOSFET作為H橋中的4條腿,電機為H中的橫桿。另外,采用2塊IR2106S作為自舉電路的驅(qū)動芯片,提供對2對上下橋臂的開斷控制。由于單片機輸出的PWM信號功率不足以驅(qū)動IR2106S,因此,需配合芯片74ACT244的驅(qū)動增強電路,將單片機輸出信號驅(qū)動增強再后引入IR2106S的輸入端。驅(qū)動電路如圖1所示。
2 系統(tǒng)軟件算法設(shè)計
如果硬件作為控制的基礎(chǔ),那么,軟件算法則為控制的核心,控制著機械臂控制系統(tǒng)的中樞神經(jīng)。機械臂控制主要包括以下3點:①實時性。在控制機械臂時,要想實現(xiàn)實時控制,就需要確保機械臂數(shù)據(jù)的實時性。只有確保設(shè)備的整體實時性,才能確保機械臂不會出現(xiàn)死區(qū)等故障。②穩(wěn)定性。穩(wěn)定性是判定一個檢驗程序的重要指標,為了提高其穩(wěn)定性,在設(shè)計程序的過程中,需要考慮運行時可能出現(xiàn)的不正常問題,并加以解決。③可再開發(fā)性。好的程序軟件不是一次就可以設(shè)計調(diào)試完成的,需經(jīng)過多次修改后才能達到系統(tǒng)的設(shè)計要求。所以,在開發(fā)過程中,要規(guī)范程序設(shè)計結(jié)構(gòu),以便多次調(diào)試。
系統(tǒng)軟件主要由主程序和中斷子程序構(gòu)成,如圖2所示。為了控制機械臂電機和檢測電機的實時位置,主程序主要完成系統(tǒng)初始化和電機控制參數(shù)初始化,包括配置必要的TIM1的互補PWM輸出和TIM3的電機編碼器捕獲模式等。中斷服務(wù)子程序主要采用了2個中斷,即接受電機控制指令的CAN中斷和TIM2定時PID運算中斷。其中,TIM2定時中斷是10 ms一次。在主循環(huán)中,等待CAN口接收到控制指令后,進入中斷,在中斷子程序中判斷是否符合控制指令協(xié)議,并提取機械臂相關(guān)的控制量。等待TIM2進入中斷后,提取電機編碼器反饋的位置數(shù)據(jù),進行PID運算,得出當前PWM控制量,將當前PWM控制量配置如TIM1后,將控制電機轉(zhuǎn)到指定位置。
PID控制器是通過比例、積分、微分3個環(huán)節(jié)的串聯(lián)控制系統(tǒng)偏差的控制器,如圖3所示。STM32作為一個微控制器,無法直接對偏差做積分、微分,只能通過轉(zhuǎn)換的方法,在一定時間里處理采集到的數(shù)據(jù),使系統(tǒng)作出響應(yīng),時間分割得越小,系統(tǒng)響應(yīng)越快,機械臂控制就越流暢。如果要采用PID算法,只需利用微積分思想,把時間分割得很小,將當前的編碼器位置減去電機的指定位置做誤差,對誤差求和來代替積分,對當前誤差和上一次誤差差分來代替微分。時間分割得越小,系統(tǒng)響應(yīng)也就越快,電機超調(diào)量也就越小,機械臂運動就會越流暢。在程序中,利用TIM2產(chǎn)生10 ms定時中斷,在中斷中做PID運算,就相當于對時間進行細化分割,再對各項值乘上相應(yīng)的比例、積分、微分系數(shù)。與此同時,需要對積分和PWM控制量限位,防止過飽和造成系統(tǒng)響應(yīng)滯后。
3 實驗調(diào)試
實際調(diào)試樣機為如圖4所示的自由度機械臂。為了確定PID各個參數(shù)的取定,取單個機械臂系統(tǒng)分析,程序中先給定PID比例系數(shù),積分系數(shù)和微分系數(shù)先取0,在電腦sscom32串口通訊軟件輸入指令后,機械臂開始運動,最終旋轉(zhuǎn)穩(wěn)定后,保存串口窗口返回的位置信息,導入Matlab進行數(shù)據(jù)擬合,得到擬合后的曲線,并適當增大比例系數(shù),重復多次,觀察對比擬合后的曲線,如圖5所示。如果曲線出現(xiàn)超調(diào)量增大,振蕩次數(shù)增加,調(diào)節(jié)時間增加的情況,就需要適當減小比例系數(shù),增大積分系數(shù),從而減小穩(wěn)態(tài)誤差。如果PI控制效果不夠理想,可以適當增大微分系數(shù),減小超調(diào)量,以增強系統(tǒng)的穩(wěn)定性。如果結(jié)合比例、積分、微分后,控制效果始終不理想,可以適當縮短采樣時間,也就是TIM2的定時周期,從而提高響應(yīng)速度。如果最終得到的曲線超調(diào)量不大,震蕩次數(shù)少,則可以確定PID參數(shù)大小。
4 結(jié)論
實驗證明,本文的協(xié)作機器人機械臂控制系統(tǒng)設(shè)計可行,可以滿足中小型協(xié)作機器人對機械臂控制的需求,具有控制精準、動作靈活等優(yōu)點。加入力矩傳感器,即可實時檢測機械臂的力矩,實現(xiàn)對力矩的限制,并可實現(xiàn)對機械臂的零力控制。一旦力矩超出了預設(shè)的力矩值,機械臂則停止工作,以防誤傷工作人員。在此過程中,仍然存在一些不足需要改進,主要包括以下2點:①算法的完善。對算法的冗余和處理方面仍需改進,以便后期的參數(shù)調(diào)試,改善機械臂的運作。②電路的簡化。電路板走線布局在滿足功率要求的前提下,需要繼續(xù)簡化,改善電路板工作的穩(wěn)定性。
針對上述問題,相關(guān)工作人員要不斷改進和完善,逐漸提高機械臂的穩(wěn)定性和可靠性。
參考文獻
[1]王直,丁超.基于STM32的自動涂裝機伺服控制系統(tǒng)研究[J].江蘇科技大學學報(自然科學版),2000(4).
[2]吳紅星.電機驅(qū)動與控制專用集成電路及應(yīng)用[M].北京:中國電力出版社,2006.
[3]王曉明.電動機的單片機控制[M].第二版.北京:北京航空航天大學出版社,2007.
[4]崔更申,李傳明,尹鵬,等.基于STM32F4的電機控制系統(tǒng)設(shè)計計算機測量與控制[J].計算機測量與控制,2015,23(10):31.
[5]吳大衛(wèi).基于開放式運動控制器的數(shù)控系統(tǒng)的硬件設(shè)計[J].組合機床與自動化加工技術(shù),2006(12).
[6]謝自美.電子線路設(shè)計·實驗·測試[M].第二版.武漢:華中理工大學出版社,2000.
[7]趙亮亮,馬振書,穆希輝,等.危險作業(yè)機器人機械臂設(shè)計及其運動學分析[J].機械設(shè)計與制造,2011(8).
〔編輯:白潔〕