Professional Documents
Culture Documents
Note
The exercises and solutions are based on Version 3.0.5 of Robotino® View.
Learning objectives
Trainees
• Are familiarised with the main components of a mobile system based on the example of Robotino®.
• Learn to commission a mobile robot system based on the example of Robotino®.
• Learn to test and describe motion performance of Robotino®.
Problem description
Your task is to complete incoming inspection and commissioning of a complex mechatronic system.
Project order
Complete the incoming inspection and commissioning of the Robotino®.
Incoming inspection includes:
• Creation and examination of a checklist for visual inspection
Commissioning includes:
• Executing the correct start-up sequence for the system
• Checking the charge level of the rechargeable batteries
• Testing of the Circle, Forward, Rectangle and Roaming travel programs.
• Documentation of results
Positional sketch
Work assignments
1. Commission Robotino®.
2. Test travel performance.
Working aid
• Robotino® technical documentation
1. Commissioning Robotino®
a) Create a check list for visual inspection to determine whether or not the system is complete.
Refer to the technical documentation to this end, in order to determine which components the system
must include.
2 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 1 – Incoming inspection and commissioning of the Robotino®
– Fill out the checklist and tick all items which are complete.
Quantity Designation OK
Date
Signature
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 3
Project 1 – Incoming inspection and commissioning of the Robotino®
Proceed as described in the technical documentation under “commissioning” in order to complete the
work assignments below.
– Set the system onto blocks so that the wheels are freely movable.
– Connect Robotino® to main power and switch the system controller on.
Results
Commissioned on
Commissioned by
Date
Signature
a) Check Robotino® travel performance by testing the demo applications including Forward, Circle,
Rectangle and Roaming.
4 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 1 – Incoming inspection and commissioning of the Robotino®
b) Observe travel performance with the robot on blocks and during travel on the floor.
Make sure that Robotino® only avoids obstacles at floor level in the Roaming program! Otherwise
damage may occur.
– Start the Circle, Forward, Rectangle and Roaming programs – once with the robot on blocks and once
during actual operation.
Proceed as described in the technical documentation under “Testing demo programmes”. Select the
appropriate programme in the menu at the display.
– Describe performance of each of the three multidirectional casters with regard to motion and direction
of motion in the Forward, Circle, Rectangle and Roaming programs.
On blocks
– Caster performance
Actual travel
– Travel performance
– Sensors
– Caster performance
Further observations
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 5
Project 1 – Incoming inspection and commissioning of the Robotino®
On blocks
– Caster performance
Actual travel
– Travel performance
– Sensors
– Caster performance
Further observations
On blocks
– Caster performance
Actual travel
– Travel performance
– Sensors
– Caster performance
Further observations
6 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 1 – Incoming inspection and commissioning of the Robotino®
On blocks
– Caster performance
Actual travel
– Travel performance
– Sensors
– Caster performance
Further observations
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 7
Project 1 – Incoming inspection and commissioning of the Robotino®
8 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2
Linear travel for a mobile robot system in any direction
Learning objectives
Trainees
• Learn to describe and program simple linear motion of a power driven multi-axis system.
• Learn to use function blocks in Robotino® View and create sequences for controlling the motors.
• Are familiarised with the degrees of freedom of a power driven multi-axis system.
• Learn to take safety-relevant aspects into consideration so that Robotino® stops in the event of a
collision.
• Learn to program an omnidirectional drive and describe its basic functions.
• Become familiar with the main aspects of drive technology and learn to apply them.
Problem description
A robot system will carry out feed tasks in storage systems and will thus need to be highly flexible and
mobile. It is important for the robot system to be able to move at different speeds in any direction. In order
to enable travel in any direction, it must be possible to operate all of the system’s wheels in any direction,
i.e. they must be omnidirectional. This is implemented with the help of an omnidirectional drive.
In order to ensure safety and prevent the robot system from continuing at full force after hitting an obstacle,
the system must stop travel in the event of collision with an obstacle.
Project order
1. Control the Robotino® motors such that the mobile robot system moves forward and backward on a
level plane.
2. Test motor control with different rotational speeds.
3. Test the mobility of Robotino® by moving it in different directions and around its own axis without
changing orientation and speed.
4. Create and test the appropriate programs using the omnidrive function block to this end.
5. The robot system may travel along unpredictable paths during these tests. It is thus essential to protect
the environment and the robot system from damage due to collision. Create and test this program.
Positional sketch
10 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
Basic conditions
• Robotino® View has been installed to the PC and the software is running.
• A W-LAN connection has been established to Robotino® (technical documentation).
Project assignments
1. Control the motor and cause the robot system to travel in the forward direction
2. Collision protection function
3. Reverse travel program
4. Program sequence
5. Omnidirectional drive, all directions with control field
6. Omnidrive, travel in forward direction
7. Omnidrive, sideways travel
8. Omnidrive, travel in circle
9. Omnidirectional drive, omniwheels
10. Travel at 45° to the forward direction
11. Travel at 135° to the forward direction
12. Program sequence: travel around a diamond-shaped contour
Work aids
• Technical documentation
• Help texts in Robotino® View, motor, program sequence, omnidirectional drive
• Theory section:
Omniwheels, drive and power transmission, degrees of freedom of the omniwheels, omnidirectional
drive
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 11
Project 2 – Linear travel for a mobile robot system in any direction
1. Controlling the motor and causing the robot system to travel in the forward direction
a) Push Robotino® forward to see which motors need to be actuated. Observe the direction of rotation and
rotational speed of the omniwheels.
– Set Robotino® down in front of yourself and move it forward. In doing so, observe the direction of
rotation and rotational speed of the omniwheels.
b) Create a function block diagram in Robotino® View such that Robotino® travels forward.
– Set the system onto blocks so that the wheels are freely movable.
– Switch Robotino® on.
– Start Robotino® View and establish a connection between the Robotino® controller and Robotino® View
(see technical documentation).
12 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
– Drag two motor function blocks into the function block diagram, namely Motor #1 and Motor #3
(function block library: Robotino® Drive system).
– Save the program as “forward.rvw2”.
– Name the motors “MotorFrontLeft” and “MotorFrontRight” in the function block diagram of the motor
function block. Mark the Motor function block to this end, and activate Display name with the right
mouse key. Change the designation accordingly in the text field which then appears.
– Add two constants to the function block diagram (Function block library -> Generators), and link these
to the respective Speed set point inputs of the two motors.
The descriptions of the connections are displayed after pressing the Ctrl+T key combination, or with the
menu item Show connector descriptions in the View menu. Further information can be accessed with the
help function (F1).
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 13
Project 2 – Linear travel for a mobile robot system in any direction
The technical documentation indicates that Robotino® travels in the forward direction when moving in a
linear fashion along the camera’s line of vision.
– After selecting values for the constants, e.g. SpeedLeft = –500 rpm
SpeedRight = +500 rpm
®
Robotino travels in the forward direction.
The values for the function block connections are displayed by means of the Ctrl+D key combination. This
function can also be activated in the View menu.
14 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
– Observe robot system performance with the robot on blocks, as well as during travel on the floor.
d) Explain why the direction of rotation of the two motors must be opposite in the case of straight ahead
travel.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 15
Project 2 – Linear travel for a mobile robot system in any direction
a) One of the motors in Robotino® needs to be controlled such that it stops when contact is made with the
bumper, and starts again when contact has ceased.
– Create a function block diagram with the following function in order to elucidate the bumper’s
performance:
One of the motors in Robotino® needs to be controlled such that it stops when contact is made with the
bumper, and starts again when contact has ceased.
– Which components are required for this control program?
Quantity Component
16 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
– Set Robotino® onto blocks and test your function block diagram.
Test
– What has to be done with travel functions in a control program if this function is to be used for collision
protection?
– Evaluate how well this solution works with regard to the required collision protection function.
b) Create an abort function which is based on the function of the bumper. Save the program to memory
– With which function in Robotino® View can a running control program be aborted?
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 17
Project 2 – Linear travel for a mobile robot system in any direction
– Integrate the corresponding function into the control program, and designate the variable with the term
timeout.
18 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
– Change to the main program for the sequence controller and define the abort conditions.
Note that if the program sequence is aborted after a collision, the entire sequence should be stopped.
Integrate this collision protection function into all of your previously created function block diagrams, in
order to increase their safety.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 19
Project 2 – Linear travel for a mobile robot system in any direction
a) Create and test a program which causes Robotino® to travel backwards, and answer the questions
regarding components, constants and degrees of freedom.
– Use the same components as you did for the forward travel program and the abort function.
– Which motors have to be operated how for Robotino® to travel backwards?
– What is the difference between the forward travel and reverse travel programs with regard to values for
the two constants?
– Make a statement indicating which degree of freedom is made possible for Robotino® travel
performance with the programs run thus far.
20 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
4. Program sequence
a) Create a new program sequence which causes Robotino® to travel in the forward direction for
5 seconds, to subsequently wait for 2 seconds and then travel in reverse for 5 seconds.
Individual programs
– First of all, create a program which causes Robotino® to travel in the forward direction for 5 seconds.
Think about which modules you will need from the function block library in order to implement the time
sequence.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 21
Project 2 – Linear travel for a mobile robot system in any direction
Be sure to always set the motors’ input speed back to zero, because Robotino® will otherwise continue
travel.
22 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
– Create a sequence in the main program which causes Robotino® to travel in the forward direction for 5
seconds, to subsequently wait for 2 seconds and then travel in reverse for 5 seconds.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 23
Project 2 – Linear travel for a mobile robot system in any direction
a) Cause Robotino® to travel in all possible directions. Use the Omnidrive function block and the Control
Panel input device in the travel program to this end.
– Drag a Control Panel (Function block library Input devices) and the Omnidrive function block
(Function block library Robotino® Drive system) from the function block library into a new
function block diagram.
– Connect the outputs of the Control Panel to the inputs (x, y, and omega) of the Omnidrive function
block.
– Connect the outputs of the Omnidrive to the speed set-point inputs at the three motors.
– Refer to the help texts regarding use of the Control Panel, and then start the program.
– Display the data (Ctrl+D or View Show Connector Values), and observe the data which are displayed
for the motors.
24 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
b) Answer the questions regarding travel performance and degrees of freedom, and refer to the Omnidrive
function block for information.
– Describe travel performance and make a statement regarding the observed degrees of freedom (ways in
which bodies are able to move).
– Learn about the omnidirectional drive in the theory section, and via the Omnidrive function block in the
help texts included in Robotino® View.
a) Create a sub-program (Step1) with the function blocks for the Omnidrive, three Motors and a Constant,
so that the Robotino® travels forwards and backwards at the same speed with the same orientation.
The Omnidrive function block reads out the target speeds of the three motors in revolutions per minute.
The coordinate system is selected such that the positive X-axis coincides with the forward direction for
Robotino®.
– Set the system onto blocks again and open a new function block diagram in Robotino® View.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 25
Project 2 – Linear travel for a mobile robot system in any direction
– Drag the required function blocks out of the function block library.
– Connect the function blocks into an operable sub-program. Name the function blocks.
If a value of 100 is assigned to the constant, this results in a target speed of 100 mm per second, or
0.36 km per hour.
26 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
– Activate data display (Ctrl+D or View Show Connector Values). Observe the motor values in
particular.
– Determine whether or not the target speed for the rear motor is always 0 (see also task entitled “Motor
control without omnidrive”.
Results
– By means of experimentation, determine the forward speed in mm per second which is required in order
to obtain target speeds for the two motors of -500 and 500 rpm respectively.
Answer
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 27
Project 2 – Linear travel for a mobile robot system in any direction
– What will have to be changed in order to allow for reverse travel of Robotino® with the omnidrive?
a) Without adding any further function blocks, change the program so that Robotino® travels sideways to
the right and to the left at the same speed with the same orientation.
28 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
a) Without adding any further function blocks, change the program so that Robotino® rotates around its
central axis.
– Connect the Constant to the omega setpoint connection at the Omnidrive and observe performance.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 29
Project 2 – Linear travel for a mobile robot system in any direction
a) Describe the design and the functional possibilities of the omniwheels, as well as the characteristics of
an omnidirectional drive.
Advantage Disadvantage
a) Select a fixed orientation for Robotino®. Change the program by adding a constant such that Robotino®
travels at an angle of 45° to the forward direction with identical speed in identical orientation. Travel
should be stopped after 2 seconds.
– Think about how travel at an angle of 45° to the forward direction can be implemented. Take direction of
travel and speed into consideration.
30 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
The initial value of an entered variable can be changed in the sequencing program window
(main program).
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 31
Project 2 – Linear travel for a mobile robot system in any direction
b) Without adding any further function blocks, change the program so that Robotino® travels at a -45°
angle to the forward direction at the same speed with the same orientation, and save it as a new sub-
program.
32 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
a) Without adding any further function blocks, change the program so that Robotino® travels at a 135°
angle to the forward direction at the same speed with the same orientation, and save it as a new sub-
program.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 33
Project 2 – Linear travel for a mobile robot system in any direction
b) Without adding any further function blocks, change the program so that Robotino® travels at a -135°
angle to the forward direction at the same speed with the same orientation, and save it as a new sub-
program.
a) Create a program sequence which causes Robotino® to first of all travel at angles of 45° and 135°, and
then -135° and -45°, with the same line of vision. Robotino® should then travel over the same path in
the opposite direction.
34 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 2 – Linear travel for a mobile robot system in any direction
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 35
Project 2 – Linear travel for a mobile robot system in any direction
36 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 3
Linear travel and positioning of a mobile robot system
Learning objectives
Trainees
• Learn to cause a multi-axis system to travel over a defined path (with and without using the Omnidrive
function block).
• Learn to apply knowledge from the fields of trigonometry and vector calculus.
• Become familiar with the main aspects of drive technology and learn to apply them.
• Learn to conduct and evaluate measured value examinations regarding positioning accuracy.
• Learn to optimise programs so that deviation from the target path remains within the mm range.
Problem description
A robot system will carry out feed tasks in storage systems. It must be able to approach positions within a
plane to this end.
Project order
Create a program, first of all with and then without the Omnidrive function block, which causes Robotino® to
travel forward over a distance of 1 metre. Use two different methods in order to specify travel distance:
– Specify travel distance by defining the number of revolutions (without using the Omnidrive function
block).
– Travel time (with the help of the Omnidrive function block).
– Compare your results and give reasons for deviations.
Positional sketch for “travelling forward over a given distance without using the omnidrive function
block”
Consider the motion parallelogram <A, C, C’, A’> in the following figure with regard to your solution.
Basic conditions
• Robotino® View has been installed to the PC and the software is running.
• A W-LAN connection has been established to Robotino® (technical documentation).
Project assignments
1. Travel a distance of 1 metre without using the Omnidrive function block.
2. Ascertain repetition accuracy and absolute accuracy.
3. Travel a distance of 1 metre using the Omnidrive function block.
Work aids
• Technical documentation
• Help texts in Robotino® View concerning the omnidrive
• Theory section: omnidirectional drive
38 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 3 – Linear travel and positioning of a mobile robot system
a) Cause Robotino® to travel a distance of 1 metre without using the omnidrive function block.
– Determine the number of revolutions which have to be completed by both wheels for Robotino® to
travel forward over a distance of 1 metre, and calculate the required number of motor increments.
Observe the drawing in the positional sketch as well, and push the diagram of Robotino® in the forward
direction.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 39
Project 3 – Linear travel and positioning of a mobile robot system
– Execute these tests at different speeds and enter your results to the tables.
– Always begin travel from the same starting point, in the same direction and at the same speed.
– Determine average deviation from the specified distance of 1 metre. Use a tile floor and a carpet as a
running surface.
Note
The batteries should be fully charged.
• The reset circuit sets the increment counter for the wheels to 0 at the outset.
• Only one constant is read out to the motors for speed, and it must be assured that the target speed for
motor 1 is multiplied by -1.
The value of the constant can be changed in the main program (sequence control).
40 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 3 – Linear travel and positioning of a mobile robot system
– Activate Show Connector Values for function block connections in the View menu, or with the Ctrl+D
key combination.
After Robotino® stops, you can read the value, which indicates the actual number of travelled increments.
Calculate average deviation and the arithmetic mean value of the travelled distance:
1 n x1 + x 2 + + x n
x=
arithm . = ∑ xi
n i =1 n
Consider your measurements and the results of your calculations as a means of quality control with
regard to your system, for example quality of the motors, the wheels and their assembly.
The measurements serve as a test in order to determine how well the system lives up to the specified
demands, and whether it fulfils the stipulated requirements.
Tile floor
Speed: 500 rpm
Distance travelled in metres Number of increments Deviation from target value of 1 metre
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 41
Project 3 – Linear travel and positioning of a mobile robot system
Distance travelled in metres Number of increments Deviation from target value of 1 metre
Carpet
Speed: 500 rpm
Distance travelled in metres Number of increments Deviation from target value of 1 metre
Distance travelled in metres Number of increments Deviation from target value of 1 metre
42 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 3 – Linear travel and positioning of a mobile robot system
a) Robotino® needs to travel forward over a distance of 1 metre and then stop using the Omnidrive
function block.
– Calculate the duration of travel required for Robotino® to cover a distance of 1 metre at a speed of
100 mm per second.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 43
Project 3 – Linear travel and positioning of a mobile robot system
b) Create and test a new program which includes a timing module and an Omnidrive. Create one Constant
for travel time and one Constant for speed.
44 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 3 – Linear travel and positioning of a mobile robot system
d) Execute this test at various speeds and compare your results with those obtained without using the
Omnidrive function block.
Carpet
Distance: d = 1 m / velocity: v = 100 mm/sec. / time: t = 10 s = 10000 ms
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 45
Project 3 – Linear travel and positioning of a mobile robot system
Tile floor
Distance: d = 1 m / velocity: v = 100 mm/sec. / time: t = 10 s = 10000 ms
46 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 3 – Linear travel and positioning of a mobile robot system
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 47
Project 3 – Linear travel and positioning of a mobile robot system
48 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4
Path tracking of an automated guided vehicle system with two diffuse light
sensors
Learning objectives
Trainees
• Learn to mount the diffuse light sensors to Robotino® and connect them to the I/O interface.
• Learn to access the diffuse light sensor’s signals via Robotino® View, and to evaluate them.
• Learn to adjust the diffuse light sensors.
• Become familiar with diffuse light sensor switching operations.
• Learn to use the diffuse light sensors to control Robotino®.
• Learn to develop a path tracking strategy.
• Learn to create a simple sequencing program which controls the required functions.
• Learn to combine all of the required functions into a closed-loop control program.
Problem description
Your task is to cause an automated guided vehicle to travel along a predefined path to a loading station and
stop when it reaches the station in order to execute the loading process. The path includes curves and is
indicated by coloured markings on the floor.
Robotino® plays the role of the automated guided vehicle for this task.
Project order
Attach the diffuse light sensors to Robotino®, connect them to the controller and conduct a functions test.
Develop a strategy for travelling along the marked out path and create the function block diagrams for the
individual sub-functions of this strategy.
Combine them into a sequencing program and then optimise your function block diagrams with regard to
overall travel time.
General conditions
• The marking must be narrower than the distance between the fibre-optic cables.
• The colour of the marking must demonstrate adequate contrast relative to the floor.
• The marking strips should be darker than the floor.
Project assignments
1. Create a work plan.
2. Attach the diffuse light sensors.
3. Connect the diffuse light sensors to supply power.
4. Adjust the diffuse light sensors.
5. Connect the diffuse light sensors’ inputs and outputs.
6. Create a control program in order to actuate the sensors.
7. Ascertain sensor values for the individual inputs.
8. Develop a control strategy.
9. Develop a control program.
10. Test the control program.
11. Implement the control program.
Work aids
• Ready to use programs
• Technical documentation
• Data sheets
• Theory section: diffuse light sensors
• Robotino® View help texts
50 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Create your work plan for this project. Define all required work steps in as much detail as possible. Enter
the work steps to the following table. Use the table as a checklist for project documentation during the
course of your work.
Activity Completed
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 51
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Mount both diffuse light sensors to the locations provided to this end on the chassis. Describe the
utilised procedure, or document your procedure for attaching the diffuse light sensors.
Mount the two fibre-optic heads as close to each other as possible. However, the distance between the
fibre-optic heads may not be less than the width of the black marking which Robotino® will follow during
the course of the project.
Mounting
52 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Sketch the wires into the drawing included below, and label them with their respective characteristics
and colours.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 53
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Adjust the diffuse light sensors so that they detect a black line and are deactivated next to the black
line. Describe your procedure.
54 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Sketch the wires into the drawing included under heading 3a, and label them with their respective
colours and assignments. Use the pin assignments from exercise 5b).
– Connect the wires from the left-hand diffuse light sensor to inputs DI3 and DI4, and the wires from the
right-hand diffuse light sensor to inputs DI1 and DI2.
– Connect the black signal wires to inputs DI1 and DI3, and the white signal wires to inputs DI2 and DI4.
a) Which function blocks will be required in order to control the diffuse light sensors?
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 55
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
b) Match up the wires with the appropriate colours, as well as positioning on the Robotino®, to the
sensors.
56 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Ascertain sensor values for the various inputs in Robotino® View, and enter them to the table below.
As a prerequisite, Robotino® must be situated on the floor on which it will be operated later
(not on the black marking), and must have been accordingly adjusted.
Input Signal
b) Evaluate the ascertained sensor signals from the inputs with regard to switching function.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 57
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
c) Think about which three possible situations might occur due to path tracking requirements, and enter
them to the corresponding column in the table below.
d) Simulate different travel situations with Robotino®, and enter the resulting input values to the table
below.
a) Using the table from exercise 4, describe the start condition for each of the 3 travel situations, the
function of a corresponding sub-program and an abort condition.
– Robotino® deviates to the left of the correct position relative to the marking.
58 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
– Robotino® deviates to the right of the correct position relative to the marking.
a) Open the Assignment_P4_02.rvw2 program and allocate the three programs GoStraight, TurnRight and
TurnLeft to sequences Step1, Step2 and Step3 in the main program.
b) Explain sequence control and supplement the three conditions in the program which still have a value of
false (Step 3).
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 59
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
c) Open the Go Straight program and describe the individual functions. Enter your description to the
graphic below.
60 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
d) Open the TurnRight program and describe the individual functions. Enter your description to the
graphic below.
– Think about which value the rotary speed constant must have, and give reasons for your conclusion.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 61
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
– First think about which travel situation exists when Robotino® needs to execute anticlockwise rotation.
Which sensor has to be queried in this case?
Refer to your table with the sensor signals for the individual travel situations as an aid to this end.
62 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
a) Start the main program and observe time and performance. What do you notice?
a) Create a new file and integrate all functions into a single function block diagram, which transforms
sequence control into a closed-loop control program.
Parameters
The closed-loop control program may only be aborted after the loading station has been reached or
contact is made with an obstacle.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 63
Project 4 – Path tracking of an automated guided vehicle system with two diffuse light sensors
Functional description
64 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5
Accurately positioned approach to a loading station
Learning objectives
Trainees
• Become familiar with performance, position and mode of operation of the infrared distance sensors on
Robotino®.
• Learn to record the characteristics of the distance sensors on Robotino®, and to use them to measure
distance.
• Learn to make use of and optimise results in a control program for Robotino®.
Problem description
Your task is to travel to a loading station with an automated guided vehicle (AGV). The AGV should be
positioned 8 cm in front of the station for loading with a workpiece.
Project order
Conduct a function test for the distance sensors on Robotino®, and change any existing control program so
that Robotino® stops 8 cm in front of any obstacle. Robotino® plays the role of the automated guided vehicle
for this task.
General conditions
• Robotino® should be positioned such that it faces the station from a distance of greater than 8 cm, and
should then travel to the loading station.
Project assignments
1. Determine the position of the distance sensors.
2. Preliminary consideration regarding distance measurement
3. Record characteristics.
4. Represent the characteristic curve in MS Excel.
5. Linearise the characteristic curve.
6. Adapt the control program.
7. Create a test program and test the control program.
8. Check the accuracy of the stopping procedure.
9. Project documentation
Work aids
• Programs
• Technical documentation
• Data sheets
• Theory section: infrared sensors, recording and linearising a characteristic curve
• Robotino® View: configuring distance sensors, adjusting measured values
• Robotino® View help texts
a) Describe your procedure for determining the positions of the individual distance sensors on Robotino®.
b) Create a program in Robotino® View for determining the positions of distance sensors Distance 1
through Distance 9, and save the program to memory.
66 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5 – Accurately positioned approach to a loading station
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 67
Project 5 – Accurately positioned approach to a loading station
c) Start your control program, determine the position of the sensors and enter the numbers of the
respective distance sensors to the following graphic.
Distance 1 Distance 6
Distance 2 Distance 7
Distance 3 Distance 8
Distance 4 Distance 9
Distance 5
e) Ascertain or calculate the beam angles of the individual sensors relative to the centre of Robotino®. The
beam direction for the Distance 1 sensor is 0°.
68 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5 – Accurately positioned approach to a loading station
f) Sketch the scanning directions of the individual sensors into the graphic below, and enter the
associated value in degrees.
The associated value in degrees is assigned to each function block for the distance sensors in Robotino®
View. The value in degrees can thus be read out from the software as well.
a) Robotino® needs to stop at a certain distance from the loading station. Think about how this can be
accomplished.
– First of all, determine which distance sensors will be required in order to perform the distance
measurement. Make a note of which sensor is required. Give reasons for your selection.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 69
Project 5 – Accurately positioned approach to a loading station
– How will you have to proceed in order to be able to detect the specified distance from the loading
station with a control program? Consider the fact that different distances may be required. Describe
your procedure.
70 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5 – Accurately positioned approach to a loading station
1 21
2 22
3 23
4 24
5 25
6 26
7 27
8 28
9 29
10 30
11 31
12 32
13 33
14 34
15 35
16 36
17 37
18 38
19 39
20 40
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 71
Project 5 – Accurately positioned approach to a loading station
c) Record the characteristics and sketch them into the coordinate system.
72 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5 – Accurately positioned approach to a loading station
– Enter the ascertained pairs of values to an Excel spreadsheet and display them as a diagram.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 73
Project 5 – Accurately positioned approach to a loading station
a) Determine which range within the characteristic curve will be necessary for the task at hand.
– Linearise the characteristic curve within this range and sketch the linearised characteristic curve into
your drawing, or represent it in an Excel diagram. Distance should be expressed in cm.
– Document the calculation with all individual steps in the worksheet.
74 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5 – Accurately positioned approach to a loading station
a) Adapt the Assignment-P5-01.rvw2 program such that Robotino® comes to a standstill 8 cm in front of
any obstacle. Integrate the calculated relationships between output values and distance as parameters
into the function block dialogue for the scaling block. Specify the desired distance.
a) Create a test plan for your control program and describe your test procedure.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 75
Project 5 – Accurately positioned approach to a loading station
b) Check your control program for correct functioning in accordance with your test plan. Document your
results.
Test report
Distance accuracy
Remarks
Date
Signature
a) Travel towards the obstacle at different speeds and check how accurately the specified distance from
the obstacle is maintained. Compare distances with reference to the different speeds.
Change travel speed for Robotino® by assigning a larger value to the velocity constant.
76 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 5 – Accurately positioned approach to a loading station
9. Project documentation
Test
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 77
Project 5 – Accurately positioned approach to a loading station
78 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 6
Approaching an obstacle and maintaining a defined distance
Learning objectives
Trainees
• Learn to set up a control system with one of the distance sensors on Robotino® so that Robotino®
approaches an obstacle and stops at a specified distance from it.
• Become familiar with the results of superimposing processes for forward and sideways travel.
• Learn to set up sensor-guided path control so that Robotino® travels along a wall at a specified distance
from it.
• Learn to test and explain a sequencing program for various travel processes.
Problem description
A mobile robot system needs to travel to various transfer positions along a conveyor belt. During the first
step it will thus be necessary for the system to travel along the conveyor belt while maintaining a specified
distance from it.
Project order
The conveyor belt will be replaced with a rail in the laboratory environment. Create and test a program by
means of which Robotino® approaches the rail (obstacle) and then travels along the rail at a distance of 60
mm. Robotino’s® line of vision should always be aligned to the rail.
Step 1
During the first step it must be assured that Robotino® maintains a distance of 60 mm by means of
correction.
Task
First of all, create and test a program which
• approaches a movable obstacle, for example a cube-shaped object, up to a distance of 60 mm,
• and maintains this distance even if the obstacle moves.
Step 2
During the second step it must be assured that Robotino® travels sideways along a rail, with its line of vision
facing the rail, while maintaining a distance of 60 mm.
80 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 6 – Approaching an obstacle and maintaining a defined distance
Basic conditions
• Robotino® View has been installed to the PC and the software is running.
• A W-LAN connection has been established to Robotino® (technical documentation).
• An obstacle is positioned within the working area.
• Robotino® is positioned in close proximity to the obstacle and oriented such that the camera is pointed
towards the obstacle (step 1).
• Robotino® is positioned in proximity to a wall and oriented such that the camera is pointed towards the
wall (step 2).
Project assignments
1. Approach to a distance of 60 mm and correct.
2. Travel along a wall.
Work aids
• Technical documentation
• Robotino® View help texts: multiplication module
• Theory section: omnidirectional drive
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 81
Project 6 – Approaching an obstacle and maintaining a defined distance
a) Create and test a program in Robotino® View, by means of which Robotino® is caused to maintain a
distance of 60 mm from an obstacle.
– Save the program from project 5 (distance sensor) using a different name.
– Ascertain the direct sensor value with the help of the graphic for the distance sensor (project 5), and
enter it as a minimum distance.
Make sure that the right value is entered to the distance sensor’s function block dialogue.
b) When the obstacle is moved, Robotino® must automatically correct distance to the target value of
60 mm.
set point SP
(reference variable)
controller
output CO
controller
set point SP
82 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 6 – Approaching an obstacle and maintaining a defined distance
Question Answer
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 83
Project 6 – Approaching an obstacle and maintaining a defined distance
c) Move the obstacle while the program is running and observe what happens. How can the controller be
improved?
d) Explain the difference between this program and the distance sensor program from project 5.
a) Create a program by means of which Robotino® executes sensor-guided travel along a wall at a distance
of 60 mm from it with its line of vision towards the wall.
– Add sideways travel to the program as well, and describe what happens.
Make sure that Robotino® is “looking” at the wall when travel is started.
Sample value for sideways travel = 100 mm per second.
84 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 6 – Approaching an obstacle and maintaining a defined distance
– What happens?
Case 1
Case 2
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 85
Project 6 – Approaching an obstacle and maintaining a defined distance
c) Create a sequencing program which causes Robotino®, with its line of vision facing the wall, to approach
the wall initially up to a distance of 60 mm, and then to travel along the wall with constant orientation
and at a distance of 60 mm from the wall.
86 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 7
Circling a station and approaching various transfer positions
Learning objectives
Trainees
• Are familiarised with the degrees of freedom of a power driven multi-axis system.
• Learn to use distance sensors for path control applications.
• Learn to program sensor-guided path control for a mobile robot system along a circular rail with
Robotino® View.
• Learn to recognise essential parameters for path control, and to modify them in order to optimise the
solution.
Problem description
A mobile robot system will be used to access several transfer positions on a rotary indexing table. The
system should travel to the various transfer positions as efficiently as possible. During the first step it will
thus be necessary for the system to circle around the rotary indexing table while maintaining a specified
distance from it, and with its line of vision directed towards the rotary indexing table.
Project order
Create and test a program by means of which Robotino® circles a cylinder-shaped obstacle at a distance of
60 mm with its line of vision pointed towards the obstacle. Take advantage of knowledge gained from
project 6, “Approaching an obstacle and maintaining a defined distance”.
Positional sketch
Basic conditions
• Robotino® View has been installed to the PC and the software is running.
• A W-LAN connection has been established to Robotino® (technical documentation).
• A cylinder-shaped object is positioned within the working area (diameter: approx. 250 mm, height:
approx. 150 mm).
• Robotino® is positioned in proximity to the object and oriented such that the camera is pointed towards
the object.
Project orders
1. Complete preliminary considerations.
2. Create a program.
Work aids
• Technical documentation
• Robotino® View help texts: multiplication, addition and subtraction modules
• Theory section: omnidirectional drive, degrees of freedom, control technology
88 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 7 – Circling a station and approaching various transfer positions
a) Think about how many degrees of freedom are necessary in order to approach and circle the obstacle
(the station).
Use the above positional sketch and the program from project 5 as aids.
b) Think about how you can create a circular path with the help of the Omnidrive function block, and write
a corresponding program.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 89
Project 7 – Circling a station and approaching various transfer positions
c) Think about how, and with which sensors, you can monitor distance from the obstacle while circling it.
Use the positional sketch to this end.
90 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 7 – Circling a station and approaching various transfer positions
d) Which values must be assigned to distance sensors 2 and 9 for the camera to be aligned to the
obstacle? How can you use the sensor values in order to control orientation towards the obstacle?
2. Writing a program
a) Position Robotino® at a distance of 6 cm from the obstacle with the camera pointing towards the
obstacle. Supplement the wall_sidewards.rvw2 program from project 6 to include rotary motion which
continuously keeps the camera perpendicular to the obstacle.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 91
Project 7 – Circling a station and approaching various transfer positions
c) Create a sequencing program which initially causes Robotino® to approach the station up to a distance
of 6 cm, and then to circle it at a distance of 6 cm. Test your program.
You can use a program from the previous project for the approach sequence (possibly with
modifications), and the program from exercise 2a) can be used for circling.
92 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8
Path tracking for an automated guided vehicle system using an analogue
inductive sensor
Learning objectives
Trainees
• Learn to attach inductive sensors to Robotino® and commission them.
• Become familiar with the mode of operation and signaling characteristics of an inductive sensor.
• Learn to analyse control program performance and correspondingly adapt the program.
• Learn to combine several function block programs into a sequence control program.
• Learn to convert a sequencing program into a closed-loop control program.
Problem description
Your task is to cause an automated guided vehicle system to travel along a path marking consisting of a
metal strip in the floor to a loading station. After arriving at the loading station, the loading procedure is
triggered when the AGV strikes a switch.
Robotino® plays the role of the automated guided vehicle for this task. The path marking is represented by
adhesive aluminium tape
Project order
Attach an analogue inductive sensor to Robotino® and conduct a functions test. Modify an existing
sequencing program and use it to develop a closed-loop control program with the corresponding functions.
General conditions
• The path marking must have a width of 20 mm and lead up to an obstacle in a straight line.
Work assignments
1. Work preparation
2. Mount the sensor and connect it to the I/O interface.
3. Experiment: sensor scanning performance
4. Record the characteristic curve.
5. Develop a control strategy.
6. Analyse the accompanying control program.
7. Create a closed-loop control program.
Work aids
• Sample programs
• Technical documentation
• Data sheet
• Theory section: inductive distance sensors, IF function, sequence control, sign reversal, characteristic
curve
• Robotino®View: address analogue input
• Robotino®View help texts
94 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
1. Work preparation
a) In order to make your work easier, first draft a work plan for mounting and commissioning the sensor.
Compile a list of tools and materials before you start mounting the sensor.
b) Determine which connections will be required for the sensor in accordance with the Robotino®
handbook, the operating instructions and the sensor’s data sheet. Give reasons for your selection.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 95
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
c) Determine the colours of the required wires and their designations in the operating instructions. Give
reasons for your selection.
Colours
Reason
d) The sensor must be connected to analogue input AIN1. Create a wiring diagram for the I/O interface.
– Sketch the wires into the drawing included below, and label them with their respective characteristics
and colours.
96 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
a) Mount the sensor in accordance with the Robotino® handbook. What must be observed in doing so?
– Connect the wires to the contact strip in accordance with your drawing.
b) Subject the sensor to a functions test. Access the sensor data in Robotino® View to this end, and
represent the input values with the oscilloscope. Document your procedure.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 97
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
a) Examine the inductive sensor’s response characteristics with regard to various materials (alloys), and
determine the relationship between distance from the object and its surface area relative to sensor
values.
1 cent
2 cents
5 cents
10 cents
20 cents
50 cents
€1
€2
98 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
b) Evaluate the acquired values with regard to alloy, surface area and distance from the sensor, and write
them down.
c) Which conclusion can be drawn from the two measurement series shown in the table below with regard
to sensor position, assuming that the objects were on the same surface for both measurement series?
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 99
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
4. Recording characteristics
a) Determine parameters for following the path marking (aluminium strip) in order to develop a strategy.
Record the sensor’s characteristic curve when it runs over the aluminium strip to this end.
Use the aluminium strip with a width of 2 cm as a test object to this end, which is bonded to a flat surface.
This aluminium strip should be the same as the path marking which will be subsequently used for
Robotino®.
Procedure
When the program is executed, Robotino® travels forward approximately 0.5 metres, depending on the floor,
and then stops. Due to the fact that the program continues to run, the sensor value can be read after each
step. Afterwards, the program has to be restarted in order to execute the next step.
b) Record the characteristic curve and enter the values to the graphic below.
100 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
a) Examine the obtained curve and develop possible strategies for following the marking. Write your
strategies down. Select a strategy and give reasons for your choice.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 101
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
– Position Robotino® to the right of the aluminium strip and execute the sequencing program. Describe
Robotino’s® performance.
The limit values used for the sensor signal in the sample program may be differently configured
depending on the mounting height of the sensor and the type of aluminium strip. Adapt the sub-
programs to these conditions if required.
102 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 103
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
a) Write down the advantages of a closed-loop control program and implement the required closed-loop
control program.
104 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 105
Project 8 – Path tracking for an automated guided vehicle system using an analogue inductive sensor
106 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9
Ascertaining optimised travel performance
Learning objectives
Trainees
• Learn the fundamentals of closed-loop control technology for electrical motors.
• Become familiar with the functionality of remote control and learn to use basic functions included in
graphic programming software.
• Learn to configure and optimise the parameters of a PID controller with the help of the software, and
describe and evaluate their effects on travel performance.
Problem description
A mobile robot system must demonstrate ideal travel performance in all situations. For this reason, you will
need to determine in which range the motor controller allows for acceptable performance by adjusting the
PID controller. In order to assure acceptable travel performance, the wheels must turn uniformly at a
specified speed. This can be achieved by correctly adjusting the PID controller for the motor’s rotational
speed.
Project order
• Set up the motor controller with the help of Robotino® View so that ideal travel performance is assured
within a given range.
• Document the range within which travel performance is acceptable.
• Determine which effect the parameters of the PID controller have on travel performance and the
controlled system, when parameter values are selected which are outside of the permissible range.
Basic conditions
• Robotino® View is running.
• A WLAN connection has been established to Robotino® (technical documentation).
• The EA09View program is running.
Project assignments
1. Program the motor controller.
2. Functions of the parameters of the PID controller
3. Adjust the PID controller.
4. Effects of oscillation on travel performance
5. Program visualisation of three motors.
Work aids
• Technical documentation
• Theory section: dimensioning control technology by trial and error, oscilloscope and generator
• Robotino® View: help texts
b) Visualise and trace target and actual curves with the help of the EA09View program included on the CD.
This program can be used to sample motor controller data, setpoints and actual values, voltage and
current values at a frequency of 1 kHz, and to visualise them. In this way, you can make a detailed
analysis of the parameters configuration for the PID motor controller, and optimise travel performance
for Robotino®.
108 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9 – Ascertaining optimised travel performance
auto_control_1.rvw2
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 109
Project 9 – Ascertaining optimised travel performance
Due to the fact that motor 3 is used, maximise the Motor2 window.
– Select the settings shown in the dialogue box below under Motor2.
Motor Monitoring On
Motor Control Internal PI Controller
110 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9 – Ascertaining optimised travel performance
c) Observe and describe performance of the omniwheel, and give reasons for this performance (square-
waveform generator).
Description
Reason
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 111
Project 9 – Ascertaining optimised travel performance
d) Specify which channel indicates the motor’s target speed, and which its actual speed. Take a look at the
Values window as well.
112 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9 – Ascertaining optimised travel performance
a) Answer the questions regarding functions of the parameters of the PID controller
– Read the theory section to find out the significance and the effects of the P, I and D components.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 113
Project 9 – Ascertaining optimised travel performance
a) Change the parameters of the PI controller at the motor. Change kp and ki, one after the other.
In order to change the motor’s parameters, change default parameters and confirm new settings by
pressing “Set”. Then you can view the effects on EA09View.
b) Trace the target and actual curves which are displayed by the virtual oscilloscope.
114 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9 – Ascertaining optimised travel performance
c) Optimise transient response such that the target and actual curves are nearly identical.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 115
Project 9 – Ascertaining optimised travel performance
a) Describe how large oscillations due to deviation between target and actual curves effect motion of the
omniwheels.
– Change the ki and kp parameters such that overshooting and undershooting occurs within short periods
of time.
116 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9 – Ascertaining optimised travel performance
– Observe the target and actual curves, as well as motion of the omniwheels.
a) Visualise and trace the target and actual curves for three motors with the system set on blocks, and
during actual operation, using the same controller settings.
– Create a program in Robotino® View with three motors which are connected to the arbitrary waveform
generator.
– Observe the characteristics of the target and actual curves in EAView09.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 117
Project 9 – Ascertaining optimised travel performance
auto_control_2.rvw2
118 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 9 – Ascertaining optimised travel performance
– Describe curve characteristics with the system on blocks, as well as during actual operation.
On blocks
Curve characteristics
Actual operation
Curve characteristics
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 119
Project 9 – Ascertaining optimised travel performance
– Explain why the curve obtained during actual operation deviates from the curve obtained with the
system on blocks.
120 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10
Path tracking of an automated guided vehicle system with the help of a
webcam
Learning objectives
Trainees
• Become familiar with the webcam on the Robotino® and learn to make use of it.
• Learn to configure and make use of the line detection function in Robotino® View.
• Become familiar with the limitations and marginal conditions associated with line detection.
• Learn to execute (implement) path tracking with the webcam.
Problem description
An automated guided vehicle (AGV) needs to follow a visible path marking on the floor with the help of a
vision system. The AGV must stop when it reaches the end of the path marking.
Project order
Start up the camera on Robotino® and create a program which makes it possible for you to access images
generated by the camera. Supplement the program with a line detection function. Create the necessary
conditions which allow for line detection and tracking. Implement a path tracking program.
Project assignments
1. Start up the webcam on Robotino®.
2. Align the camera.
3. Program line detection.
4. Describe and test the line detector function block.
5. Develop a strategy for path tracking and create a closed-loop control program.
6. Acquire a values curve for line detection.
a) In order to complete this project, you will first of all have to start up and test the webcam on Robotino®.
Describe your procedure and create a function block diagram, by means of which you can check the
camera for correct functioning.
If the camera’s image is displayed in the parameters dialogue, correct functioning of the webcam is assured.
122 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
a) In order to evaluate the image generated by the camera, it must be correspondingly adjusted.
How does the camera have to be aligned in order to detect a line in front of Robotino®?
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 123
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
Input
Threshold value
Search start
Search height
Outputs
Line found
The Threshold value, Start search and Search height inputs can also be manually set in the function block
dialogue, if the corresponding input in the program is not occupied.
Robotino® transmits compressed JPEG images which are decoded in RGB colour space. Colours are
represented in the traditional manner with this colour space. However, it has the disadvantage of
reacting very sensitively to light influences. As a rule, the YCbCr colour space is much more stable with
regard to brightness interference. Colour space conversion is possible with the help of the Colourspace
conversion function block.
124 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
b) Test the individual inputs and outputs of the line detection module, and describe the settings made
possible as a result. Align the Robotino® and the camera so that the line on the floor is within the
camera’s working range.
a) Which information is read out from output X at the line detection module?
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 125
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
6. Developing a strategy for path tracking and creating a closed-loop control program
a) Describe the program functions which are required for path tracking. Use the camera’s median
resolution setting (640 x 480).
126 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
Use your previously developed sequencing or closed-loop control programs, and modify them
accordingly.
Use the sensor values in order to adjust rotary motion which results in deviation from the centre position.
Scale the sensor value with a suitable function.
Select a low threshold value, for example 20, in order to accelerate line detection.
Use the Image processing Image information function block in order to calculate the centre of the
image.
Remember to integrate collision protection into the program. Adapt the line detection module’s output
values such that smooth travel and relatively jerk-free rotary motion are assured. Travel forward slowly.
When the line ends, the desired destination has been reached. Robotino® must stop at this point.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 127
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
c) Supplement your closed-loop control program to include a function which causes Robotino® to stop
when no line is detected.
128 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 129
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
130 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 11
Searching and approaching a coloured object with the help of a webcam
Learning objectives
Trainees
• Become familiar with the webcam on the Robotino® and learn to make use of it.
• Learn to configure and use colour detection functions in Robotino® View.
• Become familiar with the limitations and marginal conditions associated with colour detection.
• Learn to execute object detection with the webcam.
Problem description
An object is to be examined for corrosion in a difficult to access area. A mobile diagnostic system will have
search for the object which can be identified based on its colour, and approach the object, allowing it to be
examined for corrosion using the transmitted camera image. Robotino® plays the role of the diagnostic
system. The object will be represented by a coloured box.
Project order
Start up the camera on Robotino® if this has not already been done, and create a program which makes it
possible for you to access images generated by the camera.
Supplement the program with a colour detection function.
Create the necessary conditions which allow for colour detection.
Implement a program for the detection of coloured objects, and approach the objects with Robotino® up to a
position from which their images can be transmitted to a PC with as much detail as possible.
Make sure that the object is not destroyed by Robotino® running in to it. Maintain a minimum distance from
the object.
Project assignments
1. Evaluate the camera’s image.
2. Develop a strategy with sub-functions.
3. Implement the sequencing program.
Resources
• Theory section, Robotino® manual
a) Determine which function blocks are required for colour detection and create a function block diagram
for colour detection.
– Make a note of the required function blocks and create the necessary function block diagram.
b) Which function block has to be used to this end, and which of its outputs can be evaluated for this
purpose?
– Describe their function and how they can be used for the task at hand.
132 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
Area
Vx
vy
Num of segments
found
Output
You can improve the quality of the display by making the appropriate adjustments under Colour range
finder (see online help in Robotino® View).
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 133
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
c) How can it be assured that the object fills the image to the greatest possible extent, and is displayed
with best possible quality?
– Write down all of the possibilities that you will consider, and select one of them for the program.
a) Develop a strategy for completing the task at hand. Write down the required sub-functions.
b) Describe the step enabling conditions for the program functions required in accordance with your
strategy, and make a note of the function blocks and the output required to this end.
134 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
a) Implement the individual program functions and combine them into a sequencing program.
© Festo Didactic GmbH & Co. KG 8029495 Name: __________________________________ Date: ____________ 135
Project 10 – Path tracking of an automated guided vehicle system with the help of a webcam
136 Name: __________________________________ Date: ____________ © Festo Didactic GmbH & Co. KG 8029495