0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于PIC单片机的仿生机器鱼的舵机控制

2oON_changxuemc 来源:未知 作者:胡薇 2018-06-08 10:16 次阅读

仿生机器鱼实验平台属于教育部和北京邮电大学共同出资支持的一项“国家级大学生创新性实验计划”项目,是一个集光、机、电、流体、智能于一体的实验平台,研究内容包括:仿生机器鱼机械结构的研究,推荐效率的研究以及控制性能的研究。

1. 仿生机器鱼平台简介:

设计制作的机器鱼模仿鲹科鱼类的外形,头部采用刚性结构的塑料材料。其形状采用流线型,模仿真鱼鱼头的形状和大小比例。在鱼头的内部空间里安装电源控制电路,并在鱼头两侧鱼眼处及在头前部的偏下侧安装了3 个红外传感器,构成了一个探测左、前、右三个方向的传感器网络,让鱼具有自助避障的功能。

使用铝合金制作的鱼骨架把三个舵机串联起来,鱼骨架支撑起套于舵机外面的橡胶鱼皮,便构成了了机器鱼的鱼身这个三关节的驱动系统。使用铝合金制作的连接件将鱼身通过螺纹连接的方式固定在在刚性鱼头上,鱼身的橡胶鱼皮使用热熔胶粘在鱼头上,这样便构成了机器鱼的整体结果。具体如图1 所示。实验证明,这种方法简单易行,且方便拆卸和组装。

机器鱼威廉希尔官方网站 指标:巡游速度:1.2~1.5m./s;全电量巡游距离:4.5~5.5 千米;转弯半径:15~20cm。

2.系统组成及工作原理

从功能上看,整个鱼体的系统可以分成三大块,分别是:感知区,决策区,行为区。感知区对应着多红外传感器网络和无限传输模块,而决策区指的是主控芯片(MCU),动作区对应着舵机串联组成的三关节驱动系统。具体如图2所示。本系统的最重要的工作集中在对多舵机的协调控制,因此主要围绕舵机的控制工作进行细致详尽的介绍。

3 舵机的控制

3.1 舵机的工作原理:

舵机主要由以下几个部分组成:舵盘、减速齿轮组、比例电位器(位置反馈电位计)、直流电机(马达)、控制电路板等。其工作原理:控制电路板接受来自信号线的控制信号,控制直流电机转动,直流电机带动一系列齿轮组,其齿轮组的输出轴与一个线性的比例电位器相连,该电位器把输出轴转过的角度θ 转换成比例的电压反馈给控制电路,控制电路将其与输入的控制脉冲信号比较,产生纠偏脉冲,并驱动马达正向或反向地转动,使齿轮组的输出位置与期望值相符,令纠正脉冲趋于为0,从而达到使舵机精确定位的目的。舵机是一个典型闭环反馈系统,其工作原理由图3 所示。

舵机的输入线共有三条,红色中间,是电源线,一边黑色的是地线,这两根线给舵机提供最基本的能源保证,主要是电机的转动消耗。电源有两种规格,一是4.8V,一是6.0V,分别对应不同的转矩标准,另外一根线是控制信号线,一般为白色。

3.2 单舵机和多舵机的角度控制

3.2.1 单舵机的角度控制:

由舵机的工作原理可知,给舵机输入一个周期在20ms 左右,脉冲宽度在0.5ms 至2.5ms 之间的周期性脉冲信号,驱动舵机输出轴达到-90°到90° 之间的转角,呈线性变化。并且无论外界转矩怎样改变,舵机的输出轴都会保持在一个相对应的角度上,直到给它提供一个另外宽度的脉冲信号,才会改变输出角度到新的对应的位置上。通过编程,借助单片机的输出端口得到需要的周期性脉冲信号。

程序示例:(晶振为:4MHZ,脉冲从PORTDbits.RD0 输出)

