自平衡人形机器人的多关节协调控制一直是机器人学研究的难点和热点,目前采用的最多的是在大的反馈控制环路中对机器人进行关节空间的控制,这种控制方式结构紧凑,实时性强,但在以控制器为核心的辐射式控制链路上,所有信息的交换都集中在机器人主控制器上,当机器人处于复杂的环境中时,可能会有过多的信息需要处理,这种复杂程度往往是不可预知的,因此机器人的稳定性也不能保证。
机器人主控制器是机器人的核心处理器,是提高人形机器人的信息处理能力的主要部件。其主要任务是控制机器人在空间的运动位置、姿态、轨迹、操作顺序和操作时间,因此必须保证主控制器能够为解决复杂信息处理而稳定可靠地工作。机器人动作控制器是为解决机器人动作控制而设计的,它将主处理器发出任务处理命令分配到3个16位超低功耗单片机(MSP430F149)上去执行,实现多层次的控制管理。该人形机器人具有多关节,多自由度,自平衡的控制需求,需要动作控制器在机器人系统控制中起到关键性的作用。
1 动作控制器的设计
1.1 体系结构
自平衡人形机器人需要获取不可预知的环境信息以及自身姿态信息进行综合运算并及时进行自身姿态的调整。机器人的这种行为特点决定了机器人的整体控制结构要采用反馈控制。如图1所示,描述了这种反馈控制结构的硬件实现。
同时,在图1中可见从机器人主控制器到执行元件(舵机)之间,有一层动作控制器的结构。这一层结构的任务是实现控制命令到舵机控制信号之间的功能转换,这种体系结构的设计,就是借鉴计算机系统结构中的分层结构体系思想。采用这种分层的结构,实现了软件和硬件、命令和动作的相对隔离。其突出的优点体现在能够使主控制器专注于数据的处理,而对下行设备只负责发送指令,对于硬件的复杂的操作时序,由动作控制器负责产生。
1.2 实现过程
1.2.1 硬件实现
为满足机器人整体控制体系结构中指令到执行的层次性要求,动作控制器需要完成命令解析,信号驱动等任务。如图2描述了动作控制器内部的结构,其主要由串行总线、3个可并行工作的16位单片机、信号驱动部分构成。这种结构能够从总线接收命令,单片机进行指令解析并输出控制电信号,外部电路对控制信号驱动放大,从而分别实现对执行舵机的控制。图3为动作控制器中一个单片机工作模块的硬件原理图。