搜索
bottom↓
回复: 6

你知道怎么用STM32控制舵机吗?

[复制链接]

出0入234汤圆

发表于 2021-11-9 10:23:56 | 显示全部楼层 |阅读模式
本帖最后由 正点原子 于 2022-1-7 17:37 编辑

以下文章来源于:公众号:开源电子网,读取更多技术文章,请扫码关注


讨论发帖图.png




你知道怎么用STM32控制舵机吗?

       本文我们来学习下如何使用STM32去控制舵机旋转相应角度。

      舵机介绍

       舵机实质上可以看作一个伺服电机,它也有驱动电路、控制电路,只不过一般舵机工作范围只旋转一定的角度,最常见的就是180°的舵机,当然也有360°的舵机,这里只以180°舵机为例


          1.jpg

                          (图1:SG90舵机)




     舵机内部结构


       舵机主要由以下几个部分组成,减速齿轮组、位置反馈电位计、直流电机、内部控制电路板


          2.jpg


       当直流电机接收到脉冲指令就会开始转动,之后带动减速齿轮组,减速齿轮组会带动下方接的电位器,之后控制板读取到电位器的信号变化,就可以知道当前舵机旋转的角度,这样就形成了一个闭环回路。

     舵机控制

       舵机的控制一般需要一个20ms的脉宽调制(PWM)信号,该脉冲的高电平部分一般为0.5ms-2.5ms范围相对应舵盘位置的0-180°,那么对应的控制关系如下:

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

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

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

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

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

    舵机与脉冲高电平时间关系动图(周期20ms):


          3.gif


        一般舵机有三根信号线




         4.jpg



        棕色表示GND,

        红色表示VCC,

        橙色表示信号脚(即脉冲输入引脚)


      代码实现

       那我们知道了舵机的控制原理了,我们只需要使用STM32的定时器外设不断输出周期为20ms的脉冲信号,且控制高电平时间在0.5ms- 2.5ms之间即可控制舵机旋转角度了。

       本文将使用STM32F407,TIM8_CH1输出脉冲控制舵机

       CubeMX配置



       5.jpg



       这样就配置好不断输出周期20ms脉冲信号了


       代码编写:


       6.jpg



       ①启动TIM8_CH1的脉冲输出;

       ②在while里边,每秒修改高电平持续时间

           0.5ms对应0°,

           1ms对应45°,

           1.5ms对应90°,

           2ms对应135°,

          2.5ms对应180°。

        这样就大功告成了!!!


     需要工程文件的小伙伴在评论区留言哦。

出30入16汤圆

发表于 2021-11-9 10:48:52 来自手机 | 显示全部楼层
我还以为是教你写舵机控制程序

出0入0汤圆

发表于 2021-11-9 11:53:44 | 显示全部楼层

我还以为是教你写舵机控制程序

出0入234汤圆

 楼主| 发表于 2021-11-10 10:12:42 | 显示全部楼层
洞洞幺 发表于 2021-11-9 10:48
我还以为是教你写舵机控制程序

文章里面的代码,可以提供的

出0入234汤圆

 楼主| 发表于 2021-11-10 10:13:15 | 显示全部楼层
chunri 发表于 2021-11-9 11:53
我还以为是教你写舵机控制程序

文章里面的代码,可以提供的

出30入16汤圆

发表于 2021-11-10 11:15:56 来自手机 | 显示全部楼层
正点原子 发表于 2021-11-10 10:12
文章里面的代码,可以提供的

这种代码网上大把,只是误会成舵机控制的pid算法了。

出0入8汤圆

发表于 2021-11-10 17:22:39 | 显示全部楼层
基础原理,讲解的蛮好。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 18:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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