从上面的程序可知,通过改变delay 函数的形参j,可以根据需要,得到具有相应脉冲宽度和周期的脉冲信号。例如,改变以上程序段的1 至4 行为:

得到输出脉冲宽度为1ms,周期为20ms 的脉冲信号,然后借助for 循环,将能得到所需要的周期性脉冲信号,驱动舵机输出轴达到-90°到90° 之间的转角。

3.2.2 多舵机不同角度的控制:

通过多舵机不同角度的控制,可以控制几个舵机同时向不同角度扭转,以达到预期的控制目的。

具体的实现方法是:在定时器延时函数中设定一个计时值t(在程序中t 在初始化时值为0),使t 在每次定时器计时完毕时加1。例如,定时器一周期的定时时间为0.25ms,则t值每加1 就相当于0.25ms。当t 的代表值达到20ms 也就是当t 等于80 时清零,这样就可以将脉冲周期控制在20ms,再通过使用if 语句查询方式,可以调节同一周期脉冲的脉冲宽度,即能使多舵机同时向不同角度旋转。

程序示例:(晶振为:4MHZ,脉冲从PORTDbits.RD0,PORTDbits.RD1,PORTDbits.RD2三个端口中输出)

通过以上程序再配合for 循环,便能在PORTDbits.RD0,PORTDbits.RD1,PORTDbits.RD2三个端口得到脉冲宽度分别为1ms,1.5ms,2ms,周期同为20ms 的三种周期脉冲信号,从而达到对三个舵机同时进行不同控制的要求。当然利用以上的方法,可以很轻松地对3 个以上的多个舵机同时进行控制。

3.3 舵机的速度控制

通过舵机的特性可以了解到舵机的瞬时运动速度是由其内部的直流电动机和变速齿轮组的配合来决定的,在恒定的电压驱动下,其数值是恒定的。但舵机的平均运动速度可通过分段停顿的控制方式来改变,例如,把动作幅度为90°的转动细分为128 个停顿点,通过控制每个停顿点的时间长短来实现0°到90°变化的平均速度。也就是说,将90 度的连贯一步转动变为128 个停顿的步进转动,通过每步之间的短暂停顿可实现减速的目的,因为停顿时间非常短因此可看做是90°的连贯转动,由于篇幅的限制,这里不再给出相应的程序实例,感兴趣的读者可以自己参考上面的程序实例进行编写。

4.结束语

本文介绍的这种方法产生的PWM 波形精度高,能够很好的完成舵机的控制工作,舵机工作稳定,我们设计制作的机器鱼成功地实现了鱼类的一些基本运动动作,如前游,加速,停止,前进中转弯等,这也验证了所采用的多关节驱动方式和对多舵机的控制方法是行之有效的。本文通过以仿生机器鱼为载体进行撰文,意在抛砖引玉,希望对其它的舵机控制应用起到帮助。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PIC单片机
    +关注

    关注

    64

    文章

    691

    浏览量

    101925
  • 仿生机器鱼
    +关注

    关注

    1

    文章

    2

    浏览量

    1267

原文标题:基于PIC单片机的仿生机器鱼的舵机控制

