IR & Servos Lab 3 Spring Quarter.

Slides:



Advertisements
Similar presentations
Sensing and Control.
Advertisements

IR Control Materials taken from a variety of sources including IR Remote for the Boe-Bot by Andy Lindsay.
Motors, Sensors, and Samantha SSI Robotics September 7, 2013 Capitol College.
Handy Board. Why the Handy Board Designed to be the controller of small, mobil robots Has many features that make it ideal for robotics projects –Integrated.
PHY 235 Robotics Workshop Day 3 IR Distance Sensing.
Tachometers – An Overview
Servos The material presented is taken from a variety of sources including:
EET 2261 Unit 13 Controlling Stepper Motors and Servos  Read Almy, Chapter 21.  Lab #13 due next week.  Final Exam next week.
Engineering H193 - Team Project Gateway Engineering Education Coalition Lab 3P. 1Spring Quarter IR & Servos Lab 3.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 29P. 1Winter Quarter Software Design Project.
Engineering H193 - Team Project Gateway Engineering Education Coalition P. 1 Spring Quarter 2008 Robot Programming Tips Week 4 Day 2 By Matt Gates and.
Handy Board. Why the Handy Board Designed to be the controller of small, mobil robots Has many features that make it ideal for robotics projects –Integrated.
Software Design Project
SENIOR DESIGN 10/16.
IR SENSORS AND ENCODERS. LCDs Timothy Friez Class # 2.
Introduction to Arduino Prepared by R. Lamond.  “Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware.
Easy on the Tini Bill Barker Carey Davis Ben Irwin Travis Majors Cell phone detector.
Controller, Sensors and Motors Ding Ke Tutorial 1, UGB 230N.
Concept Design Review THE DUKES OF HAZARD CAMILLE LEGAULT, NEIL KENNEDY, OMAR ROJAS, FERNANDO QUIJANO, AND JIMMY BUFFI April 24, 2008.
Microcontroller Hands-on Workshop #3 Ahmad Manshad New Mexico State University Institute of Electrical and Electronics Engineers November 7, 2009.
LAB 1 MATLAB, dSPACE and Simulink
Program ultrasonic range sensor in autonomous mode
Programming Concepts Part B Ping Hsu. Functions A function is a way to organize the program so that: – frequently used sets of instructions or – a set.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class 2.
Programming Concepts (Part B) ENGR 10 Introduction to Engineering 1 Hsu/Youssefi.
Introduction to the VEX ® Robotics Platform and ROBOTC Software © 2012 Project Lead The Way, Inc.Principles of Engineering.
Instrumentation & Control Engg. Section Electrical Engineering Department Ahmedabad , Gujarat.
7.2 V battery pack and charger Put the battery in the charger station at the end of the lab. period. Red light indicates charging. Ken Youssefi Introduction.
The Handy Board Bryan Valentini General Robotics 2003.
By Tony Hoff ECE 4220 – Real Time Embedded Computing University of Missouri - Columbia Course Instructor: Dr. Guiherme DeSouza.
Servos The material presented is taken from a variety of sources including:
PROJECT HEAD CASE Dan Klowden Jon Burns cse477 Spring 2000.
Engineering H193 - Team Project Gateway Engineering Education Coalition Lab 1P. 1Spring Quarter Introduction to Sensors Lab 1.
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect 29P. 1Winter Quarter Software Design Project Lecture 29.
Using IR Chapters 7 & 8 of Robotics with the Boe-Bot.
Figure 12.1 The UP1-bot. Figure 12.2 Left: Radio Control Servo Motor and Right: Servo with Case and Gears Removed.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class3/Lab 2.
Smart Lens Robot William McCombie IMDL Spring 2007.
1 Introduction to Haptics Introduction to the Hapkit board Allison M. Okamura Stanford University.
EEE 499 GRADUATION PROJECT FIRST-MIDTERM PRESENTATION By Sedat ONATLI & Akbar SHADAKOV Supervisor : Prof.Dr. Arif NACAROĞLU.
ROBOTC for VEX Online Professional Development. Homework Questions Thoughts? Questions?
Introduction to VEX® components
Microcontroller basics Embedded systems for mortals.
Microcontroller basics
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
VEX® Robotics Platform and ROBOTC Software
User-Written Functions
VEX® Robotics Platform and ROBOTC Software
Lecture 10 Sensors.
Program the robotic arm
ROBOTC for VEX Online Professional Development
Stop Light Lab 7 Winter Quarter.
ROBOTC for VEX Online Professional Development
Servos The material presented is taken from a variety of sources including:
Servos The material presented is taken from a variety of sources including:
IR Control Materials taken from a variety of sources including IR Remote for the Boe-Bot by Andy Lindsay.
Pulse Width Modulation (PWM) Motor Feedback - Shaft Encoder
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
Servos The material presented is taken from a variety of sources including:
VEX® Robotics Platform and ROBOTC Software
VEX® Robotics Platform and ROBOTC Software
EET 2261 Unit 12 Controlling Stepper Motors and Servos
VEX® Robotics Platform and ROBOTC Software
Sensors and actuators Sensors Resistive sensors
VEX® Robotics Platform and ROBOTC Software
Introduction to Motors
UNIT 11: RC-SERVOMOTOR CONTROL
Compiled from various Internet sources Presented by Mr. Hatfield
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
Presentation transcript:

