仿生蜘蛛机器人的设计与实现

发布者:bobojrt最新更新时间:2014-01-18 来源: 电子科技 关键字:仿生蜘蛛机器  Dynamixel  AX-12  舵机 手机看文章 扫描二维码
随时随地手机看文章
近几年,仿生学已经从一个鲜为人知的边缘学科走进人们视野,运用于生活中的各个领域。生物学机理与机器人的结合,形成仿生机器人,成为广大研究人员关注的一个焦点。仿生机器人是机器人技术领域中一个新兴的发展分支,是指模仿生物、能根据生物的外部形状,运动原理和行为方式等进行模仿,并能从事生物特点工作的机器人。仿生机器人的种类多样,涵盖了天上、地上、水中等活动领域的各类机器人,其中地上行走的机器人,根据其行走方式的不同,还可以分为跳跃机器人、轮式机器人、足式机器人以及爬行机器人。文中主要对蜘蛛机器人进行设计,目标是基于生物界中蜘蛛的生理结构,运用其生物行为,设计出能平衡行走、判断方向、感受外界刺激的机器人;另外,仿生蜘蛛机器人在结构上有别于人型或轮式机器人,使其在较差路况下行走成为可能,可以执行在废墟中搜救等任务。因此仿生蜘蛛机器人的设计与实现具有较高的研究价值和实际意义。

1 机器人本体设计
   
生物界蜘蛛的特点是拥有8条腿,在行走时,总会有4条腿着地,用以保持自身的平衡。其生物行为除了行走,还有转弯、攻击、趴下等,每个行为作业都靠脚部的运动来实现,因此对腿部的灵活度要求较高;其次,要使机器人具有生物的特性,需对外界的刺激做出正确的判断和及时的响应,所以感觉器官的模拟也至关重要。
1.1 躯干设计
   
考虑到蜘蛛机器人躯干部位对灵活度基本没有要求,无需搭建活动关节,且整机控制器不宜受到关节活动干扰,于是将整机控制器作为躯干部位,完全符合要求,并且便于操控。控制器采用16位高性能低功耗的AVR单片机,频率最高为16 MHz,运算速度最快为16 MI·s-1。对于小型仿生蜘蛛机器人的运动解算和规划,该运算能力足以满足控制和在线规划的运算要求。

1.2 腿部设计
   
腿部设计是实现蜘蛛机器人功能的关键。机器人设计有6足,行走时依靠两两间隔的3条腿构成稳定的三角形支撑地板,每只腿设计为3个关节,即具有3个自由度。并且将轴向分布成x轴、y轴、z轴,实现前后、左右、上下的三维活动空间。选取18个Robotis公司的Dynamixel AX-12+机器人专用伺服电机充当肢体关节。
    Dynamixel AX-12+是机器人专用的伺服电机,充当机器人的关节。首先,Dynamixel系列机器人驱动器是一个较流行的模块化驱动器,由齿轮减速器、精密直流电机和具有串联功能的电路板封装组成。尽管它体积小巧紧凑,但它可以产生较大的扭矩,加上高品质材料制造并具有一定的强度,可以抵御一定外部冲击。同时它还是双向的伺服控制系统,具有回授功能,且具有检测内部温度功能,例如改变内部温度和供电电压。具有报警功能:当内部温度,扭矩,供电电压等超过额定范围时,它主动反馈这种情况并闪动LED灯或关闭舵机扭矩来通知用户,达到报警效果。
    Dynamixel AX-12+的位置和速度控制精度可达1 024级(0~1 023),关节型舵机对应最大转角为300℃,控制角度分辨率为300/1024= 0.29°/步。如图1所示,位置值0是0°,位置值512是150°,位置值1 023是300°等。通信波特率为7 343 bif·s-1~1 Mbit·s-1,命令信号是数字型数据包,通信协议类型为半双工异步串口通信,不同舵机之间通过唯一的ID进行识别,最大有254个ID。每个Dynamixel AX-12+舵机都有一个控制表存储舵机的状态和控制信息,这个控制表由一个RAM区和E2PROM区组成,对舵机的控制实际是通过向其控制表中写指令;而要获取舵机当前状态实际就是读取控制表相应的值。

