2.STM32控制舵机方法.pdf

2.STM32控制舵机方法.pdf

ID:48011697

大小:190.44 KB

页数:2页

时间:2020-01-14

2.STM32控制舵机方法.pdf_第1页
2.STM32控制舵机方法.pdf_第2页
资源描述:

《2.STM32控制舵机方法.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、单片机控制舵机我们知道,舵机和步进电机,直流电机等都是感性负载,单片机的驱动电流较小,我们驱动直流电机,步进电机的时候都是用了驱动模块,也就是功率放大器件。那驱动舵机时候是否需要呢?因为舵机内部集成了驱动电路,可以对我我们输入的PWM信号直接采样,所以,控制舵机的时候,用一个单片机的PWM引脚即可,这大大精简了电路设计。1.舵机供电电压和电流要使舵机工作在额定功率下,电路方面需要满足舵机的要求,包括电流和电压,这个我们可以根据舵机的具体参数选择,比如某款舵机参数如下:*扭力:13kg/cm(at4.8V)15kg/cm(

2、at6V)*速度:0.18sec/60度(at4.8V)0.15sec/60度(at6V)*工作电压:4.8V-6V根据以上信息,我们最好能够提供6V的电压,我们知道,设备的电流是由负载决定的。比如舵机空载控制的时候一般电流是不大于400mA,但是带负载时候可能大于1A,然后我们设计机械臂的时候有5或者6个舵机,因为处于不同关节,所以实际使用中不会每个舵机都同时达到最大电流,那这里可以选择6V5A的电源。要输出这么大的电流,一般的LDO(线性稳压器)是无法满足的了,需要选择开关稳压芯片,而一般的芯片也没有固定5V输出,需

3、要选择可调版本,通过电阻调节电压输出到6V。这里我们选择XL4015,根据手册,这款芯片可以满足我们的要求,如下图所示。下面是XL4015的应用电路。2舵机的速度控制舵机的驱动是比较容易的,当我们使用了单片机控制的时候,通过输出50HZ(20ms周期)的PWM,控制PWM的脉宽调节舵机的转角。为了节约篇幅,较长的PWM初始化代码就不贴出来了,大家翻看程序即可。前面章节有说明:舵机的转角和脉宽(高电平长度)存在一一对应关系,如果要控制舵机到某一角度,就改变输出的脉宽即可,比如从1ms到1.5ms,显然,很容易就实现了舵机位

4、置控制,但是我们如何进行舵机速度控制呢?这里我们引入了PID算法,下面先看一下程序Velocity1=Position_PID1(Position1,Target1);Position1+=velocit1;TIM4->CCR1=Position1;其中我们使用Velocity1用于代表舵机的速度,这个值根据目标值和舵机的实际位置计算得到,然后通过累积的方法,赋值给相关寄存器作用到舵机。这样我们就把舵机的速度调节变成了PID参数大小的调节。另外,在接近目标位置的时候还可以实现减速,防止因为惯性的问题造成舵机齿轮减速箱的损

5、坏。下面我们看一下Position_PID1这个函数PID参数是这样设定的,Position_KP=5,Position_KI=0,Position_KD=2;这里没使用I控制,因为PD控制已经可以满足要求,关于PID调试可以结合之前的PID位置控制参数整定章节进一步学习了解。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。