張 威
青島職業(yè)技術(shù)學(xué)院 山東青島 266555
作為一種結(jié)合路徑規(guī)劃、環(huán)境感知以及定位導(dǎo)航等多種功能為一體的機器人自動化設(shè)備,隨著近幾年P(guān)LC技術(shù)的發(fā)展,將該技術(shù)應(yīng)用到機器人控制領(lǐng)域當(dāng)中,和傳統(tǒng)機器人控制線路兩者進行對比發(fā)現(xiàn),基于PLC技術(shù)的機器人控制系統(tǒng),具備較強的柔性和擴展性,能夠從一定程度上促進機器人控制系統(tǒng)的運行安全性與可靠性[1]。同時,這對企業(yè)生產(chǎn)效率以及動態(tài)監(jiān)管方面具有一定的顯示意義。
首先,機器人的控制系統(tǒng)結(jié)構(gòu)主要有硬件和軟件等兩個部分共同構(gòu)成。其中,機器人控制系統(tǒng)硬件,借助PLC核心控制器、電機等來實現(xiàn)機器人驅(qū)動和通信。軟件部分,借助PLC技術(shù),實現(xiàn)了對機器人的控制程序進行讀取,主要體現(xiàn)在對機器人的運動控制程序讀取。其次,從本質(zhì)上來看機器人的運動是通過核心控制器、控制參數(shù)、電信號等,在運動控制系統(tǒng)的作用下實現(xiàn)機器人運動[2]。因此,在設(shè)計時需要根據(jù)不同的應(yīng)用場景對其進行設(shè)計。
在進行機器人控制系統(tǒng)進行設(shè)計時,需要確保控制系統(tǒng)的運行可靠性以及精確性得到保障。這樣一來,可以使得機器人控制系統(tǒng)能夠正確地實現(xiàn)上位機所下達的對應(yīng)指令,從而實現(xiàn)機器人運動。同時,針對機器人控制系統(tǒng)的設(shè)計,應(yīng)當(dāng)擁有良好的通信能力、安全性、擴展性、柔性等特點,具體控制系統(tǒng)原理見圖1所示。