[page]

1.3 感觉器官设计
   
设计蜘蛛机器人的感官系统时,如果每个感官对应一个传感器模块,那么对蜘蛛机器人关节活动便会增加许多牵绊与阻碍。于是,设计采用1个集超声测距传感器、声音检测传感器、亮度传感器、温度传感器和红外线接收器于一身的Robotis公司的DynamixelAX-S1模块来充当机器人的感官系统。并且AX-S1与AX-12+机器人专用伺服电机在通信方式上一致,以便于通信和控制器统一管理;在机械上结构相同,外观上也可以达到统一、美观。
1.4 本体结构
   
根据生物蜘蛛外形,设计总体结构为:以控制器作为身体部位,连接6足,将传感器模块作为头部。选取合适的连接件,最终拼装连接得到小型仿生蜘蛛机器人样机,如图2所示。



2 机器人行为设计
   
控制系统采用模块化设计,将整个工作流程划分为:系统初始化、启动模式、生物行为等。图3是系统流程图。


2.1 系统初始化
   
机器人的初始化需要做两部分工作,一是初始化每个伺服器的功能模式,并将每个伺服器切换到位置控制状态;二是初始化机器人的初始动作,也就是初始状态,将机器人复位。
2.1.1 伺服器初始化
   
初始化伺服器的功能模式是因为AX-12+具有多种功能,如果没有将其初始化,它将记忆之前的设置,按照之前的设置模式完成此次控制,则AX-12+不会正确工作。AX-12+的每个功能对应地址[ADDRESS]的固有号码,可以通过选择地址的方法来控制各个功能。例如:要设定AX-12+的位置控制状态,首先要选定所要设置伺服器的ID。ID=1的伺服器,令address=8,则进入其运转模式更改,设置mode变量,mode只有两种状态:mode=0是无线旋转模式,mode=1 023是正常位置控制状态。此处设计所用的18个伺服器被用作蜘蛛机器人的6足,其位置控制状态应该设置为mode=1 023,且每一个伺服器都要初始化为此状态。

[page]

2.1.2 动作初始化
   
动作初始化部分相对较简单,但要建立在伺服器初始化之后,方能进行。原理上是将每个伺服器旋转角度调整到一定的位置上,使之呈现一个定型姿态,作为机器人的待机动作。通过改变整个系统结构的全局变量play_motion来完成动作初始化,表1对该参数进行了对照解说,再调用Load函数执行该动作页面来实现功能。


2.2 启动模式
2.2.1 睡眠模式
   
当机器人电源开关开启,进行初始化之后,蜘蛛机器人进入睡眠状态。设计对睡眠模式的定义为:令机器人处于一个静止姿势,不做任何行为,等待被启动。这里设定一个无限循环,当判断收到唤醒命令时,跳出循环,开启定时器,执行正常行为举止后,通过定时器的超时机制,回到睡眠模式。定时器时间值的量化级为:输入的值每0.125 s减1,即当定时器设置为8,便是1 s,具体实现中设置定时器为240,即30 s的正常行为活动后回到睡眠模式。
2.2.2 声音启动
   
在睡眠状态中,采用两种不同的方式:无线遥控模式和声音启动模式。对于声音启动模式,设定一个阈值,若采集的数据超过阈值时,则开始正常行为活动。阈值的选择根据传感器AX-S1对声音自定义的一个数量级,当周围没有声音输出约为128的数值,声音越大数值越接近255,声音大小每秒输入约为3 800次。当检测到像掌声一样一定大小以上的声音时计一次数,为避免把一次击掌误认为多次,在一次计数后,采用延时方式,约为80μs后继续计数。
2.3 生物行为
   
