历史上的今天

今天是:2024年08月25日(星期日)

正在发生

2021年08月25日 | 51单片机-舵机入门

发布者:InspiredDreamer 来源: eefocus关键字:51单片  机械控制 手机看文章 扫描二维码
随时随地手机看文章

1.舵机准备


舵机是单片机机械控制入门必学的模块,在一些机器人关节中也是采用舵机作为控制,学习并熟练掌握使用舵机是我们对单片机的进一步认识。


所以我们不能一直局限地使用开发板进行学习,而是扩展一些电子模块来辅助我们更加深入了解单片机。所以大家需要自行购买舵机。


小型的舵机与大型的舵机控制原理几乎大同小异,考虑到经济的合理使用,我们选择小型舵机作为入门学习和简单使用即可。


常见的小型舵机型号为“9g舵机”,外观大体如下

9.1.png?imageView2/2/w/550

不过笔者觉得这种型号的舵机虽然便宜且大家都普遍使用,但是这种舵机远没有金属舵机好用,所以笔者还是建议大家选择购买与上图体型差不多但价格稍贵一点的金属舵机为好,本教程使用的舵机型号如下图所示

9.2.png?imageView2/2/w/550

2.舵机控制原理


本教程使用的舵机为9g尺寸,型号为“MG90S”作为示例模块。


这种舵机的作用角度为0~180度,也就是舵机桨可以任意在某个角度卡死不动,由于供电原因我们使用蛮力是很难掰动舵机桨的,只有舵机掉电之后舵机桨才会任意地让我们扭动。


舵机有三根线,除了供电的两根电源线还有一根信号线,因为我们使用的是5V电压功率的舵机,所以其电源线可以直接接到单片机的+5V和GND上,信号线的话就接到单片机的一个IO端口上,这个IO端口通过输出PWM控制舵机桨的角度在任意位置上固定停留。


这个PWM的周期为20ms,高电平的时间在0.5ms~2.5ms之间可以控制舵机桨角度的停留位置。


0.5ms---------0度。


1.0ms---------45度。


1.5ms---------90度。


2.0ms---------135度。


2.5ms---------180度。


我们把舵机的电源线接好,然后信号线连接P1.7,把代码下载进去,舵机桨在上电之后就会旋转到一个固定角度的位置上停留在那不动,我们想扭动舵机桨是比较吃力的。


3.代码


#include  

#include //详见第六章第8讲

#include    //详见第八章第11讲

sbit PWMOUT = P1^7;  //舵机信号线引脚

  

void main()

{   

    LED_Init();//初始化LED硬件模块

    EA = 1;    //闭合总中断开关

    TIM0_Init(100,9);//定时0.1ms,9是微调使定时精度更高

    while(1); 

}

  

void TIM0_IRQHandler() interrupt 1

    static u8 pwm=0;

    TH0 = T0RH;  //重新加载重载值

    TL0 = T0RL;

    

    pwm++;

    if(pwm>=200)pwm=0; //pwm在0~199之间间隔0.1ms变化,周期为20ms

 

    if(pwm<10)PWMOUT=1;//高电平在周期为20ms的PWM中持续的时间为1ms,低电平持续的时间就是19ms,舵机桨在45度处的位置停留不动

    else PWMOUT=0; 

}


我们画出波形图

9.21.png?imageView2/2/w/550

断电之后我们把舵机桨扭到另一个角度位置,然后再上电,观察舵机桨的实验现象好好领悟这个小模块的工作原理。


关键字:51单片  机械控制 引用地址:51单片机-舵机入门

上一篇:51单片机-呼吸灯
下一篇:51单片机-舵机与按键

推荐阅读

随着人们生活水平的不断提高,对产品服务的要求也发生了变化,消费端开始升级并带来新的挑战和机遇。而服务机器人似乎为新的时代而生,逐步开始进入社会,进入家庭,服务于平民大众。在2018世界机器人大会上,北京康力优蓝机器人科技有限公司创始人兼首席执行官刘雪楠认为,服务机器人最大的市场是面向家庭的服务机器人,如果从商业价值的角度来讲,最大的...
特拉华大学的研究人员已经确定氨是工程燃料电池的一种来源,它可以为汽车、卡车和公共汽车提供廉价而强大的燃料,并减少碳排放。燃料电池是一种无污染的能源,它能将化学能转化为高效、零排放的电能。特拉华大学的研究人员正在研究使燃料电池更便宜、更强大的技术,以便燃料电池汽车将来可以成为所有人的可行选择。传统的燃料电池研究涉及氢燃料电池,但特...
在MPLAB X IDE软件中新建工程。按照惯例,通常会把头文件放在名为 h 的文件夹下,源文件放在 src 文件夹下,如下图所示。这里编译时会报标题所示错误。 环境MPLAB X IDE版本:v5.10编译器:xc16-gcc v1.20 解决方法1、打开菜单 文件项目属性,弹出项目属性对话框。点击 XC16,编辑 Common include dirs。 2、添加 ..和.目录。 这两种路径...
无论是核电站、医院的病人监控设备还是自动驾驶汽车,将物理程序与计算机和过程控制集成在一起,即信息物理系统(CPS)随处可见。不过,CPS的广泛应用也使其成为黑客攻击的主要目标,例如,只简单改变一个传感器的值就能够造成严重破坏。由于容易受到恶意攻击,因此此类系统需要能够在传感器被破坏的情况下,仍然能够提供安全且有效的过程控制。控制系统是...

史海拾趣

小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved