0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

工業(yè)機(jī)器人控制系統(tǒng)架構(gòu)

倩倩 ? 來源:機(jī)器視覺沙龍 ? 作者:機(jī)器視覺沙龍 ? 2022-08-18 15:51 ? 次閱讀

本文比較了機(jī)械臂和移動(dòng)機(jī)器人兩種工業(yè)機(jī)器人控制系統(tǒng)方案,對(duì)其特點(diǎn)進(jìn)行了介紹。

以上分類是根據(jù)應(yīng)用對(duì)象,此外,市面上更多的是通用型運(yùn)動(dòng)控制器,即控制非標(biāo)設(shè)備的。

1控制器底層方案

1.1機(jī)械臂類

機(jī)械臂類的控制器發(fā)展較早,相對(duì)成熟,先來看看現(xiàn)有的控制系統(tǒng)底層方案。

282dafd4-1eaa-11ed-ba43-dac502259ad0.png

1.2移動(dòng)機(jī)器人類

移動(dòng)機(jī)器人的控制器屬于較新的方向,工業(yè)移動(dòng)機(jī)器人有AGV、無人駕駛工程機(jī)械等形式,控制系統(tǒng)底層方案如下:

28422856-1eaa-11ed-ba43-dac502259ad0.png

1.3對(duì)比

機(jī)械臂對(duì)精度和運(yùn)動(dòng)穩(wěn)定性的要求較高,因此計(jì)算量大、周期短,比移動(dòng)機(jī)器人一般要高1到2個(gè)量級(jí)。移動(dòng)機(jī)器人一般對(duì)同步精度要求不高,其配置相對(duì)較低。

機(jī)械臂一般工作于固定的區(qū)域,其控制器通常放置于機(jī)箱內(nèi),因此防護(hù)等級(jí)不高,一般是IP20。

移動(dòng)機(jī)器人由于需要經(jīng)常運(yùn)動(dòng),尤其是室外工程機(jī)械,要考慮防水防塵,其防護(hù)等級(jí)較高,一般是IP67。

2858117a-1eaa-11ed-ba43-dac502259ad0.png

2CoDeSys介紹

2.1CoDeSys的組成

你會(huì)發(fā)現(xiàn),很多的機(jī)器人控制軟件都是借助CoDeSys實(shí)現(xiàn)的,那么什么是CoDeSys呢?

CoDeSys是一款付費(fèi)的軟PLC開發(fā)軟件,簡單來說,它包括兩部分:Development System和Runtime System。Development System就是用來編程的軟件界面(就像Visual Studio、Eclipse等軟件,也可以稱為IDE),設(shè)計(jì)、調(diào)試、編譯PLC程序都在IDE中進(jìn)行,這部分是用戶經(jīng)常打交道的;

PLC程序?qū)懞昧艘院?,就要把它轉(zhuǎn)移到硬件設(shè)備中運(yùn)行??墒沁@時(shí)生成的PLC程序自己是無法運(yùn)行的,它還要在一定的軟件環(huán)境中才能工作,這個(gè)環(huán)境就是Runtime System,這部分是用戶看不到的。

二者安裝的位置通常不同,IDE一般安裝在開發(fā)電腦上,Runtime System則位于起控制作用的硬件設(shè)備上,二者一般使用網(wǎng)線連接,程序通過網(wǎng)線下載到Runtime中運(yùn)行。

28697032-1eaa-11ed-ba43-dac502259ad0.jpg

CoDeSys在國內(nèi)知名度不高,但是在歐洲久負(fù)盛名,尤其在工業(yè)控制領(lǐng)域。我們上面提到的很多機(jī)器人公司都使用了它的產(chǎn)品,例如KEBA、倍福、固高,還有幾乎所有的移動(dòng)機(jī)器人控制器廠家。

