Introducing Micro-Controller Interface
in
Kapil Kadam, Research Scholar, IIT Bombay, Mumbai-400076, India
[email protected]@iitb.ac.in
The use of blender 3d, being an open source application, as a gamedevelopment tool is already a well known phenomenon.
However, as blender 3d is a platform for learning 3d animation and gamedevelopment to a wide range of programmers, it is also undergoing continuousmodifications through new ideas implemented in the open source domain. Inline with this thought, the application of adding wireless micro-controllers tothe software to simplify the process of applying ideas to the interface and toeliminate the complexity of game control will open larger avenues to both theplatform as well as the audience.
This process will not only do away with the requirement of multiple controllersfor gaming, but also attract a larger faction of people to use this software.
The final objective would involve being able to handle objects and motions onthe screen by attaching simple microcontrollers to the user's hand, whichwould change functionality based on finger movements and hand positions,continuously adapting to the user's need. Handling objects on the computerscreen without the use of a mouse or keyboard will give a real life feel to theentire process. Imagine driving a race car, playing a first person shooter and arole playing game just by changing the way you position and move yourhands!
Introduction
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Introduction
Micro-controller Blender Object [6]
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Microcontroller interface with Blender
Sr. No.
Hardware Specifications
1 AVR Micro-controller AVR ATmega 16_32 Explorer Board
2 Potentiometer [2] Bourns 10 turn pot 10K
3 GP2D12 Range Sensor [5] Distance measuring range: 10 to 80cm
4 XBee Wireless Communication Module [4] Trans-receiver, Antenna type: Chip antenna [3]
5 AVR ISP USB Programmer [8]
Table: Hardware details
1. Blender (2.49b) [1]2. python-2.6.2 [9]3. pyserial-2.5.win32 [7] - for serial
communication
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Requirements
How it works
1. Objective is to control Blender objects using microcontrollers
2. For that microcontroller has to be programmed
3. We have written simple C code that will transmit serial data
to the Blender.
4. The C code is compiled to Hex and this hex file is burnt into
microcontroller with the help of programmer
5. At the receiver small python script is written which receives
the data sent by microcontroller, while other part of python
script controls the object
6. The communication between Blender and microcontroller
can be both wired or wireless.
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Micro-controller AVR ATMEGA 16_32 Explorer Board
Potentiometer Bourns 10 turn pot 10K
Serial communication,USB cable
Objects and scene
Python Script
Blender Interface
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Microcontroller interface with Blender:Schematic – Wired connection, using Potentiometer
Micro-controller AVR ATMEGA 16_32 Explorer Board
Wireless Communication
Potentiometer Bourns 10 turn pot 10K
XBee USB Wireless Module
Objects and scene
Python Script
Blender Interface
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Microcontroller interface with Blender:Schematic – Wireless, using Potentiometer
Micro-controller AVR ATMEGA 16_32 Explorer Board
Serial communication,USB cable
Objects and scene
Python Script
Blender Interface
GP2D12 Range Sensor
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Microcontroller interface with Blender:Schematic – Wired connection, using Sensor
Micro-controller AVR ATMEGA 16_32 Explorer Board
Wireless Communication
GP2D12 Range Sensor
XBee USB Wireless Module
Objects and scene
Python Script
Blender Interface
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Microcontroller interface with Blender:Schematic – Wireless, using Sensor
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Case Study:controlling micrometer screw gauge model in Blender,
with the help of microcontroller- AVR ATMEGA 16_32 (wireless interface)
• Blender workshops,• Blender awareness seminars• Undergraduate students Projects• Blender in education
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
What we are doing with Blender at IITB India
• Queries• Suggestions• Open discussion
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Feedback
Write us at
Kapil Sameer
[email protected] [email protected]@iitb.ac.in [email protected]
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
Credits
Prof. Sridhar IyerMr. Sameer Sahasrabudhe
Parin Jogani Nikita Sule
Paulami Sanghavi Sahil Bakshi
Priyanka Shah Anuja Shah
Chirag Raman Kapil Kadam
Organizers - Blender conference 2010Blender Team, Project OSCAR, CDEEP at IITB India
Idea and Project initiated by
Special ThanksPawankumar Suryawanshi Piyush Manwar
Pranesh Krishnamurthy Bhairavnath Lahotkar
Kapil Kadam, IIT Bombay, India / Introducing Micro-Controller Interface in Blender / Blender Conference 2010
References
[1] http://www.blender.org/
[2] http://www.nex-robotics.com/products/electronic-components/potentiometers/bourns-10-turn-pot-10k.html
[3] http://www.nex-robotics.com/products/wireless-devices/xbee-wireless-communication-module-chip-antenna.html
[4] http://www.nex-robotics.com/products/wireless-devices/xbee-usb-wireless-module.html
[5] http://www.nex-robotics.com/products/sensors/ir-range-sensors/sharp-gp2d12-10cm-to-80cm-ir-range-sensor.html
[6] http://oscar.iitb.ac.in/chemistryrepository.do?d-49216-p=11&subject=Physics
[7] http://python.net/crew/mhammond/win32/
[8] http://www.nex-robotics.com/products/microcontroller-programmer/avr-isp-usb-programmer.html
[9] http://www.python.org/
[1o] http://en.myinventions.pl/index.php?page=ArduinoToBlender