首页 理论教育 51单片机实现舵机控制

51单片机实现舵机控制

时间:2023-06-22 理论教育 版权反馈
【摘要】:舵机的控制信号是PWM信号,利用占空比的变化改变舵机的位置。

51单片机实现舵机控制

1.舵机的定义

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

图9.42 舵机实物

舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在高档遥控玩具,如航模,包括飞机模型潜艇模型;遥控机器人中已经使用得比较普遍。舵机是一种俗称,其实是一种伺服马达

2.用单片机实现舵机转角控制

舵机的工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。其内部有一个基准电路,产生周期为20 ms、脉宽为1.5 ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片上决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。舵机接线图如图9.43所示。其中红色的线就是电源正极,白色或者橙色线是信号级,黑色或者棕色的线是负极电源。

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

图9.43 舵机接线图

图9.44 舵机的控制要求

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

舵机控制一般需要一个20 ms左右的时基脉冲,该脉冲的高电平部分一般为0.5~2.5 ms范围的角度控制脉冲部分。以180°角度伺服为例,那么对应的控制关系如下:

0.5 ms--------------0°;(www.xing528.com)

1.0 ms--------------45°;

1.5 ms--------------90°;

2.0 ms--------------135°;

2.5 ms--------------180°。

说明:

(1)上面部分还是成线形关系的,Y=90X-45(X单位是ms,Y单位是度数)。

(2)上面所说的0°、45°等是指度,45°位置是什么意思呢?若舵机停在0°位置,下载45°位置程序后则舵机停在45°,即顺时针走了45°,若当时舵机在135°位置,则反转90°到45°位置。所以舵机不存在正转反转问题,这点非常重要。

(3)若想转动到45°位置,要一直产生1.0 ms的高电平[PA0=1;Delay(1 ms);PA0=0;Delay(20 ms)],要不停地产生这个高低电平,产生PWM脉冲。

【例9.3】按键控制舵机电路原理图如图9.45所示。编写程序:通过按键控制舵机的左转和右转,舵机工作周期为20 ms。

图9.45 按键控制舵机电路原理图

C语言源程序如下:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