IR & Servos Lab 3 Spring Quarter

Servos DC Gearhead motor with interface circuitry Often used for angular positioning Can be “hacked” to act as a standard DC Gearhead motor Instructor: When hacked, the positional control is removed. Directions for hacking the motor can be found on the web. Spring Quarter

Servos – Handy Board Specifics Handy Board uses PWM to command servo to desired angular position Handy Board can control 2 servos (second servo requires alternate source of 5 volts) Digital port 9 TOC3 port (under LCD) Need to include library files Servo.icb AND Servo.c OR servo.lis Spring Quarter

Servo - Calibration Servo.c constants may need "calibrated" to make full use of servo To do so, use servo (x) command Set MIN_SERVO_WAVETIME=0, MAX_SERVO_WAVETIME=10000 (interaction window) Reduce x (>1400) until servo is at 0° Increase x(<4860) until servo is >180° In your main program, assign new values to the global variables MIN_SERVO_WAVETIME and MAX_SERVO_WAVETIME Instructor: Many teams found this is not necessary for this lab, but is very useful when used on the robot. Spring Quarter

Servo – use Load servo.lis To turn servo on – servo_on ( ); To command servo - servo (int period); servo_rad (float radians); servo_deg (float degrees); To turn servo off – servo_off ( ); Instructor: Servo_deg(); is the common command used by the students; the 0 to 180 degree range is easy to deal with as compared to a period. Spring Quarter

Infrared (IR) Basics EM wave – 1013- 1014 Hz Many things give off IR Remote controls Sun Fluorescent lights Handy Board How do we avoid interference from all these sources? Spring Quarter

IR – Specifics Use Sharp GP1U5 IR detector Looks for a 40kHz IR pulse Used to reduce interference Also rumored to be used due to legacy remote controls (ultrasonic) Spring Quarter

IR – Waveform Specifics Another waveform is “modulated” on this 40 kHz carrier Instructor: The 40 kHz carrier is the smaller waveform on the top waveform. The 100 Hz “data” signal is the waveform shown on the bottom waveform. The actual frequency of the IR is too fast to be shown. Spring Quarter

IR – Handy Board detection Handy Board can look for 100Hz, 125Hz signals Handy Board looks for a matching waveform by sampling and pattern matching Instructor: Routines have been written to look for other types of signals, but the ones used for this lab detect 100 and 125 Hz signals. Spring Quarter

IR – Waveform matching Signal Stored copy of signal X X X X X X X X Instructor: This is how the Handyboard determines the frequency of the signal. The signal is compared against a stored copy of the signal. If they match, then the function returns a nonzero integer. X X X X X X X X X X X X Stored copy of signal Spring Quarter

IR – Handy Board specifics Handy Board checks incoming signal for match w/ stored copy When they match, ir_counts return a number from 1 to 255 If there is no match, 0 is returned The longer the receiver sees a valid signal, the higher the count If you look away, counts goes to 0 Instructor: As the signal gets weaker, the count still increases until there is no signal detected, then a zero is detected. This can cause problems with “overshoot” since the highest number received doesn’t correspond to the strongest signal detected. Spring Quarter

IR – Handy Board use Handy Board does not handle mixed mode arithmetic Must use casting operators - angle=(float)deg where deg is integer and angle is floating point IR reception can take as much as 30% of HB resources ! ! Instructor: Taking up so many resources means that using other programs at the same time may cause problems, such as a shaft encoder routine losing counts. Spring Quarter

IR – Handy Board functions void set_ir_receive_frequency (int f) ; void ir_receive_on ( ); void ir_receive_off ( ); int ir_counts (int p); Where you should note that: ir_counts (5) => from digital port 15 ir_counts (4) => from digital port 14 Instructor: Ir_counts returns a higher integer depending on how long the signal has been detected. Spring Quarter

Lab Write code to seek out an IR beacon Scan a servo over 180° Return to angle where beacon is located Try for accuracy, fast search time Instructor: Tell them to try out different ways to compensate for overshoot. Spring Quarter