設(shè)計(jì)CoDeSys的3S公司只賣軟件,不賣硬件。硬件電路需要由用戶自己設(shè)計(jì),3S公司負(fù)責(zé)將Runtime System移植到客戶的硬件上。Runtime System可以裸跑在硬件上,但一般是運(yùn)行在操作系統(tǒng)上,配置操作系統(tǒng)也是客戶的工作。

如果客戶要求,CoDeSys的IDE可以定制,換成客戶的logo和外觀,這就是為什么你會(huì)發(fā)現(xiàn)不同廠家的開發(fā)平臺(tái)長得不一樣,但風(fēng)格又比較相似。

當(dāng)然,用戶也可以使用其它IDE,例如倍福就使用了微軟的Visual Studio,而背后的編譯器等內(nèi)核以及函數(shù)庫仍然采用CoDeSys的方案。

CoDeSys的Runtime具有強(qiáng)大的適應(yīng)性,支持絕大多數(shù)的操作系統(tǒng)和硬件芯片架構(gòu)。

28765568-1eaa-11ed-ba43-dac502259ad0.jpg

2.2CoDeSys Runtime原理

CoDeSys的IDE部分是免費(fèi)的,你可以從其官網(wǎng)下載體驗(yàn)體驗(yàn)。真正收費(fèi)的是運(yùn)行系統(tǒng)Runtime System。

288ef4f6-1eaa-11ed-ba43-dac502259ad0.jpg

CoDeSys在設(shè)計(jì)之初就將功能劃分為若干組件模塊,例如總線協(xié)議棧、可視化界面、運(yùn)動(dòng)控制、安全控制等等,用戶可以像搭積木一樣選購必需的模塊搭建自己的系統(tǒng),最后形成一個(gè)定制化的控制軟件平臺(tái)。

一些初次接觸軟PLC的用戶可能對(duì)這部分感到陌生,但其實(shí)這種設(shè)計(jì)方式非常普遍。舉幾個(gè)例子,MATLAB Simulink的實(shí)時(shí)工具箱(Real-Time)就是這樣的工作方式,用戶在Simulink的圖形界面里通過拖拽設(shè)計(jì)控制程序,然后下載到真實(shí)的硬件中跑,可以在這里了解。

還有像倍福也是這樣的使用方式,用戶在TwinCAT IDE里進(jìn)行編程,然后下載到倍福的控制器中,控制器里面其實(shí)已經(jīng)預(yù)裝了一個(gè)Runtime。西門子的STEP7也是一款I(lǐng)DE,它的PLC中也存在一個(gè)配套的Runtime。

用戶編寫的PLC程序就像我們電腦里的應(yīng)用程序,它運(yùn)行在Runtime System上,而Runtime System又運(yùn)行在操作系統(tǒng)之上。

Runtime System位于應(yīng)用程序和操作系統(tǒng)之間。所以可以被稱為中間件(Middleware)。在機(jī)器人軟件里面,處于同樣地位的還有ROSOROCOS(Real-Time Toolkit)等等。

機(jī)器人的控制,像數(shù)控機(jī)床一樣,對(duì)實(shí)時(shí)性有要求,因此我們選擇的操作系統(tǒng)最好是實(shí)時(shí)操作系統(tǒng)(RTOS)。遺憾的是,我們經(jīng)常用的操作系統(tǒng)都不是實(shí)時(shí)的,例如Windows和Linux。但幸運(yùn)的是,有人對(duì)它們進(jìn)行了改造,也就是加入實(shí)時(shí)補(bǔ)丁。

常用的實(shí)時(shí)操作系統(tǒng)有:VxWorks、QNX、Windows RTX、Xenomai、RT Linux、Linux RTAI、WinCE、μC/OS、SylixOs等等??紤]到Windows和Linux這兩款操作系統(tǒng)的用戶較多,CoDeSys推出了相應(yīng)的實(shí)時(shí)補(bǔ)?。≧TE),為用戶免去了改造的煩惱。

想了解更多的CoDeSys Runtime信息可以閱讀官方的文檔[Math Processing Error] [1][2][1][2]。

2.3CoDeSys的缺點(diǎn)

