大神指导这个舵机咋控制?

2019-03-24 17:00发布

EMAX ES3104 这个舵机要怎么控制? 我用的是51单片机,按照网上的舵机控制周期20ms,高电平1.5ms输出的PWM波,想让舵机转九十度,但是程序考进去以后舵机就只是一直在抖着转,没有转到九十度停止。网上查不到这个舵机的说明书,求大神指导,多谢!

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
ienglgge
1楼-- · 2019-03-24 21:29
 精彩回答 2  元偷偷看……
littleshrimp
2楼-- · 2019-03-25 02:08
测一下PWM波形看看波形 再检查一下舵机电源看看
shijizai
3楼-- · 2019-03-25 03:27
ienglgge 发表于 2018-4-17 14:26
用示波器等设备测一下,控制信号的周期,占空比是否合适。是否是不变的输出。  舵机供电是否稳定。可以单独 ...

舵机单独供电,也就是不接信号线,只将电源线接5V电源,地线接地。这个时候舵机刚上电时会略微转一下,然后就停止状态。这个现象是对的么?
shijizai
4楼-- · 2019-03-25 05:13
 精彩回答 2  元偷偷看……
shijizai
5楼-- · 2019-03-25 10:45
littleshrimp 发表于 2018-4-17 14:27
测一下PWM波形看看波形 再检查一下舵机电源看看

什么样算是正常的?现在舵机不接信号线直接接5V电源还有地,现象是,刚上电舵机会抖一下,然后就是停止状态
shijizai
6楼-- · 2019-03-25 16:29
ienglgge 发表于 2018-4-17 14:26
用示波器等设备测一下,控制信号的周期,占空比是否合适。是否是不变的输出。  舵机供电是否稳定。可以单独 ...

这是程序,周期20ms, 高电平1.5ms   想要实现舵机转90度,但是实际上舵机一点也不动
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char

sbit sign = P2^0;

uint time = 0;

void main()
{
        TMOD = 0x01;
        TH0 = (65536 - 100)/256;     //定时0.1ms
        TL0 = (65536 - 100)%256;
        EA = 1;
        ET0 = 1;
        TR0 = 1;
}

void Timer0() interrupt 1
{
        TH0 = (65536 - 100)/256;     
        TL0 = (65536 - 100)%256;
        time++;
        if(time <= 200)
        {
                if(time < 15)
                        sign = 1;
                else
                        sign = 0;
        }
        else
                time = 0;
}

一周热门 更多>