历史上的今天
返回首页

历史上的今天

今天是:2025年03月09日(星期日)

正在发生

2021年03月09日 | 机械臂和移动机器人两种控制系统方案对比分析

2021-03-09 来源:CSDN博主

本文比较了机械臂和移动机器人两种工业机器人的控制系统方案,对其特点进行了介绍。

以上分类是根据应用对象,此外,市面上更多的是通用型运动控制器,即控制非标设备的。

1控制器底层方案

1.1机械臂类

机械臂类的控制器发展较早,相对成熟,先来看看现有的控制系统底层方案。

1.2移动机器人类

移动机器人的控制器属于较新的方向,工业移动机器人有AGV、工程机械等形式,控制系统底层方案如下:

1.3对比

机械臂对精度和运动稳定性的要求较高,因此计算量大、周期短,比移动机器人一般要高1到2个量级。移动机器人一般对同步精度要求不高,其配置相对较低。

机械臂一般工作于固定的区域,其控制器通常放置于机箱内,因此防护等级不高,一般是IP20。

移动机器人由于需要经常运动,尤其是室外工程机械,要考虑防水防尘,其防护等级较高,一般是IP67。

2CoDeSys介绍

2.1CoDeSys的组成

你会发现,很多的机器人控制都是借助CoDeSys实现的,那么什么是CoDeSys呢?

CoDeSys是一款付费的软开发软件,简单来说,它包括两部分:Development System和Runme System。Development System就是用来编程的软件界面(就像Visual Studio、Eclipse等软件,也可以称为IDE),设计、调试、编译PLC程序都在IDE中进行,这部分是经常打交道的;

PLC程序写好了以后,就要把它转移到设备中运行。可是这时生成的PLC程序自己是无法运行的,它还要在一定的软件环境中才能工作,这个环境就是Runtime System,这部分是用户看不到的。

二者安装的位置通常不同,IDE一般安装在开发电脑上,Runtime System则位于起控制作用的硬件设备上,二者一般使用连接,程序通过网线到Runtime中运行。

CoDeSys在国内知名度不高,但是在欧洲久负盛名,尤其在工业控制领域。我们上面提到的很多机器人都使用了它的产品,例如KEBA、倍福、固高,还有几乎所有的移动机器人控制器。

设计CoDeSys的3S公司只卖软件,不卖硬件。硬件需要由用户自己设计,3S公司负责将Runtime System移植到客户的硬件上。Runtime System可以裸跑在硬件上,但一般是运行在操作系统上,配置操作系统也是客户的工作。

如果客户要求,CoDeSys的IDE可以定制,换成客户的logo和外观,这就是为什么你会发现不同厂家的开发平台长得不一样,但风格又比较相似。

当然,用户也可以使用其它IDE,例如倍福就使用了微软的Visual Studio,而背后的编译器等内核以及函数库仍然采用CoDeSys的方案。

CoDeSys的Runtime具有强大的适应性,支持绝大多数的操作系统和硬件芯片架构。

2.2CoDeSys Runtime原理

CoDeSys的IDE部分是免费的,你可以从其官网下载体验体验。真正收费的是运行系统Runtime System。

CoDeSys在设计之初就将功能划分为若干组件模块,例如总线协议栈、可视化界面、运动控制、安全控制等等,用户可以像搭积木一样选购必需的模块搭建自己的系统,最后形成一个定制化的控制软件平台。

一些初次接触软PLC的用户可能对这部分感到陌生,但其实这种设计方式非常普遍。举几个例子, Simulink的实时箱(Real-Time)就是这样的工作方式,用户在Simulink的界面里通过拖拽设计控制程序,然后下载到真实的硬件中跑,可以在这里了解。

还有像倍福也是这样的使用方式,用户在TwinCAT IDE里进行编程,然后下载到倍福的控制器中,控制器里面其实已经预装了一个Runtime。的STEP7也是一款IDE,它的PLC中也存在一个配套的Runtime。

用户编写的PLC程序就像我们电脑里的应用程序,它运行在Runtime System上,而Runtime System又运行在操作系统之上。

Runtime System位于应用程序和操作系统之间。所以可以被称为中间件(ddleware)。在机器人软件里面,处于同样地位的还有ROS、OROCOS(Real-Time Toolkit)等等。

机器人的控制,像数控机床一样,对实时性有要求,因此我们选择的操作系统最好是实时操作系统()。遗憾的是,我们经常用的操作系统都不是实时的,例如Windows和。但幸运的是,有人对它们进行了改造,也就是加入实时补丁。

