51单片机PWM控制舵机,为什么舵机动不起来,每次开电源只转动一点点角度,修改很多次占空比也没用 10
#include<reg51.h>sbitPWM=P0^0;unsignedchartime,duoji;//duoji是调节占空比的voidinit(){duoji=1...
#include <reg51.h>
sbit PWM=P0^0;
unsigned char time,duoji; //duoji是调节占空比的
void init()
{
duoji=15;
time=0;
TMOD=0X01;
TH0=(65536-20000)/256;
TL0=(65536-20000)%256;
EA=1;
ET0=1;
TR0=1;
}
void main()
{
init();
while(1)
{
if (time<=duoji)
PWM=1;
else
PWM=0;
}
}
void time1() interrupt 1
{
TH0=(65536-20000)/256;
TL0=(65536-20000)%256;
time++;
if(time>=200)
{
time=0;
}
} 展开
sbit PWM=P0^0;
unsigned char time,duoji; //duoji是调节占空比的
void init()
{
duoji=15;
time=0;
TMOD=0X01;
TH0=(65536-20000)/256;
TL0=(65536-20000)%256;
EA=1;
ET0=1;
TR0=1;
}
void main()
{
init();
while(1)
{
if (time<=duoji)
PWM=1;
else
PWM=0;
}
}
void time1() interrupt 1
{
TH0=(65536-20000)/256;
TL0=(65536-20000)%256;
time++;
if(time>=200)
{
time=0;
}
} 展开
2个回答
展开全部
舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0-180度,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。
舵机的原理和控制 如下:
舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms-2.5ms范围内的角度控制脉冲部分,总间隔为2ms。以180度角度伺服为例,那么对应的控制关系是这样的:
0.5ms--------------0度;
1.0ms------------45度;
1.5ms------------90度;
2.0ms-----------135度;
2.5ms-----------180度;
舵机的追随特性 假设现在舵机稳定在A点,这时候CPU发出一个PWM信号,舵机全速由A点转向B点,在这个过程中需要一段时间,舵机才能运动到B点。
舵机的原理和控制 如下:
舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms-2.5ms范围内的角度控制脉冲部分,总间隔为2ms。以180度角度伺服为例,那么对应的控制关系是这样的:
0.5ms--------------0度;
1.0ms------------45度;
1.5ms------------90度;
2.0ms-----------135度;
2.5ms-----------180度;
舵机的追随特性 假设现在舵机稳定在A点,这时候CPU发出一个PWM信号,舵机全速由A点转向B点,在这个过程中需要一段时间,舵机才能运动到B点。
更多追问追答
追问
用定时器产生了PWM波不能直接控制的吗,那个是MG995舵机
追答
1500ms对应中点,500ms对应-90度,2500ms对应90度。
如果控制舵机时候对舵机的转动速度没有要求的话,舵机会以最快的速度来工作。也就是说,在实现90度转动的过程则需要225ms,如果我们在之后好要实现其他角度的转动,那么相对应的控制pwm应该在上一个控制pwm的225ms之后发出。说得更详细点就是:在转动的225ms时间里,需要一直保持“1.5ms的高电平,18.5ms的低电平的脉宽,之后再实现其他的转动。
2016-11-25
展开全部
你的(65536-20000)这个能不能得到准确的周期20ms/200的单片机中断时间呢?
你试试下面参数,这个是12M晶振,12T,给出的是100微秒中断时间的参数
TH0 = 0x0FF;
TL0 = 0x9C;
你试试下面参数,这个是12M晶振,12T,给出的是100微秒中断时间的参数
TH0 = 0x0FF;
TL0 = 0x9C;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询