智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1894|回复: 2
打印 上一主题 下一主题

谁能给我讲下光电组控制电机和舵机的问题

[复制链接]

5

主题

17

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
362
威望
152
贡献
156
兑换币
46
注册时间
2012-11-2
在线时间
27 小时
毕业学校
浙江大学
跳转到指定楼层
1#
发表于 2012-11-12 14:54:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
15贡献
我采集用的是平均值法,找出收集到黑线数据的那个灯,所以总共有9种情况,(中间状态和十字交叉线先不考虑)0 1 2 3 4 5 6 7 8
代表1-8展灯位置的传回~~
0代中间位置,无灯检测到黑线。
舵机用的是20MS,per=25000
电机用的5KHZ, per=250
请高手指教如何进行舵机电机调控下一步?????把电机和舵机分成几个档位呢???
能给点实例程序吗???~~


2

主题

29

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
威望
169
贡献
115
兑换币
0
注册时间
2012-9-14
在线时间
13 小时
2#
发表于 2012-11-12 20:27:34 | 只看该作者
回复

使用道具 举报

30

主题

538

帖子

0

精华

会长

Rank: 8Rank: 8

积分
7973

优秀会员奖章活跃会员奖章在线王奖章

威望
4954
贡献
2169
兑换币
1386
注册时间
2012-3-29
在线时间
425 小时
3#
发表于 2012-11-13 12:31:52 | 只看该作者
单片机系统实现对舵机输出转角的控制,必须首先完成两个任务:首先是产生基本的PWM周期信号,本设计是产生20ms的周期信号;其次是脉宽的调整,即单片机模拟PWM信号的输出,并且调整占空比。

   当系统中只需要实现一个舵机的控制,采用的控制方式是改变单片机的一个定时器中断的初值,将20ms分为两次中断执行,一次短定时中断和一次长定时中断。这样既节省了硬件电路,也减少了软件开销,控制系统工作效率和控制精度都很高。

   具体的设计过程:例如想让舵机转向左极限的角度,它的正脉冲为2ms,则负脉冲为20ms-2ms=18ms,所以开始时在控制口发送高电平,然后设置定时器在2ms后发生中断,中断发生后,在中断程序里将控制口改为低电平,并将中断时间改为18ms,再过18ms进入下一次定时中断,再将控制口改为高电平,并将定时器初值改为2ms,等待下次中断到来,如此往复实现PWM信号输出到舵机。用修改定时器中断初值的方法巧妙形成了脉冲信号,调整时间段的宽度便可使伺服机灵活运动。
为保证软件在定时中断里采集其他信号,并且使发生PWM信号的程序不影响中断程序的运行(如果这些程序所占用时间过长,有可能会发生中断程序还未结束,下次中断又到来的后果),所以需要将采集信号的函数放在长定时中断过程中执行,也就是说每经过两次中断执行一次这些程序,执行的周期还是20ms。

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-24 12:21 , Processed in 0.044748 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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