Release status: stable [box doku]
|Description||Whitcube on Wheels|
Whitecube on Wheels is a remote-controlled, battery-driven onstage stage. If you want to be mobile with people performing onstage on a stage, WoW fits to your needs. WoW is able to carry up to four people and can be controlled accurately from 0-6km/h by using a WiFi connection. Besides going forwards and backwards it is able to perform rotations around its own axis. Wow is dismountable to make transportation less challenging.
In principle WoW works like a wheelchair with increased wheelbase. Both motors and wheels are taken from a wheelchair. The construction itself is a mixture of wood and welded steel assemblies. WoW was designed with Autodesk Inventor . Thanks to the local workshop at the physics department for manufacturing the well welded steel components!
A wheelchair comes with everything you need to maneuver high loads if you rely on battery operation. WoW is equipped with two 150W DC drive units. Compared to DIY solutions, the drive system that comes with the wheelchair is a hassle-free out of the box solution. It provides a joystick, battery monitoring, several speed levels, acceleration management (ramping), automatic motor break release and offers a steering management by speeding the wheels with variable speed. Two 25Ah Pb batteries are used to provide a couple of hours driving fun.
To make the motors radio controlled you need to get data into the system. In general there are a couple of ways to do so. The easiest way is to manipulate the joystick mechanically. (Look at this amazing solution on Youtube). Another approach is to get deeper into the CAN-Bus communication between the power module and the joystick to send appropriate data with an external uC. A less complex but still satisfying solution is to fake the joystick. A quick look at the joystick itself shows that it consist of two potentiometers working as a voltage divider. To generate these two variable voltages from zero to five volt a Teensy-Board is programmed in Arduino. Two PWM channels are turned into analog signals with a low pass filter. The filter uses only a resistor and capacitor, for a very simple and low cost way to obtain an analog signal. As safety is an issue when moving +200kg the Teensy-Board is programmed to bring the virtual joystick to a neutral position if there is no data longer than 100ms.
A RN-XV WiFi-Module is used to get data to the Teensy-Board via a UDP <-> UART bridge. The module is connected to a Wifi-Router and listens to a speficic port. Everything you send to this port can be used with the Teensy-Board by just reading the UART. A MAX/MSP patch sends the data via an UDP-External. Max is a visual programming language for music and multimedia and mostly used by artists and musicians.
The first idea was to connect an ordinary gamepad to the computer,read the data and send it via UDP to the Wifi-Module. The gamepad I got was creepy and not precise enough. As the Teensy-Board offers the option of working as a gamepad I took an old remote and replaced the inner electronic with an Teensy-Board. Next to the two channels for normal operation (forward/backward left/right) a virtual push button is pressed every 50ms. This button triggers the MAX patch to send data via UDP. If the gamepad is detached from the computer, no data will be sent. This is important to make sure that data is only sent as long the gamepad is connected to the computer.
- MAX/MSP patch including the sadamUDP externals to send and receive data via UDP
- Arduino code for joystick imitation and Wifi communication
- Arduino code to make a Teensy-Board work as a gamepad
See WoW in action with the Golddiggers onboard in their amazing musicvideo on Youtube !