文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    瑞士水下仿生机器人-Sepios

    瑞士联邦理工学院 Pascal Buholzer 和他的学生设计的Sepios水下仿生机器人,解决螺旋桨推进器的水草缠绕和噪音问题。
    发表于 01-13 15:52

    【OK210申请】仿生机器与水产海洋生物生态系统建模、分析与调节

    复杂,对开发板的要求较高,您公司这款开发板性能满足我们的要求,希望能试用。项目描述:我们与美国密歇根州立大学合作研发并在上海海洋大学研制了“微动力仿生机器”,在多个机器的定位、导航
    发表于 07-26 13:14

    ★★★DIY6足仿生蜘蛛机器人 51单片机 WIFI控制★★★

    ★★★DIY6足仿生蜘蛛机器人 51单片机 WIFI控制★★★网上的6足机器人都是用stm32或AVR
    发表于 04-15 15:54

    四足仿生机器

    本帖最后由 红尘。破 于 2016-8-19 14:59 编辑 今天整理资料时发现了一年前做的四足仿生机器人,当时买了一个四足仿生机器人的骨架,画了个板子,写了个测试代码,能完成简单的行走,后面加了避障、显示功能啥的,不过视频资料没了,只有简单行走的视频,优酷链接在
    发表于 08-19 14:59

    自主仿生机器

    `博雅工道研发了一款智能仿生机器,该使用仿生威廉希尔官方网站 ,以盒子为原型加以创造具有目标识别、智能跟随、水声遥控、代码开源、防水威廉希尔官方网站 、无线传输、
    发表于 10-25 18:00

    开源资料六足仿生机器人(原理图+PCB+源码等)

    有很多小伙伴喜欢在没事的时候鼓捣一些机器人什么的,现在给大家分享一个仿生机器人开源资料,喜欢的小伙伴可以看看。六足机器人系统基于仿生学原理,采用六足昆虫的机械结构,通过
    发表于 10-10 09:57

    PIC单片机教程_PIC单片机学习要点

    PIC单片机是一种用来开发去控制外围设备的集成电路(IC)。本内容向广大工程师全面的介绍了PIC单片机,涵盖
    发表于 06-28 15:19
    <b class='flag-5'>PIC</b><b class='flag-5'>单片机</b>教程_<b class='flag-5'>PIC</b><b class='flag-5'>单片机</b>学习要点

    51单片机控制舵机

    利用简单的51单片机的PWM的脉冲控制信号来很方便的控制舵机
    发表于 11-10 15:25 103次下载

    单片机实现舵机转角控制

    单片机实现舵机转角控制单片机实现舵机转角控制单片机实现舵机转角
    发表于 04-28 14:57 24次下载

    仿生机器_斌小狼的毕业设计

    还针对仿生机器的运动特点,利用单片机进行硬件系统设置,其中不仅有遥控发射接收电路,而且还有串行通讯电路和舵机控制等,尽力起来一个完整的硬件
    发表于 06-16 16:51 8次下载

    51单片机控制舵机程序

    仅提供参考 51单片机控制机器人数字舵机的示例程序。程序比较简单,但演示了控制的方法。作为入门级的学习,还是可以参考的。
    发表于 06-23 18:14 171次下载

    使用51单片机设计六足仿生机器人的详细资料说明

    本文档的主要内容详细介绍的是使用51单片机设计六足仿生机器人的详细资料说明。
    发表于 07-03 17:42 12次下载
    使用51<b class='flag-5'>单片机</b>设计六足<b class='flag-5'>仿生机器</b>人的详细资料说明

    仿生机器人分为哪几类_仿生机器人研究现状

    按照使用环境的不同,又可以将机器人分为水下仿生机器人,空中仿生机器人和地面仿生机器人。
    发表于 12-14 16:10 1.3w次阅读

    51单片机舵机控制

    51单片机舵机控制系统概述硬件设计程序设计概述在这篇博客中,将介绍一个基于51单片机舵机控制
    发表于 11-05 11:06 21次下载
    51<b class='flag-5'>单片机</b><b class='flag-5'>舵机</b><b class='flag-5'>控制</b>

    基于PIC单片机仿生机器舵机控制

    仿生机器实验平台属于教育部和北京邮电大学共同出资支持的一项“国家级大学生创新性实验计划”项目,是一个集光、、电、流体、智能于一体的实验平台,研究内容包括:仿生机器
    发表于 02-11 17:14 8次下载
    基于<b class='flag-5'>PIC</b><b class='flag-5'>单片机</b>的<b class='flag-5'>仿生机器</b><b class='flag-5'>鱼</b>的<b class='flag-5'>舵机</b><b class='flag-5'>控制</b>