引言
对于机器人控制技术,实时性和稳定性是研究的重点。现阶段,机器人控制的主要方法是在离线状态下对步态进行规划,并在主控机上对机器人的运动进行实时的补偿,这种处理方法对处理器的运算速度和处理能力提出了很高的要求。传统的机器人控制器大多以80C196系列单片机作为处理器,当采用12MHz晶振时,其状态周期为167ns,机器周期为1ms,不能满足机器人控制的需要。
DSP芯片处理速度可以达到几纳秒,甚至更高,非常适合于机器人控制。因此,本文选用DSP来代替原有的单片机,同时借助底层电压反馈技术,设计出一种分布式机器人多轴运动控制器。
控制系统结构与功能
本机器人控制系统结构是一个典型的“PC+运动控制器”模式,其中,主控计算机要求体积小、运算速度快,通常采用嵌入式工控机。主要负责整个系统的在线运动规划、动作级运动控制、语音交互控制、视觉导引控制以及人机交互等功能。底层控制单元以控制器为核心,采用电压反馈的方式对各运动轴系进行控制,具体结构如图1所示。控制器和主控计算机通过CAN总线相连。这种通信方式降低了连线的复杂程度,提高了通信的速度,增强了系统的稳定性。此外,由于只用两根线进行通信,结构也十分灵活。
控制器是整个控制系统的核心,通过接收主控计算机的控制命令对各关节执行轴系进行控制,同时把底层信息反馈给主控计算机,实现大回路反馈,以便于主控计算机协调规划,统一管理。控制器的控制性能直接关系到机器人的运动能力,本文专门设计了基于DSP和电压反馈的多轴运动控制器。
控制器设计
机器人的各种运动由各个关节轴系完成,每个轴系具有一个自由度,可以完成某一方向的转动任务,所有轴系同时协调工作就可以完成相对复杂的运动。本文研究的所有轴系均由PWM脉冲信号驱动控制。
本多轴运动控制器结构如图2所示。整个控制器以DSP为核心,分为四大部分: DSP主处理器模块主要完成信息处理和各种控制功能;A/D转换模块为主处理器提供运动轴系的位置信息;外围电路完成电压监控、参数存储、电路译码、光电隔离等功能;通信模块负责与主控计算机进行信息交互。
DSP主处理器模块
DSP主处理器是整个控制器的核心,负责各种信息的处理,同时与主控计算机进行通信,其运算速度、对信息的处理能力等方面直接影响控制器的性能。本文选用的是TI公司的TMS320LF2407A芯片,该产品集实时处理能力和控制器外设于一身,非常适用于工业控制。
在本文设计的控制器中,TMS320LF2407A 工作电压为3.3V、系统时钟为40MHz,数据总线与A/D转换模块相连,接收A/D转换结果;地址总线和控制总线与外围电路中的译码部分相连,完成各种译码和控制功能;PWM输出端口为运动轴系提供控制信号;通信接口与通信模块相连,负责与主控计算机交互信息;中断接口与译码电路相连,接受A/D转换结束信号触发的外部中断;复位接口连接外部看门狗电路,当外部电压超出规定的范围时复位主处理器;串行接口连接外部存储器,从外部存储器中读取控制算法所需的参数。
A/D转换模块
外部电压传感器把运动轴系的位置信息转换成电压信号,A/D转换模块通过对此电压信号进行A/D转换,为主处理器提供能够识别的数字信号。本文设计的A/D转换电路如图3所示。ADG508A为8选1多路选择器,对输入的多路电压进行选择,选出一路电压送转换器。AD622为电压放大器,同时具有滤波功能,可以把输入的-5V~+5V电压放大到-12V~+12V,以提高A/D转换的精度。AD976为16位A/D转换器,把放大后的电压转换成+5V数字信号。74LVTH245为8位电平转换器,把+5V数字信号转换成主处理器能够接受的+3.3V数字信号送TMS320LF2407A,使用时需两块并联组成一个16位的电平转换器。