教学型双足步行机器人的结构及其控制电路设计

2014-08-08 23:43赵瑞林卢庆林张顺星
计算技术与自动化 2014年2期
关键词:电路设计控制系统

赵瑞林+卢庆林+张顺星

收稿日期:2013-06-11

基金项目:陕西省教育厅2013年自然科学专项科学研究项目(2013JK1088)

作者简介:赵瑞林(1976—),男,陕西宝鸡人,副教授,硕士,研究方向:控制工程与控制理论。

文章编号:1003-6199(2014)02-0073-04

摘 要:教学型双足机器人的研究制作是桌上型的重量很轻的作实验用的小型双足步行机器人。研究舵机的驱动控制方法、框架的设计以及制作能通过伺服电机控制运动的一种经济型的双足步行机器人。用单片机与CPLD控制伺服电机,通过预先给定机器人各个部位的运动轨迹,运算确定好各关节的旋转角度及控制系统的控制算法,以实现机器人的实际行走过程。

关键词:双足机器人;控制系统;硬件结构;电路设计

中图分类号:TP24文献标识码:A



Bipedal Walking Robot Teachingoriented Structure and Control Circuit Design



ZHAO Ruilin,LU Qinglin,ZHANG Shunxing

(College of Electrical Engineering,Shannxi Poletechnic Institute,Xianyang,Shannxi 712000,China)

Abstract:Teachingoriented research biped robot is made of very light weight desktops to experiment with a small bipedal walking robot. Studied the servo drive control method, the framework design and production of a servo motor control movement through an economical bipedal walking robot. MCU and CPLD control servo motor, given in advance through various parts of the robot trajectory calculation to determine a good rotation angle of each joint control algorithms and control systems in order to achieve the actual robot during walking.

Key words:biped Robot;control systems;hardware structure;circuit design

1 引 言

双足步行是步行方式中自动化程度最高、最为复杂的动态系统。双足步行系统具有非常丰富的动力学特性,对步行的环境要求很低,既能在平地上行走,也能在非结构性的复杂地面上行走,对环境有很好的适应性,与其它足式机器人相比,双足机器人具有支撑面积小,支撑面的形状随时间变化较大,质心的相对位置高的特点,是其中最复杂,控制难度最大的动态系统。但由于双足机器人比其它足式机器人具有更高的灵活性,因此具有自身独特的优势,更适合在人类的生活或工作环境中与人类协同工作,而不需要专门为其对这些环境进行大规模改造。

2 双足步行机器人自由度的确定

双足步行机器人的机构是所有部件的载体,也是设计双足步行机器人最基本的和首要的工作。它必须能够实现机器人的前后左右以及爬斜坡和上楼梯等的基本功能,因此自由度的配置必须合理:首先分析一下步行机器人的运动过程(前向)和行走步骤:重心右移(先右腿支撑)、左腿抬起、左腿放下、重心移到双腿中间、重心左移、右腿抬起、右腿放下、重心移到双腿间,共分8个阶段[1]。从机器人步行过程可以看出:机器人向前迈步时,髓关节与踝关节必须各自配置有一个俯仰自由度以配合实现支撑腿和上躯体的移动;要实现重心转移,髋关节和踝关节的偏转自由度是必不可少的;机器人要达到目标位置,有时必须进行转弯,所以需要有髋关节上的转体自由度。另外膝关节处配置一个俯仰自由度能够调整摆动腿的着地高度,使上下台阶成为可能,还能实现不同的步态。这样最终决定髋关节配置3个自由度,包括转体(roll)、俯仰(pitch)和偏转(yaw)自由度,膝关节配置一个俯仰自由度,踝关节配置有俯仰和偏转两个自由度。这样,每条腿配置6个自由度,两条腿共12个自由度[2]。髋关节、膝关节和踝关节的俯仰自由度共同协调动作可完成机器人的在纵向平面(前进方向)内的直线行走功能;髋关节的转体自由度可实现机器人的转弯功能;髋关节和踝关节的偏转自由度协调动作可实现在横向平面内的重心转移功能。机器人的转体(roll)、俯仰(pitch)和偏转(yaw)定义如图1所示。其中,定义y轴方向为前进方向,z轴方向为机器人的身高方向[3]。

图1 步行机器人方向示意图

机器人的自由度配置如图2所示。

图2 自由度配置图

3 动力源的设计