CoDeSys給我們開發(fā)控制器帶來了便利,省去了從零開始的麻煩,但是依靠CoDeSys這類商業(yè)軟件開發(fā)自己的控制器產(chǎn)品也存在不少的缺點(diǎn):

(1)底層算法不公開

CoDeSys集成的運(yùn)動(dòng)控制組件、總線協(xié)議棧都是封裝好的,用戶無法了解其內(nèi)部細(xì)節(jié),也無法針對(duì)自己的具體需求進(jìn)行定制優(yōu)化,只能簡單地調(diào)用。用戶只能依附于CoDeSys平臺(tái),難以形成自己的核心技術(shù)。

(2)功能有限,難以擴(kuò)展

現(xiàn)在以機(jī)器視覺、人工智能、自動(dòng)駕駛等為代表的新技術(shù)突飛猛進(jìn),而工業(yè)控制上的很多技術(shù)仍然停留在20年前。以移動(dòng)機(jī)器人中的導(dǎo)航場景為例,基于視覺或者激光的導(dǎo)航方法需要采集大量的數(shù)據(jù)并對(duì)其進(jìn)行處理,其中涉及相當(dāng)多的矩陣計(jì)算。

而現(xiàn)在PLC只能進(jìn)行落后的一維數(shù)字計(jì)算,難以實(shí)現(xiàn)復(fù)雜的算法。與人工智能圈子喜歡開源的風(fēng)格正好相反,工業(yè)控制圈子相互封閉,誰都不肯開放自家的函數(shù)庫,開源函數(shù)庫極少(OSCAT),就連最基本的濾波算法、矩陣計(jì)算都要自己從頭開始寫。而且,國際標(biāo)準(zhǔn)提供的基本函數(shù)太過有限,完全無法適應(yīng)新的場景,急需擴(kuò)展。

(3)難以更新

由于完全依賴CoDeSys,客戶自己產(chǎn)品硬件的升級(jí)換代需要重新定制移植,導(dǎo)致成本增加。

3開源方案

目前存在一些開源的控制系統(tǒng)方案,例如Beremiz、Orocos、OpenPLC、OpenRTM、ORCA。

開發(fā)機(jī)器人控制器是個(gè)繁重的工作,要明確一系列性能要求,首先是實(shí)時(shí)性。

實(shí)時(shí)性對(duì)于工業(yè)機(jī)器人來說一般是必須的,對(duì)于服務(wù)或娛樂機(jī)器人則未必。一般人很容易錯(cuò)把“實(shí)時(shí)性”理解為處理或者響應(yīng)速度快,但是其實(shí)“實(shí)時(shí)性”表示時(shí)間上的“確定性”,例如實(shí)時(shí)操作系統(tǒng)(RTOS)中的中斷響應(yīng)或者進(jìn)程切換的延遲時(shí)間一定是在一個(gè)時(shí)間范圍內(nèi)。

我們常用的操作系統(tǒng)(Windows、Linux)都不是實(shí)時(shí)操作系統(tǒng),因?yàn)樗鼈冊(cè)O(shè)計(jì)的初衷是吞吐量,不能保證每個(gè)事件都在一定范圍內(nèi)得到處理。再比如,標(biāo)準(zhǔn)以太網(wǎng)的傳輸速度比實(shí)時(shí)工業(yè)以太網(wǎng)快多了,但是它也卻不是實(shí)時(shí)的,因?yàn)樗瑯硬荒鼙WC數(shù)據(jù)在給定的時(shí)間內(nèi)完成傳輸。

理解實(shí)時(shí)性不太難,可是機(jī)器人哪些的任務(wù)需要實(shí)時(shí)運(yùn)行呢?如何根據(jù)機(jī)器人的性能要求確定程序運(yùn)行的時(shí)間間隔呢(是1ms還是10ms)?實(shí)時(shí)性取決于硬件還是軟件呢?

