资源预览内容
第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
第9页 / 共32页
第10页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
舵机工作原理http:/robotdiy.taobao.com/1、概述舵机最早出现在航模运动中。在航空模型中,飞行机的飞行姿态是通过调节发动机和 各个控制舵面来实现的。举个简单的四通飞机来说,飞机上有以下几个地方需要控制:1)发动机进气量,来控制发动机的拉力(或推力);2)副翼舵面(安装在飞机机翼后缘),用来控制飞机的横滚运动;3)水平尾舵面,用来控制飞机的俯仰角;4)垂直尾舵面,用来控制飞机的偏航角;不仅在航模飞机中,在其他的模型运动中都可以看到它的应用:船模上用来控制尾舵, 车模中用来转向等等。由此可见,凡是需要操作性动作时都可以用舵机来实现。2、结构和控制一般来讲,舵机主要由以下几个部分组成, 舵盘、减速齿轮组、位置反馈电位计 5k、 直流电机、控制电路板等。工作原理:控制电路板接受来自信号线的控制信号,控制电机转动,电机带动一系列 齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是相连的,舵盘转动的同 时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板,进行反馈,然后控制 电路板根据所在位置决定电机的转动方向和速度,从而达到目标停止。舵机的基本结构是这样,但实现起来有很多种。例如电机就有有刷和无刷之分,齿轮 有塑料和金属之分,输出轴有滑动和滚动之分,壳体有塑料和铝合金之分,速度有快速和慢 速之分,体积有大中小三种之分等等,组合不同,价格也千差万别。例如,其中小舵机一般 称作微舵,同种材料的条件下是中型的一倍多,金属齿轮是塑料齿轮的一倍多。需要根据需 要选用不同类型。舵机的输入线共有三条,红色中间,是电源线,一边黑色的是地线,这辆根线给舵机 提供最基本的能源保证,主要是电机的转动消耗。电源有两种规格,一是4.8V, 是6.0V, 分别对应不同的转矩标准,即输出力矩不同,6.0V对应的要大一些,具体看应用条件;另 外一根线是控制信号线,Futaba的一般为白色,JR的一般为桔黄色。另外要注意一点, SANWA 的某些型号的舵机引线电源线在边上而不是中间,需要辨认。但记住红色为电源, 黑色为地线,一般不会搞错。舵机的控制信号为周期是 20ms的脉宽调制(PWM )信号,其中脉冲宽度从 05ms-25ms,相对应舵盘的位置为0180度,呈线性变化。也就是说,给它提供一定的脉 宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一 个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机内部有一个基准电 路,产生周期20ms,宽度1.5ms的基准信号,有一个比较器,将外加信号与基准信号相比 较,判断出方向和大小,从而产生电机的转动信号。由此可见,舵机是一种位置伺服的驱动 器,转动范围不能超过180度,适用于那些需要角度不断变化并可以保持的驱动当中。比方说机器人的关节、飞机的舵面等。舵机具有以下一些特点:1) 体积紧凑,便于安装;2) 输出力矩大,稳定性好;3) 控制简单,便于和数字系统接口。正是因为舵机有很多优点,所以,现在不仅仅应用在航模运动中,已经扩展到各种机 电产品中来,在机器人控制中应用也越来越广泛。3、用单片机来控制舵机的控制信号是一个脉宽调制信号,很方便和数字系统进行接口。只要能产生标准 的控制信号的数字设备都可以用来控制舵机,比方PLC、单片机等。因为在脉冲信号的输出可以用定时器的溢出中断函数来处理,时间很短,因此在精度 要求不高的场合可以忽略。通过编程就可以让舵机从0 度变化到180 度。另外要记住一点, 舵机的转动需要时间的,因此,程序中时间的变化不能太快,不然舵机跟不上程序。根据 需要,选择合适的延时,返复调试,可以让舵机很流畅的转动,而不会产生像步进电机一 样的脉动。这些还需要实践中具体体会。舵机的速度决定于你给它的信号脉宽的变化速度。如果你要求的速度比较快的话,舵 机就反应不过来了;将脉宽变化值线性到你要求的时间内,一点一点的增加脉宽值,就可 以控制舵机的速度了。当然,具体这一点一点到底是多少,就需要做试验了,不合适的话, 舵机就会向步进电机一样一跳一跳的转动了,尝试改变这“一点”,使你的舵机运动更平滑。 还有一点很重要,就是舵机在每一次脉宽值改变的时候总会有一个转速由零增加再减速为零 的过程,这就是舵机会产生像步进电机一样运动的原因。LM92 是美国国家半导体公司近年推出的单片高精度数字温度传感器,它具有成本低、功耗 低、可靠性高、接口简单、传输距离远等特点。LM92的温度测量范围为-55 C150 C, 内部的 13 位温度模数转换器 (12 位模数转换+ 1 位符号) 使其温度分辨率可达到 0. 0625 C,常温下测量精度可高达0. 33 Co LM92还具有高/低温度窗口门限及临界温度告 警门限设定功能,通过 I2C 总线可对其内部寄存器进行读/ 写操作。舵机的工作原理详解http:/www.robot360.cn/portal.php7modMview&aid=1076&page=2摘要: 舵机最早出现在航模运动中。在航空模型中,飞行机的飞行姿态是通过调节发动机和 各个控制舵面来实现的。举个简单的四通飞机来说,飞机上有以下几个地方需要控制:(1) 发动机进气量,来控制发动机的拉力(或 1 、概述 舵机最早出现在航模运动中。在航空模型中,飞行机的飞行姿态是通过调节发动机 和各个控制舵面来实现的。举个简单的四通飞机来说,飞机上有以下几个地方需要控制:(1)发动机进气量,来控制发动机的拉力(或推力);(2)副翼舵面(安装在飞机机翼后缘),用来控制飞机的横滚运动;(3)水平尾舵面,用来控制飞机的俯仰角;(4)垂直尾舵面,用来控制飞机的偏航角;遥控器有四个通道,分别对应四个舵机,而舵机又通过连杆等传动元件带动舵面的 转动,从而改变飞机的运动状态。舵机因此得名:控制舵面的伺服电机。不仅在航模飞机中,在其他的模型运动中都可以看到它的应用:船模上用来控制尾舵,车模中用来转向等等。由此可见,凡是需要操作性动作时都可以用舵机来实现。2、结构和控制一般来讲,舵机主要由以下几个部分组成, 舵盘、减速齿轮组、位置反馈电位计 5k、直流电机、控制电路板等。工作原理:控制电路板接受来自信号线的控制信号(具体信号待会再讲),控制电机 转动,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是 相连的,舵盘转动的同时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板, 进行反馈,然后控制电路板根据所在位置决定电机的转动方向和速度,从而达到目标停止。舵机的基本结构是这样,但实现起来有很多种。例如电机就有有刷和无刷之分,齿 轮有塑料和金属之分,输出轴有滑动和滚动之分,壳体有塑料和铝合金之分,速度有快速和 慢速之分,体积有大中小三种之分等等,组合不同,价格也千差万别。例如,其中小舵机一 般称作微舵,同种材料的条件下是中型的一倍多,金属齿轮是塑料齿轮的一倍多。需要根据 需要选用不同类型。舵机的输入线共有三条,红色中间,是电源线,一边黑色的是地线,这辆根线给舵 机提供最基本的能源保证,主要是电机的转动消耗。电源有两种规格,一是4.8V, 是6.0V, 分别对应不同的转矩标准,即输出力矩不同, 6.0V 对应的要大一些,具体看应用条件;另 外一根线是控制信号线, Futaba 的一般为白色, JR 的一般为桔黄色。另外要注意一点, SANWA 的某些型号的舵机引线电源线在边上而不是中间,需要辨认。但记住红色为电源, 黑色为地线,一般不会搞错。舵机的控制信号为周期是 20ms的脉宽调制(PWM)信号,其中脉冲宽度从 0.5ms-2.5ms,相对应舵盘的位置为0180度,呈线性变化。也就是说,给它提供一定的脉 宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一 个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机内部有一个基准电 路,产生周期20ms,宽度1.5ms的基准信号,有一个比较器,将外加信号与基准信号相比 较,判断出方向和大小,从而产生电机的转动信号。由此可见,舵机是一种位置伺服的驱动 器,转动范围不能超过180度,适用于那些需要角度不断变化并可以保持的驱动当中。比方 说机器人的关节、飞机的舵面等。常见的舵机厂家有:日本的 Futaba、JR、SANWA 等,国产的有北京的新幻想、吉 林的振华等。现举Futaba S3003来介绍相关参数,以供大家设计时选用。之所以用3003是 因为这个型号是市场上最常见的,也是价格相对较便宜的一种(以下数据摘自Futaba产品 手册)。尺 寸(Dimensions):40.4X19.8X36.0 mm重量(Weight):37.2 g工作速度(Operating speed): 0.23 sec/60 (4.8V) , 0.19 sec/60 (6.0V)输出力矩(Output torque):3.2 kg.cm (4.8V) , 4.1 kg.cm (6.0V)由此可见,舵机具有以下一些特点体积紧凑,便于安装;输出力矩大,稳定性好;控制简单,便于和数字系统接口;正是因为舵机有很多优点,所以,现在不仅仅应用在航模运动中,已经扩展到各种 机电产品中来,在机器人控制中应用也越来越广泛。3、用单片机来控制正是舵机的控制信号是一个脉宽调制信号,所以很方便和数字系统进行接口。只要能产 生标准的控制信号的数字设备都可以用来控制舵机,比方PLC、单片机等。这里介绍利用 51系列单片机产生舵机的控制信号来进行控制的方法,编程语言为C51。之所以介绍这种 方法只是因为笔者用2051实现过,本着负责的态度,所以敢在这里写出来。程序用的是我 的四足步行机器人,有删改。单片机并不是控制舵机的最好的方法,希望在此能起到抛砖引 玉的作用。2051有两个16位的内部计数器,我们就用它来产生周期20 ms的脉冲信号,根据需要, 改变输出脉宽。基本思路如下(请对照下面的程序):这里用的晶振频率为12M,2051 一个时钟周期为12个晶振周期,正好是1/1000 ms, 计数器每隔 1/1000 ms 计一次数。以计数器 1 为例,先设定脉宽的初始值,程序中初始为 1.5ms,在for循环中可以随时通过改变a值来改变,然后设定计数器计数初始值为a,并置 输出p12为高位。当计数结束时,触发计数器溢出中断函数,就是void timer0(void) interrupt 1 using1,在子函数中,改变输出p12为反相(此时跳为低位),在用20000 (代表20ms周 期)减去高位用的时间a,就是本周期中低位的时间,c=20000-a,并设定此时的计数器初值 为c,直到定时器再次产生溢出中断,重复上一过程。# include#define uchar unsigned char#define uint unsigned int uint a,b,c,d;/*a为舵机1的脉冲宽度,b为舵机2的脉冲宽度,单位1/1000 ms */ /*c、d 为中间变量*/*以下定义输出管脚*/sbit p12=P1A2;sbit p13=p1A3;sbit p37=P3A7;/*以下两个函数为定时器中断函数*/*定时器1,控制舵机1,输出引脚为P12,可自定义*/void timer0(void) interrupt 1 using 1p12=!p12; /*输出取反*/c=20000-c; /*20000代表20 ms,为一个周期的时间*/TH0=-(c/256); TL0=-(c%256); /*重新定义计数初值*/ if(c=500&c=2500)c=a;
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号