智能车制作

标题: 舵机问题,求帮助 [打印本页]

作者: 三两阳光    时间: 2014-7-15 23:54
标题: 舵机问题,求帮助
使用飞思卡尔xs128 输出占空比为1/20的波形(示波器检测到控制信号峰值为0.5V),但是连接到舵机上,舵机却不转动。求各位指教,到底哪里出现了问题??跪谢!!

作者: wuzhishiji    时间: 2014-7-16 00:01
频率对不,还有xs128的高电平是5v你那峰值为啥是0.5
作者: xhyscqcssllw    时间: 2014-7-16 00:16
你舵机的电压时多少???  S3010额定电压是6V 吧
作者: 三两阳光    时间: 2014-7-16 00:17
本帖最后由 三两阳光 于 2014-7-16 00:18 编辑
wuzhishiji 发表于 2014-7-16 00:01
频率对不,还有xs128的高电平是5v你那峰值为啥是0.5

频率设定是50HZ,O.5V是用示波器测得控制信号的峰值,是不是这个电压不对?求指教!!红色线是电压,供的是5v

作者: 三两阳光    时间: 2014-7-16 00:19
xhyscqcssllw 发表于 2014-7-16 00:16
你舵机的电压时多少???  S3010额定电压是6V 吧

不是4到6伏都是可以的吗?

作者: xhyscqcssllw    时间: 2014-7-16 00:21
三两阳光 发表于 2014-7-16 00:19
不是4到6伏都是可以的吗?

S3010的额定电压 是6V    而且电压低了舵机反应有点慢的
作者: xhyscqcssllw    时间: 2014-7-16 00:23
还有  你周期是多少  S3010是50HZ  20MS 的   你看看这个你设对了没??
作者: 三两阳光    时间: 2014-7-16 00:23
xhyscqcssllw 发表于 2014-7-16 00:21
S3010的额定电压 是6V    而且电压低了舵机反应有点慢的

那个控制线输出峰值电压是0.5v这个正常吗?

作者: 三两阳光    时间: 2014-7-16 00:25
xhyscqcssllw 发表于 2014-7-16 00:23
还有  你周期是多少  S3010是50HZ  20MS 的   你看看这个你设对了没??

恩恩,这个是对的。。
要不我把代码发给你,你看看行吗?就是单个检测舵机的。

作者: xhyscqcssllw    时间: 2014-7-16 00:31
三两阳光 发表于 2014-7-16 00:23
那个控制线输出峰值电压是0.5v这个正常吗?

那个啥   我也没用示波器 测过波形...我是按他说明书弄   结果就弄出来.....
作者: xhyscqcssllw    时间: 2014-7-16 00:33
三两阳光 发表于 2014-7-16 00:25
恩恩,这个是对的。。
要不我把代码发给你,你看看行吗?就是单个检测舵机的。

给你一个   我测试的  
#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>     /* derivative information */
//#pragma LINK_INFO DERIVATIVE "mc9s12xs128"
//=======================================================================================
//***************时钟初始化/锁相环***************//
void PLL_Init(void)         //40M
{

    CLKSEL=0X00;   
    PLLCTL_PLLON=1;   
    SYNR=0xc0 | 0x04;
    REFDV=0x80 | 0x01;
    POSTDIV=0x00;        
    _asm(nop);         
    _asm(nop);
    while(!(CRGFLG_LOCK==1));   
    CLKSEL_PLLSEL =1;         
}                  
//****************PWM初始化*********************//
void PWM_Init(void)
{            
    PWME=0x00;         //关闭PWM使能
    PWMCTL=0x10;       //通道连级
    PWMCAE=0x00;       //选择输出模式为左对齐输出模式
    PWMPOL=0xFF;       //PWM输出起始电平为高电平   
    PWMPRCLK=0x22;     //A,B时钟均为总线的4分频,10MHZ  ******* 换通道是一定要注意这个寄存器*******
    PWMSCLA=5;         //clockSA=clockA/(2*PWMSCLA) =1MHZ
    PWMCLK=0x02;       //01选SA 作为时钟源         
    PWMPER01=20000;    //PWM通道3周期为20ms  50HZ       1MHZ/20000 =50HZ        1/50HZ=20ms
   // PWMDTY01=1525;     //占空比舵机在中间     2014 年新车
    PWME=0x02;         //使能pwm_1
}
//********************延时****************//                                    
void delay(int x)
{
    int i,j;
    for(i=x;i>0;i--)
      {
         for(j=5000;j>0;j--) ;   
      }
}
//********************主函数*****************//
void main(void)
{
    PLL_Init();
    PWM_Init();
    for(;;)
    {   
             PWMDTY01= 1560;
               delay(2000);      
              PWMDTY01 = 1780;    //向左最大角度
                delay(2000);
               PWMDTY01= 1560;
               delay(2000);
              PWMDTY01= 1370;      //最大角度
               delay(2000);  
               
               
    }
}