如何根據(jù)實(shí)時(shí)性選擇具體的軟硬件呢(該選擇ARM還是X86、Linux RTAI還是VxWorks)?網(wǎng)上缺少這方面的深入討論,各大機(jī)器人廠家也不會(huì)公開自己的測試和試驗(yàn)結(jié)果,似乎這方面主要依靠經(jīng)驗(yàn)和試錯(cuò)。

這里我也只能提供幾個(gè)指標(biāo),目前工業(yè)機(jī)械臂的控制周期是1ms左右,性能較高的伺服驅(qū)動(dòng)器位置環(huán)的控制周期可以達(dá)到125[Math Processing Error] mu sμs。

PLCopen定義了伺服和運(yùn)動(dòng)控制的一些標(biāo)準(zhǔn),包括編程語言、運(yùn)動(dòng)控制基礎(chǔ)函數(shù)塊(Function Block)、輸入輸出接口參數(shù)等[Math Processing Error] ^{[3]}

[3]具體的實(shí)現(xiàn)代碼細(xì)節(jié),這個(gè)是由各個(gè)廠家提供的。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16041

    瀏覽量

    176767
  • 工業(yè)機(jī)器人
    +關(guān)注

    關(guān)注

    91

    文章

    3344

    瀏覽量

    92462
  • 機(jī)械臂
    +關(guān)注

    關(guān)注

    12

    文章

    504

    瀏覽量

    24427

原文標(biāo)題:大神介紹:工業(yè)機(jī)器人控制系統(tǒng)架構(gòu)