目前市场上,有很多种电动机向机器人提供能源:直流电机、交流电机、步进电机、伺服电动机。由于双足步行机器人要求的精度要求比较高,而交直流电机通电就转,断电就停,比较难进行机器人的位置控制;步进电机虽能按一定的精度工作,但它本身是一个开环系统,精度达不到要求。因此,本文选择使用伺服电动机。在本文中使用的是价格比较便宜的伺服电动机——舵机。电动舵机的工作原理如图3所示。其中,舵机控制器一般采用PID控制,以满足舵机动静态指标要求;伺服功率放大器一般由脉冲宽度调制器(PWM)和开关控制电路组成;直流伺服电机是电动舵机的执行元件,可采用有刷或无刷直流电机;减速机构一般采用蜗轮蜗杆或丝缸减速机构。

图3 电动舵机工作原理方框图

由于本研究制作的机器人是桌上型的重量很轻的作实验用的小型双足步行机器人。因此机器人的各关节也是选择使用舵机来驱动。此类电机的特点就是体积小、重量轻且控制简单,另外价格也较便宜。表1示出了电机的参数。步行机器人每条腿的自由度为6,各关节的驱动使用的是HG14-M的大力矩舵机。

表1 RC伺服电机的参数

型号

尺寸(cm3)

扭矩

空载速度

电压

HG14-M

40.5×16.5×35

12.5kg.cm

0.15

5-10V

计算技术与自动化2014年6月

第33卷第2期赵瑞林等:教学型双足步行机器人的结构及其控制电路设计

4 机构的设计

根据本课题的要求,本文设计了机器人的机构,其主要特点是布置对称性。步行运动中普遍存在结构对称性,Goldberg等人研究了步行运动中的对称性,发现机身运动的对称性和腿机构的对称性之间存在相互关系。在单足支撑阶段对称性的机身运动要求腿部机构也是对称的;在双足支撑阶段如图4,机身对称性运动未必需要腿部机构的对称性,除非有额外的约束条件。根据这点,在结构设计时也采用对称性布置。

图4 双足步行机器人双腿模型图

框架的设计有效的利用了RC伺服电机的尺寸大小,并使电机的活动范围能尽量符合各关节的活动范围。采用多关节型结构。行走机构能实现平地前后行、平地侧行、转弯、上下台阶、爬斜坡等功能。整个结构采用1mm的铝合金(LY12)钣金材料,这种材料重量轻、硬度高、强度虽不如钢,但却大大高于普通铝合金。由于机器人的各关节是用RC伺服电机驱动,为了减小机器人的体积、减轻重量,机器人的结构做成是框架型的。框架的设计有效的利用了RC伺服电机的尺寸大小,并使电机的活动范围能尽量符合各关节的活动范围。

5 控制系统方案设计

由于本机器人机构采用了12个舵机,本控制系统就是要实现能同时驱动这12个舵机的功能。舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0~180°,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机控制电路如图5所示。本文采用一片51的单片机和一片复杂可编程逻辑器件(CPLD)实现了PWM的产生。由于CPLD具有他特有的并行处理能力和大量的IO接口,可以同时控制几十甚至上百个舵机同时工作,可以为后续的工作留出一定的空间,但由于CPLD不具备事务处理能力,实际应用中还需要MCU协同工作,本文使用51系列的单片机和CPLD协同控制舵机,另外,使用了单片机,还可以为后续的传感器反馈处理留出空间。

图5 舵机控制电路

控制系统所图6所示,选用“上位机+串口+下位机”的控制系统解决方案。上位机控制软件的主要功能是对预定的机器人动作进行规划和位置插补,再按照一定时间间隔和次序进行发送给下位机,实现机器人关节位置和近似的速度控制;下位机主要功能是接收上位机发送的位置信号,根据信号要求产生PWM波,控制机器人各个关节舵机运动,使机器人按动作规划完成溜冰动作。相应的,下位机主要由完成串口通信、数据的调度和12个舵机驱动模块构成。

图6 控制系统结构图

图7为CPLD的12路舵机驱动原理图,CPLD通过一个简单的接口与51单片机进行通信,把要驱动的12个舵机的PWM信号数据存入到数据存储区,从而通过数字PWM生成器驱动12个舵机转到需要的角度,当需要转换到下一个角度时,通过与51单片机的接口,从51单片机中传送新的PWM信号数据到数据存储区中进行更新,这样数字PWM生成器就会驱动舵机转过一个新的角度[4]。

图7 CPLD的12路舵机驱动原理图

