Sep
28
风林火山技术文档(程序部分)
系统架构
根据比赛规则,机器人可以遥控,也可以自动控制,考虑到搏击机器人面对的环境高度复杂,自动控制将是一个庞大繁复、任重道远的工程,故而我们一致认为机器人应主要依靠遥控,由人充当传感器和决策机构,机器人只负责将人的指令转换为具体的动作。
在遥控方案上,我们采用了许炎武的提议——放弃制作手柄,而以一台计算机作为遥控端(因此遥控端被命名为“许炎武”)。这要求“许炎武”具有与无线模块通信的能力。经过查找,我们发现nRF24L01的扩展产品nRF24LU1可以与计算机直接通信,但此款产品在中国境内无法买到,只好作罢。最后我们令“许炎武”通过串口输出信号,自己制作了一个ATmega16+nRF24L01的电路板作为转发机构(因此被命名为“Skywalker”)。硬件结构基本解决,软件结构是:“许炎武”将人的指令进行初步翻译——将抽象的指令翻译为机器人上舵机状态的列表,通过串口传给Skywalker,Skywalker将信号原样发送出去。而在机器人上,有一块同样的nRF24L01负责接收无线信号,传送给ATmega16,然后再由ATmega16生成PWM波控制舵机(机器人端被命名为“bondsdancer”)。
……
阅读全文——共2826字