View
243
Download
0
Category
Preview:
Citation preview
Open Source Robotics
Open Source Software and Hardware
For Robotic and Computer Controlled Systems
Farrukh Zia
Computer Engineering Technology Department
New York City College of Technology
IEEE Student Chapter Seminar
April 24, 2014
Source code files are openly available for
everyone to study, copy and modify.
Most famous example?
Linux Operating System
Benefit: Almost free
The small cost involved is the cost of
download / duplication and
storage media (HD, DVD, SD Card)
Open Source Software?
Schematic / PCB files are openly available for
everyone to study, copy, assemble and modify.
Most famous example?
IBM PC
(Schematic diagrams in Reference Guide)
Benefit: Lower cost
The cost involved is the cost of
manufacturing / assembly and
components (PCB, ICs, enclosure)
Open Source Hardware?
A Computer Controlled System consists of several sub-systems
(1) Frame / Chassis / Mechanical Components
● Frame or chassis and mechanical components contribute significantly towards the cost of a computer controlled or robotic system
● Frame or Chassis / Mechanical Components (linkages, gears, etc.)
– Metal
● strong but expensive
– Plastic, Wood
● not as strong but cheaper
● Dropping prices of 3D printers will change this in the future
– Availability of open source design of mechanical components will make it possible to create inexpensive plastic parts on a 3D printer
(1) Frame / Chassis / Mechanical Components (cont.)
● Electro-Mechanical components
– Motors
– Relays
– Solenoids, etc.
– continue to be relatively expensive
(2) Power Supply
● Inexpensive switching power supplies based on open source hardware reference designs
● Hardware reference designs are available in switching IC manufacturer's data sheets
● Examples:
– AC to DC (120V to 12V or 5V) adapters for charging portable equipment from household AC supply
– DC to DC (12V to 5V) adapters for charging portable equipment in automobiles
(3) Micro-Controller Unit (MCU) (Internal Architecture)
(3) Micro-Controller Unit (cont.)
Arduino hardware and software platform
– One of the best modern day example of the benefits of open source hardware and software
– Open source hardware design is available on Arduino web site
– Integrated Development Environment (IDE) software is open source and free
– Arduino IDE is used to create control programs for Atmel ATMega series of micro-controllers
(4) Control Program
● The popularity of Arduino IDE for creating control programs has led to its adaptation for other micro-controllers e.g.
– Microchip PIC32 (32-bit) micro-controller series (chipKIT boards)
– Intel Quark micro-processor (Galileo board)
(4) Control Program (cont.)
Reasons for popularity of Arduino IDE
– Open source and free
– Available for Windows, Linux and Mac OS
– Integrates Editor, Compiler (C/C++) and Debugger
– One click compiling and uploading of control program to the micro-controller over a USB cable
(4) Control Program (cont.)
● And the most important reason:
– Includes open source function libraries written by volunteer programmers for:
● simple analog and digital, as well as many advanced sensors
● wide variety of output devices
– Which makes it relatively easy to create fairly complex control programs
(5) Input Sensors
● Simple sensor examples
– Digital (logic level High/Low output)
● Infra-Red Detector
– Analog (analog voltage output)
● Temperature Sensor
● Open source hardware based advanced sensor examples
– Inertial Measurement Unit (tilt and rotation sensor) (I2C interface)
– Ultrasonic Distance Sensor (pulse width modulation) (PWM interface)
● Open source function libraries are available to use these sensors with Arduino compatible boards
(6) Output Devices
● Examples of output devices
– LED / LCD display
– Motors
● DC, Servo, Stepper
● Open source function libraries are available to use these devices with Arduino compatible boards
(7) Interface Circuits
● Example of open source hardware based interface circuit based on application specific integrated circuit (ASIC)
– H-Bridge motor controller
● Open source hardware design is usually based on IC manufacturer's reference hardware design published in data sheet
(8) Data Communication
● Low cost micro-controllers designed for robotics and embedded applications have built-in support for:
– Data communication
● UART, I2C, SPI, USB etc.
– Network communication
● Ethernet, WiFi
● Bluetooth, Zig-Bee
– Open source / free TCP/IP stack software function libraries are available for network communication
Talk and Roll Bot
A robot that can: Talk By using speech synthesis & Roll Move around on two wheels
Talk and Roll Bot - Block Diagram
Talk and Roll Bot - Subsystems
Talk and Roll Bot Open Source Project on OpenLab
Recommended