智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 24138|回复: 79
打印 上一主题 下一主题

pwm舵机控制模块

    [复制链接]

15

主题

171

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1618

活跃会员奖章优秀会员奖章

QQ
威望
726
贡献
414
兑换币
189
注册时间
2012-7-31
在线时间
239 小时
跳转到指定楼层
1#
发表于 2012-9-14 20:01:48 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

控制思想

该模块的程序框图如图 4.5 所示。车模在行驶过程中不断采样赛道信息,并通过分 析车模与赛道相对位置判断车模所处赛道路况,是弯道还是直道,弯道时是左转还是右转。直道时小车舵机状态保持不变,弯道时左转或右转,计算转弯半径。我们所用舵机的标准PWM周期为20ms,转动角度最大为左右90度,PWM调制波如图7.2所示。

当给舵机输入脉宽为0.5ms,即占空比为0.5/20=2.5%的调制波时,舵机右转90度;当给舵机输入脉宽为1.5ms,即占空比为1.5/20=7.5%的调制波时,舵机静止不动;当给舵机输入脉宽为2.5ms,即占空比为2.5/20=12.5%的调制波时,舵机左转90度。可以推导出舵机转动角度与脉冲宽度的关系计算公式为:

注:其中t为正脉冲宽度(ms);θ为转动角度;当左转时取加法计算,右转时取减 法计算结果。

当我们根据赛道弯度计算出转动角度以后便可以根据舵机的参数计算出脉冲宽度,控制舵机转动,舵机转角与PWM脉宽关系如表4-1所示 。


在具体操作中PWM调制波的周期可以设置在20ms左右一定范围内,比如设置为10ms 或是30ms均可以使舵机正常转动,但是设置周期较长时,系统延迟时间较多,舵机转向会出现滞后,导致赛车冲出跑道;设置周期如果过短,系统输出PWM 调制波不稳定,舵机转动也会受影响,不能实现赛车的精确转向。经过反复测试,最终把输出 PWM 调制波周期设定为13ms。

运行电机的转速以及舵机的转角,在软件上都是通过对PWM 波占空比进行设置来相应控制的。前面提到,舵机转角控制需要将两个八位寄存器合成为一个十六位寄存器。程序中的舵机位置信号,当PWM调制波周期设为13ms时,因为总线频率为24MHz,用时钟SB,可计算得到16进制参数为9870H,舵机中间位置时占空比16进制参数为1680H,要分配给PWM6和7,分配时这2个端口的赋值必须是16进制,那么PWM模块初始化赋值为

PWMPER6= 0x98,PWMPER7= 0x70,PWMDTY6= 0x16,PWMDTY7= 0x80,因此这就牵涉到如何将1个十进制数分配为2个十六进制数问题。有2种方案,一种是除法取余,另一种是移位操作,前者编译生成的代码比后者要多,所以采用移位操作来实现,即取高位时 与0xFF00先作“&”计算,然后将所得到的数向右移8位(>>8),即可取得高8位;同理,取低8位时只要与0x00FF作“&”计算即可。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

1

主题

18

帖子

0

精华

高级会员

Rank: 4

积分
632
QQ
威望
330
贡献
202
兑换币
208
注册时间
2016-7-25
在线时间
50 小时
毕业学校
武汉大学
80#
发表于 2016-8-26 11:37:08 | 只看该作者
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
威望
99
贡献
52
兑换币
53
注册时间
2014-11-28
在线时间
31 小时
毕业学校
在校
79#
发表于 2016-1-25 20:22:10 | 只看该作者
nice!
回复 支持 反对

使用道具 举报

9

主题

425

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2664

活跃会员奖章优秀会员奖章

QQ
威望
1210
贡献
716
兑换币
819
注册时间
2015-1-15
在线时间
369 小时
毕业学校
泥河中学
78#
发表于 2015-12-9 11:51:16 | 只看该作者
:lol:lol:lol:lol
回复 支持 反对

使用道具 举报

4

主题

65

帖子

0

精华

金牌会员

仲夏

Rank: 6Rank: 6

积分
1255
威望
606
贡献
417
兑换币
391
注册时间
2014-7-11
在线时间
116 小时
77#
发表于 2014-8-18 15:28:48 | 只看该作者
很详细,受益匪浅
回复 支持 反对

使用道具 举报

4

主题

65

帖子

0

精华

金牌会员

仲夏

Rank: 6Rank: 6

积分
1255
威望
606
贡献
417
兑换币
391
注册时间
2014-7-11
在线时间
116 小时
76#
发表于 2014-8-6 21:02:58 | 只看该作者
so good!
回复 支持 反对

使用道具 举报

6

主题

300

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5366
威望
3935
贡献
1101
兑换币
461
注册时间
2012-11-21
在线时间
165 小时
75#
发表于 2014-5-16 19:05:12 | 只看该作者
不错
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

高级会员

Rank: 4

积分
909
威望
450
贡献
275
兑换币
286
注册时间
2013-10-11
在线时间
92 小时
74#
发表于 2014-4-12 21:01:36 | 只看该作者
谢谢~!
回复 支持 反对

使用道具 举报

0

主题

61

帖子

0

精华

高级会员

Rank: 4

积分
623
威望
302
贡献
165
兑换币
209
注册时间
2013-11-10
在线时间
78 小时
73#
发表于 2014-3-6 18:02:38 | 只看该作者
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

高级会员

Rank: 4

积分
503
威望
260
贡献
143
兑换币
159
注册时间
2013-11-9
在线时间
50 小时
毕业学校
西北工业大学
72#
发表于 2014-3-3 16:47:40 | 只看该作者
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-22 06:50 , Processed in 0.060456 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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