智能车制作

标题: 一个关于舵机的问题 用的是S3010 [打印本页]

作者: J_︿    时间: 2014-2-27 18:31
标题: 一个关于舵机的问题 用的是S3010
  恩 我用的是S3010舵机   有两个  一个老的 一个全新的 。买这个全新的舵机的原因是之前我以为老的坏了,后来买了新舵机发现还是一样。
    程序是自己写的 单片机用AVR M8 7.3728MHZ 的那种  。  

  在调试的时候出现了这种问题。 设置左转或者右转90度还有输入0度的时候确实有效
     但是当输入60度的时候发现只转角30度
        而且  从0度逐步升高到90度的时候,发现只转了两次,分别是 输入60和90 的时候
   这让我太尴尬了 下面是程序 请大神指教
     int angle:  这就是要调配的角度
     uint x,y:
   DDRB|=0X06;设置B的2,3通道为输出

   TCCR1A=(1<<COM1A1)|(1<<COM1B1)|(1<<WGM11)|(1<<WGM10);  选择快速PWM波模式,以ICR1为TOP,先输出高电平匹配后变为低电平
   TCCR1B=(1<<WGM12)|(0<<WGM13)|(1<<CS10)|(1<<CS11);    预分频1024,
                                   
   ICR1=0x93;      这里输出PWM的频率弄成50HZ

                  x=((angle)/45*(2-1.5)+1.5)/20*(0x93);      2通道输出脉宽
                   y=(-(angle)/45*(2-1.5)+1.5)/20*(0x93);     与2通道输出正好反向
                   ICR1=0x93;                                        重写一遍 确保TOP不变(这个其实不知道要不要,我觉得没必要,这是一个学长说的。)
                   OCR1A=x;                        
                OCR1B=y;                        
                   tube_display(angle+90);       
       
}*/







作者: Jyoun    时间: 2014-2-27 18:43
舵机转角实际是识别的一个周期的高电平时间,^60度0度,60度分别对应的单周期高电平时间大约是1ms,1.5ms,2ms。
作者: J_︿    时间: 2014-2-27 18:46
Jyoun 发表于 2014-2-27 18:43
舵机转角实际是识别的一个周期的高电平时间,^60度0度,60度分别对应的单周期高电平时间大约是1ms,1.5ms, ...

  恩 是啊  这个 我知道  但是 难道舵机不能转其他的角度了 就只能转 90 45  0 度?  不科学吧

作者: Jyoun    时间: 2014-2-27 18:49
J_︿ 发表于 2014-2-27 18:46
恩 是啊  这个 我知道  但是 难道舵机不能转其他的角度了 就只能转 90 45  0 度?  不科学吧

用示波器测一下信号输出。





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2