6 硬件电路设计

图8所示为控制系统的硬件电路板线路设计图。为了避免舵机的供电电源产生的电压波动对控制电路的干扰,控制电路与舵机的电源要进行隔离,即分开供电。控制电路电源使用的是一个9V输出的AC-DC变压电源经7805芯片后提供的5V电源,而舵机的电源提供了一个接口,外接一个6V的直流电源。

控制芯片模块包括单片机、时钟电路、复位电路、外部程序存储芯片扩展以及大规模CPLD芯片。单片机采用Atmel公司的AT89S52,它是8位的高性能嵌入式控制器,其内部集成了8k的可在线编程的Flash存储器;256字节的RAM,可寻址64字节,具有32根I/O口、3个可编程定时器、8个中断源、6个中断矢量、1个看门狗定时器。时钟电路给系统提供时间基准,设计时采用11.05296MHz晶振。同时,本设计还扩展了一片8k×8位的外部存储芯片2864。CPLD芯片采用的是ALTERA公司的EPM7128。

串行通信模块主要用于AT89S52单片机与PC机之间的串行通信。由于PC机的COM口符合RS-232标准, AT89S52单片机上的串行接口是CMOS电平,在RS-232与CMOS电平通信时,需要电平转换,因此,设计时利用MAX232芯片来作电平转换[5]。

12路舵机的控制信号来自CPLD芯片的I/O口(引脚30、31、33、34、35、36、37、39、40、41、44、45)。为了防止干扰,13路舵机控制信号和驱动电路应经过TLP-521光电隔离,通过隔离出来的控制信号,还必须接入LM324比较器,以消除毛刺,增加信号的稳定性,提高信号的输出电流,以便舵机能够正确工作不至于产生不必要的抖动[6]。

图8 机器人控制器线路图

7 结 语

在本文中,探讨了舵机的驱动控制方法、框架的设计以及制作了能通过伺服电机控制运动的一种经济型的双足步行机器人。另外,实现了用单片机与CPLD控制12个伺服电机的设想。今后,将研讨运用逆运动学的原理,通过预先给定机器人各个部位的运动轨迹,通过运算确定好各关节的旋转角度然后通过控制系统得控制算法,以实现机器人的实际行走过程。

参考文献

[1] 刘广瑞.机器人创新制作[M].西安:西北工业大学出版社,2007.

[2] 陈继荣.智能电子创新制作—机器人制作入门[M]. 北京:科学出版社,2007.

[3] NORTIOMO T, OKADA M, YAMAMOTO H. A joint antenna and postDFT combining diversity scheme in OFDM receiver[C] Wireless Communication Systems,The 1st International Symposium, 2004: 140-143.

[4] 王水平.PWM控制与驱动器使用指南及应用电路[M].西安:西安电子科技大学出版,2004.

[5] 张小伟.ARM9嵌入式系统设计原理与开发实例[M].北京:电子工业出版社,2008.

[6] 曹小松,唐鸿儒,杨炯.移动机器人多传感器信息融合测距系统设计[J].自动化仪表,2009,24(5):4-8.

5 控制系统方案设计

由于本机器人机构采用了12个舵机,本控制系统就是要实现能同时驱动这12个舵机的功能。舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0~180°,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机控制电路如图5所示。本文采用一片51的单片机和一片复杂可编程逻辑器件(CPLD)实现了PWM的产生。由于CPLD具有他特有的并行处理能力和大量的IO接口,可以同时控制几十甚至上百个舵机同时工作,可以为后续的工作留出一定的空间,但由于CPLD不具备事务处理能力,实际应用中还需要MCU协同工作,本文使用51系列的单片机和CPLD协同控制舵机,另外,使用了单片机,还可以为后续的传感器反馈处理留出空间。

图5 舵机控制电路

控制系统所图6所示,选用“上位机+串口+下位机”的控制系统解决方案。上位机控制软件的主要功能是对预定的机器人动作进行规划和位置插补,再按照一定时间间隔和次序进行发送给下位机,实现机器人关节位置和近似的速度控制;下位机主要功能是接收上位机发送的位置信号,根据信号要求产生PWM波,控制机器人各个关节舵机运动,使机器人按动作规划完成溜冰动作。相应的,下位机主要由完成串口通信、数据的调度和12个舵机驱动模块构成。

图6 控制系统结构图

