One important part in our gameplay ideas was to be able to improve the detection of the bomb even when the CTU is not exactly with its camera facing it. This was highly likely to be useful since it is easy to overlook it while crossing a crossroad and missing the bomb that could just be positioned in the dead angle of the robot – and we don’t want the game to be frustrating for the CTU. This would also be a nice feature for further improvements, e.g. if we want to enable the TU to disable the video stream from the CTU – then the CTU would have to rely on other sensors to find its ways to the bomb. Having the opportunity to detect the precise location of the bomb makes it possible to program later an autonomous robot able to find the bomb by itself.
Besides, we needed a way to find when the CTU was next to the bomb so it could then defuse it. For all those reasons, we come with the idea of using an IR ball that emits infrared light in all directions –simulating the heat and electromagnetic field that a bomb would radiate. This ball can be detected by the IRSeeker, placed on top of the bomb unit and then pushed away by the CTU. When the CTU actually manages to push the IR Ball and a touch sensor detects this, that means the CTU is indeed close to the bomb and is ready to defuse it. Then a new gameplay sequence is activated by the game manager (which is in fact the bomb itself).
The best working solution seemed to use both the IRSeeker and the IRBall from HiTechnic, in order to ensure maximum compatibility between the devices. They are both able to run at a modulated mode of 1200Hz, which makes the ball almost the only object that the sensor can see.
The bomb unit was designed to be carried by the TU, following it thanks to free wheels –meaning the bomb cannot move by itself. We needed a NXT to display a timer on the bomb and to basically run the whole game by sending information about the current state of the game over Bluetooth. The NXT would also be able to emit sounds of the bomb exploding for instance, and turn on lights depending of different events to get a better feedback of what is happening during the game –and hence adding interest for spectators watching the game.
Besides, the bomb has to be able to attach and detach itself from the unit carrying it. This decision was made because of the limitation of three motors a NXT can control: this was not an option to have the TU grabbing itself the bomb since all its motor ports were already taken. This added furthermore value to the bomb unit and its autonomous role in the game. The bomb unit has to also be steady enough once dropped by the TU so the ball would not fall by a loss of balance.
The IR Ball had to be placed in such way that it was visible from almost everywhere. Moreover, it had to be possible to push it away from its base without too much struggle while not falling too easily during the transport of the bomb unit. The IR Ball had to be mounted on top of a touch sensor so its fall could be detected easily. Finally, the whole unit should take the least possible space and avoid being too heavy to be still carried by the TU.
All these constraints put together made us design the bomb trailer showed in the pictures below.
|Picture 20 : Two bomb units, ready to be tested. One can see the touch sensor facing upward on the left unit, and green and red lights next to the NXT bricks. A 100% free wheel had been added to maintain overall stability.|
On the above video, we are testing the claw and the ball presence detection
Final mechanical testing and tuning were made before starting the real programming step. We had to make sure that the bomb unit could grab and follow a TU without the IR Ball falling or being briefly off the touch sensor.
It was only once the bomb unit was build that it was possible to correctly mount the pole spear in front of the CTU, so it could push the ball.
|Picture 22 : Overall picture with a CTU and the bomb unit planted by a TU; IR Ball is ready to be pushed away.|
 HiTechnic Infrared Electronic Ball :