Recent Changes - Search:

Main

Robotics I Fall 2007

Robotics II Spring 2007

Robotics I Fall 2006

Vision Servoing Laboratories

FPGA-Based Vision

VDSP

LabVIEW Embedded

Code

Site Admin

edit SideBar

RoboticsIFall2006.Lab3 History

Hide minor edits - Show changes to output

Changed line 56 from:
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1470 | Zachary Root & Chris Robichaud]]
Changed lines 55-56 from:
*[[ | Quoc, Dipe & Roun Project 3]]
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1378&PHPSESSID=5a33d8fa96d9b2923df469709fb510a3 | Quoc, Dipe & Roun Project 3]]
Changed lines 54-56 from:
*[[http://www.inventiondb.com/browse.php?cubeid=1371 | Jason's Project 3]]
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1371 | Jason's Project 3]]
*[[ | Quoc, Dipe & Roun Project 3]]

Changed lines 53-54 from:
*[[http://www.inventiondb.com/browse.php?cubeid=1348 | Mark & Amick Project 3]]
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1348 | Mark & Amick Project 3]]
*[[http://www.inventiondb.com/browse.php?cubeid=1371 | Jason's
Project 3]]
Changed lines 52-53 from:
*[[http://inventiondb.com/browse.php?cubeid=1356 | Yung's Project 3 Calcutron Robot ]]
to:
*[[http://inventiondb.com/browse.php?cubeid=1356 | Yung's Project 3 Calcutron Robot ]]
*[[http://www.inventiondb.com/browse.php?cubeid=1348 | Mark & Amick Project 3
]]
September 29, 2006, at 04:39 AM by 71.192.158.223 -
Changed lines 51-52 from:
*[[http://www.inventiondb.com/browse.php?cubeid=1352 | Chuck and John's Project 3 Page]]
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1352 | Chuck and John's Project 3 Page]]
*[[http://inventiondb.com/browse.php?cubeid=1356 | Yung's Project 3 Calcutron Robot
]]
Changed lines 50-51 from:
*[[http://www.inventiondb.com/browse.php?cubeid=1353 | Ben's Project 3-Bolts ]]
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1353 | Ben's Project 3-Bolts ]]
*[[http://www.inventiondb.com/browse.php?cubeid=1352 | Chuck and John's Project 3 Page
]]
Changed lines 10-11 from:
Excerpts from ''Robotic Explorations'', handed out in class.
to:
None were given.
Changed line 50 from:
*
to:
*[[http://www.inventiondb.com/browse.php?cubeid=1353 | Ben's Project 3-Bolts ]]
Changed lines 20-21 from:
The sonar sensors we will use (Devantech SRF04) has a separate signal wire for the transmit and receive pulses.  To connect to the Blackfin Handy Board, plug the sonar's transmit wire to a Handy Board digital output, and the sonar's receive wire to a digital input.  Use matching inputs and outputs; e.g., use digital input 12 and digital output 22.
to:
The sonar sensors we will use is the Devantech SRF04.  It has a separate signal wire for the transmit and receive pulses.  To connect to the Blackfin Handy Board, plug the sonar's transmit wire to a Handy Board digital output, and the sonar's receive wire to a digital input.  Use matching inputs and outputs; e.g., use digital input 12 and digital output 22.
Changed lines 28-29 from:
There are two basic types of servo motors:  free-running (in which the output shaft spins continuously, like a regular motor.  These are also known as a #&147;winch servo#&148;) and position-based (in which the output shaft can rotate about 180 degrees, back and forth). 
to:
There are two basic types of servo motors:  free-running (in which the output shaft spins continuously, like a regular motor.  These are also known as a “winch servo”) and position-based (in which the output shaft can rotate about 180 degrees, back and forth). 
Changed lines 36-37 from:
Mount an “sonar ranging sensor” onto a servo motor, and then mount this assembly onto your robot.
to:
Mount the sonar ranging sensor onto a servo motor, and then mount this assembly onto your robot.
Changed lines 12-19 from:
!Implementation Projects

Three robot bases will have already been provided in lab for carrying around the Blackfin Handy Board.  Since we only have 3 BF-HBs at present, these will be all that are needed for starting the labs.  You may extend the robots, but please share them.

!!Project 3.1: Open-Space Seeking

!
!!About Sonar
to:
!Project 3: Open-Space Seeking

!!About
Sonar
Changed lines 24-25 from:
!!!About Servos
to:
!!About Servos
Changed lines 34-35 from:
!!!The Project
to:
!!The Project
Changed lines 42-48 from:

Experiment with sensor placement and discuss how this affects performance, particularly as
the robot goes around corners.

Experiment also with threshold settings and discuss how this affects performance.

In your implementation, does
the robot have internal state?  Explain.
to:
Now, develop a LabVIEW program in which the robot will rotate the sonar for one sweep, building up an array of sensor readings, and then find the position that reveals the most open space.  The robot should then rotate toward that position and drive forward a bit.  Then this process should repeat.  The final result is a robot that continuously hunts for and drives toward open spaces.
Changed lines 46-56 from:

!!Project 2.2: Velocity Control

The Blackfin Handy Board includes a “back EMF” sensor on each DC motor output takes an instantaneous measure of motor velocity
.  It does this by briefly removing applied power from the motor, allowing it to spin freely and act as a generator.  Then, the amount of generated voltage is sampled.  This voltage is linearly proportional to the motor velocity.  The procedure works whether the motor is powered or not; if the motor is manually turned, it will also generate a voltage that can be measured by the back EMF circuit.

Using this feature, create a program that maintains a constant velocity on a motor regardless of disturbances.  Use the proportional-derivative approach described in the ''Robotic Explorations'' text.  Also, you may experiment with the PID controller primitive included in LabVIEW.  Your motor controller should include a way of specifying the velocity setpoint.

Create two copies of the controller (one for each motor) and determine if the robot can drive in a straight line when the left and right wheels are both commanded to the same velocity setpoint.

Write up your results as an InventionDB project and link to your iDB cube at the bottom of this page
.
to:
Please create a short video of your robot performing this function.  Use Windows Movie Maker to compress it into a reasonably small .WMV format file, and then upload to InventionDB.
Changed lines 18-19 from:
Mount an “sonar ranging sensor” onto a servo motor, and then mount this assembly onto your robot.
to:
!!!About Sonar
Changed lines 28-29 from:
S
to:
!!!About Servos

A servo motor consists of a DC motor, gear train, positioning measurement sensor, and controller electronics, all integrated into one compact package.

There are two basic types of servo motors:  free-running (in which the output shaft spins continuously, like a regular motor.  These are also known as a #&147;winch servo#&148;) and position-based (in which the output shaft can rotate about 180 degrees, back and forth). 

For this project, use a position-based servo motor.

The servo motor is controlled by an encoded digital signal.  In the case of the position-based motor, the signal tells the motor what angular position it should rotate to.  The motor then attempts to stay at the position.

!!!The Project

Mount an “sonar ranging sensor” onto a servo motor, and then mount this assembly onto your robot.

Changed lines 24-25 from:
The sonar sensors we will use (Devantech SRF04) has a separate signal wire for the transmit and receive pulses.  To connect to the Blackfin Handy Board, plug the sonar's transmit wire to a Handy Board digital output, and the sonar's receive wire to a digital input.  Use matching inputs and outputs; e.g., use
to:
The sonar sensors we will use (Devantech SRF04) has a separate signal wire for the transmit and receive pulses.  To connect to the Blackfin Handy Board, plug the sonar's transmit wire to a Handy Board digital output, and the sonar's receive wire to a digital input.  Use matching inputs and outputs; e.g., use digital input 12 and digital output 22.

Use the sonar initialize VI to configure the input/output pair to function with a sonar sensors, and the sonar read VI to take a measurement.

S

Added lines 1-51:
!Lab 3: Servos and Sonar

Assigned: Thursday, September 21, 2006. \\
Due: Thursday, September 28, 2006.

''In this lab you will work with servo motors and the sonar distance sensor.  You will develop an algorithm that allows the robot to seek out open space and drive toward it.''

!Readings

Excerpts from ''Robotic Explorations'', handed out in class.

!Implementation Projects

Three robot bases will have already been provided in lab for carrying around the Blackfin Handy Board.  Since we only have 3 BF-HBs at present, these will be all that are needed for starting the labs.  You may extend the robots, but please share them.

!!Project 3.1: Open-Space Seeking

Mount an “sonar ranging sensor” onto a servo motor, and then mount this assembly onto your robot.

The sonar ranging sensor determines distance to an object by measuring how long it takes for an ultrasonic ping to be emitted, travel through the air to the object, and then get reflected back. 

Sound travels relatively slowly (to a microprocessor):  about 1 foot per millisecond.  Therefore, if an object is 1 foot away, the delay between a ping being emitted and the reflection being heard will be 2 milliseconds (because you have to count the round-trip travel time).

The sonar sensors we will use (Devantech SRF04) has a separate signal wire for the transmit and receive pulses.  To connect to the Blackfin Handy Board, plug the sonar's transmit wire to a Handy Board digital output, and the sonar's receive wire to a digital input.  Use matching inputs and outputs; e.g., use

Experiment with sensor placement and discuss how this affects performance, particularly as the robot goes around corners.

Experiment also with threshold settings and discuss how this affects performance.

In your implementation, does the robot have internal state?  Explain.

Write up your results as an InventionDB project and link to your iDB cube at the bottom of this page.


!!Project 2.2: Velocity Control

The Blackfin Handy Board includes a “back EMF” sensor on each DC motor output takes an instantaneous measure of motor velocity.  It does this by briefly removing applied power from the motor, allowing it to spin freely and act as a generator.  Then, the amount of generated voltage is sampled.  This voltage is linearly proportional to the motor velocity.  The procedure works whether the motor is powered or not; if the motor is manually turned, it will also generate a voltage that can be measured by the back EMF circuit.

Using this feature, create a program that maintains a constant velocity on a motor regardless of disturbances.  Use the proportional-derivative approach described in the ''Robotic Explorations'' text.  Also, you may experiment with the PID controller primitive included in LabVIEW.  Your motor controller should include a way of specifying the velocity setpoint.

Create two copies of the controller (one for each motor) and determine if the robot can drive in a straight line when the left and right wheels are both commanded to the same velocity setpoint.

Write up your results as an InventionDB project and link to your iDB cube at the bottom of this page.

----

!Student Links to InventionDB Writeups

Link to your InventionDB cubes here.

*
Edit - History - Print - Recent Changes - Search
Page last modified on October 17, 2006, at 05:00 PM