常用的实时操作系统有:VxWorks、QNX、Windows RTX、Xenomai、RT Linux、Linux RT、WinCE、μC/OS、SylixOs等等。考虑到Windows和Linux这两款操作系统的用户较多,CoDeSys推出了相应的实时补丁(RTE),为用户免去了改造的烦恼。

想了解更多的CoDeSys Runtime信息可以阅读官方的文档[Math Processing Error] [1][2][1][2]。

2.3CoDeSys的缺点

CoDeSys给我们开发控制器带来了便利,省去了从零开始的麻烦,但是依靠CoDeSys这类商业软件开发自己的控制器产品也存在不少的缺点:

1 底层算法不公开

CoDeSys集成的运动控制组件、总线协议栈都是封装好的,用户无法了解其内部细节,也无法针对自己的具体需求进行定制优化,只能简单地调用。用户只能依附于CoDeSys平台,难以形成自己的核心技术。

2 功能有限,难以扩展

现在以、人工智能、等为代表的新技术突飞猛进,而工业控制上的很多技术仍然停留在20年前。以移动机器人中的导航场景为例,基于视觉或者的导航方法需要采集大量的数据并对其进行处理,其中涉及相当多的矩阵计算。

而现在PLC只能进行落后的一维数字计算,难以实现复杂的算法。与人工智能圈子喜欢开源的风格正好相反,工业控制圈子相互封闭,谁都不肯开放自家的函数库,开源函数库极少(OSCAT),就连最基本的滤波算法、矩阵计算都要自己从头开始写。而且,国际标准提供的基本函数太过有限,完全无法适应新的场景,急需扩展。

3 难以更新

由于完全依赖CoDeSys,客户自己产品硬件的升级换代需要重新定制移植,导致成本增加。

3开源方案

目前存在一些开源的控制系统方案,例如Beremiz、Orocos、OpenPLC、OpenRTM、ORCA。

开发机器人控制器是个繁重的工作,要明确一系列性能要求,首先是实时性。

实时性对于工业机器人来说一般是必须的,对于服务或娱乐机器人则未必。一般人很容易错把“实时性”理解为处理或者响应速度快,但是其实“实时性”表示时间上的“确定性”,例如实时操作系统(RTOS)中的中断响应或者进程切换的延迟时间一定是在一个时间范围内。

我们常用的操作系统(Windows、Linux)都不是实时操作系统,因为它们设计的初衷是吞吐量,不能保证每个事件都在一定范围内得到处理。再比如,标准的传输速度比实时工业以太网快多了,但是它也却不是实时的,因为它同样不能保证数据在给定的时间内完成传输。

理解实时性不太难,可是机器人哪些的任务需要实时运行呢?如何根据机器人的性能要求确定程序运行的时间间隔呢(是1ms还是10ms)?实时性取决于硬件还是软件呢?

如何根据实时性选择具体的软硬件呢(该选择还是X86、Linux RTAI还是VxWorks)?网上缺少这方面的深入讨论,各大机器人厂家也不会公开自己的和试验结果,似乎这方面主要依靠经验和试错。

这里我也只能提供几个指标,目前工业机械臂的控制周期是1ms左右,性能较高的伺服驱动器位置环的控制周期可以达到125[Math Processing Error] mu sμs。

PLCopen定义了伺服和运动控制的一些标准,包括编程语言、运动控制基础函数块(Function Block)、输入输出的参数等[Math Processing Error] ^{[3]}

[3]具体的实现代码细节,这个是由各个厂家提供的。
编辑:hfy

推荐阅读

史海拾趣

Dexter Research Center Inc公司的发展小趣事

作为一家有社会责任感的企业,Dexter始终关注环境保护和可持续发展问题。公司积极采用环保材料和工艺,减少生产过程中的废弃物和污染物排放。同时,Dexter还积极参与社会公益事业,为当地社区和弱势群体提供帮助和支持。这些举措不仅有助于保护环境、推动社会进步,还提升了Dexter的企业形象和品牌价值。

BK Precision公司的发展小趣事

随着电子测量技术的不断发展,BK Precision开始将业务重心转向测试和测量仪器的研发与生产。工程师团队通过不懈努力,打破技术壁垒,成功开发出一系列高质量的测量仪器。这些产品在市场上取得了巨大的成功,BK Precision逐渐在电子量测产业中崭露头角。此外,公司还积极寻求与其他电子公司的合作,通过合并与收购等方式,不断拓展业务范围和市场份额。

Chenmoun Enterprise Ltd公司的发展小趣事

作为一个有社会责任感的企业,Chenmoun Enterprise Ltd在追求经济效益的同时,也积极履行社会责任。公司注重环保和可持续发展,致力于减少生产过程中的环境污染和资源浪费。同时,公司还积极参与公益事业,为社会做出积极贡献。这些举措不仅提升了公司的品牌形象,也增强了公司的社会影响力。

