STMCU小助手
发布时间:2022-5-15 14:43
|
一、舵机的“自白” 我(舵机)是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。 那么问题来了?我们用舵机来干嘛呢,当然是控制方向了,如今,基本上飞机或者智能车又或是机器人等等都会用到舵机这个东西,所以说,认识舵机,并且运用舵机就成为我们必不可少的知识学习了,下面附图:
这里我用的是S3003舵机,其他类型的舵机应该也是大同小异。 其中,有三条线,一条接电源(5V即可),一条接地,最后一条接控制(即单片机输出的PWM控制),下面会给上具体实现代码,总的来说跟上一讲区别不大,主要就是PWM周期输出控制,利用 TIM_SetComparex() 函数来设置占空比实现,但是多出的是计算问题,因为舵机有对应角度的时间计算,下面具体讲解: 舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms-2.5ms范围内的角度控制脉冲部分,总间隔为2ms。以180度角度为例,的其控制关系是这样的: 0.5ms--------------0度; 1.0ms------------45度; 1.5ms------------90度; 2.0ms-----------135度; 2.5ms-----------180度; 基本上,我们学生党所需要的舵机的控制角度对应就是上述关系了,至于360度舵机这里简单提一下,主要是我这个舵机做不到(哈哈哈,这舵机180°的) 这里讲一下360°舵机的 0.5ms--------------0度;正向持续转(最大速度) 1.5ms------------90度;停止转动,速度无 2.5ms-----------180度;逆向持续转(最大速度) 调整PWM周期即可改变转动速度和方向。 言归正传,到了这里基本上对控制舵机角度其实有了一定概念了,下面就直接附上代码部分了 二、代码部分
主函数部分
这里的代码是其他地方用的,拿来简单修改一下而已,基本上就是这样了。 三、如何计算得到该要控制的角度 这里直接上纸描述,字丑谅解哈哈哈
其中的arr和psc可以自己设置,再计算出相应角度的占空比值即可。大家可以自己调试一番,定会有所收获。 |
【MCU实战经验】基于STM32F103的二轮平衡车(6轴上位机 源代...
10张图带你完全掌握STM32 GPIO,从入门到精通,收藏就够了!
如果你解决了这些问题,就可以直接学STM32
STM32的分类和选型
学习STM32很简单?
STM32到底由什么组成?内核和外设的关系又是怎样的?看这篇!
GD32和STM32的区别在哪里??
入门嵌入式,为什么都要先学STM32??
STM32中断响应延迟优化:从NVIC配置到DMA加速的极致性能调优
STM32F103之UART上位机通信
微信公众号
手机版