找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2277|回复: 0
打印 上一主题 下一主题
收起左侧

[基于STM32]Stduino-传感器拓展(二)SG90舵机

[复制链接]
跳转到指定楼层
楼主
说明:
伺服电机是一种有输出轴的小型设备。通过向伺服发送信号,可以将该轴转到特定角度。

实际上,伺服电机用于无线电控制的飞机中来定位控制面,如升降舵和方向舵。它们还用于无线电控制的汽车,木偶,当然还有机器人。正是因为早期在模型上使用最多,主要用于控制模型的舵面,所以俗称舵机。
舵机工作分成两个部分,检测舵机当前角度以及控制舵机转到特定角度。

基准信号
舵机内部有一个基准电路,产生周期为20ms、宽度为1.5ms的基准信号。基准信号(1.5ms)与控制信号(0.5ms~2.5ms)相比较,从而判断舵机应该往何种方向转动以及转动的角度大小。
例如,1.5毫秒脉冲(控制信号,周期20ms)将使电机转到90度位置(通常称为中性位置)。如果脉冲短于0.5毫秒,则电机将轴转到更接近-90度。如果脉冲为2.5毫秒,则轴转接近+90度。

控制信号
舵机的控制信号为Stduino板输出的PWM信号,周期为20ms,其中脉冲宽度从0.5ms~2.5ms,对应舵盘的0°到180°,呈线性变化。
也就是说,给舵机提供一定的脉宽,它的输出轴就会保持在一个与之对应的角度上,直到下一个不同的脉宽出现,转到新的对应角度。

反馈信号
舵机接收来自信号线的控制信号,电机在转动时,会带动反馈电位计的转动,电位计将输出一个电压信号到舵机控制板,进行反馈,该信号与控制信号进行比较,从而调整转动方向与速度,直到反馈信号与控制信号相同。


实验目的:
控制舵机由左向右转动180°,再反方向转回。

器材:
Stduino Nano/UNO;4位数码管;杜邦线;SG90舵机

电路连接:


代码展示:
#include <Servo.h>
Servo myServo; //创建一个舵机控制对象
int pos=0; //角度(0~180°)

void setup()
{
    myServo.attach(12); // 该舵机由Stduino第12脚控制
    myServo.write(pos);
    delay(15);
}

void loop()
{
    for (pos = 0; pos <= 180; pos += 1)
    {
        myServo.write(pos);              
        delay(15);                       
    }
    delay(60);
    for (pos = 180; pos >= 0; pos -= 1)
    {
        myServo.write(pos);              
        delay(15);                       
    }
    delay(60);
}


Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。IDE当前支持的功能有:

    GDB调试
    封装库下载安装
    代码自动补全提示
    中英文模式
    UTF-8\GBK编码格式
    代码快速格式化
    SWD\串口程序下载&调试(已验证)
    DFU程序下载方式(待验证)
    USB HID程序下载方式(待验证)
    maple DFU程序下载方式(待验证)
    maple DFU2程序下载方式(待验证)
    MassStorage程序下载方式(待验证)

更多功能细节请点击图片上水印显示的网址进行了解

已经支持的芯片&板型列表:

    Stduino UNO&Nano
    Nucleo 144 boards
    Nucleo 64 boards
    Nucleo 32 boards
    Discovery boards
    Eval boards
    STM32MP1 series coprocessor boards
    Generic STM32F0 boards
    Generic STM32F1 boards
    Generic STM32F3 boards
    Generic STM32F4 boards
    Generic STM32H7 boards
    Generic STM32L0 boards
    3D printer boards
    LoRa boards
    Electronic Speed Controller boards
    Generic flight controllers
    Garatronics boards
    Midatronics boards

更多功能集成正在进行中~


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表