舵机控制原理许讲解Word文档下载推荐.docx
《舵机控制原理许讲解Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《舵机控制原理许讲解Word文档下载推荐.docx(28页珍藏版)》请在冰豆网上搜索。
但记住红色为电源,黑色为地线,一般不会搞错。
舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0-180度,呈线性变化。
也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。
舵机内部有一个基准电路,产生周期20ms,宽度1.5ms的基准信号,有一个比较器,将外加信号与基准信号相比较,判断出方向和大小,从而产生电机的转动信号。
由此可见,舵机是一种位置伺服的驱动器,转动范围不能超过180度,适用于那些需要角度不断变化并可以保持的驱动当中。
比方说机器人的关节、飞机的舵面等。
舵机具有以下一些特点:
1)体积紧凑,便于安装;
2)输出力矩大,稳定性好;
3)控制简单,便于和数字系统接口。
正是因为舵机有很多优点,所以,现在不仅仅应用在航模运动中,已经扩展到各种机电产品中来,在机器人控制中应用也越来越广泛。
3、用单片机来控制
舵机的控制信号是一个脉宽调制信号,很方便和数字系统进行接口。
只要能产生标准的控制信号的数字设备都可以用来控制舵机,比方PLC、单片机等。
因为在脉冲信号的输出可以用定时器的溢出中断函数来处理,时间很短,因此在精度要求不高的场合可以忽略。
通过编程就可以让舵机从0度变化到180度。
另外要记住一点,舵机的转动需要时间的,因此,程序中时间的变化不能太快,不然舵机跟不上程序。
根据需要,选择合适的延时,返复调试,可以让舵机很流畅的转动,而不会产生像步进电机一样的脉动。
这些还需要实践中具体体会。
舵机的速度决定于你给它的信号脉宽的变化速度。
如果你要求的速度比较快的话,舵机就反应不过来了;
将脉宽变化值线性到你要求的时间内,一点一点的增加脉宽值,就可以控制舵机的速度了。
当然,具体这一点一点到底是多少,就需要做试验了,不合适的话,舵机就会向步进电机一样一跳一跳的转动了,尝试改变这“一点”,使你的舵机运动更平滑。
还有一点很重要,就是舵机在每一次脉宽值改变的时候总会有一个转速由零增加再减速为零的过程,这就是舵机会产生像步进电机一样运动的原因。
LM92是美国国家半导体公司近年推出的单片高精度数字温度传感器,它具有成本低、功耗低、可靠性高、接口简单、传输距离远等特点。
LM92的温度测量范围为-55℃~150℃,内部的13位温度模数转换器(12位模数转换+1位符号)使其温度分辨率可达到0.0625℃,常温下测量精度可高达0.33℃。
LM92还具有高/低温度窗口门限及临界温度告警门限设定功能,通过I2C总线可对其内部寄存器进行读/写操作。
舵机的工作原理详解
摘要:
(1)发动机进气量,来控制发动机的拉力(或.........
1、概述
(1)发动机进气量,来控制发动机的拉力(或推力);
(2)副翼舵面(安装在飞机机翼后缘),用来控制飞机的横滚运动;
(3)水平尾舵面,用来控制飞机的俯仰角;
(4)垂直尾舵面,用来控制飞机的偏航角;
遥控器有四个通道,分别对应四个舵机,而舵机又通过连杆等传动元件带动舵面的转动,从而改变飞机的运动状态。
舵机因此得名:
控制舵面的伺服电机。
2、结构和控制
控制电路板接受来自信号线的控制信号(具体信号待会再讲),控制电机转动,电机带动一系列齿轮组,减速后传动至输出舵盘。
常见的舵机厂家有:
日本的Futaba、JR、SANWA等,国产的有北京的新幻想、吉林的振华等。
现举FutabaS3003来介绍相关参数,以供大家设计时选用。
之所以用3003是因为这个型号是市场上最常见的,也是价格相对较便宜的一种(以下数据摘自Futaba产品手册)。
尺寸(Dimensions):
40.4×
19.8×
36.0mm
重量(Weight):
37.2g
工作速度(Operatingspeed):
0.23sec/60°
(4.8V),0.19sec/60°
(6.0V)
输出力矩(Outputtorque):
3.2kg.cm(4.8V),4.1kg.cm(6.0V)
由此可见,舵机具有以下一些特点:
>
体积紧凑,便于安装;
输出力矩大,稳定性好;
控制简单,便于和数字系统接口;
正是舵机的控制信号是一个脉宽调制信号,所以很方便和数字系统进行接口。
这里介绍利用51系列单片机产生舵机的控制信号来进行控制的方法,编程语言为C51。
之所以介绍这种方法只是因为笔者用2051实现过,本着负责的态度,所以敢在这里写出来。
程序用的是我的四足步行机器人,有删改。
单片机并不是控制舵机的最好的方法,希望在此能起到抛砖引玉的作用。
2051有两个16位的内部计数器,我们就用它来产生周期20ms的脉冲信号,根据需要,改变输出脉宽。
基本思路如下(请对照下面的程序):
这里用的晶振频率为12M,2051一个时钟周期为12个晶振周期,正好是1/1000ms,计数器每隔1/1000ms计一次数。
以计数器1为例,先设定脉宽的初始值,程序中初始为1.5ms,在for循环中可以随时通过改变a值来改变,然后设定计数器计数初始值为a,并置输出p12为高位。
当计数结束时,触发计数器溢出中断函数,就是voidtimer0(void)interrupt1using1,在子函数中,改变输出p12为反相(此时跳为低位),在用20000(代表20ms周期)减去高位用的时间a,就是本周期中低位的时间,c=20000-a,并设定此时的计数器初值为c,直到定时器再次产生溢出中断,重复上一过程。
#include
#defineucharunsignedchar
#defineuintunsignedint
uinta,b,c,d;
/*a为舵机1的脉冲宽度,b为舵机2的脉冲宽度,单位1/1000ms*/
/*c、d为中间变量*/
/*以下定义输出管脚*/
sbitp12=P1^2;
sbitp13=p1^3;
sbitp37=P3^7;
/*以下两个函数为定时器中断函数*/
/*定时器1,控制舵机1,输出引脚为P12,可自定义*/
voidtimer0(void)interrupt1using1
{
p12=!
p12;
/*输出取反*/
c=20000-c;
/*20000代表20ms,为一个周期的时间*/
TH0=-(c/256);
TL0=-(c%256);
/*重新定义计数初值*/
if(c>
=500&
&
c<
=2500)c=a;
elsec="
20000-a"
;
/*判断脉宽是否在正常范围之内*/
}
/*定时器2,控制舵机2,输出引脚为P13,可自定义*/
voidtimer1(void)interrupt3using1
p13=!
p13;
d=20000-d;
TH1=-(d/256);
TL1=-(d%256);
if(d>
d<
=2500)d=b;
elsed="
20000-b"
/*主程序*/
voidmain(void)
TMOD=0x11;
/*设初值*/
p12=1;
p13=1;
a=1500;
b=1500;
/*数值1500即对应1.5ms,为舵机的中间90度的位置*/
c=a;
d=b;
TH0=-(a/256);
TL0=-(a%256);
TH1=-(b/256);
TL1=-(b%256);
/*设定定时器初始计数值*/
EA=1;
ET0=1;
TR0=1;
EX0=1;
EX1=1;
ET1=1;
TR1=1;
PX0=0;
PX1=0;
PT1=1;
PT0=1;
/*设定中断优先级*/
for(;
)
{
/*在这个for循环中,可以根据程序需要在任何时间改变a、b值来改变脉宽的输出时间,从而控制舵机*/
}
因为在脉冲信号的输出是靠定时器的溢出中断函数来处理,时间很短,因此在精度要求不高的场合可以忽略。
因此如果忽略中断时间,从另一个角度来讲就是主程序和脉冲输出是并行的,因此,只需要在主程序中按你的要求改变a值,例如让a从500变化到2500,就可以让舵机从0度变化到180度。
另外要记住一点,舵机的转动需要时间的,因此,程序中a值的变化不能太快,不然舵机跟不上程序。
根据需要,选择合适的延时,用一个a递增循环,可以让舵机很流畅的转动,而不会产生像步进电机一样的脉动。
举个例子,t=0试,脉宽为0.5ms,t=1s时,脉宽为1.0ms,那么,舵机就会从0.5ms对应的位置转到1.0ms对应的位置,那么转动速度如何呢?
一般来讲,3003的最大转动速度在4.8V时为0.23s/60度,也就是说,如果你要求的速度比这个快的话,舵机就反应不过来了;
如果要求速度比这个慢,可以将脉宽变化值线性到你要求的时间内,做一个循环,一点一点的增加脉宽值,就可以控制舵机的速度了。
当然,具体这一点一点到底是多少,就需要做试验了,不然的话,不合适的话,舵机就会向步进电机一样一跳一跳的转动了,尝试改变这“一点”,使你的舵机运动更平滑。
舵机的控制方式和工作原理介绍
在机器人机电控制系统中,舵机控制效果是性能的重要影响因素。
舵机可以在微机电系统和航模中作为基本的输出执行机构,其简单的控制和输出使得单片机系统非常容易与之接口。
舵机是一种位置(角度)伺服的驱动器,......
舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。
目前在高档遥控玩具,如航模,包括飞机模型,潜艇模型;
遥控机器人中已经使用得比较普遍。
舵机是一种俗称,其实是一种伺服马达。
其工作原理是:
控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。
它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。
最后,电压差的正负输出到电机驱动芯片决定电机的正反转。
当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。
当然我们可以不用去了解它的具体工作原理,知道它的控制原理就够了。
就象我们使用晶体管一样,知道可以拿它来做开关管或放大管就行了,至于管内的电子具体怎么流动是可以完全不用去考虑的。
舵机的控制:
舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms~2.5ms范围内的角度控制脉冲部分。
以180度角度伺服为例,那么对应的控制关系是这样的:
0.5ms--------------0度;
1.0ms------------45度;
1.5ms------------90度;
2.0ms-----------135度;
2.5ms-----------180度;
这只是一种参考数值,具体的参数,请参见舵机的技术参数。
小型舵机的工作电压一般为4.8V或6V,转速也不是很快,一般为0.22/60度或0.18/60度,所以假如你更改角度控制脉冲的宽度太快时,舵机可能反应不过来。
如果需要更快速的反应,就需要更高的转速了。
要精确的控制舵机,其实没有那么容易,很多舵机的位置等级有1024个,那么,如果舵机的有效角度范围为180度的话,其控制的角度精度是可以达到180/1024度约0.18度了,从时间上看其实要求的脉宽控制精度为2000/1024us约2us。
如果你拿了个舵机,连控制精度为1度都达不到的话,而且还看到舵机在发抖。
在这种情况下,只要舵机的电压没有抖动,那抖动的就是你的控制脉冲了。
而这个脉冲为什么会抖动呢?
当然和你选用的脉冲发生器有关了。
一些前辈喜欢用555来调舵机的驱动脉冲,如果只是控制几个点位置伺服好像是可以这么做的,可以多用几个开关引些电阻出来调占空比,这么做简单吗,应该不会啦,调试应该是非常麻烦而且运行也不一定可靠的。
其实主要还是他那个年代,单片机这东西不流行呀,哪里会哟!
使用传统单片机控制舵机的方案也有很多,多是利用定时器和中断的方式来完成控制的,这样的方式控制1个舵机还是相当有效的,但是随着舵机数量的增加,也许控制起来就没有那么方便而且可以达到约2微秒的脉宽控制精度了。
听说AVR也有控制32个舵机的试验板,不过精度能不能达到2微秒可能还是要泰克才知道了。
其实测试起来很简单,你只需要将其控制信号与示波器连接,然后让试验板输出的舵机控制信号以2微秒的宽度递增。
为什么FPPA就可以很方便地将脉宽的精度精确地控制在2微秒甚至2微秒一下呢。
主要还是delaymemory这样的具有创造性的指令发挥了功效。
该指令的延时时间为数据单元中的立即数的值加1个指令周期(数据0出外,详情请参见delay指令使用注意事项)因为是8位的数据存储单元,所以memory中的数据为(0~255),记得前面有提过,舵机的角度级数一般为1024级,所以只用一个存储空间来存储延时参数好像还不够用的,所以我们可以采用2个内存单元来存放舵机的角度伺服参数了。
舵机驱动的应用场合:
1.高档遥控仿真车,至少得包括左转和右转功能,高精度的角度控制,必然给你最真实的驾车体验。
2.多自由度机器人设计,为什么日本人设计的机器人可以上万RMB的出售,而国内设计的一些两三千块也卖不出去呢,还是一个品质的问题。
3.多路伺服航模控制,电动遥控飞机,油动遥控飞机,航海模型等。
舵机的性能特点及安装方式介绍
舵机是遥控模型无线电操纵系统中很重要的部件。
如果不了解它的性能,不讲究正确的安装方法,轻则影响模型的飞行姿态,重则如果卡住模型则无法操纵,造成事故的发生。
所以,在使用舵机前,了解它的性能和安装方法是必...
所以,在使用舵机前,了解它的性能和安装方法是必要的。
目前市场上出售的模型舵机,主要是比例式的,类型有普通型、超小型,强力型和特殊用途型等几种。
下面分别介绍一下它们各自的性能。
普通型:
45克,0.2秒/60度,力矩3千克·
厘米。
这种舵机各方面性能都比较适中,一般用在尺寸不是很大的P3A-1、2和P2B-1、2等模型上。
超小型:
20克,0.15秒/60度,力矩2千克·
它的体积小、重量轻,输出力矩小,通常用于小尺寸、舵面阻力相对小的模型上,如P5A、小型电动类模型等。
强力型:
100克,0.2秒/60度,力矩9千克·
这种舵机输出力矩大,可以克服高速、大舵面带来的阻力大的缺点。
主要用于尺寸和飞行重量大,速度快,舵面阻力大的模型,如F3A、大型仿真飞机模型、现代特技飞机模型、喷射模型飞机和F4级模型等。
特殊用途型:
多数特殊用途的舵机,其性能与强力型相似。
通常用于专项任务,如收索机(帆船)、起落架蛇机等。
另外,还有—些耐高温和可防水的舵机,主要用于科学研究和工业方面,一般模型很少采用,但近年来这种舵机随着模型产品的发展在民用模型领域发展迅速。
—般的舵机内部的电路和齿轮等零什都是很精细的,自己较难制作,多采用成品舵机。
日产成品舵机品质较好,剩余功率大,不易打齿、比较耐用。
国产舵机质量有的也不错。
安装舵机也很重要,安装方法主要有三种:
(1)用胶直接把舵机粘在模型上。
要求帖接技术较高,不能更换,通常用于一些简单模型。
(2)对好舵机两边的安装孔,用螺钉固定。
这种方法的好处是容易更换。
(3)利用配套的固定片及减震片固定。
对丁装大容积内燃机的模型,为了减少振动对舵机的损害,多采用这种方法。
舵机的安装位置应尽量靠近模型的重心。
有条件时,舵机和接收机应尽量分别使用电源。
电源电压不足时,应立即更换,以免舵机操纵失灵导致空中停机。
舵机输出盘(摇臂)不同的角度和力臂孔,应尽量选择力臂大的,这样可以减小舵机负荷。
输出盘与舵面,可以专用联杆或钢丝连接,前者效果较好。
最后说明一下,对于—些电动模型的动力电机控制,原来用一个舵机作开关,但作用不大,后来有些人用直接粘一个电位器的办法来对电机进行无级操纵。
现在,有些厂家已生产出成品的无级变速器(专业术语叫电调),直接插在一个通道中,对电机进行加、减速等无级控制,既轻巧,又经济。
不过,为了考虑车、船模使用,变速器有顺、逆转功能,而在航模上只允许用顺转功能。
因此,用在航模上时,最好请专人对它的电路进行一下改装,防止操纵失误。
变速器最好单用一组动力电源,如果同时使用接枚机电源,将会影响接收机的工作和舵机的效果。
步进电机的工作原理
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过......
一、前言
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。
使得在速度、位置等控制领域用步进电机来控制变的非常的简单。
虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。
它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。
因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。