android based robots - updated - eed session - sept 2013
TRANSCRIPT
Introducing a New Product
Android-Based Robots
Bridging the gap...
Khaled Al-KadyRobotics25
Key points
Why Android-based robots are important?
How to build an Android-based robot?
Message to engineering students
Software development frameworks and techniques evolvedMake use of today's technologies
Don't live only in the limited resources world
Choose your battles, delegate some work to Android
Message to computer science students
Entering the robotics field is easy, the old barriers no longer exist
Expand your knowledge, know more about hardware and leave your comfort zone
Now let's start!
What is special about Android-based robots?
Easier integrationBuilt-in I/O devices
Better development environmentHuge memory, fast processor
Lots of utilities
Java
input devices
output devices
Micro-controllerIOIO or Arduino
Android device
How it works physical connections
IOIO capabilities
Microcontroller with 48 I/O pins
Controlled by Android or PC applications
Supports many device typesDigitalInput:Button, ...
AnalogInput:Potentiometer, Ultrasonic sensor, ...
PulseInput:RC receiver, Mouse wheel, ...
DigitalOutput:Led, Stepper motor, ...
PwmOutput:Servo, Brushless motor, ...
Communication: UART, I2C, SPI
Code!
Demo 1: Potentiometer controls a servo motor
Demo 2: Built-in accelerometer controls a servo motor
Demo 3: CNC plotter
Demo
Demo components
Servo motor
PwmOutput servo.setPulseWidth(x); x: 500 to 2500
Accelerometer
SensorEventListener onSensorChanged(event) { x = event.values[0]; } x: -9.8 to +9.8
Potentiometer
AnalogInput x = potentiometer.read(); x: 0.0 to 1.0
Demo components
BaseIOIOLooper
IOIOActivity
IOIO open X Output() open Y Input()
MyLooper setup() { } loop() { }
MyScreencreateIOIOLooper(){ }
IOIO code structure
Connect the phone to Arduino usingGoogle ADK
ADB shield
Bluetooth shield
Other approaches: Arduino
input devices
output devices
Arduino
Android
Computer on chip with built-in portsRaspberryPI
BeagleBone
PcDuino
sensors
screen
input devices
output devices
Computer on chip
Other approaches: Computer on chip
Facebook.com/Robotics25
Open source robotics projects
Technical support for projects in the same domain
Get Involved
Thank you : )
Facebook.com/Robotics25