ME_4451_Lab_8_Handout
pdf
keyboard_arrow_up
School
Georgia Institute Of Technology *
*We aren’t endorsed by this school
Course
4451
Subject
Mechanical Engineering
Date
Jan 9, 2024
Type
Pages
5
Uploaded by AmbassadorFlowerBee38
ME 4451 Lab 8 Handout
Anirban Mazumdar, Divya Iyengar, Bryan Blaise
Fall 2023
1
Objectives
1. Execute a navigation task to a desired position/orientation using GPS and sensory
feedback.
2. Experiment with advanced path planning algorithms for a mobile robot.
2
Prelab Assignment
•
Please install the latest MATLAB version (R2022b or above).
•
Follow steps found in Section 3 to set up custom ROS messages on your MATLAB.
•
Thoroughly review lecture 25 (Mobile Robot Control).
3
Register ROS Custom Messages to MATLAB
Please implement the following in order to allow access to GPS functions.
These steps
must be performed with the updated Matlab version.
1. Download zip file ”matlab
msg
gen
ros1” from Lab 8 Canvas file.
2. Create a local folder, placing the zipped file inside.
DO NOT EXTRACT!
Figure 1: Create local file location for zipped file. NOTE THIS FILE PATH.
3. In your command window, run the command
rosRegisterMessages(’YOUR
NOTED
FILE
PATH’)
.
For example, referencing Figure 2, my function would be called as the following:
rosRegisterMessages(’C:
\
rosCustomMessages’)
.
1
Georgia Tech ME 4451 - Robotics
4. If step 3 is performed correctly, Matlab will prompt the following message in your
command window:
Figure 2: Prompted Instructions from Step 2.
Follow these remaining steps, verifying that you have correctly installed inputting
”rosmsg list” in the command window. If done correctly, the following will have output
to your command window (search alphabetically).
Figure 3: Correctly installed custom ROS messages for your use.
4
Mobile Robot Control - Navigation Using GPS
Your final objective will be to generate a program that executes a navigation task on the
robot.
You will implement a mobile robot control algorithm that takes in desired goal
poses/orientation as inputs (
X
G
, Y
G
, γ
G
), GPS and odometry data as feedback (to cal-
culate error), command linear/rotation velocities (
V
p
, ω
z
) for the turtlebot3, and present
2
Georgia Tech ME 4451 - Robotics
pose/orientation as outputs (
X
P
, Y
P
, θ
).
You will also have to compute gains (K matrix)
based on the error terms for this algorithm to work. The algorithm will generate a smooth
trajectory while simultaneously driving the errors to zero. Refer to lecture 25 on Canvas for
more details.
Figure 4: Diagram of the controller you will implement in this lab.
The robot will have to navigate from a starting point to an arbitrary end goal using
information from GPS. The turtlebot3s have been installed with ultrasound GPS beacons
and will provide you with
X
and
Y
positional data in meters. The rostopics you can use to
obtain these data are: ‘hedge
pos’, ‘hedge
pos
a’, and ‘hedge
pos
ang’. Create a subscriber
and a rosmessage to receive the data and take a look at what is inside to get a better
understanding. Keep in mind that since these beacons use ultrasound, stay out of the GPS
region as much as possible to reduce noise during operation. Here is the map of the room
that is covered by GPS:
3
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
Georgia Tech ME 4451 - Robotics
Figure 5: Map of lab. Note the starting pose includes both position and orientation.
In the Lab 8 folder under the ”Files” tab, you can access this map.
Dimensions are
in
cm
. The entrance of the lab is at the bottom of the map. Note that the starting pose
and ending pose include both the position and orientation of the robot. It is recommended
that you align the starting orientation with the world coordinate frame as the GPS won’t
provide you with the orientation (you must use ‘odom’ to calculate orientation). The goal
position/orientation can be arbitrary.
Ending up anywhere within
±
2
cm
and
±
5
deg
is
considered a success.
Recall that the Turtlebot’s odometry functions consider the origin of the global frame
to be the pose/orientation of the robot at the robot’s startup. You can reset the odometry
by using the rostopic ‘reset’ or by re-launching the roslaunch command on your command
prompt. You will need to perform transformations to create a new global origin that matches
those in the map. Once you can reliably execute the navigation task, demonstrate it to your
TA for credit.
4
Georgia Tech ME 4451 - Robotics
Figure 6: GPS used for this lab. These beacons mounted on your turtlebot3s send/receive
data using ultrasounds.
4.1
Extra Credit: Final Orientation
The navigation task only requires your robot to end within
±
2
cm
of your final goal position.
For extra credit, program your robot to end its path facing a particular direction. Orienting
within
±
5
deg
of your goal orientation is considered a success.
4.2
Extra Credit: Obstacle Avoidance During Navigation
For additional extra credit, program your robot to perform obstacle avoidance during the
navigation task. While your robot is performing its navigation task, the TA will suddenly
place an object in front of your robot at their discretion.
Your robot should detect the
object, avoid it, and resume its path and proceed to its goal. Your robot must both avoid
the obstacle and complete the path to receive credit.
5
Related Documents
Related Questions
4. Documents business requirements use-case narratives.for only one process
note: please i want Documents like this in pic
arrow_forward
I need help with the first part and Matlab for this problem
arrow_forward
I want to run the SGP4 propagator for the ISS (ID = 25544) I got from spacetrack.org in MATLAB. I don't know where to get the inputs of the function. Where do I get the inFile and outFile that is mentioned in the following function.
% Purpose:
% This program shows how a Matlab program can call the Astrodynamic Standard libraries to propagate
% satellites to the requested time using SGP4 method.
%
% The program reads in user's input and output files. The program generates an
% ephemeris of position and velocity for each satellite read in. In addition, the program
% also generates other sets of orbital elements such as osculating Keplerian elements,
% mean Keplerian elements, latitude/longitude/height/pos, and nodal period/apogee/perigee/pos.
% Totally, the program prints results to five different output files.
%
%
% Usage: Sgp4Prop(inFile, outFile)
% inFile : File contains TLEs and 6P-Card (which controls start, stop times and step size)
% outFile : Base name for five output files
%…
arrow_forward
K
mylabmastering.pearson.com
Chapter 12 - Lecture Notes.pptx: (MAE 272-01) (SP25) DY...
P Pearson MyLab and Mastering
Mastering Engineering
Back to my courses
Course Home
Scores
Course Home
arrow_forward
HW Matlab 1) Create a variable ftemp to store a temperature in degrees Fahrenheit (F). Write m-file to convert this to degrees Celsius and store the result in a variable ctemp. The conversion factor is C = (F —32) * 5/9. 2) Write m-file to generate a matrix of random integers of size 100 by 100 their values between 15 to 80. 3) Free fall of objects is given by y =5mgt? where a is the acceleration, v is the velocity, y is the distance, m is the mass of the object, g is the gravitational acceleration. Plot the distance and velocity of the object for 15 seconds after its fall from rest (y = 0). Take m = 0.2 kg.
arrow_forward
Look up the Arduino Mega 2560. Document the steps how to work with the Arduino in Matlab and Simulink. Make a simulink program turning on the LED on the board for 10sec. Explain your program, comment on your findings and explain how to test it on the actual hardware.
arrow_forward
-The exam is open adopted textbook, open class notes (posted notes and solutions on the class' Canvas site only) and you may use
Matlab's build-in help system, but only to look up Matlab syntax questions;
- no collaboration is allowed; no help, including the tutoring center, may be sought to solve the problems;
- exam questions may only be asked to the instructor via private Ed Discussion posts or during the instructor's office hours;
- for non Matlab Grader problems, document all steps you took to solve the problem. This can be handwritten, but must be legible
for credit. If the problem states 'By hand', do not use any script/function to actually solve the problem, however, you may use a
non-programmable calculator or script/functions coded in this class to help in verifying the numerical results of individual steps;
- on Gradescope associate/select your answer pages with the corresponding problem numbers. Failure to do so may result in
no points given initially and will require a…
arrow_forward
Please do not copy other's work and do not use ChatGPT or Gpt4,i will be very very very appreciate!!!
Thanks a lot!!!!!
arrow_forward
You are a biomedical engineer working for a small orthopaedic firm that fabricates rectangular shaped fracture
fixation plates from titanium alloy (model = "Ti Fix-It") materials. A recent clinical report documents some problems with the plates
implanted into fractured limbs. Specifically, some plates have become permanently bent while patients are in rehab and doing partial
weight bearing activities.
Your boss asks you to review the technical report that was generated by the previous test engineer (whose job you now have!) and used to
verify the design. The brief report states the following... "Ti Fix-It plates were manufactured from Ti-6Al-4V (grade 5) and machined into
solid 150 mm long beams with a 4 mm thick and 15 mm wide cross section. Each Ti Fix-It plate was loaded in equilibrium in a 4-point bending
test (set-up configuration is provided in drawing below), with an applied load of 1000N. The maximum stress in this set-up was less than the
yield stress for the Ti-6Al-4V…
arrow_forward
mylabmastering.pearson.com
Chapter 12 - Lecture Notes.pptx: (MAE 272-01) (SP25) DY...
P Pearson MyLab and Mastering
Scores
arrow_forward
+ → CO
A student.masteryconnect.com/?iv%3D_n5SY3Pv5S17e01Piby
Gr 8 Sci Bench 1 GradeCam Rutherford TN 2021
AHMAD, ASHNA
D0
3 of 35
A student develops a model of an electric motor using two pins, a wire coil,
coil continues to spin with a certain speed.
wire coil
pins
magnet
tape
battery
How can the student increase the speed of the electric motor?
O by using wider pins
O by using thinner pins
O by using less wire in the clil
O by using more wire in the coil
e Type here to search
近
arrow_forward
Solve correctly
arrow_forward
I am having trouble with the folloiwng MATLAB code. I am getting an error that says "unrecognized function or variable 'numericalPropogatorOptions". I have the aerospace toolbox and the aerospace blockset added. what add on do I have to download to use that function. How do I make this code work?
% Define Keplerian Elements
a = 29599.8; e = 0.0001; i = 0.9774; Omega = 1.3549; w = 0; M = 0.2645;
[RECI, VECI] = Kepler2RV(a, e, i, Omega, w, M);
initialState = [RECI * 1e3; VECI * 1e3]; % Initial position (m) and velocity (m/s)
% Define constants
mu = 3.986004418e14; % Gravitational constant (m^3/s^2)
earthRadius = 6378.1363 * 1e3; % Earth radius in meters
j2 = 1.08263e-3; % J2 perturbation coefficient
% Define propagator options
propOptions = numericalPropagatorOptions('CentralBody', 'Earth', ...
'GravitationalParameter', mu, ...
'InitialState', initialState, ...
'OutputTimeStep', 300); % Output every 300 seconds
% Add perturbations
addGravityModel(propOptions, 'Degree', 2,…
arrow_forward
Esker on Demand- Customer X Chat Process Jobs In Hyderaba x
(Messages | Mynaukri
M Chegg Expert Hiring | Complet x
O Zoho Creator - Chegg Expert
experthiring.cheggindia.com/%23Form:Subject test?privateLink=bF53Pq3tqOdXDb6qq0PKbXBKnU6s212F4b2fdONuXXgZX2DTmgJz56EF3A79haQq4A..
Q
S Paused
Apps
State Bank of India...
Welcome to Esker o...
I Feet to Inches conv...
en Watch Super Hit Ful...
IRCTC Next Generat...
A TASHRM
A Time Tracker Time
Prime Video: Good...
Chin Expert Hr
saKANOLA
Subect Test
Determine the Sommerfeld number of a bearing whose clearance ratio is 600 and the
bearing load is 750 lbf . The length and radius of the given bearing is 1.75 in. and 0.75 in.
respectively. The viscosity of the oil inside the bearing is u=6 µreyn. The bearing is
rotating at a speed of 1800 rpm.
a) 0.28
b) 0.58
c) 0.23
d) 0.36
Activate Windows
Go to Settings to activate Windows.
453 PM
ヘ)み
OType here to search
THan-21
oms UP
...
arrow_forward
You are assigned as the head of the engineering team to work on selecting the right-sized blower that will go on your new line of hybrid vehicles.The fan circulates the warm air on the inside of the windshield to stop condensation of water vapor and allow for maximum visibility during wintertime (see images). You have been provided with some info. and are asked to pick from the bottom table, the right model number(s) that will satisfy the requirement. Your car is equipped with a fan blower setting that allow you to choose between speeds 0, 1,2 and 3. Variation of the convection heat transfer coefficient is dependent upon multiple factors, including the size and the blower configuration.You can only use the following parameters:
arrow_forward
Learning Goal:
To understand the concept of moment of a force and how to calculate it using a scalar
formulation.
The magnitude of the moment of a force with a magnitude F around a point O is defined
as follows:Mo = Fdwhere d is the force's moment arm. The moment arm is the
perpendicular distance from the axis at point O to the force's line of action.
Figure
F₁
1 of 2
Part A
A stool at a restaurant is anchored to the floor. When a customer is in the process of sitting down, a horizontal force with magnitude F₁ is exerted at the top of the stool support as shown in the figure. (Figure 1)
When the customer is seated, a vertical force with magnitude F2 is exerted on the stool support. If the maximum moment magnitude that the stool support can sustain about point A is M₁ = 140 lb-ft, what is the
maximum height do that the stool can have if the magnitudes of the two forces are F₁ = 65.0 lb and F₂ = 140 lb ? Assume that moments acting counterclockwise about point A are positive whereas…
arrow_forward
SEE MORE QUESTIONS
Recommended textbooks for you