圖1 機器人控制系統(tǒng)的原理示意圖
該控制系統(tǒng)的設(shè)計,首先是由五個部分構(gòu)成:PLC主控制器、電機驅(qū)動器、傳感器、上位機和安全傳感器等。其中,PLC主控制器作為機器人控制系統(tǒng)的核心部分,主要實現(xiàn)了對控制信號、運動程序控制、遠程通信和輸出控制指令等方面的接收。上位機設(shè)計,主要實現(xiàn)了對運行任務(wù)、功能參數(shù)等方面的設(shè)置,以及對系統(tǒng)運行狀況的實時監(jiān)控。傳感器的設(shè)計,通過將檢測的信號傳遞給主控制器,在運動算法的作用下,實現(xiàn)機器人左右驅(qū)動輪控制,以此完成機器人移動。而安全傳感器的設(shè)計,主要負(fù)責(zé)對機器人在移動方向周圍的環(huán)境情況進行檢測,以此減少機器人移動過程中存在的障礙。
該技術(shù)是機器人控制系統(tǒng)的核心部分,結(jié)合所編寫的程序可以通過掃描的方式來實現(xiàn)機器人移動。其工作原理主要包含了采樣輸入、用戶程序執(zhí)行以及輸出刷新等三個部分。其中,從采樣輸入階段方面來看,通過PLC對機器人的各項戶數(shù)進行掃描讀取,并將最后讀取的數(shù)據(jù)存儲在PLC的I/O映像區(qū)域當(dāng)中。然后,PLC會結(jié)合特定的順序,對用戶所編寫的梯形圖進行逐一掃描,并結(jié)合該步驟,對梯形圖之間的各個接觸點的控制線路進行讀取和運算,并將其結(jié)果更新在系統(tǒng)狀態(tài)當(dāng)中。以此來判斷是否對I/O區(qū)中的機器人狀態(tài)進行更新,或者是按照用戶的指令進行執(zhí)行等。當(dāng)以上程序完成之后,PLC主控制系統(tǒng)就會自動進入輸出刷新階段,而系統(tǒng)會對所保存的機器人運行數(shù)據(jù)和狀態(tài)、電路等實現(xiàn)對機器人各個關(guān)節(jié)軸的設(shè)計。
首先,本文的機器人控制系統(tǒng)的硬件部分設(shè)計,主要包含了鋰電池、PLC主控制器、傳感器、觸摸屏和驅(qū)動器以及伺服電機等六個部分構(gòu)成。并且PLC控制器擁有三路高速脈沖輸出接口,其中最高的輸出頻率可以達到100KHZ,還能夠兼容絕對控制模塊、自動控制模式以及手動控制模式。其次,基于PLC技術(shù)的控制系統(tǒng),可以利用運動控制向?qū)В杆賹崿F(xiàn)并完成機器人運動控制組態(tài),并借助自帶的以太網(wǎng)和通信接口等實現(xiàn)遠程通信服務(wù)。此外,磁位傳感器的作用主要通過對磁場信號進行感應(yīng),并將其傳輸?shù)娇刂葡到y(tǒng)當(dāng)中。簡單來說該傳感器的作用是為PLC控制器提供引導(dǎo)信號[3]。
為保障控制系統(tǒng)和機器人外圍接口兩者之間的通信,通過利用CSMACD方式以及非破壞總線優(yōu)先逐位仲裁技術(shù),為機器人總線傳輸?shù)膬?yōu)先級信息傳輸提供保障,以此使得用戶對機器人的實時性控制得到保障。而基于CAL子協(xié)議的CanOpen協(xié)議,具備良好的模塊性和適應(yīng)性。因此,機器人控制系統(tǒng)過程當(dāng)中,可以有效促進設(shè)備和設(shè)備之間通過交換通信對象的方式實現(xiàn)通信,并利用該協(xié)議構(gòu)建出一個對應(yīng)的通信模型。這樣一來,就可以使得基于PLC技術(shù)設(shè)計的機器人控制系統(tǒng)和外圍I/O接口之間的通信得到保障。并且,最后使得其通信更加具備良好的穩(wěn)定性。
本文針對伺服系統(tǒng)的設(shè)計,主要選擇利用三菱企業(yè)的交流伺服作為機器人控制系統(tǒng)的伺服驅(qū)動器。首先,該驅(qū)動器具備較為強大的性能和多種功能,不僅為用戶提供基礎(chǔ)的控制模式,還增添了位置控制和速度控制以及速度轉(zhuǎn)矩控制等多種高級控制方式供用戶選擇,從一定程度上促進其控制精度以及范圍得到了提高。其次,該伺服系統(tǒng)擁有通信功能,能夠?qū)崿F(xiàn)與RS232C兩者進行串口通信。最后,該伺服系統(tǒng)還擁有編碼器,能夠通過加裝電池,構(gòu)建絕對位置系統(tǒng),以此提高對機器人控制能力。
機器人控制系統(tǒng)的軟件設(shè)計,作為該系統(tǒng)的核心部分。本文根據(jù)IEC61131-3標(biāo)準(zhǔn)的CoDeSys系統(tǒng),實現(xiàn)了對PLC主控制程序的編寫。其中,CoDeSys系統(tǒng)幾乎包含了所有基本模塊,如力矩控制模塊、速度控制模塊、電機位置和插補模塊等。可以結(jié)合用戶的實際需求來實現(xiàn)控制模塊編寫,以此為用戶提供個性化服務(wù)。并且,通過該系統(tǒng)還可以實現(xiàn)PLC和其他接口之間的互相通信。最后,利用插補模塊,實現(xiàn)伺服電機運動軌跡的控制。
當(dāng)機器人控制系統(tǒng)啟動之后,需要對其控制程序進行初始化設(shè)置,以及傳感器周圍是否存在障礙物進行檢測。但所有啟動條件均滿足之后,可以通過設(shè)定的磁條,控制機器人進行移動。不過,在機器人移動過程當(dāng)中,受其左、右輪所處的地面平整度等方面的影響,會存在一定的累積誤差,因此會出現(xiàn)機器人行駛偏離預(yù)定軌跡的現(xiàn)象[4]。這時就需要通過系統(tǒng)對其進行調(diào)整,從而保證機器人能夠沿著預(yù)定的線路進行運動。
代碼編譯模塊以及解碼模塊的設(shè)計中,代碼編譯主要通過利用高級機器人語言來實現(xiàn)機器人控制程序編寫,并將其轉(zhuǎn)化成G代碼(數(shù)控程序)的過程。首先,需要通過單個數(shù)組,實現(xiàn)對機器人控制程序的指令以及變量和值分進行分別保存,接著將機器人的每一天動作運動控制程序進行G代碼轉(zhuǎn)換,然后將其保存在對應(yīng)的數(shù)據(jù)存儲器當(dāng)中[5]。其次,利用CoDeSys工具,實現(xiàn)對代碼的編譯。具體數(shù)據(jù)結(jié)構(gòu)定義如:
typedef struct ROBOT PARAM{
String strComm;
String strChar;
String fVvalue;
} ROBOT_ PARAM;
而代碼的解碼模塊設(shè)計,主要是由于機器人控制程序中的插補程序無法通過直接讀取文本的形式顯示為G代碼,因此,就需要借助對應(yīng)的解碼程序?qū)⑺x取的文本轉(zhuǎn)化為G代碼,這樣就能夠?qū)崿F(xiàn)對機器人控制程序進行插補程序識別。
該運動控制算法的設(shè)計,主要作用于機器人的運動控制。通過利用機器人控制系統(tǒng)與控制算法,能夠保障機器人可以沿著預(yù)定的路線實現(xiàn)精準(zhǔn)運行到指定的終點。一般情況下,機器人常見的運行路線主要分為直線和彎道等兩種情況,見圖2所示。

