We've now successfully interfaced ROBOTmaker's solid-state 360 degree HID multi-touch(less) sensor to various 3D Java Processing Sketches - as a proof of concept ->
(
see videos
).
|
We therefore have opened up discussions on processing forums for some further ideas and programming support.
- 3D gesture sensing, for example using the TUIO interface
- 3D midi interface (see 3D drum machine example)
- 3D interface to kinetic art projects
- 3D Touchless input to mobile device
- Control of multi axis CNC machines and Robots
Background to Sensorium Project
We used Arduino UNO & Teensy to control the serial communications between 360 degree HID sensor and the Arduino Uno , Teensyduino and Java / Processing sketches on the PC/Mac. The sensor controls 3D graphics (Java sketches), or can emulate Mouse, Joystick or Keyboard on the PC (or possible would also work on Apple Mac, Andriod, Ubuntu, etc but have not test this yet.) to control any 3D applications such as Google Sketchup, Google maps, AutoDesk Inventor - CAD type application.
We are using Processing.org , Arduino, Teensy as a development platform as it's real easy to develop cool java graphics programs and Processing GUI is free and really a great way to learn about programming and interfacing.
.
3D Mouse / Keyboard / Joystick Control
Plug the IRCF360 sensor into a Teensy2 to enable 3D mouse, joystick, keyboard interface to your Arduino projects. The Teensy2 can be configured as a USB device such as mouse, Joystick, keyboard which allows the sensor to control your PC or Mac ....adding new dimensions to your projects.
So how does this work?...By moving your hand over the sensor the direction and distance of your hand / fingers are sensed and translated into values within the Teensy2.....
Plug the IRCF360 sensor into a Teensy2 to enable 3D mouse, joystick, keyboard interface to your Arduino projects. The Teensy2 can be configured as a USB device such as mouse, Joystick, keyboard which allows the sensor to control your PC or Mac ....adding new dimensions to your projects.
So how does this work?...By moving your hand over the sensor the direction and distance of your hand / fingers are sensed and translated into values within the Teensy2.....
Gaming control
Keyboard.set_modifier(0);Keyboard.set_key1(KEY_W);Keyboard.send_now();
Mouse emulation interface
Sensing directions are translated to mouse directions. This is programmed into the Teensyduinon - sketch using the Mouse.move (x, y) USB mouse command ; e.g. configurate of the keys WASD to control online or Massive Multiple online (MMO) games - engine / speed control is achieved by mapping mouse or keyboard keys to the distance readings from sensor.
Joystick emulation interface
Sensing directions are translated to Joystick directions or commands. This is programmed into the Teensyduinon - sketch using USB Joystick command to add Z directional control to your project too.
The joystick usb interface has- 32: Buttons
- 6: Axis (X, Y, Z, Rotate Z, Left Slider, Right Slider)
- 1: Hat Switch