SlideServe
Menu
Préférences
© SlideServe · v2026

IR & Servos

nizana avatar
14 diapositives · 377 Views · Aug 14, 2014

IR & Servos. Lab 3. Servos. DC Gearhead motor with interface circuitry Often used for angular positioning Can be “hacked” to act as a standard DC Gearhead motor. Servos – Handy Board Specifics. Handy Board uses PWM to command servo to desired angular position

IR & Servos - slide 1
01 / 14IR & Servos
1 / 17

Télécharger la présentation

IR & Servos
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. IR & Servos Lab 3 Spring Quarter

  2. Servos • DC Gearhead motor with interface circuitry • Often used for angular positioning • Can be “hacked” to act as a standard DC Gearhead motor Spring Quarter

  3. 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

  4. 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 Spring Quarter

  5. 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 ( ); Spring Quarter

  6. 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

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

  8. IR – Waveform Specifics • Another waveform is “modulated” on this 40 kHz carrier Spring Quarter

  9. IR – Handy Board detection • Handy Board can look for 100Hz, 125Hz signals • Handy Board looks for a matching waveform by sampling and pattern matching Spring Quarter

  10. IR – Waveform matching Signal X X X X X X X X X X X X X X X X X X X X Stored copy of signal Spring Quarter

  11. 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 Spring Quarter

  12. 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 ! ! Spring Quarter

  13. 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 Spring Quarter

  14. 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 Spring Quarter