赛后总结
1、分清主次,切勿因小失大。
作为舞蹈机器人,舞蹈是最重要、最基础的部分。没有舞蹈其它功能都是空谈。因此在设计执行流程和方案时,无论如何要把舞蹈放在首位。不论出现任何问题,都要确保舞蹈能够正常完成。今年在整体设计中,人机环节被设计成为舞蹈的触发条件。赛后经过认真反思,发现这样设计存在严重缺陷,同时也是本次比赛失利的重要原因之一。因为人机互动存在不确定性,一旦人机互动没有按照既定流程执行,那么舞蹈环节便无法开始,进而导致占据优势的踩圈环节无法进行,极易造成因小失大。
2、充分考虑所有可能的突发情况,并准备应对措施。
导致本次比赛失利的直接原因,是树莓派与32单片机之间的通信出现问题。虽然这种情况在之前的调试中从未遇到,但赛场上任何意外情况都有可能发生。作为队长,我应当尽可能地想到所有可能的情况并指定行之有效的应对方案。这样才能在意外发生时从容应对。而因为此次比赛的意外情况并没有对应的方案,加之比赛过程中比较紧张,导致乱了阵脚,做出了一些错误判断,这同样也是深刻的教训。
3、不吝啬于调试,大量调试才可能发现问题。
本次比赛中之所以没有很好地应对发生的意外,还有一个重要原因是调试次数的不足。只有在大量调试中才能发现尽可能多的潜在问题,并针对其指定方案或者对机器人进行修改完善。有可能前一百次调试没有出现的问题,第一百零一次就出现了。
4、充分与他人沟通,特别是自己了解不够的部分。
本次比赛中,问题出在树莓派与32单片机的通信。但经过赛后反思,如果当时采取正确适当的操作,意外是完全可以被化解的。之所以没有正确处理,其中一个重要原因是我对树莓派内所执行程序缺乏认识,了解还不够。如果能够对其内部的执行顺序和机制掌握更多一些,如果能够与负责树莓派的同学沟通更多一些,那么赛场上处理问题的思路也就会更加清晰一些。
5、保管好本队伍的物品,以免遗失造成麻烦。
本次比赛中,语音识别作为一个可选项目,完成会有一定加分。而当我们准备添加这一功能时,发现我们队的语音模块已经不见了踪影,这给我们的进度带来了不小的阻碍,也在一定程度上影响了我们的心态。因此,在准备过程中以及比赛过程中,保管好本队伍的物品也是一项不得不引起重视的工作。
6、切忌想当然与过度自信,善于听取他人意见。
赛前有同学提醒我加一个实体按键,控制舞蹈环节的开始,以免人机交互出现问题导致舞蹈无法进行。但当时我认为人机交互在调试过程中几乎没有出现过问题,多加一个按键是画蛇添足,且会影响机器人的整体观感,所以没有采纳。但实际上,实体按键是一种有效的降低风险的方法。
7、将规则作为最重要的资料,充分阅读理解,保证不遗漏每一条信息。
规则作为一场比赛的核心与纲领,是每个参赛队员要认真仔细反复研读的文件。而本次比赛中由于我对规则研究不够,所以导致“语音识别环节完成加5分”这条重要信息被遗漏。最后匆匆忙忙添加语音识别功能也已是为时已晚。
8、尽可能实现闭环控制,如收发协议等。
作为控制专业的学生,在设计项目或者执行逻辑时因尽可能采取闭环控制方式,最少也应该加入反馈环节。而在本次比赛中出现问题的通信环节,执行程序中只有单向的发送与接收。树莓派不知道接收方是否收到,32单片机不知道发送方是否发送。
而一种可靠的通信传输协议,如TCP协议,由下面几个特性来保证数据传输的可靠性与准确性:序列号和确认应答信号、超时重发控制、连接管理、滑动窗口控制、流量控制、拥塞控制。在TCP协议的发送端与接收端,有三次握手建立连接和四次挥手关闭连接的过程,进一步保证信息传输的可靠。在以后的传输方案设计中,这些典型可靠的协议是值得借鉴的。
9、总结
最后,感谢各位老师在赛前为我答疑解惑,帮助我调整心态。在赛后对我进行开导,使我烦躁郁闷的心情得以缓解。同行的各位队友也积极给予帮助。总之,虽然本次比赛虽然成绩不理想,但第一次以队长的身份参加比赛,我还是学到了很多的东西。学会了如何在赛前调整心态,学会了如何与其他竞争对手交流,学会了在面对失败时如何自我开导,更加深刻认识到作为队长所担负的责任。而这些都将变成我受用一生的宝贵经验,助我在未来的发展中少走一些弯路。
张乾玉
2020年11月26日