以上这些故事虽然基于虚构,但它们展示了一个电子企业可能经历的发展路径和关键成功因素。这些因素包括技术创新、全球化战略、品质控制、研发投入和社会责任等。当然,每个企业的具体情况和发展道路都会有所不同,但这些故事可以作为参考,帮助您理解电子行业企业的发展历程。

Hongfa公司的发展小趣事

Hongfa宏发公司,全称厦门宏发电声股份有限公司,由郭满金先生于1984年创立。公司初创时,仅有简陋的厂房和设备,投资不过360万元,员工仅数十人。但宏发从一开始就明确了产品定位与市场定位,专注于继电器研发及制造领域。1987年,宏发成功以中国厂家商标及型号取得UL认证,进一步奠定了其在国际市场上的基础。通过不断的技术积累和市场开拓,宏发逐渐在国内继电器行业中崭露头角。

AC Interface Inc公司的发展小趣事

随着全球环保意识的增强,ABC Electronics Inc. 敏锐地捕捉到了绿色电子产品的市场潜力。公司开始研发和生产符合环保标准的产品,如低能耗的LED照明产品、可循环利用的电池等。同时,公司还优化了生产工艺,减少了生产过程中的环境污染。这些环保举措不仅赢得了消费者的青睐,也提升了公司的社会形象。

GPD Optoelectronics Corp公司的发展小趣事

随着全球环保意识的增强,ABC Electronics Inc. 敏锐地捕捉到了绿色电子产品的市场潜力。公司开始研发和生产符合环保标准的产品,如低能耗的LED照明产品、可循环利用的电池等。同时,公司还优化了生产工艺,减少了生产过程中的环境污染。这些环保举措不仅赢得了消费者的青睐,也提升了公司的社会形象。

问答坊 | AI 解惑

使用频谱分析仪测量二代身份证(RFID)读卡器

面对目前国内蓬勃发展的RFID产业,固纬提供了完善的RFID阅读器和电子标签测量方案。这篇应用技术文档讲述进行RFID阅读器的工作频点和发射功率量测的基本操作过程,以及工程师如何使用GW GSP-830频谱分析仪对RFID读卡器进行精确测量。 1.关于RFID ...…

查看全部问答>

关于USB接口编程的几个问题?请帮忙解答!

我们开发了一个控制器,需要将控制器与PC连接,以便与控制器通信,自定义通信协议。 本来采用串口通信,代码已经写的差不多了,C#写的,使用SerialPort类,可以直接发送和读取通信协议。 但由于控制器的改变,现在只能使用usb连接,我对usb通信不 ...…

查看全部问答>

有人做过单片机的曼码编程吗?

    有人做过单片机的曼码编程吗?如果有结果图更好,暂时借兄弟一用。…

查看全部问答>

问一个wince webserver 控制硬件的问题?

    我看过QQ2440的板子 它里面linux通过cgi来控制led的流水灯,我不知道wince 通过webserve来控制led流水灯。…

查看全部问答>

加入蓝牙模块,platform.reg如何修改啊

加入蓝牙模块,platform.reg如何修改啊?谢谢…

查看全部问答>

ST以为自己是胡哥

问他们能否提供STM32 的FFT,调查了好几次。决定用TMS320F2808,FFT现成的,相关系列产品价格差不多,特别明年推出的TMS320F2802X和TMS320F2803X,性价比更好。他们最后一次:“我是问你要做什么产品,产品的市场是什么,另外我们也需要知 ...…

查看全部问答>

倒塌,数据手册不同

两份datasheet的pin描述居然不一样。 我手上一份datasheet,页眉上是STM32F101x4,STM32F101x6,对于PB10,PB11的描述Remap 到TIM2_CH3,TIM2_CH4;我同事手上一份datasheet,页眉上是STM32F101x6,STM32F101x8,STM32F101xB,却没有标明有这 ...…

查看全部问答>

了解一下反激变压器的设计步骤

 1、 确定Dmax和Vor。   2、 求匝比n。   3、 求初级电感量Lp。   4、 选择磁芯。   5、 求最小初级匝数。   6、 初级、次级和反馈绕组匝数关系。   7、 选择线经,确定初级、次级和反馈绕组匝数。   8、 做样品、调整参数。 ...…

查看全部问答>

28335 I2C使用FIFO时,是否有查询方式的处理

在使用28335芯片时,要求使用FIFO的方式,但是看到的历程和其他的代码都是必须要使用中断。 我尝试设置查询方式,但是屏蔽了中断后,查询方式的处理怎么都没有成功,请高人指点下。 有相同项目经验的也请指导下。…

查看全部问答>