图7为CPLD的12路舵机驱动原理图,CPLD通过一个简单的接口与51单片机进行通信,把要驱动的12个舵机的PWM信号数据存入到数据存储区,从而通过数字PWM生成器驱动12个舵机转到需要的角度,当需要转换到下一个角度时,通过与51单片机的接口,从51单片机中传送新的PWM信号数据到数据存储区中进行更新,这样数字PWM生成器就会驱动舵机转过一个新的角度[4]。

图7 CPLD的12路舵机驱动原理图

6 硬件电路设计

图8所示为控制系统的硬件电路板线路设计图。为了避免舵机的供电电源产生的电压波动对控制电路的干扰,控制电路与舵机的电源要进行隔离,即分开供电。控制电路电源使用的是一个9V输出的AC-DC变压电源经7805芯片后提供的5V电源,而舵机的电源提供了一个接口,外接一个6V的直流电源。

控制芯片模块包括单片机、时钟电路、复位电路、外部程序存储芯片扩展以及大规模CPLD芯片。单片机采用Atmel公司的AT89S52,它是8位的高性能嵌入式控制器,其内部集成了8k的可在线编程的Flash存储器;256字节的RAM,可寻址64字节,具有32根I/O口、3个可编程定时器、8个中断源、6个中断矢量、1个看门狗定时器。时钟电路给系统提供时间基准,设计时采用11.05296MHz晶振。同时,本设计还扩展了一片8k×8位的外部存储芯片2864。CPLD芯片采用的是ALTERA公司的EPM7128。

串行通信模块主要用于AT89S52单片机与PC机之间的串行通信。由于PC机的COM口符合RS-232标准, AT89S52单片机上的串行接口是CMOS电平,在RS-232与CMOS电平通信时,需要电平转换,因此,设计时利用MAX232芯片来作电平转换[5]。

12路舵机的控制信号来自CPLD芯片的I/O口(引脚30、31、33、34、35、36、37、39、40、41、44、45)。为了防止干扰,13路舵机控制信号和驱动电路应经过TLP-521光电隔离,通过隔离出来的控制信号,还必须接入LM324比较器,以消除毛刺,增加信号的稳定性,提高信号的输出电流,以便舵机能够正确工作不至于产生不必要的抖动[6]。

图8 机器人控制器线路图

7 结 语

在本文中,探讨了舵机的驱动控制方法、框架的设计以及制作了能通过伺服电机控制运动的一种经济型的双足步行机器人。另外,实现了用单片机与CPLD控制12个伺服电机的设想。今后,将研讨运用逆运动学的原理,通过预先给定机器人各个部位的运动轨迹,通过运算确定好各关节的旋转角度然后通过控制系统得控制算法,以实现机器人的实际行走过程。

参考文献

[1] 刘广瑞.机器人创新制作[M].西安:西北工业大学出版社,2007.

[2] 陈继荣.智能电子创新制作—机器人制作入门[M]. 北京:科学出版社,2007.

[3] NORTIOMO T, OKADA M, YAMAMOTO H. A joint antenna and postDFT combining diversity scheme in OFDM receiver[C] Wireless Communication Systems,The 1st International Symposium, 2004: 140-143.

[4] 王水平.PWM控制与驱动器使用指南及应用电路[M].西安:西安电子科技大学出版,2004.

[5] 张小伟.ARM9嵌入式系统设计原理与开发实例[M].北京:电子工业出版社,2008.

[6] 曹小松,唐鸿儒,杨炯.移动机器人多传感器信息融合测距系统设计[J].自动化仪表,2009,24(5):4-8.

5 控制系统方案设计

由于本机器人机构采用了12个舵机,本控制系统就是要实现能同时驱动这12个舵机的功能。舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0~180°,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机控制电路如图5所示。本文采用一片51的单片机和一片复杂可编程逻辑器件(CPLD)实现了PWM的产生。由于CPLD具有他特有的并行处理能力和大量的IO接口,可以同时控制几十甚至上百个舵机同时工作,可以为后续的工作留出一定的空间,但由于CPLD不具备事务处理能力,实际应用中还需要MCU协同工作,本文使用51系列的单片机和CPLD协同控制舵机,另外,使用了单片机,还可以为后续的传感器反馈处理留出空间。

图5 舵机控制电路

