一、实物图(SG90)

二、原理图

编号 名称 功能
1 GND 电源地(棕色线)
2 VCC 电源正(红色线)
3 I/O 信号线(黄色线)

三、简介

舵机(英文叫Servo),是伺服电机的一种,伺服电机就是带有反馈环节的电机,这种电机可以进行精确的位置控制或者输出较高的扭矩。舵机也叫RC伺服器,通常用于机器人、遥控汽车,飞机航模等。类似舵机这样的伺服系统通常由小型电动机,电位计,嵌入式控制系统和变速箱组成。电机输出轴的位置由内部电位计不断采样测量,并与微控制器(例如STM32,Arduino)设置的目标位置进行比较;根据相应的偏差,控制设备会调整电机输出轴的实际位置,使其与目标位置匹配,这样就形成了闭环控制系统。

四、内部结构

①:信号线:接收来自微控制器的控制信号;

②:电位器:可以测量输出轴的位置量,属于整个伺服机构的反馈部分;

③:内部控制器:处理来自外部控制的信号,驱动电机以及处理反馈的位置信号,是整个伺服机构的核心;

④:电机:作为执行机构,输出多少转速,转矩,位置;

⑤:传动机构/舵机系统:该机构根据一定传动比,将电机输出的行程缩放到最终输出的角度上;

五、工作原理

舵机内部有一个基准电路,产生周期为20ms、宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。经过电路板IC方向判断,再驱动无核心马达开始转动,透过减速齿轮将动力传至摆臂,同时由位置检测器送回信号,判断是否已经到位。

舵机转动的角度是通过调节PWM信号的占空比来实现的。标准的PWM信号的周期固定为20ms,理论上脉宽分布应该在1ms到2ms之间,实际上在0.5ms到2.5ms之间,脉宽与转角0°——180°相对应。不同厂家不同型号的舵机也会有所差异。

六、程序

/**********************************

变量定义

**********************************/

uint servo_pwm = 4;              //舵机pwm值

/**********************************

函数定义

**********************************/

/****

*******定时器0初使化函数

*****/

void Timer0_Init(void)

{

TMOD &= 0xF0;                 //清除 T0 的工作模式

TMOD |= 0x01;                 //配置 T0 的GATE=0;C/T=0; M1=0; M0=1;(模式1(16位))

TH0 = (65536-92)/256;         //配置 T0 高8位计数初始值

TL0 = (65536-92)%256;         //配置 T0 低8位计数初始值

TR0 = 1;                     //启动 T0

ET0 = 1;                      //启动 T0 中断

EA = 1;                      //打开总中断

}

/****

*******T0计时中断函数

*****/

void Timer0_Handler(void) interrupt 1

{

static uint timer0_count;

TR0 = 0;                            //关定时器

TH0 = (65535-92)/256;               //重新赋初值

TL0 = (65535-92)%256;

timer0_count++;

if(timer0_count >= 200)    //定义一个周期,T = 20ms清零

{

timer0_count = 0;

}

if(timer0_count < servo_pwm)        //调节占空比

{

SERVO = 1;

}

else

{

SERVO = 0;

}

TR0 = 1;                           //开定时器

}

流程设计

首先初始化引脚,然后初始化定时器,在定时器中断函数中定义一个周期,调节周期内高电平的占空比,从而调整角度。

