Engr 101 robotics lecture 3 robot motion
Download
1 / 13

ENGR 101: Robotics Lecture 3 – Robot Motion - PowerPoint PPT Presentation


  • 155 Views
  • Uploaded on

ENGR 101: Robotics Lecture 3 – Robot Motion. Outline Robot Motion FOR Loops Making Music References http://csserver.evansville.edu/~richardson/ PBASIC Programming Guide: Setting Up PBASIC Programming Guide: Writing Programs BASIC Stamp Syntax and Reference Manual. 1.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'ENGR 101: Robotics Lecture 3 – Robot Motion' - lanelle


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Engr 101 robotics lecture 3 robot motion
ENGR 101: RoboticsLecture 3 – Robot Motion

  • Outline

    • Robot Motion

    • FOR Loops

    • Making Music

  • References

    • http://csserver.evansville.edu/~richardson/

      • PBASIC Programming Guide: Setting Up

      • PBASIC Programming Guide: Writing Programs

      • BASIC Stamp Syntax and Reference Manual

1


Lecture 3 robot motion motor control
Lecture 3 – Robot MotionMotor Control

  • The right and left motors are controlled by signals on pins 12 and 13. Instead of using just a HIGH or LOW signal to turn the motors on or off (like the LEDs), motor speed (and direction) are determined by the duration of a high voltage pulse on the motor control pin.

2


Lecture 3 robot motion motor control1
Lecture 3 – Robot MotionMotor Control

  • The PBASIC PULSOUT can be used to create a pulse of a specific duration on a particular pin:

    PULSOUT PIN, DURATION

  • A duration of 1000 (2 ms) is full reverse, 2000 (4 ms) stops the motor, and 3000 (6 ms) is full forward. (Duration is in units of 2 us).

3


Lecture 3 robot motion motor control2
Lecture 3 – Robot MotionMotor Control

  • PULSOUT actually inverts the signal at a PIN so to be sure to send a HIGH pulse we must set the PIN LOW first. Here is code to turn the RIGHT motor on at full speed for 5 seconds and then stop the motor:

    LOW 12 ' REQUIRED

    PAUSE 100 ' INITIALIZATION!!

    PULSOUT 12, 3000 ' Full Speed

    PAUSE 5000 ' 5 seconds

    PULSOUT 12, 2000 ' Stop

4


Lecture 3 robot motion motor control3
Lecture 3 – Robot MotionMotor Control

  • The PIN declaration can be used to assign a label to a particular PIN. The CON declaration can similarly be used to assign a label to a constant value:

    RtMotor PIN 12

    LtMotor PIN 13

    FwdFull CON 3000

    RvrFull CON 1000

    StpFull CON 2000

5


Lecture 3 robot motion motor control4
Lecture 3 – Robot MotionMotor Control

  • With these declarations the following program will send the robot forward at full speed for 5 sec, stop for 5 sec, full reverse for 5 sec, and then stop:

    LOW RtMotor ' REQUIRED

    LOW LtMotor ' INITIALIZATION!!

    PAUSE 100

    PULSOUT RtMotor, FwdFull

    PULSOUT LtMotor, FwdFull

    ' Cont. on next slide ...

6


Lecture 3 robot motion motor control5
Lecture 3 – Robot MotionMotor Control

PAUSE 5000

PULSOUT RtMotor, StpFull

PULSOUT LtMotor, StpFull

PAUSE 5000

PULSOUT RtMotor, RvrFull

PULSOUT LtMotor, RvrFull

PAUSE 5000

PULSOUT RtMotor, StpFull

PULSOUT LtMotor, StpFull

END

7


Lecture 3 robot motion motor control6
Lecture 3 – Robot MotionMotor Control

  • The motors are not identical. A PULSOUT duration of 3000 to BOTH motors may not cause the Scribbler to go straight ahead. If the Scribbler veers to the right, you will need to slow down the left motor by using a duration of less than 3000.

  • You will need to follow the calibration procedure on pages 16 and 17 of the Writing Programs guide to find the duration values that cause your Scribbler to go straight.

8


Lecture 3 robot motion variables
Lecture 3 – Robot MotionVariables

  • It is convenient to use a variable to label a memory location. You must declare a variable before using it:

    name VAR size

  • size determines the range of values the variable can hold:

    BIT 0-1 (1 bit)‏

    NIB 0-15 (4 bits)‏

    BYTE 0-255 (8 bits)‏

    WORD 0-65535 (16 bits)‏

    Always use the smallest size necessary.

9


Lecture 3 robot motion motor control7
Lecture 3 – Robot MotionMotor Control

  • This code snippet uses a variable and a FOR loop to smoothly accelerate the Scribbler:

    speed VAR Word

    FOR speed = StpFull TO FwdFull

    STEP 250

    PULSOUT RtMotor, speed

    PULSOUT LtMotor, speed

    PAUSE 1000

    NEXT

10


Lecture 3 robot motion making music
Lecture 3 – Robot MotionMaking Music

  • The PBASIC FREQOUT command is used to play a tone on the speaker:

    FREQOUT pin, duration, freq1, freq2

    The speaker is connected to pin 11. The duration is in ms. freq1 is the frequency (in Hertz) of the tone you want to play. freq2 is an optional second frequency (you can play two tones at once).

11


Lecture 3 robot motion making music1
Lecture 3 – Robot MotionMaking Music

  • The following code plays five tones, each is slightly longer and at a higher frequency than the one preceeding it:

    speaker PIN 11

    FREQOUT speaker, 200, 500

    FREQOUT speaker, 400, 1000

    FREQOUT speaker, 600, 1500

    FREQOUT speaker, 800, 2000

    FREQOUT speaker, 1000, 2500

12


Lecture 3 robot motion assignment
Lecture 3 – Robot MotionAssignment

  • Reproduce the effect of the program on the previous slide using a FOR loop and a single FREQOUT command.

  • Page 14 of the “Writing Programs” book shows the mapping between musical notes and frequencies. Program the Scribbler to play the beginning of a song ...

  • Find the calibration values for your robot and record them. You will need them in the future.

13


ad