您的位置:控制工程论坛网论坛 » 电机与运动控制 » 请教有关舵机的有关知识

fanxingchenyue

fanxingchenyue   |   当前状态:离线

总积分:71  2025年可用积分:0

注册时间: 2007-03-08

最后登录时间: 2008-08-09

空间 发短消息加为好友

请教有关舵机的有关知识

fanxingchenyue  发表于 2007/3/11 11:11:02      5436 查看 6 回复  [上一主题]  [下一主题]

手机阅读

在现在的自动控制中,舵机的应用越来越广泛,尤其是在机器人行业中,更是相当的重要,但是像我这样刚接触舵机的人对舵机的相关知识了解很少,尤其是舵机的控制原理这一块,请各位大虾们指导一下,关于双足机器人方面的知识也可以发奥,我代表菜鸟们先谢谢了!
1楼 0 0 回复
  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2025年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/3/10 22:44:24

        舵机是遥控模型控制动作的动力来源,不同类型的遥控模型所需的舵机种类也随之不同。如何审慎地选择经济且合乎需求的舵机,也是一门不可轻忽的学问。本文章主要探讨适合各等级直升机各工作部位所使用的舵机,至於其它种类的模型,如飞机、车、船,则不在本篇文章讨论范围之内。

    舵机的构造

        舵机主要是由外壳、电路板、无核心马达、齿轮与位置检测器所构成。其工作原理是由接收机发出讯号给舵机,经由电路板上的 IC判断转动方向,再驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回讯号,判断是否已经到达定位。位置检测器其实就是可变电阻,当舵机转动时电阻值也会随之改变,藉由检测电阻值便可知转动的角度。一般的伺服马达是将细铜线缠绕在三极转子上,当电流流经线圈时便会产生磁场,与转子外围的磁铁产生排斥作用,进而产生转动的作用力。依据物理学原理,物体的转动惯量与质量成正比,因此要转动质量愈大的物体,所需的作用力也愈大。舵机为求转速快、耗电小,於是将细铜线缠绕成极薄的中空圆柱体,形成一个重量极轻的五极中空转子,并将磁铁置於圆柱体内,这就是无核心马达。

        为了适合不同的工作环境,有防水及防尘设计的舵机;并且因应不同的负载需求,舵机的齿轮有塑胶及金属之区分,金属齿轮的舵机一般皆为大扭力及高速型,具有齿轮不会因负载过大而崩牙的优点。较高级的舵机会装置滚珠轴承,使得转动时能更轻快精准。滚珠轴承有一颗及二颗的区别,当然是二颗的比较好。目前新推出的 FET 舵机,主要是采用 FET(Field Effect Transistor)场效电晶体。FET 具有内阻低的优点,因此电流损耗比一般电晶体少。

    技术规格

        厂商所提供的舵机规格资料,都会包含外形尺寸(mm)、扭力(kg-cm)、速度(秒/60°)、测试电压(V)及重量(g)等基本资料。扭力的单位是 kg-cm,意思是在摆臂长度 1 公分处,能吊起几公斤重的物体。这就是力臂的观念,因此摆臂长度愈长,则扭力愈小。速度的单位是 sec/60°,意思是舵机转动 60°所需要的时间。

        电压会直接影响舵机的性能,例如 Futaba S-9001 在 4.8V 时扭力为 3.9kg、速度为 0.22 秒,在 6.0V 时扭力为 5.2kg、速度为 0.18 秒。若无特别注明,JR 的舵机都是以 4.8V 为测试电压,Futaba则是以 6.0V 作为测试电压。所谓天下没有白吃的午餐,速度快、扭力大的舵机,除了价格贵,还会伴随著高耗电的特点。因此使用高级的舵机时,务必搭配高品质、高容量的镍镉电池,能提供稳定且充裕的电流,才可发挥舵机应有的性能。

    选择舵机

        标准的直升机需搭配5颗舵机,分别控制油门、副翼、升降舵、螺距及尾舵。

    油门

        油门是所有动作中负载最轻的部位,且负载不会受到外在因素的影响而改变,所以选择油门舵机时,扭力不是问题(1 就绰绰有馀),速度才是关键。因为直升机的油门与螺距作混控,故油门与螺距舵机的速度最好要一致,才不会发生螺距舵机已到达定位,油门舵机却姗姗来迟的情况。尤其作剧烈的3D飞行时,油门与螺距的变化量极大,若油门与螺距舵机的速度不协调,会发生马力延迟的状况。

        油门舵机的速度并不是愈快愈好,因为还要考虑引擎的反应时间。引擎必须经过吸气、压缩、爆炸、排气这一连串的步骤,尤其直升机用的引擎并不属於高转速型,因此舵机的速度如果太快,就会产生引擎运转速度跟不上舵机的动作,进而出现油气混合比不适当的状况。建议采用速度为 0.19~0.24 秒的舵机。

    副翼及升降舵

        30 级及 46 级的直升机应选择扭力 3kg 以上的舵机,60 级的直升机则需选择扭力 5kg 以上的舵机。副翼及升降舵的反应速度,主要是由主旋翼转速及平衡翼片的重量所控制,与舵机的速度快慢,较无明显且直接的关联,所以不需使用太快的舵机。建议采用速度为 0.20~0.26 秒的舵机。

    螺距

        直升机的主旋翼螺距是出了名的重负载,因此螺距舵机的扭力一定要够,最好能选择扭力 5kg 以上的舵机。建议采用速度为0.19~0.24 秒的舵机。

    尾舵

        尾舵舵机的扭力不需太大,3kg 就已经足够了。请依据您所使用的陀螺仪等级来搭配尾舵舵机。机械式陀螺仪因为反应速度较慢,因此无需使用高速舵机。压电式陀螺仪需搭配高速舵机,才能发挥陀螺仪的性能。高级的陀螺仪都会指明建议使用的舵机,例如 JR 5000T 陀螺仪建议搭配 NES-8700G 舵机,Futaba GY-501 陀螺仪建议搭配 S-9205 舵机。若您使用的压电式陀螺仪并无特别指明舵机的类型,建议您购买速度愈快的舵机愈好。

    如何以最经济的方式购买合用的舵机,请参考下列步骤∶

        先决定螺距舵机,选择扭力 5kg 以上的舵机,再依据预算的多寡决定舵机的速度。依照螺距舵机的速度,选择同速度但扭力小的舵机,作为油门舵机。依据直升机的级数大小,选择扭力为 3kg 或 5kg 以上,速度为 0.20~0.26 秒的舵机,作为副翼及升降舵舵机。依据陀螺仪的等级来决定尾舵舵机的速度,愈高级的陀螺仪才需使用高级的舵机。若您使用 CCPM 的直升机,因为是由副翼、升降舵及螺距舵机采混控的方式共同来推动十字盘,所以这三个动作要选择同型号的舵机。CCPM 的优点是连杆数少、传动直接、虚位小,并且可减轻舵机的负荷,延长舵机的使用寿命。

    爱惜您的舵机

        一般说来舵机并不需要特别的保养,只要注意下列重点,就可使您的舵机长命百岁。直升机的机械可动部份,不可小於舵机的行程活动范围。不要随意改变电源电压,例如接收机用 4.8V,请勿为了提升舵机的性能而改用 6.0V。避免舵机过度负载,依照工作的性质与摆臂的长度,决定扭力的大小。善用避振垫圈来保护舵机,安装舵机时不可过度锁紧,造成避振垫圈变形。更换舵机齿轮时必须使用陶瓷系润滑油,请勿使用矿物系润滑油,以免造成塑胶齿轮变质,容易断裂。若您的舵机没有防水防尘的功能,请避免让水或尘土跑进舵机内。

    使用心得

        国内的舵机市场与遥控器的市场一样,几乎是 JR 与 Futaba 的天下。用过这二种品牌的舵机後,发觉 JR 与 Futaba 的舵机除了接头样式不同之外,正逆转的方向也正好相反。另外 Futaba 舵机电线的包皮,比较容易产生破皮的现象。对於厂商无法统一舵机的接头样式、电线色彩、排列顺序与正逆转方向深感无奈。若您想搭配不同厂牌的遥控系统与舵机,请先查明电线的排列顺序,三条线分别为电源线、接地线与讯号线。

       

    2楼 回复本楼

    引用 一条游鱼 2007/3/10 22:44:24 发表于2楼的内容

  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2025年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/3/10 22:46:52

    搜索

    3楼 回复本楼

    引用 一条游鱼 2007/3/10 22:46:52 发表于3楼的内容

  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2025年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/3/10 22:51:28

     基于单片机的舵机控制方法具有简单、精度高、成本低、体积小的特点,并可根据不同的舵机数量加以灵活应用。

       在机器人机电控制系统中,舵机控制效果是性能的重要影响因素。舵机可以在微机电系统和航模中作为基本的输出执行机构,其简单的控制和输出使得单片机系统非常容易与之接口。

       舵机是一种位置伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。其工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。
     

    图1  舵机的控制要求

       舵机的控制信号是PWM信号,利用占空比的变化改变舵机的位置。一般舵机的控制要求如图1所示。

      单片机实现舵机转角控制
        可以使用FPGA、模拟电路、单片机来产生舵机的控制信号,但FPGA成本高且电路复杂。对于脉宽调制信号的脉宽变换,常用的一种方法是采用调制信号获取有源滤波后的直流电压,但是需要50Hz(周期是20ms)的信号,这对运放器件的选择有较高要求,从电路体积和功耗考虑也不易采用。5mV以上的控制电压的变化就会引起舵机的抖动,对于机载的测控系统而言,电源和其他器件的信号噪声都远大于5mV,所以滤波电路的精度难以达到舵机的控制精度要求。

       也可以用单片机作为舵机的控制单元,使PWM信号的脉冲宽度实现微秒级的变化,从而提高舵机的转角精度。单片机完成控制算法,再将计算结果转化为PWM信号输出到舵机,由于单片机系统是一个数字系统,其控制信号的变化完全依靠硬件计数,所以受外界干扰较小,整个系统工作可靠。

        单片机系统实现对舵机输出转角的控制,必须首先完成两个任务:首先是产生基本的PWM周期信号,本设计是产生20ms的周期信号;其次是脉宽的调整,即单片机模拟PWM信号的输出,并且调整占空比。

        当系统中只需要实现一个舵机的控制,采用的控制方式是改变单片机的一个定时器中断的初值,将20ms分为两次中断执行,一次短定时中断和一次长定时中断。这样既节省了硬件电路,也减少了软件开销,控制系统工作效率和控制精度都很高。

        具体的设计过程:例如想让舵机转向左极限的角度,它的正脉冲为2ms,则负脉冲为20ms-2ms=18ms,所以开始时在控制口发送高电平,然后设置定时器在2ms后发生中断,中断发生后,在中断程序里将控制口改为低电平,并将中断时间改为18ms,再过18ms进入下一次定时中断,再将控制口改为高电平,并将定时器初值改为2ms,等待下次中断到来,如此往复实现PWM信号输出到舵机。用修改定时器中断初值的方法巧妙形成了脉冲信号,调整时间段的宽度便可使伺服机灵活运动。

        为保证软件在定时中断里采集其他信号,并且使发生PWM信号的程序不影响中断程序的运行(如果这些程序所占用时间过长,有可能会发生中断程序还未结束,下次中断又到来的后果),所以需要将采集信号的函数放在长定时中断过程中执行,也就是说每经过两次中断执行一次这些程序,执行的周期还是20ms。软件流程如图2所示。


     如图2 产生PWM信号的软件流程

        如果系统中需要控制几个舵机的准确转动,可以用单片机和计数器进行脉冲计数产生PWM信号。

        脉冲计数可以利用51单片机的内部计数器来实现,但是从软件系统的稳定性和程序结构的合理性看,宜使用外部的计数器,还可以提高CPU的工作效率。实验后从精度上考虑,对于FUTABA系列的接收机,当采用1MHz的外部晶振时,其控制电压幅值的变化为0.6mV,而且不会出现误差积累,可以满足控制舵机的要求。最后考虑数字系统的离散误差,经估算误差的范围在±0.3%内,所以采用单片机和8253、8254这样的计数器芯片的PWM信号产生电路是可靠的。图3是硬件连接图。

      
    图3 PWA信号的计数和输出电路

         基于8253产生PWM信号的程序主要包括三方面内容:一是定义8253寄存器的地址,二是控制字的写入,三是数据的写入。软件流程如图4所示,具体代码如下。
    //关键程序及注释:
    //定时器T0中断,向8253发送控制字和数据
    void T0Int() interrupt 1
    {
    TH0 = 0xB1;
    TL0 = 0xE0;    //20ms的时钟基准
    //先写入控制字,再写入计数值
    SERVO0 = 0x30; //选择计数器0,写入控制字
    PWM0 = BUF0L;  //先写低,后写高
    PWM0 = BUF0H;
    SERVO1 = 0x70;  //选择计数器1,写入控制字
    PWM1 = BUF1L;
    PWM1 = BUF1H;
    SERVO2 = 0xB0;  //选择计数器2,写入控制字
    PWM2 = BUF2L;
    PWM2 = BUF2H;
    }

    图4 基于8253产生PWA信号的软件流程

       当系统的主要工作任务就是控制多舵机的工作,并且使用的舵机工作周期均为20ms时,要求硬件产生的多路PWM波的周期也相同。使用51单片机的内部定时器产生脉冲计数,一般工作正脉冲宽度小于周期的1/8,这样可以在1个周期内分时启动各路PWM波的上升沿,再利用定时器中断T0确定各路PWM波的输出宽度,定时器中断T1控制20ms的基准时间。

       第1次定时器中断T0按20ms的  1/8设置初值,并设置输出I/O口,第1次T0定时中断响应后,将当前输出I/O口对应的引脚输出置高电平,设置该路输出正脉冲宽度,并启动第2次定时器中断,输出I/O口指向下一个输出口。第2次定时器定时时间结束后,将当前输出引脚置低电平,设置此中断周期为20ms的1/8减去正脉冲的时间,此路PWM信号在该周期中输出完毕,往复输出。在每次循环的第16次(2×8=16)中断实行关定时中断T0的操作,最后就可以实现8路舵机控制信号的输出。

       也可以采用外部计数器进行多路舵机的控制,但是因为常见的8253、8254芯片都只有3个计数器,所以当系统需要产生多路PWM信号时,使用上述方法可以减少电路,降低成本,也可以达到较高的精度。调试时注意到由于程序中脉冲宽度的调整是靠调整定时器的初值,中断程序也被分成了8个状态周期,并且需要严格的周期循环,而且运行其他中断程序代码的时间需要严格把握。

       在实际应用中,采用51单片机简单方便地实现了舵机控制需要的PWM信号。对机器人舵机控制的测试表明,舵机控制系统工作稳定,PWM占空比 (0.5~2.5ms 的正脉冲宽度)和舵机的转角(-90°~90°)线性度较好。

    4楼 回复本楼

    引用 一条游鱼 2007/3/10 22:51:28 发表于4楼的内容

  • 匿名

    匿名   |   当前状态:离线

    总积分:0  2025年可用积分:0

    注册时间: 0001-01-01

    最后登录时间: 0001-01-01

    空间 发短消息加为好友

    匿名   发表于 2007/3/10 22:58:54

    1、概述
    舵机最早出现在航模运动中。在航空模型中,飞行机的飞行姿态是通过调节发动机和各个控制舵面来实现的。举个简单的四通飞机来说,飞机上有以下几个地方需要控制:
    1.发动机进气量,来控制发动机的拉力(或推力);
    2.副翼舵面(安装在飞机机翼后缘),用来控制飞机的横滚运动;
    3.水平尾舵面,用来控制飞机的俯仰角;
    4.垂直尾舵面,用来控制飞机的偏航角;
    遥控器有四个通道,分别对应四个舵机,而舵机又通过连杆等传动元件带动舵面的转动,从而改变飞机的运动状态。舵机因此得名:控制舵面的伺服电机。
    不仅在航模飞机中,在其他的模型运动中都可以看到它的应用:船模上用来控制尾舵,车模中用来转向等等。由此可见,凡是需要操作性动作时都可以用舵机来实现。

    2、结构和控制
    一般来讲,舵机主要由以下几个部分组成, 舵盘、减速齿轮组、位置反馈电位计5k、直流电机、控制电路板等。
    工作原理:控制电路板接受来自信号线的控制信号(具体信号待会再讲),控制电机转动,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是相连的,舵盘转动的同时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板,进行反馈,然后控制电路板根据所在位置决定电机的转动方向和速度,从而达到目标停止。
    舵机的基本结构是这样,但实现起来有很多种。例如电机就有有刷和无刷之分,齿轮有塑料和金属之分,输出轴有滑动和滚动之分,壳体有塑料和铝合金之分,速度有快速和慢速之分,体积有大中小三种之分等等,组合不同,价格也千差万别。例如,其中小舵机一般称作微舵,同种材料的条件下是中型的一倍多,金属齿轮是塑料齿轮的一倍多。需要根据需要选用不同类型。
    舵机的输入线共有三条,红色中间,是电源线,一边黑色的是地线,这辆根线给舵机提供最基本的能源保证,主要是电机的转动消耗。电源有两种规格,一是4.8V,一是6.0V,分别对应不同的转矩标准,即输出力矩不同,6.0V对应的要大一些,具体看应用条件;另外一根线是控制信号线,Futaba的一般为白色,JR的一般为桔黄色。另外要注意一点,SANWA的某些型号的舵机引线电源线在边上而不是中间,需要辨认。但记住红色为电源,黑色为地线,一般不会搞错。
    舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0-180度,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机内部有一个基准电路,产生周期20ms,宽度1.5ms的基准信号,有一个比较器,将外加信号与基准信号相比较,判断出方向和大小,从而产生电机的转动信号。由此可见,舵机是一种位置伺服的驱动器,转动范围不能超过180度,适用于那些需要角度不断变化并可以保持的驱动当中。比方说机器人的关节、飞机的舵面等。
    常见的舵机厂家有:日本的Futaba、JR、SANWA等,国产的有北京的新幻想、吉林的振华等。现举Futaba S3003来介绍相关参数,以供大家设计时选用。之所以用3003是因为这个型号是市场上最常见的,也是价格相对较便宜的一种(以下数据摘自Futaba产品手册)。
    尺 寸(Dimensions): 40.4×19.8×36.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 <reg51.h>
    #define uchar unsigned char
    #define uint unsigned int

    uint a,b,c,d;
    /*a为舵机1的脉冲宽度,b为舵机2的脉冲宽度,单位1/1000 ms */
    /*c、d为中间变量*/

    /*以下定义输出管脚*/
    sbit p12=P1^2;
    sbit p13=p1^3;
    sbit p37=P3^7;

    /*以下两个函数为定时器中断函数*/

    /*定时器1,控制舵机1,输出引脚为P12,可自定义*/
    void timer0(void) interrupt 1 using 1
    {p12=!p12; /*输出取反*/
    c=20000-c; /*20000代表20 ms,为一个周期的时间*/
    TH0=-(c/256); TL0=-(c%256); /*重新定义计数初值*/
    if(c>=500&&c<=2500)c=a;
    else c="20000-a"; /*判断脉宽是否在正常范围之内*/
    }

    /*定时器2,控制舵机2,输出引脚为P13,可自定义*/
    void timer1(void) interrupt 3 using 1
    {p13=!p13;
    d=20000-d;
    TH1=-(d/256); TL1=-(d%256);
    if(d>=500&&d<=2500)d=b;
    else d="20000-b";
    }

    /*主程序*/
    void main(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度,也就是说,如果你要求的速度比这个快的话,舵机就反应不过来了;如果要求速度比这个慢,可以将脉宽变化值线性到你要求的时间内,做一个循环,一点一点的增加脉宽值,就可以控制舵机的速度了。当然,具体这一点一点到底是多少,就需要做试验了,不然的话,不合适的话,舵机就会向步进电机一样一跳一跳的转动了,尝试改变这“一点”,使你的舵机运动更平滑。还有一点很重要,就是舵机在每一次脉宽值改变的时候总会有一个转速由零增加再减速为零的过程,这就是舵机会产生像步进电机一样运动的原因。

     

    5楼 回复本楼

    引用 匿名 2007/3/10 22:58:54 发表于5楼的内容

  • blue520

    blue520   |   当前状态:在线

    总积分:1506  2025年可用积分:0

    注册时间: 2006-12-02

    最后登录时间: 2013-11-26

    空间 发短消息加为好友

    blue520   发表于 2007/3/11 11:11:02

    很全面


    谢谢!

    6楼 回复本楼

    引用 blue520 2007/3/11 11:11:02 发表于6楼的内容

总共 , 当前 /