|
|
) I' F5 B, S" t x0 j9 f' P
6 \$ v: e9 E, v3 r) X经过几次不同搭建方式的尝试,目前这个是最好的,试过双流,可能是功力不够,效果并不好。就当做是一次尝试吧。
, `5 l% Q; T4 d, H5 ?; R6 E先上视频:7 Z) l. X2 I5 Y! E' p2 l# ?
0 Q4 B6 c# D( H' E$ W9 R
* @, w1 j2 Q( o3 F, o5 `5 l8 E' Y
; _! O/ _9 E/ N, \. P8 C
* h! l: l" w9 s2 u2 b( t& u3 k一块板长81cm,最后肯定是多走了点。咱实话实说,我肯定是挑最好的传上来。不过能从视频中看出我 这个车还是挺稳的,结果不是靠蒙来的。多次测试的结果是3米以后误差在0.5±0.5cm以内吧。
& U% k6 ?. \( F+ `$ S7 n
) l2 l& k" Z) ~$ W
: `0 s. j! D2 v8 r( ?1 r
7 O6 @2 E* \7 v& i, p! z' X% w( C) ]) U3 {+ R5 B8 K1 k
- v9 k& h( @ p$ \6 R3 V' g9 _1 B* V: l& `" D, @
结构上没什么好说的,做了一个框架,保证轮子承受的重量均匀的分配到两边。然后就是完全对称,重心尽量在中间。
* x. k3 G% Z% n: i( G7 ^$ q
! i6 C+ p9 w, Y7 q4 c9 L- D8 [程序太长了,我大概讲讲。首先测出轮子直径算出周长,然后算出电机该转多少圈。$ y; ]8 E/ ~/ r8 v( H+ t
按下中键等1秒程序启动,为了避免车启动时受手的影响。然后重置所有传感器。% U; c9 `& P7 n6 ~: g- T
走分成三段,缓加,匀速,缓减速。缓加减根据的是时间,乘以30再加上陀螺仪传感器的数值,就是电机的转速。
1 v) t8 ~ K; k" L5 F4 \/ c当电机速度大于50时跳出循环执行匀速程序,同时记录电机已经转的圈数。理论上加速和减速走的距离是一样的,所以我们用应走圈数减去加速时走的圈数,就是执行减速时的圈数节点。不过为了避免误差,我让其多走了一圈。随后跳出匀速程序,之后就是减速了。这里只用了PID中的P,感觉已经够用了。
" C+ r5 ?9 y7 ]; _0 y: R5 W" L" J
( K5 }& y1 {. Q4 S% R" ^& j# @6 H5 U4 [6 K, e1 u; ^
最后附上程序,仅供参考吧
tg.ev3
(29.49 KB, 下载次数: 466)
; q# \- }& N6 ] W
4 Y Y9 f; _2 `8 W |
|