圖2 機器人運動路徑示意圖
從圖2中可以得知,機器人的直線運動由A來表示,其彎道運行則是由B來表示。因此,在機器人運行過程當(dāng)中,將其左邊輪子的速度設(shè)為υL,將右邊輪子的速度設(shè)定為υR,并將該機器人的運動速度設(shè)置υ,用R來表示機器人的轉(zhuǎn)彎半徑,用ωO來表示機器人的角速度。因此,當(dāng)機器人進行直線移動時,其左邊輪子的運行速度應(yīng)當(dāng)和右邊相等。當(dāng)轉(zhuǎn)彎時,機器人的運動軌跡會形成圓弧狀,并以機器人自身中心為回轉(zhuǎn)的中心點,那么左輪的速度會比右邊輪子快[6]。并且,兩者對應(yīng)的角速度相等,具體公式為:
此外,當(dāng)υL/υR大于1時,該機器人會向前運動并且向右方向轉(zhuǎn)彎。當(dāng)0小于υL/υR小于1時,機器人會呈現(xiàn)向前運動,且會向左轉(zhuǎn)動態(tài)。因此,通過分析發(fā)現(xiàn),對該機器人的兩個驅(qū)動輪的速度差進行控制,可以控制機器人實現(xiàn)前進、后退以及左右運轉(zhuǎn)以及直行等運行狀態(tài)。
觸摸屏設(shè)計實現(xiàn)了人機界面交互,簡單來說就是為用戶和控制系統(tǒng)兩者交互提供了操作窗口。因此,該觸摸屏監(jiān)控界面的設(shè)計,促使其具有工作任務(wù)配置、機器人運動路徑選擇規(guī)劃、報警顯示功能以及操作權(quán)限配置等功能。本文機器人操作系統(tǒng)人機交互系統(tǒng)主要利用MCGS軟件以及昆侖通態(tài)嵌入式一體化觸摸屏,實現(xiàn)了觸摸屏設(shè)計[7],并通過通信接口PLC控制器實現(xiàn)了通信,以此將機器人自身的具體狀態(tài)實時顯示在屏幕窗口上。這樣一來,就能夠讓用戶更加直觀地獲取機器人的系統(tǒng)信息,并對其各種類型的運行參數(shù)進行配置。
該部分的設(shè)計,在機器人運行過程當(dāng)中發(fā)生故障時,通過觸摸屏可以及時報警并反饋給管理操作人員,這樣不僅可以及時地消除故障問題,還能夠降低減少損失。其設(shè)計原理是:首先當(dāng)機器人出現(xiàn)故障異常問題時,就會在顯示屏界面彈出報警畫面,然后將報警內(nèi)容傳遞給管理員。當(dāng)故障解決后,報警就會被復(fù)位,而其內(nèi)容會消失,并被記錄在報警歷史信息當(dāng)中,方便后期查詢。
基于PLC技術(shù)的機器人控制系統(tǒng)仿真,本文通過利用計算機Matlab軟件[8]實現(xiàn)了機器人虛擬模型設(shè)計,并借助該仿真軟件實現(xiàn)控制系統(tǒng)的動態(tài)系統(tǒng)的建模和仿真,從而判斷機器人的運行性能。經(jīng)過仿真結(jié)果表明,該機器人控制系統(tǒng)的設(shè)計在機器人中的應(yīng)用具有良好的性能和擴展性。
在針對機器人進行安裝調(diào)試過程當(dāng)中,不能夠直接利用220V電壓,需要借助變壓器進行電壓轉(zhuǎn)換。在控制系統(tǒng)安裝時,為了進一步降低數(shù)據(jù)傳輸對機器人的干擾使其自動化水平下降,需要在安裝前對系統(tǒng)程序進行調(diào)試。當(dāng)機器人本體以及控制系統(tǒng)安裝完成之后,先對其電路、電源以及電機進行檢測,以此來確保電源的輸入和輸出正常。然后,結(jié)合對應(yīng)的系統(tǒng)設(shè)置教程,通過手動操作模式,進行機器人的穩(wěn)定性測試。最后,在針對測試過程中存在的誤差,對機器人控制系統(tǒng)進行優(yōu)化調(diào)整即可。
綜上所述,本文通過利用西門子S7型號PLC作為核心控制器,結(jié)合上位機、直流電器以及安全傳感器等元器件,開發(fā)設(shè)計了一種機器人控制系統(tǒng)。其中,PLC技術(shù)具備較強的適應(yīng)性和易操作性,能夠有效促進機器人自動控制系統(tǒng)的抗干擾性和易維護性等得到提高,還使得機器人操作的擴展性和柔性得到了提升。因此,PLC技術(shù)在機器人領(lǐng)域的未來控制系統(tǒng)設(shè)計中應(yīng)用,具有廣闊的發(fā)展前景。