|
|
本帖最后由 “” 于 2016-2-29 18:35 编辑 # Q+ A" t: d- A$ @' q$ M h1 L
3 u( H9 U3 z6 [' J2月由于各项其他工作,只有1天多的时间可以做此项目,尚未完成。/ J* q+ l$ d, s9 k* c
在此截止日,特发此半圈视频,留念我参与的过程。
C: z" M4 v7 w( g: G完整一圈我还会陆续完成,因为这是追求。
; ?, j |( L0 o0 x" e# H- ^6 C* J/ {# {' }9 r
此外感谢坛友在论坛中发出了EV3basic的信息。2 `: j! Y! M0 T( l% Q" t5 }
代码环境帮助我能减少了大量的时间,可以专心用来调试。
4 m7 ^3 f! u: l& N2 n+ f, [, \$ q* U1 `) B此外,软件也异常方便,支持原生的固件,支持wifi 蓝牙 数据线,编译传输速度也非常快(基本点击编译并运行,转身机器就执行了)。
( O; v2 @7 M1 T8 `2 d6 e$ y& h在忙完后,我会将功能以及函数进行汇总造福坛友们。(由于原版英文较长,希望有志同者共同完成)
. h0 Q' G0 u" \, W5 P1 B) C% Z, F8 g% R, }
上半圈视频之前我想,分享一些个人对这段路线的感受:
/ p* V, D' E8 u1 z* C1、如果是真正熟悉pid的人其实一般不会跑这个路线,因为他们知道pid的弱点,如此明显的锐角弯基本是直接飞线的。因为走线过程中,过这样的弯需要1轮停止,甚至后退才能保证不飞线。而在编程过程中把某些限制(如果某输出力量小于0 ,那么某轮输出力量=0)去掉,那么pid的速度优势就瞬间没有了。加上EV3伺服电机的运行特性会产生很多停顿,造成不流畅。
9 ~& D4 D8 ~ e2、PID的调试非常有针对性,要发挥出最好的效果,必须对其中的每一条线单独调试,这个估计很难做到,也不方便做到。尤其是头部,PID的优势基本说小的可怜。
5 Z% m; G/ D: h6 z: q) l. X3、机器运行过程中的TP很关键,因为调高了就能提高速度,但是由于伺服电机的特性,会同步两者的速度(走快的会自动减速,走慢的会自动加速),因此TP的提高有时没有任何效果,甚至会起反作用。这也就是为什么到达一个极限之后速度上不去的原因,但这也正给了方便的地方,当速度一般,Kp适量的条件下能顺利地完成,因为系统系统有帮机器降速了。
* J: Y# P) p- i0 p4、在极限条件下,一圈的时间和头部所花时间是最相关的。其实也就说,快慢的关键是头部跳过多少线。因此这也是我最大的考虑之一。因为题目中没有对走线的要求说明很细致,飞线也有很多不同的理解。因此我尽量不跳线完成,也增加了很多时间。通过速度的差别,很明显感到为了走完整的线,我速度降了非常非常的多。
* k9 ?# E2 N, T6 b7 [最后感谢会员们的共同参与,也让我有提升。; E6 s) O4 h! F J9 R- {
$ a( `; A3 E3 O) A* g) U! m" D
我知道大家最想看的是什么,视频如下:(从尾巴到头颈用时7秒,通过头部需要5秒,对于头部的时间我也是醉了)
3 q$ b: Z& o0 g' L1 @8 X
' B/ o" b3 a4 S# E: I: y
3 G2 d' }. R% ?8 q6 Q5 Z |
|