控制系统所图6所示,选用“上位机+串口+下位机”的控制系统解决方案。上位机控制软件的主要功能是对预定的机器人动作进行规划和位置插补,再按照一定时间间隔和次序进行发送给下位机,实现机器人关节位置和近似的速度控制;下位机主要功能是接收上位机发送的位置信号,根据信号要求产生PWM波,控制机器人各个关节舵机运动,使机器人按动作规划完成溜冰动作。相应的,下位机主要由完成串口通信、数据的调度和12个舵机驱动模块构成。

图6 控制系统结构图

图7为CPLD的12路舵机驱动原理图,CPLD通过一个简单的接口与51单片机进行通信,把要驱动的12个舵机的PWM信号数据存入到数据存储区,从而通过数字PWM生成器驱动12个舵机转到需要的角度,当需要转换到下一个角度时,通过与51单片机的接口,从51单片机中传送新的PWM信号数据到数据存储区中进行更新,这样数字PWM生成器就会驱动舵机转过一个新的角度[4]。

图7 CPLD的12路舵机驱动原理图

6 硬件电路设计

图8所示为控制系统的硬件电路板线路设计图。为了避免舵机的供电电源产生的电压波动对控制电路的干扰,控制电路与舵机的电源要进行隔离,即分开供电。控制电路电源使用的是一个9V输出的AC-DC变压电源经7805芯片后提供的5V电源,而舵机的电源提供了一个接口,外接一个6V的直流电源。

控制芯片模块包括单片机、时钟电路、复位电路、外部程序存储芯片扩展以及大规模CPLD芯片。单片机采用Atmel公司的AT89S52,它是8位的高性能嵌入式控制器,其内部集成了8k的可在线编程的Flash存储器;256字节的RAM,可寻址64字节,具有32根I/O口、3个可编程定时器、8个中断源、6个中断矢量、1个看门狗定时器。时钟电路给系统提供时间基准,设计时采用11.05296MHz晶振。同时,本设计还扩展了一片8k×8位的外部存储芯片2864。CPLD芯片采用的是ALTERA公司的EPM7128。

串行通信模块主要用于AT89S52单片机与PC机之间的串行通信。由于PC机的COM口符合RS-232标准, AT89S52单片机上的串行接口是CMOS电平,在RS-232与CMOS电平通信时,需要电平转换,因此,设计时利用MAX232芯片来作电平转换[5]。

12路舵机的控制信号来自CPLD芯片的I/O口(引脚30、31、33、34、35、36、37、39、40、41、44、45)。为了防止干扰,13路舵机控制信号和驱动电路应经过TLP-521光电隔离,通过隔离出来的控制信号,还必须接入LM324比较器,以消除毛刺,增加信号的稳定性,提高信号的输出电流,以便舵机能够正确工作不至于产生不必要的抖动[6]。

图8 机器人控制器线路图

7 结 语

在本文中,探讨了舵机的驱动控制方法、框架的设计以及制作了能通过伺服电机控制运动的一种经济型的双足步行机器人。另外,实现了用单片机与CPLD控制12个伺服电机的设想。今后,将研讨运用逆运动学的原理,通过预先给定机器人各个部位的运动轨迹,通过运算确定好各关节的旋转角度然后通过控制系统得控制算法,以实现机器人的实际行走过程。

参考文献

[1] 刘广瑞.机器人创新制作[M].西安:西北工业大学出版社,2007.

[2] 陈继荣.智能电子创新制作—机器人制作入门[M]. 北京:科学出版社,2007.

[3] NORTIOMO T, OKADA M, YAMAMOTO H. A joint antenna and postDFT combining diversity scheme in OFDM receiver[C] Wireless Communication Systems,The 1st International Symposium, 2004: 140-143.

[4] 王水平.PWM控制与驱动器使用指南及应用电路[M].西安:西安电子科技大学出版,2004.

[5] 张小伟.ARM9嵌入式系统设计原理与开发实例[M].北京:电子工业出版社,2008.

[6] 曹小松,唐鸿儒,杨炯.移动机器人多传感器信息融合测距系统设计[J].自动化仪表,2009,24(5):4-8.

猜你喜欢
电路设计控制系统
Multisim仿真软件在电子技术专业教学中的应用
Altium Designer元件布局方法
基于PLC的自动切蛋糕机的控制方案
Ka频段卫星通信自适应抗雨衰控制系统设计
基于实验箱和Matlab相结合的信号与系统实验的改革
基于PLC的钢厂热连轧感应加热炉控制系统实现
风力发电机组电气与控制系统快速检修思路探索
PCI9030及其PCI总线接口电路设计
Protel99中常用快捷键的使用