栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

学习笔记12-SG90舵机

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

学习笔记12-SG90舵机

目录
  • 一、简介
    • 接线
  • 二、原理
  • 3、代码段

一、简介

舵机是一种位置(角度)伺服的驱动器,适用于需要角度不断变化并可以保持的控制系统,可以根据控制信号来输出指定的角度(常见的有0-90°、0-180°、0-360°)。
实质是一个伺服马达。又分为模拟舵机和数字舵机。

  • 模拟舵机:需要不断发送目的地PWM信号,才能旋转到指定位置。(想转10°,要不断发送10°PWM信号直到指定位置才能停止)
  • 数字舵机:只需给一个目的地PWM信号,即可旋转到指定位置。(想转10°,发送一次10°PWM信号就可以转到10°)
接线

红色----VCC
棕色----GND
橙色----信号线(连接到单片机输出PWM的引脚)

二、原理

舵机的控制一般需要一个20ms的时基脉冲,该脉冲的高电平部分一般为0.5ms~2.5ms范围内的角度控制脉冲部分,对应控制180°舵机的0-180°,呈线性变化。

给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。舵机内部有一个基准电路,产生周期20ms,宽度1.5ms的基准信号,有一个比较器,将外加信号与基准信号相比较,判断出方向和大小,从而产生电机的转动信号。

控制电路板接受来自信号线相应的PWM控制信号,进而控制电机转动,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是相连的,舵盘转动的同时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板,进行反馈,然后控制电路板根据所在位置决定电机的转动方向和速度,从而达到目标停止。

以180度角度伺服为例,那么对应的控制关系是这样的(t为高电平时间):
t=0.5ms--------------0°;
t=1.0ms------------45°;
t=1.5ms------------90°;
t=2.0ms-----------135°;
t=2.5ms-----------180°;

即:高电平时间=0.5ms+(角度/180°)×2ms

可以计算出:
高电平时间=0.5ms+(角度/180°)×2ms

3、代码段

根据PWM周期为20ms = (7200*200)/72000000=0.02。故TIM_Period=199,TIM_Prescaler=7199。

以转动45°为例,占空比为5%,所以TIM_SetCompare1的 TIMx 捕获比较 1 寄存器值就为200-200*5% = 190。

参考自:
1、单片机——SG90舵机工作原理
2、STM32控制SG90舵机


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/856330.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号