作者: wuzhishiji    时间: 2014-7-16 00:33
三两阳光 发表于 2014-7-16 00:17
频率设定是50HZ,O.5V是用示波器测得控制信号的峰值,是不是这个电压不对?求指教!!红色线是电压,供的是 ...

没见图。。。。

作者: 三两阳光    时间: 2014-7-16 00:36
wuzhishiji 发表于 2014-7-16 00:33
没见图。。。。

[attach]61794[/attach]

作者: 三两阳光    时间: 2014-7-16 00:40
wuzhishiji 发表于 2014-7-16 00:33
没见图。。。。

[attach]61795[/attach]

作者: 三两阳光    时间: 2014-7-16 00:49
xhyscqcssllw 发表于 2014-7-16 00:33
给你一个   我测试的  
#include       /* common defines and macros */
#include      /* derivative ...

不知道您是否测试过输出的波形,但是我想告诉您,使用您的代码我输出的波形峰值是560mv,舵机依然不动。。我是否可以认为是舵机或者舵机线的问题。。跪谢

作者: xhyscqcssllw    时间: 2014-7-16 01:04
三两阳光 发表于 2014-7-16 00:49
不知道您是否测试过输出的波形,但是我想告诉您,使用您的代码我输出的波形峰值是560mv,舵机依然不动。。 ...

我这个是我自己用的     要是舵机还不动....你把电压调一下   要是依然不动建议你换一个舵机试一下......    我估计要么电压低了  要么舵机坏了   .........
作者: 三两阳光    时间: 2014-7-16 01:10
xhyscqcssllw 发表于 2014-7-16 01:04
我这个是我自己用的     要是舵机还不动....你把电压调一下   要是依然不动建议你换一个舵机试一下...... ...

嗯,好的。。谢谢您了。明天我会把结果发出来的。。

作者: wuzhishiji    时间: 2014-7-16 01:41
三两阳光 发表于 2014-7-16 00:40

要么示波器没设置对,要么输出真的错了,高电平是5v才对

作者: xhyscqcssllw    时间: 2014-7-16 03:30
三两阳光 发表于 2014-7-16 01:10
嗯,好的。。谢谢您了。明天我会把结果发出来的。。

嗯 看看是什么问题

作者: 三两阳光    时间: 2014-7-16 19:20
xhyscqcssllw 发表于 2014-7-16 03:30
嗯 看看是什么问题

今天换了个舵机,发现能用。所以认定第一个舵机坏了。另外由于没注意到示波器有电压放大功能(显示的是0.5v实际是5.v),新手,您懂得。不过真心感谢您在那么晚还回复。这是我第一次在网上问答案,没想到可以得到您这么耐心的帮助,感激之情无以形容,但还是想说声谢谢。

作者: 三两阳光    时间: 2014-7-16 19:22
wuzhishiji 发表于 2014-7-16 01:41
要么示波器没设置对,要么输出真的错了,高电平是5v才对

一点没错,示波器竟然有电压放大缩小功能。。以前从没有经历过。另外这次应该是由于舵机坏了的原因。在这里向您表示最诚意的感谢!!!

作者: xhyscqcssllw    时间: 2014-7-17 17:29
三两阳光 发表于 2014-7-16 19:20
今天换了个舵机,发现能用。所以认定第一个舵机坏了。另外由于没注意到示波器有电压放大功能(显示的是0. ...

没事    我也是从新手过来的 知道出现你种问题的蛋疼.......  特别是我是我们学校第一届做车的   没学长可以请教这种滋味我觉得你应该懂了的      还有你试一试你自己写得代码  看看有木有问题





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