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