本帖最后由 “” 于 2017-7-27 20:09 编辑
1 Z! {& `( z1 m; i, L2 K
/ Y! b5 [" e3 Y" z8 Q* ]# B出这一版本只用能一个词无奈来解释,真心无奈。6 f% r2 M) E! P! Q
我仅有一天时间,这天时间内,想完成这个,如果不能直接放弃,因此方法只有一个:最高效,最简。8 |7 r2 w. Y8 D) p
/ b8 y5 j" P) A% O, o6 |( h9 y第一个问题:场地
. W3 {0 B3 g6 V8 X5 V0 Z不是我要挑战斜穿20块地板的极限。6 a- Y" F) E( w3 |- P
是因为要3m长的地方,只有这样的形式才能产生。. ^+ |/ s, s; |2 R( b
呵呵,而且前后只剩下30厘米,车最后到达终点的位置已经没有合适的站位拍摄视频了,所以盲拍了,摄像头拍到什么只有手机知道,也无法测量了。7 V5 W( p* Y2 L2 I" q$ o: J; C/ E8 J" f
2 _2 B, h" V9 b) a C8 n
第二问题:机器
6 W2 d+ u0 e& ^& r H用的是最简单的机器,去年走线好像就是这台,一直没有拆,因为电机是nxt的,所以也暂时用不到,就一直留着。不过要符合右前轮,所以把三轮改了以下,变四轮,其实我应该写右前轮这几个字的。
1 ]% S! s# j; B' _6 b! }' ^, K4 s: b$ @3 Q+ c' {9 _) j
第三个问题:程序
3 s" o7 z" v6 j/ A$ y0 ~- D2 E个人方法不同,有人靠结构,有人靠程序。我是靠程序解决问题的。不过也遇到了很多问题,走了很多我认为的弯路,可能被我抛弃的方法是可实现的,可能只是我的场地条件比较苛刻而已。4 c6 n+ A. b0 ~+ K" h) g
在此我分享今天的思考流程。: ]( ?0 J" C' G9 l: Y
1、直线,应该是左右两轮的前进角度是一致的,我用如此方法前进,左右电机误差基本为0,最终还是偏离比较大。
1 w3 H& p+ a Y, u/ \2、于是会想到陀螺仪修正。那控制电机的要素就是陀螺仪,不能再以电机角度为参考依据(陀螺仪变化表示偏了,那么就需要某电机加强功率或减少功率,电机角度一定不相等)。* ]4 S% r$ K5 K& o
第一阶段尝试,用陀螺仪速度,进行比例调节。为什么用陀螺仪速度,因为我需要及时的修正,速度更能体现实时的状态,结果抖动较大。其实可以降低比例,进行慢慢调整,但是我没有尝试,因为我的时间有限,我的第一反应是速度的变化范围太大,所以如果这样调整的话不能用仅仅用比例,因为这对小的偏差不利,不能及时修正。- J1 K! O* X) _4 c$ Z2 \4 P. y
第二阶段尝试,用陀螺仪角度,进行比例调节。过程不详细说了。反正调的很好,数值很完美,出发和最终停的陀螺仪角度数值完全一致(当然我承认陀螺仪还是有误差的),但是误差离开线还是非常远。这点很惊讶。' c0 F8 Q y4 [( ?
3、我要静静。(不要问静静是谁?)
' q' X n k6 i% x d$ W4、静完了,我想问题。(也不要问问题是谁?)
' Z; c L: e, t上个月,买了个激光模块,一直没用。这次本来是想打算做好,放上激光模块,用来证明误差量的。现在被我直接拿了出来,装在上面分析车辆的摆动。首先是连线,可能会想到用输出或者输入口,我直接用了usb的口,正要也有usb的插头(昨天刚到的快递,怎么那么寸?),简单接完,随后用lego搭一个框架装在车上。结果发现,墙上光点除了向一边偏以外,上下抖动也厉害,且范围大(冥冥中注定我离墙该如此近。呵呵)。6 ?6 _; U& Z! ]; `' L7 {
8 n2 ~+ ~( [$ K( p' e) Z, U
2 ?4 [- [. N" [8 N3 [2 @5、结构改进:加重。没零件,没时间,那就直接来4个WRO足球的万向轮(简单,粗暴吧!)。
. O) n( R1 B) {7 B# B, S( m7 @ 程序:仍旧用电机角度反馈的,因为感觉陀螺仪的反馈还是比较慢的,要发现1°的误差,电机可能已经跑了很多角度了。既然地面有高低,会产生误差,可将电机的power设置不一致,只要弧线到位在地板上就是直线。(在3m的长度中,要调整最终的误差,那2轮power的差一定在1以内,所以不要指望用模块了,自己动手写想方法写吧)。
$ f4 }* L& O! @ j+ [# m8 k1 s/ [9 e1 ~' V
视频(由于时间短,参与为主,最后附上照片,表示机器停下位置,以及测量结果,视频最后较模糊,但是应该能判断停止位置的精度,可细细研究):
% s( @4 ?( S: ?- R5 t1 l' i; C5 G' {/ f
/ X+ ?' O( m. g机器人停止位置- ?. ?9 E, E9 Z. f8 `
: k1 v: _; U5 {测量
. a! r% ~9 e! Z8 X( Z5 s/ b: C
+ R0 \ f$ ^- I
( H3 D0 @: J. n2 F6 t
写在最后:垂直穿越地板,如果后地板比前地板高,会有略微纠正方向的作用,哪位朋友可以尝试一下,横穿30块地板的效果,是否会比直穿4块地板效果好。希望有朋友尝试,有答案。8 L7 y1 S, G1 d2 Z8 K
' K" v- M, {+ x6 h( R- T/ H+ D5 _, O; y+ y! P. V/ k& v
+ \' v! \* n+ C4 Z! D4 z1 o V- z. f/ F
( _. ~) F1 B7 w9 }
+ o2 i* ^+ y9 x$ G+ L# ~9 R! C$ P$ n0 V: l5 z% t8 J
|