文章出處:【微信號(hào):機(jī)器視覺沙龍,微信公眾號(hào):機(jī)器視覺沙龍】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ROS讓機(jī)器人開發(fā)更便捷,基于RK3568J+Debian系統(tǒng)發(fā)布!

    的快速發(fā)展,智能機(jī)器人設(shè)備已成為工業(yè)自動(dòng)化體系的佼佼者,而智能機(jī)器人設(shè)備核心—ROS系統(tǒng),是機(jī)器人領(lǐng)域的集大成者,主要應(yīng)用于
    發(fā)表于 07-09 11:38

    如何使用PLC控制機(jī)器人

    隨著工業(yè)自動(dòng)化技術(shù)的飛速發(fā)展,機(jī)器人技術(shù)作為其中的重要組成部分,其應(yīng)用范圍日益廣泛。在機(jī)器人控制系統(tǒng)中,PLC(Programmable Logic Controller,可編程邏輯
    的頭像 發(fā)表于 06-17 10:50 ?1197次閱讀

    簡述工業(yè)機(jī)器人控制系統(tǒng)的特點(diǎn)

    工業(yè)機(jī)器人控制系統(tǒng)工業(yè)機(jī)器人的核心組成部分,它負(fù)責(zé)接收輸入信號(hào)、處理信息、控制
    的頭像 發(fā)表于 06-16 15:38 ?1087次閱讀

    機(jī)器人控制系統(tǒng)的基本單元有哪些

    引言 機(jī)器人是一種具有高度自動(dòng)化和智能化的設(shè)備,它可以模擬人類的行為和思維,完成各種復(fù)雜的任務(wù)。機(jī)器人控制系統(tǒng)機(jī)器人的重要組成部分,它負(fù)責(zé)接收傳感器的信號(hào),處理數(shù)據(jù),
    的頭像 發(fā)表于 06-16 15:36 ?1290次閱讀

    機(jī)器人控制系統(tǒng)控制方法可哪些種類

    機(jī)器人控制系統(tǒng)機(jī)器人技術(shù)的核心組成部分,它負(fù)責(zé)接收外部指令,對(duì)機(jī)器人的運(yùn)動(dòng)和行為進(jìn)行控制和調(diào)節(jié)。根據(jù)
    的頭像 發(fā)表于 06-16 15:35 ?1509次閱讀

    工業(yè)機(jī)器人電氣控制系統(tǒng)的體系結(jié)構(gòu)主要有哪些

    工業(yè)機(jī)器人電氣控制系統(tǒng)工業(yè)機(jī)器人的重要組成部分,它負(fù)責(zé)控制
    的頭像 發(fā)表于 06-16 15:28 ?1396次閱讀

    工業(yè)機(jī)器人控制系統(tǒng)的基本組成有哪些

    工業(yè)機(jī)器人控制系統(tǒng)工業(yè)機(jī)器人的大腦,它負(fù)責(zé)接收輸入信號(hào)、處理信息、控制
    的頭像 發(fā)表于 06-16 15:26 ?1396次閱讀

    工業(yè)機(jī)器人控制系統(tǒng)的主要功能

    工業(yè)機(jī)器人控制系統(tǒng)工業(yè)機(jī)器人的大腦,它負(fù)責(zé)接收輸入信號(hào)、處理信息、發(fā)出指令,以實(shí)現(xiàn)機(jī)器人的精確
    的頭像 發(fā)表于 06-16 15:16 ?1324次閱讀

    簡述機(jī)器人控制系統(tǒng)的組成

    機(jī)器人控制系統(tǒng)機(jī)器人技術(shù)的核心,它負(fù)責(zé)接收輸入信號(hào),處理信息,控制機(jī)器人的運(yùn)動(dòng)和執(zhí)行任務(wù)。一個(gè)完整的機(jī)
    的頭像 發(fā)表于 06-16 15:14 ?1042次閱讀

    基于FPGA EtherCAT的六自由度機(jī)器人視覺伺服控制設(shè)計(jì)

    ,為工業(yè)自動(dòng)化提供了一套切實(shí)可行的方案。 本文針對(duì)基于機(jī)器視覺的工業(yè)機(jī)器人進(jìn)行研究,主要工作包括以下幾點(diǎn): (1)設(shè)計(jì)了基于 伊瑟特的六自由度機(jī)
    發(fā)表于 05-29 16:17

    基于飛凌嵌入式RK3568J核心板的工業(yè)機(jī)器人控制器應(yīng)用方案

    控制系統(tǒng)當(dāng)中。那么今天,我們就通過多軸工業(yè)機(jī)器人來聊聊機(jī)器人控制系統(tǒng)以及控制器的實(shí)現(xiàn)。 1
    發(fā)表于 05-11 09:40

    LabVIEW的六軸工業(yè)機(jī)器人運(yùn)動(dòng)控制系統(tǒng)

    LabVIEW開發(fā)六軸工業(yè)機(jī)器人運(yùn)動(dòng)控制系統(tǒng) 本項(xiàng)目開發(fā)了一個(gè)高效的工業(yè)機(jī)器人控制系統(tǒng),重點(diǎn)關(guān)注
    發(fā)表于 12-21 20:03

    理療機(jī)器人控制系統(tǒng)設(shè)計(jì)圖

    電子發(fā)燒友網(wǎng)站提供《理療機(jī)器人控制系統(tǒng)設(shè)計(jì)圖.pdf》資料免費(fèi)下載
    發(fā)表于 12-18 10:47 ?0次下載

    ROS讓機(jī)器人開發(fā)更便捷,基于RK3568J+Debian系統(tǒng)發(fā)布!

    領(lǐng)域的集大成者,主要應(yīng)用于機(jī)器人控制領(lǐng)域,如AGV工業(yè)機(jī)器人控制器、智能機(jī)械臂控制器、
    發(fā)表于 11-30 16:01

    搭建機(jī)器人關(guān)節(jié)力控制系統(tǒng)步驟

    搭建機(jī)器人關(guān)節(jié)力控制系統(tǒng)需要以下步驟: 1. 選擇合適的電機(jī)和傳感器。電機(jī)的選取要符合機(jī)器人的要求,例如扭矩和速度范圍。傳感器的選擇則取決于需要監(jiān)測的參數(shù),如位置、速度和力量。 2. 編寫適當(dāng)?shù)?/div>
    的頭像 發(fā)表于 11-08 17:45 ?819次閱讀