Principles of Heat Transfer (Activate Learning wi...
Mechanical Engineering
ISBN:9781305387102
Author:Kreith, Frank; Manglik, Raj M.
Publisher:Cengage Learning

Precision Machining Technology (MindTap Course Li...
Mechanical Engineering
ISBN:9781285444543
Author:Peter J. Hoffman, Eric S. Hopewell, Brian Janes
Publisher:Cengage Learning
Related Questions
- 4. Documents business requirements use-case narratives.for only one process note: please i want Documents like this in picarrow_forwardI need help with the first part and Matlab for this problemarrow_forwardI want to run the SGP4 propagator for the ISS (ID = 25544) I got from spacetrack.org in MATLAB. I don't know where to get the inputs of the function. Where do I get the inFile and outFile that is mentioned in the following function. % Purpose: % This program shows how a Matlab program can call the Astrodynamic Standard libraries to propagate % satellites to the requested time using SGP4 method. % % The program reads in user's input and output files. The program generates an % ephemeris of position and velocity for each satellite read in. In addition, the program % also generates other sets of orbital elements such as osculating Keplerian elements, % mean Keplerian elements, latitude/longitude/height/pos, and nodal period/apogee/perigee/pos. % Totally, the program prints results to five different output files. % % % Usage: Sgp4Prop(inFile, outFile) % inFile : File contains TLEs and 6P-Card (which controls start, stop times and step size) % outFile : Base name for five output files %…arrow_forward
- K mylabmastering.pearson.com Chapter 12 - Lecture Notes.pptx: (MAE 272-01) (SP25) DY... P Pearson MyLab and Mastering Mastering Engineering Back to my courses Course Home Scores Course Homearrow_forwardHW Matlab 1) Create a variable ftemp to store a temperature in degrees Fahrenheit (F). Write m-file to convert this to degrees Celsius and store the result in a variable ctemp. The conversion factor is C = (F —32) * 5/9. 2) Write m-file to generate a matrix of random integers of size 100 by 100 their values between 15 to 80. 3) Free fall of objects is given by y =5mgt? where a is the acceleration, v is the velocity, y is the distance, m is the mass of the object, g is the gravitational acceleration. Plot the distance and velocity of the object for 15 seconds after its fall from rest (y = 0). Take m = 0.2 kg.arrow_forwardLook up the Arduino Mega 2560. Document the steps how to work with the Arduino in Matlab and Simulink. Make a simulink program turning on the LED on the board for 10sec. Explain your program, comment on your findings and explain how to test it on the actual hardware.arrow_forward
- -The exam is open adopted textbook, open class notes (posted notes and solutions on the class' Canvas site only) and you may use Matlab's build-in help system, but only to look up Matlab syntax questions; - no collaboration is allowed; no help, including the tutoring center, may be sought to solve the problems; - exam questions may only be asked to the instructor via private Ed Discussion posts or during the instructor's office hours; - for non Matlab Grader problems, document all steps you took to solve the problem. This can be handwritten, but must be legible for credit. If the problem states 'By hand', do not use any script/function to actually solve the problem, however, you may use a non-programmable calculator or script/functions coded in this class to help in verifying the numerical results of individual steps; - on Gradescope associate/select your answer pages with the corresponding problem numbers. Failure to do so may result in no points given initially and will require a…arrow_forwardPlease do not copy other's work and do not use ChatGPT or Gpt4,i will be very very very appreciate!!! Thanks a lot!!!!!arrow_forwardYou are a biomedical engineer working for a small orthopaedic firm that fabricates rectangular shaped fracture fixation plates from titanium alloy (model = "Ti Fix-It") materials. A recent clinical report documents some problems with the plates implanted into fractured limbs. Specifically, some plates have become permanently bent while patients are in rehab and doing partial weight bearing activities. Your boss asks you to review the technical report that was generated by the previous test engineer (whose job you now have!) and used to verify the design. The brief report states the following... "Ti Fix-It plates were manufactured from Ti-6Al-4V (grade 5) and machined into solid 150 mm long beams with a 4 mm thick and 15 mm wide cross section. Each Ti Fix-It plate was loaded in equilibrium in a 4-point bending test (set-up configuration is provided in drawing below), with an applied load of 1000N. The maximum stress in this set-up was less than the yield stress for the Ti-6Al-4V…arrow_forward
- mylabmastering.pearson.com Chapter 12 - Lecture Notes.pptx: (MAE 272-01) (SP25) DY... P Pearson MyLab and Mastering Scoresarrow_forward+ → CO A student.masteryconnect.com/?iv%3D_n5SY3Pv5S17e01Piby Gr 8 Sci Bench 1 GradeCam Rutherford TN 2021 AHMAD, ASHNA D0 3 of 35 A student develops a model of an electric motor using two pins, a wire coil, coil continues to spin with a certain speed. wire coil pins magnet tape battery How can the student increase the speed of the electric motor? O by using wider pins O by using thinner pins O by using less wire in the clil O by using more wire in the coil e Type here to search 近arrow_forwardSolve correctlyarrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Principles of Heat Transfer (Activate Learning wi...Mechanical EngineeringISBN:9781305387102Author:Kreith, Frank; Manglik, Raj M.Publisher:Cengage LearningPrecision Machining Technology (MindTap Course Li...Mechanical EngineeringISBN:9781285444543Author:Peter J. Hoffman, Eric S. Hopewell, Brian JanesPublisher:Cengage Learning

Principles of Heat Transfer (Activate Learning wi...
Mechanical Engineering
ISBN:9781305387102
Author:Kreith, Frank; Manglik, Raj M.
Publisher:Cengage Learning

Precision Machining Technology (MindTap Course Li...
Mechanical Engineering
ISBN:9781285444543
Author:Peter J. Hoffman, Eric S. Hopewell, Brian Janes
Publisher:Cengage Learning