机器人控制器是根据指令以及传感信息控制机器人完成一定的动作或作业任务的装置,它是机器人的心脏,决定了机器人性能的优劣,从机器人控制算法的处理方式来看,可分为串行、并行两种结构类型。
串行处理结构
所谓的串行处理结构是指机器人的控制算法是由串行机来处理,对于这种类型的控制器,从计算机结构、控制方式来划分,又可分为以下几种:
(1) 单CPU 结构、集中控制方式用一台功能较强的计算机实现全部控制功能,在早期的机器人中 ,如 Hero-I, Robo t-I等 ,就采用这种结构,但控制过程中需要许多计算 (如坐标变换 ) ,因此这种控制结构速度较慢。
(2) 二级 CPU结构、主从式控制方式一级 CPU 为主机,担当系统管理、机器人语言编译和人机接口功能 ,同时也利用它的运算能力完成坐标变换、轨迹插补,并定时地把运算结果作为关节运动的增量送到公用内存,供二级 CPU读取;二级CPU完成全部关节位置数字控制。这类系统的两个CPU总线之间基本没有联系 ,仅通过公用内存交换数据 ,是一个松耦合的关系。对采用更多的 CPU 进一步分散功能是很困难的。日本于 70年代生产的 M otoma n机器人 ( 5关节 ,直流电机驱动 )的计算机系统就属于这种主从式结构。
(3) 多CPU 结构、分布式控制方式
目前,普遍采用这种上、下位机二级分布式结构,上位机负责整个系统管理以及运动学计算、轨迹规划等。下位机由多 C PU组成 ,每个 CPU控制一个关节运动,这些 CPU和主控机联系是通过总线形式的紧耦合,这种结构的控制器工作速度和控制性能明显提高。但这些多CPU系统共有的特征都是针对具体问题而采用的功能分布式结构,即每个处理器承担固定任务,目前世界上大多数商品化机器人控制器都是这种结构。
控制器计算机控制系统中的位置控制部分,几乎无例外地采用数字式位置控制。
以上几种类型的控制器都是采用串行机来计算机器人控制算法,它们存在一个共同的弱点:计算负担重、实时性差。所以大多采用离线规划和前馈补偿解耦等方法来减轻实时控制中的计算负担,当机器人在运行中受到干扰时其性能将受到影响,更难以保证高速运动中所要求的精度指标。
并行处理结构
并行处理技术是提高计算速度的一个重要而有效的手段,能满足机器人控制的实时性要求,从文献来看,关于机器人控制器并行处理技术,人们研究较多的是机器人运动学和动力学的并行算法及其实现 .1982年 J. Y. S. Luh首次提出机器人动力学并行处理问题 ,这是因为关节型机器人的动力学方程是一组非线性强耦合的二阶微分方程,计算十分复杂,提高机器人动力学算法计算速度也为实现复杂的控制算法如: 计算力矩法、非线性前馈法、自适应控制法等打下基础。开发并行算法的途径之一就是改造串行算法 ,使之并行化,然后将算法映射到并行结构 。一般有两种方式 ,一是考虑给定的并行处理器结构 ,根据处理器结构所支持的计算模型 ,开发算法的并行性;二是首先开发算法的并行性 ,然后设计支持该算法的并行处理器结构 ,以达到最佳并行效率。
机器人控制器发展
随着机器人控制技术的发展 ,针对结构封闭的机器人控制器的缺陷 ,开发“具有开放式结构的模块化、标准化机器人控制器”是当前机器人控制器的一个发展方向。近几年,日本、美国和欧洲一些国家都在开发具有开放式结构的机器人控制器,如日本安川公司基于 PC开发的具有开放式结构、网络功能的机器人控制器,我国 863计划智能机器人主题也已对这方面的研究立项。
开放式结构机器人控制器是指:控制器设计的各个层次对用户开放,用户可以方便的扩展和改进其性能,其主要思想是:
(1)利用基于非封闭式计算机平台的开发系统,有效利用标准计算机平台的软、硬件资源为控制器扩展创造条件。
(2)利用标准的操作系统,采用标准操作系统和控制语言,从而可以改变各种专用机器人语言并存且互不兼容的局面。
(3)采用标准总线结构,使得为扩展控制器性能而必须的硬件,如各种传感器 , I /O板、运动控制板可以很容易的集成到原系统。
(4)利用网络通讯 ,实现资源共享或远程通讯。目前,几乎所有的控制器都没有网络功能,利用网络通讯功能可以提高系统变化的柔性,我们可以根据上述思想设计具有开放式结构的机器人控制器,而且设计过程中要尽可能做到模块化。模块化是系统设计和建立的一种现代方法,按模块化方法设计,系统由多种功能模块组成,各模块完整而单一,这样建立起来的系统,不仅性能好、开发周期短而且成本较低。模块化还使系统开放,易于修改、重构和添加配置功能。