【mcuclub】舵机-SG90相关推荐

  1. STM32F103C8T6驱动舵机SG90(5V)

    前言 本文是以STM32F103C8T6作为主控芯片,通过PA6端口输出PWM,实现控制0-90舵机控制. 引脚连接 主控 舵机 5V +5V GND GND PA6 PWM 提示 若是5V的舵机SG ...

  2. 树莓派+舵机SG90

    舵机SG90 舵机是一种位置(角度)伺服的驱动器,适用于需要角度不断变化并可以保持的控制系统. 查看引脚命名图 pgio readall 接线原则(一般选用5v的电源) 红+棕-黄信号 编写代码 #i ...

  3. STM32F103C8T6驱动舵机SG90 配置定时器TIM2,TIM3,TIM4的多种重映射模式下的不同IO口

    STM32F103C8T6驱动舵机SG90 配置定时器TIM2,TIM3,TIM4的多种重映射模式下的不同IO口 1.使用到的工具介绍 2.整个简单介绍 3.程序的介绍 1.使用到的工具介绍: kei ...

  4. 红外循迹TCRT5000 舵机SG90

    目录 TCRT5000红外反射传感器: 引脚定义 工作原理: 应用范围场景 实现代码 SG90舵机: 引脚定义 工作原理: CUBEMX配置 实现代码 TCRT5000红外反射传感器: 引脚定义 D0 ...

  5. 关于常用航模舵机SG90和MG996R的一些使用心得

    SG90: 50hz 信号1ms脉宽控制正转,2.5ms脉宽控制反转 MG996R:180度模拟舵机 0.5ms脉宽-90度 1ms脉宽-45度 1.5ms脉宽0度 2ms脉宽45度 2.5ms脉宽9 ...

  6. 基于51单片机的超声波避障小车(HC-SR04,SG90舵机)

    + 一.HC-SR04超声波模块 二.SG90舵机 三.总程序编写 一.HC-SR04超声波模块 HC-SR04时序图 触发信号输入端(Trig)输入一个10微秒以上的高电平信号,超声发送口收到信号自 ...

  7. 舵机分类和控制原理简述(180°模拟电机)SG90 MG996R

    -- 参考书目:<我的机器人 仿生机器人的设计与制作>罗庆生 北京理工大学出版社 舵机 舵机是一种位置(角度)伺服的驱动器,最早用于航模,相当于廉价版的伺服电机,但仅保留了位置环,适用于那 ...

  8. 第三篇 SG90舵机和HC-SR04测距

    目录 一.SG90舵机 1.PWM 2.占空比 3.输出PWM的方式 4.编程实现舵机0-135°转动(demo1.c) 二.HC-SR04测距 1.测距原理 2.测距实现(demo2.c) 一.SG ...

  9. arduino舵机达180不到_【拓展教程】教你玩转Stduino之SG90舵机

    大家好 今天小诺给大家介绍的是拓展教程第二篇--SG90舵机 SG90舵机相信大家都很熟悉 毕竟在很多大牛展示的项目里面SG90舵机是必备的一部分 SG90舵机 关键词: 51:stm32:Ardui ...

  10. STM32—sg90编程

    什么是舵机? 如下图所示,最便宜的舵机sg90,常用三根或者四根接线,黄色为PWM信号控制 用处:垃圾桶项目开盖用.智能小车的全比例转向.摄像头云台.机械臂等 常见的有0-90°.0-180°.0-3 ...

最新文章

  1. Python 编写一个有道翻译的 workflow 教程
  2. Hadoop 之 MapReduce 的工作原理及其倒排索引的建立
  3. 文件md5码怎么生成_Linux 系统文件校验方法--MD5,SHA1,PGP,SHA256,SHA512
  4. 弃用微软 C++ 编译器,Win 版 Chrome 改用 Clang
  5. win32截屏并rgb24转yuv420
  6. rpcbind服务没法开启问题
  7. 编程程序_PLC编程代码PLC程序设计公司
  8. win10虚拟机连接不上内网服务器,win10系统虚拟机无法连接网络的解决方法
  9. uniapp发行为小程序分享转发功能
  10. SAP会计科目表(Charts of Accounts)
  11. 一个案例深入Python中的__new__和__init__
  12. 宝塔linux webshell提权,linux提权 Root权限WebShell提权
  13. 20届最难毕业的前端程序员的一年前端工作经验总结
  14. C#笔试面试宝典值得收藏1
  15. 树莓派3B+ wifi 5G连接
  16. java ajax教程_Jquery ajax基础教程
  17. 一文了解SAP IBP是什么?
  18. 【Android Studio探索之路系列】之四:Android Studio快捷键
  19. 为何,以及如何提炼一个函数
  20. python3提高pip模块安装速度的方法

热门文章

  1. python蓝屏代码_死机、卡顿、蓝屏,Python部门的老江湖告诉我的一些超级变态代码...
  2. 区块链开发入门到精通
  3. 2路10核物理服务器能否虚拟40vcpu,计算vCPU数量 依据公式
  4. 工业视觉检测—制造过程中的缺陷和异常检测
  5. 计算机高级职称答辩ppt模板,毕业论文答辩PPT模板优秀 范例 11.ppt
  6. FPGA中数电基础知识
  7. 第一个web项目-微信小程序后端开发
  8. 软件测试的概括及流程
  9. 微信小程序ios倒计时时间不显示,安卓能正常显示,小程序倒计时兼容问题
  10. 单应性变换 Homography Estimation