智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 4532|回复: 13
打印 上一主题 下一主题

[讨论] 光电平衡组:直立控制周期及速度控制周期问题

  [复制链接]

1

主题

90

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1363
威望
615
贡献
468
兑换币
289
注册时间
2012-8-25
在线时间
140 小时
跳转到指定楼层
1#
发表于 2013-5-15 14:30:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
     话说官方直立控制周期为5ms,但是我尝试过1ms、3ms、5ms,没发现有啥子区别,于是暂定4ms,应无大碍。
最蛋疼的不是直立,而是控速! 因为控速周期长短影响直立效果!
     刚开始尝试过每1ms计编码器的脉冲数,此处1ms计数仅仅是计数周期,而不是控速周期。然后定义一个speed_counter++,来控速,比如说 if(speed_counter>=10) { 控速; },效果一点都不好。最后究之原因可能是因为计数周期1ms过短,计的得编码器脉冲误差大。所以计数周期不能太短。
    后来我把计数周期有1ms改为9ms,而且也去掉了控速标识speed_counter++,即每9ms计完数后紧接着就控速,也就是控速周期也为9ms。效果还是不错的,小车基本怎么干扰都不会倒{:soso_e100:}。但是又出来一个巨大问题,小车行驶速度不匀速,一会快一会慢,各种调参数,毫无效果。
    现在又听说控速周期一般在100ms左右,不知是否可信,还没尝试。但是100ms是不是太长了呀?
(1)控速周期到底多少合适?如何影响直立了?
(2)控速周期是否要和计数周期(即计编码器脉冲的时间)区别开,还是直接二者相等?
(3)调整控速周期时,是否还要再调整之前挑好的纯直立的参数呢?
不知大家都如何控速的,大神们交流下经验吧~{:soso_e183:}

8

主题

74

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1660
威望
852
贡献
484
兑换币
444
注册时间
2012-7-31
在线时间
162 小时
14#
发表于 2013-5-17 15:57:12 | 只看该作者
奎哥威武
回复 支持 反对

使用道具 举报

1

主题

90

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1363
威望
615
贡献
468
兑换币
289
注册时间
2012-8-25
在线时间
140 小时
13#
 楼主| 发表于 2013-5-15 21:59:51 | 只看该作者
1174544639 发表于 2013-5-15 18:11
你ccd曝光1.05ms?
我还是不懂,超过了为什么没意义,或许是程序结构不一样?我一直超过的

比如说,你程序正在执行CCD采集程序,这时如果1ms定时中断恰好产生,程序则马上会在这断点停止CCD采集程序,转而去执行PIT中断程序,这种情况岂不是CCD程序被打乱了吗!
回复 支持 反对

使用道具 举报

5

主题

148

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1463

活跃会员奖章

威望
771
贡献
428
兑换币
295
注册时间
2012-2-27
在线时间
132 小时
毕业学校
咚巴拉
12#
发表于 2013-5-15 20:16:16 | 只看该作者
请问 二十毫秒中断一次 还有一个五毫秒中断一次。。是不是五毫秒的站着二十毫秒的时间 。。怎么解决
回复 支持 反对

使用道具 举报

22

主题

321

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3258

论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

QQ
威望
1776
贡献
824
兑换币
625
注册时间
2011-9-30
在线时间
329 小时
11#
发表于 2013-5-15 18:30:57 | 只看该作者
蓦然回首mxk 发表于 2013-5-15 18:26
比如说,你程序正在执行CCD采集程序,这时如果1ms定时中断恰好产生,程序则马上会在这断点停止CCD采集程序 ...

回来接着执行你的ccd不就行了?
回复 支持 反对

使用道具 举报

1

主题

90

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1363
威望
615
贡献
468
兑换币
289
注册时间
2012-8-25
在线时间
140 小时
10#
 楼主| 发表于 2013-5-15 18:26:57 | 只看该作者
1174544639 发表于 2013-5-15 18:11
你ccd曝光1.05ms?
我还是不懂,超过了为什么没意义,或许是程序结构不一样?我一直超过的

比如说,你程序正在执行CCD采集程序,这时如果1ms定时中断恰好产生,程序则马上会在这断点停止CCD采集程序,转而去执行PIT中断程序,这种情况岂不是CCD程序被打乱了吗!
回复 支持 反对

使用道具 举报

22

主题

321

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3258

论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

QQ
威望
1776
贡献
824
兑换币
625
注册时间
2011-9-30
在线时间
329 小时
9#
发表于 2013-5-15 18:11:40 | 只看该作者
蓦然回首mxk 发表于 2013-5-15 17:54
超过了呀,1.05ms吧。你的没超过吗?

你ccd曝光1.05ms?
我还是不懂,超过了为什么没意义,或许是程序结构不一样?我一直超过的
回复 支持 反对

使用道具 举报

1

主题

90

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1363
威望
615
贡献
468
兑换币
289
注册时间
2012-8-25
在线时间
140 小时
8#
 楼主| 发表于 2013-5-15 17:56:06 | 只看该作者
蓦然回首mxk 发表于 2013-5-15 17:54
超过了呀,1.05ms吧。你的没超过吗?

因为如果你PIT定时1ms,CCD采样超过1ms,那定时1ms就不管用了,就没有意义了。
回复 支持 反对

使用道具 举报

1

主题

90

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1363
威望
615
贡献
468
兑换币
289
注册时间
2012-8-25
在线时间
140 小时
7#
 楼主| 发表于 2013-5-15 17:54:19 | 只看该作者
1174544639 发表于 2013-5-15 17:02
请问为什么ccd超过1ms就没意义了?

超过了呀,1.05ms吧。你的没超过吗?
回复 支持 反对

使用道具 举报

22

主题

321

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3258

论坛元老奖章在线王奖章活跃会员奖章优秀会员奖章

QQ
威望
1776
贡献
824
兑换币
625
注册时间
2011-9-30
在线时间
329 小时
6#
发表于 2013-5-15 17:02:57 | 只看该作者
蓦然回首mxk 发表于 2013-5-15 15:39
1ms定时单纯的直立没问题,但是没什么意义,因为加上线性CCD后控制周期肯定超过1ms了。

请问为什么ccd超过1ms就没意义了?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-27 06:49 , Processed in 0.052192 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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