正常行为举止:蜘蛛机器人的生物行为即自行通过传感器采集数据,对数据进行判断,然后进行处理的一个仿生过程。设计过程将该生物行为定义为正常行为举止,即正常模式。该模式下,主要研究的是蜘蛛机器人对障碍物的判断,通过AX-S1采集到的distance_u和distance _f两个参数进行分析。当上方障碍物所测距离distance_u≤20时,即认为感应到上方有障碍物,蜘蛛则产生坐下的动作。当前方障碍物所测距离distance_f≤100时,再次检测一下距离是否distance_f≤20,如果<20,则退后,向左转,回到正常模式;如果>20,则采取攻击,攻击结束后,回到正常模式。值得注意的是,distance_u与distance_f所采集数据也不是实际的距离,也是通过量化后的数值。

3 结束语
   
在自然界中,蜘蛛因其独特的爬行机制可以在垂直的墙壁甚至倒立在天花板上行走。运用仿生学原理设计制作的6足蜘蛛仿生机器人系统,可以完成行走、转弯、攻击、趴下等系列动作,并且具有较好的人机交互功能,使蜘蛛机器人达到了仿生的效果,为进一步研究蜘蛛机器人在危险环境中或艰难路况中作业提供了一个基础测试平台和设计方案。

关键字:仿生蜘蛛机器  Dynamixel  AX-12  舵机 引用地址:仿生蜘蛛机器人的设计与实现

上一篇:西门子工业以太网通讯网络仿真
下一篇:DCS系统在火电厂水网控制系统中的应用

推荐阅读最新更新时间:2024-05-02 22:56

利用单片机PWM信号进行舵机控制
基于单片机的舵机控制方法具有简单、精度高、成本低、体积小的特点,并可根据不同的舵机数量加以灵活应用。 在机器人机电控制系统中,舵机控制效果是性能的重要影响因素。舵机可以在微机电系统和航模中作为基本的输出执行机构,其简单的控制和输出使得单片机系统非常容易与之接口。 舵机是一种位置伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。其工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动
[应用]
使用51单片机输出PWM控制舵机
SCU 的电子信息学院的某个社团会每年举办船模大赛。 因为去年的船模比赛时候懒,所以就买了成品的遥控器(天地飞6)来参赛,控制自己制作的遥控船上面的电调和舵机。最近有心情想在今年的船模比赛中自己制作遥控器,先从第一步开始吧:使用单片机来控制舵机(控制电调的原理类似)。 0x01.什么是舵机? 其实舵机就是一种伺服电机,根据要求旋转一定的角度,在我看来,知道这些就够了~~ 0x02.舵机有什么用? 就拿模型来说吧,船要转弯的话,可以采用的一种方式就是改变船后面舵片的角度来改变两侧对水的阻力,以此来让船转向,这个也是舵机一词的由来。 0x03.怎么控制? PWM波,这是什么东西呢?其
[单片机]
使用51单片机输出PWM控制<font color='red'>舵机</font>
多路舵机控制PWM发生器的设计与Proteus仿真
  PWM脉宽信号调制是现代电子行业中使用较为广泛的一种脉冲信号,其典型应用就是 舵机控制 。以 Proteus 和Keil软件为基础,介绍了在Proteus环境下利用51单片机产生多路PWM脉冲的实现方法。最后以一个典型的应用实例验证了设计的可行性与可靠性。实验证明,本系统可在单片机定时器资源有限的情况下同时对多个舵机的输出转角进行控制。本文以一个典型的单片机应用实例为基础,使用Proteus和Keil软件作为开发工具,介绍了单片机系统初期开发的设计与仿真过程。   1 Proteus软件简介   Proteus软件是英国Labcenter Electronics公司开发的EDA工具软件,已有近20年的历史,在全球得到了广泛
[单片机]
多路<font color='red'>舵机</font>控制PWM发生器的设计与Proteus仿真
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved