Microprocessors Tutorial 2: Arduino Robotics. Agenda 1. Robot Anatomy 2. Sensor Review 3. PWM 4. MAKE: Fade 5. Motors 6. H Bridge 7. Robot Control library.

Slides:



Advertisements
Similar presentations
EMS1EP Lecture 8 Pulse Width Modulation (PWM)
Advertisements

MOTION CONTROL ECE 105 Industrial Electronics Engr. Jeffrey T. Dellosa College of Engineering and Information Technology Caraga State University Ampayon,
Servo Background Servos provide control of rotary position Servos are used extensively in the remote control hobby world for: Aircraft (flaps, ailerons,
Controlling Motors OBEY ME!. On-Off Control 1. Switch control.
Encoders, Motors, Power, Mini Project #1 10/24/2014.
Basic DC Motor Circuits
Intro to the Arduino Topics: The Arduino Digital IO Analog IO Serial Communication.
Potentiometer Electric circuit Cell or Battery Resistor Switch Bulb Earth/Ground LED.
L.
Motor Control of an Oscillating Pendulum Nick Myers and Chirag Patel March 9, 2004 Advised by: Dr. James Irwin and Mr. Jose Sanchez Bradley University.
COMP3221: Microprocessors and Embedded Systems Lecture 20: Analog Output Lecturer: Hui Wu Session 2, 2004.
Secret Door Knock Detector
SENIOR DESIGN 10/16.
Servo Control Using Analog Signal Obtain “analog” input using analogRead().
September 15, 2007 D.Giandomenico PWM Motor Control with IFI Robotics Victor884 Electronic Speed Controller David Giandomenico Lynbrook High School Robotics.
Introduction.
Micromouse Meeting #3 Lecture #2 Power Motors Encoders.
 Main Components:  Sensors  Micro controller  Motor drivers  Chasis.
Microprocessors Tutorial 2: Arduino Robotics
Embedded Programming and Robotics Lesson 2 C Programming Refresher C Programming1.
Introduction to Arduino Prepared by R. Lamond.  “Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware.
Basic Circuits – Lab 2 Arduino and Sensors Xmedia Spring 2011.
Embedded Programming and Robotics
Dean Brock, Rebecca Bruce and Susan Reiser, CCSC SE 2009 Using Arduino Material taken from Todbot blog Bionic Arduino Todbot blog Bionic ArduinoTodbot.
Microcontroller Hands-on Workshop #3 Ahmad Manshad New Mexico State University Institute of Electrical and Electronics Engineers November 7, 2009.
Microprocessors Tutorial 1: Arduino Basics
ENGR 6806 – Motor Control Prepared By: Rob Collett September 15, Office: EN2074.
RC CAR CONTROLLER BASED ON INTEL GALILEO SOC PLATFORM Nadav Shiloach Sagi Sabag Supervisor: Idan Shmuel Spring 2014 One Semester Project PROJECT’S ENDING.
Arduino Week 2 Lab ECE 1020 Prof. Ahmadi. Objectives 1. Control the rotation of standard servo motor  A standard servo motor is limited in its rotation.
PWM Circuit Based on the 555 Timer. Introduction In applications LED Brightness Control we may want to vary voltage given to it. Most often we use a variable.
Overview What is Arduino? What is it used for? How to get started Demonstration Questions are welcome at any time.
Pulse Width Modulation (PWM). 100% Pulse Width Modulation (PWM) 0% On the chipKIT there are 490 periods per second. Use analogWrite(pin, value) to control.
DC Motor Control The material presented is taken from a variety of sources including: ponents/inductor001.html#howworks,
BM-305 Mikrodenetleyiciler Güz 2015 (3. Sunu) (Yrd. Doç. Dr. Deniz Dal)
Microprocessors Tutorial 1: Arduino Basics
Automatic accident avoiding system PROJECT MEMBERS MUTHUKUMAR.K (05ME33) SAKTHIDHASAN.S (05ME39) SAKTHIVEL.N (05ME40) VINOTH.S (05ME56) PROJECT GUIDE:
Arduino Circuits and Code. int ledPin = 9; void setup() { pinMode(ledPin, OUTPUT); } void loop() { digitalWrite(ledPin, LOW); delay(1000); digitalWrite(ledPin,
1 - Remove LED from 13 and GND - Bring out your breadboard from HW#4 Arduino Overview:
NATCAR SUMMER CLASS II 6 July 2004 Chung Hsieh. Topic of Discussion Power Supply Motor Drive Circuits Braking.
Data Acquisition Device (DAQ) A DAQ is a cool little device that allows you to interface hardware to a computer. Here is what we will do:  Create a square.
SMV Electric Tutorials
Rebecca Bruce and Susan Reiser, May 2015 Analog Input and Output.
PWM: Pulse Width Modulation © 2014 Project Lead The Way, Inc.Digital Electronics.
Analog Output Materials: animatronic head Processing Quiz HW: code links.
Casne.ncl.ac.uk Taking care of the CrumbleBot Please do NOT stress the robot's motors 1.Do NOT push the robot 2.Do NOT hold the.
Bdps 2 Lecture 2. Circuits and Ohm's Law For resistive circuits.
Istituto Tecnico Industriale A.Monaco EURLAB Moving a robot simple example program to control a DC-Motor Next - Press the button (left)
Istituto Tecnico Industriale A.Monaco EURLAB Control a Servo Motor If you want to swing an robot arm or … steer a robot you need a special motor (Servo).
Pulse-Width Modulation: Simulating variable DC output
Module 8 Tutorial  An 8086 system is used for controlling the speed of a motor. The motor can operate at 5 different speeds (1- 5).  The speed.
Arduino Application: Speed control of small DC Motors
Motors & Motor Controllers
Application Case Study Christmas Lights Controller
BM-305 Mikrodenetleyiciler Güz 2016 (3. Sunu)
Introduction to Motors, servos and steppers
Outline Introduction to digital-to-analog converter (DAC)
If you want to swing an robot arm or …
Microprocessors Tutorial 1: Arduino Basics
Electric Motors.
How to avoid catching things on fire.
Auto-Control street lights
Arduino Week 2 Lab ECE 1020 Prof. Ahmadi.
Introduction to H-Bridge
Secret Door Knock Detector
Arduino : Introduction & Programming
Sensors and actuators Sensors Resistive sensors
CTY SAR FCPS Shawn Lupoli, Elliot Tan
UNIT 11: RC-SERVOMOTOR CONTROL
Pulse-Width Modulation: Simulating variable DC output
Presentation transcript:

Microprocessors Tutorial 2: Arduino Robotics

Agenda 1. Robot Anatomy 2. Sensor Review 3. PWM 4. MAKE: Fade 5. Motors 6. H Bridge 7. Robot Control library 8. MAKE: Robot react 9. Challenge: Solve Maze 10. Links

Robot Anatomy

Sensor Review Analog Arduino mapping: 0-5V  connections: V+, pin, GND Serial Monitor: Use Serial.begin(9600) to start communication Use custom function serialOutputValue(“msg”, value) to see sensor value in serial monitor This robot has IR range sensor: Outputs V (  in Arduino) Peaks at 15cm, farther objects create lower voltage BUT code inverts relationship!

Pulse Width Modulation Duty cycle = percentage of time signal is positive in square wave Min-Max voltage: 0 – 5v Min-Max Arduino mapping: 0 – 255 PWM pins have a ~ on Arduino 10% average 50% average 90% average

Make: Fade Use analogWrite(pin, value) to fade light on/off using for loop to vary value Remember PWM range is Recall LED connection: long leg = positive small resistor in series necessary Use PWM to 1. fade the led from 0 to full in 5 seconds, 2. hold for 2 secs, 3. fade back down in 7 seconds. Then each loop would do it faster and faster or brighter and brighter! Challenge: Fade Increments

Motors They draw more current than USB/Arduino can supply (40mA per pin, 200mA in total) so need another power supply: batteries Current through in 1 direction turns them in 1 direction More voltage = More speed, how to control voltage? Use electronically controlled switch (transistor) between motor and batteries Use PWM pin to control switch Motors in this robot run on V and have a peak current of 1A.

H- Bridge Used to make 1 motor turn in either direction by directing current use 4 switches controlled by 2 signals

H- Bridge The IC we will use (SN754410N) has 2 H-Bridges to control 2 motors PWM is used here at the enable pin to control speed A

CHALLENGE: solve the maze! Create your own algorithm to beat the maze using Example 0: Template Or start from our other example codes Example 4, 5, 6

Useful Links Arduino Examples MAKE projects ojects Jeremy Blum Tutorials (#5: motors and transistors)

Questions? Comments? Suggestions?