0% found this document useful (0 votes)
18 views

4.-ME-ELECTIVE-1-LESSON-3-OPERATION-PROGRAMMING-WEEK-7

This document outlines a lesson plan for a robotics course, focusing on the operation, programming, and control of industrial robots. It covers robot programming techniques, types of industrial robots, and various programming languages used in robotics. The lesson aims to equip students with knowledge about robot programming and its applications in real-world scenarios.

Uploaded by

Michael Padilla
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

4.-ME-ELECTIVE-1-LESSON-3-OPERATION-PROGRAMMING-WEEK-7

This document outlines a lesson plan for a robotics course, focusing on the operation, programming, and control of industrial robots. It covers robot programming techniques, types of industrial robots, and various programming languages used in robotics. The lesson aims to equip students with knowledge about robot programming and its applications in real-world scenarios.

Uploaded by

Michael Padilla
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

DYSMEMe1412

ME ELECTIVE 1
INTRODUCTION TO
ROBOTICS
BSME-FOURTH YEAR
WEEK 7: OPERATION,
PROGRAMMING, AND CONTROL OF
INDUSTRIAL ROBOTS
AT THE END OF THIS LESSON, YOU
ARE EXPECTED TO:
1. Define what robot programming is and define
different robot programming techniques
2. Enumerate different types of robot operation
3. Enumerate different robot programming languages
AN THE END OF THIS LESSON, YOU
ARE EXPECTED TO:
INSTITUTIONAL GRADUATE PROGRAM LEARNING COURSE LEARNING
ATTRIBUTES OUTCOMES OUTCOMES
Creative Thinker PLO7.An ability to 1. Elaborate the concept of
*Ability to apply current and
emerging knowledge in practice;
communicate effectively robotics
* Ability to demonstrate and use
knowledge and disciplinal expertise PLO 8. An understanding of 2. Enumerate and discuss
in professional practice the impact of engineering the different real-life
Constructive Communicator solutions in a global, applications of robotics
•Ability to build partnership and economic, environmental
working relationship with diverse and societal context
group and/or inter-professional
teams;
PLO9.A recognition of the
Speculative Life-long Learner need for and the ability to
•Capacity to pursue continuous engage in lifelong learning
learning, development, and
personal growth independently.

Service-Driven Citizen
* Ability to uphold professional
values and ethics
OUTLINE OF TOPICS
A. INTRODUCTION
B. ROBOT PROGRAM
C. TYPES OF INDIUSTRIAL ROBOT AND THEIR
METHODS OF OPERATION
D. ROBOT PROGRAMMING TECHNIQUES
E. OVERVIEW OF ROBOT PROGRAMMING
LANGUAGES
INTRODUCTION
Robots are becoming more powerful, with more sensors, more intelligence, and
cheaper components. As a result robots are moving out of controlled industrial
environments into uncontrolled service environments such as homes, hospitals, and
workplaces where they perform tasks ranging from delivery services to
entertainment. It is this increase in the exposure of robots to unskilled people that
requires robots to become easier to program and manage.

The flexibility of a robot system comes from its ability to be programmed. How the
robot is programmed is a main concern of all robot users. A good mechanical arm can
be underutilized if it is too difficult to program. Earlier robot programming was easy
because it only required guiding the robot through the sequence of desired
movements.
INTRODUCTION

To execute complete tasks of the type found in


assembly, robot-programming languages had to
be introduced. Although the introduction of robot
programming languages has represented an
important breakthrough in industrial robotics,
currently available languages are not easy to use.
The programmer must define all the movements
very precisely. Programming the robot is not the
same as programming the computer.
ROBOT PROGRAM
• A robot program can be defined as a path in
space to be followed by the manipulator,
combined with
• peripheral actions that support the work cycle. A
robot can perform complex tasks under the
control of stored programs, which can be
modified at will.
• The process of robot programming includes
teaching it the task to be performed, storing the
program, executing the program, and debugging
it.
ROBOT PROGRAM
Robotic programming is similar to real-time programming in that the programs must be
interrupt driven and take account of limited resources.
Robot programs can be simple or complex.

COMPLEX ROBOT PROGRAM


SIMPLE PROGRAM May include a way to learn from
Will have a set of pre-programmed past events and actions and
responses to expected events. For predict what will happen. For
example, if the robot is hit, it may example, a robot programmed to
move in a particular direction. move left when it reaches a
barrier will always move in this
direction.
TYPES OF INDUSTRIAL ROBOT AND
THEIR METHODS OF OPERATION
INDUSTRIAL ROBOTS

METHOD OF TEACHING OR
METHOD OF CONTROL
PROGRAMMING

A. Online programming
B. Leadthrough programming
1. Pick and Place (non servo)
C. Walk-through programming
2. Point to Point
D. Offline programming
3. Continuous Path
E. Task programming
F. Motion Programming
TYPES OF INDUSTRIAL ROBOT AND
THEIR METHODS OF OPERATION
1. PICK AND PLACE ROBOT

• Also called limited sequence manipulators


• Uses mechanical stops to set two stopping positions on each
axis
• Usually pneumatic since there is no need for servo control of
position
• Fast and relatively cheap; limited to the transfer of parts from
one place to another
• Parts are always well oriented at the pickup site
• Often only three or four degrees of freedom are needed
• Some are modular, allowing the user to select how many
degrees of freedom to provide
TYPES OF INDUSTRIAL ROBOT AND
THEIR METHODS OF OPERATION
2. POINT TO POINT ROBOT

• Has servo position control of each axis and can go


through a sequence of specified points
• There can be any number of stopping position in each
axis
• The program consists of a series of points; for each
point, all the joint angles (distance for prismatic joints)
must be specified
• Each axis of the arm moves at a nearly constant speed
between programmed points – unsuitable for tasks
requiring speed control
TYPES OF INDUSTRIAL ROBOT AND
THEIR METHODS OF OPERATION
3. CONTINUOUS PATH ROBOTS

• Do not go through a finite list of target


points but execute a smooth path of any
shape, with continuous variation of
speed as the arm moves along the path.
• Requires servo control of the velocity of
each joint and several joints move at
once in coordinated way
ROBOT PROGRAMMING TECHNIQUES
• A number of different techniques are used to
program robots. The principal task of robot
programming is to control the motions and
actions of the manipulator.
• A robot is programmed by entering the
programming commands into its controller
memory.
ROBOT PROGRAMMING TECHNIQUES
1. ONLINE PROGRAMMING

• Online programming takes place at the site of


production itself and involves the workcell.
• Online programming systems uses a teach
pendant to direct the robot’s movement which
allows trained personnel to physically lead the
robot through the desired sequence of events
by activating the appropriate pendant button
or switch.
• Online programming is a convenient and easy
method of programming when tasks are simple
and revisions or adjustments can be made on
the spot. However, the production line must be
stopped during the programming and there are
safety issues to consider, as the programmer
must work within the robot’s work envelope.
ROBOT PROGRAMMING TECHNIQUES
ROBOT PROGRAMMING TECHNIQUES

2. LEADTRHOUGHPROGRAMMING

• Leadthrough programming requires the


operator to move the robot arm through the
desired motion path during a teach
procedure, thereby entering the program into
the controller memory for subsequent
playback.
• This is the most common programming
method in the industry at the time.
ROBOT PROGRAMMING TECHNIQUES

LEADTRHOUGH PROGRAMMING
B. MANUAL LEADTRHOUGH
Manual leadthrough is convenient for
A. POWERED LEADTRHOUGH
programming playback robots with
Powered leadthrough is commonly used as
continuous path control in which the
the programming method for playback
continuous path is an irregular motion
robots with point-to-point control. It involves
pattern such as in spray painting. This
the use of a teach pendant (hand-held
programming method requires the operator
control box) which has toggle switches or
to physically grasp the end-of-arm or tools
contact buttons for controlling the
attached to the arm and manually move
movement of the manipulator joints.
through the motion sequence, recording the
path into memory.
ROBOT PROGRAMMING TECHNIQUES
3. WALK-THROUGH PROGRAMMING OR TEACHING

• In walk-through programming, the teacher physically moves


(“walks”) the robot through the desired positions within the robot’s
working envelope.
• With the walk-through method of programming, the person doing
the teaching is in a potentially hazardous position because the
operational safeguarding devices are deactivated or inoperative. The
walk-through method is appropriate for spray painting and welding
robots.
ROBOT PROGRAMMING TECHNIQUES
4. OFFLINE PROGRAMMING

• Offline programming is accomplished on


computers located away from the robot
station
• Using simulation software, data is
generated and then sent to the robot’s
controller where it is translated into
instructions. Additionally, the software
contains modelling data, which assists
selection of the best robot configuration
for a particular application.
• The advantage of this programming
method is that programming can be
done while the robot is still in
production on the preceding job, thus
production time of the robot is not lost
to delays in teaching the robot a new
task. This ensures higher utilization of
the robot.
ROBOT PROGRAMMING TECHNIQUES
5. TASK LEVEL PROGRAMMING

• Task level programming requires specifying goals


for the position of objects, rather than the motions
of a robot needed to achieve those goals.
• A task level specification is meant to be totally
robot independent, no positions or paths that
depend on robot geometry are specified by the
user.
• Task level programming systems requires complete
geometric models of the environment and of the
robot as input.
ROBOT PROGRAMMING TECHNIQUES
6. MOTION PROGRAMMING

• Motion programming with today’s


robot languages requires a
combination of textual statements and
• leadthrough techniques. Accordingly,
this method of programming is
sometimes referred to as
• online/offline programming.
ROBOT PROGRAMMING LANGUAGES
• Robot programming involves writing software
programs that enable robots to process their
environment and perform certain tasks. These
programs act as the instructions for how
robots should function.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES
• While there are hundreds of programming
languages that exist, only a few are widely used in
robotics today. The most popular programming
languages, like C++ and Python, have cornered
the market in terms of function and ease of use.
Meanwhile older, more outdated languages, like
Pascal, continue to serve as the backbone for
more tailored, proprietary languages and robotic
operating systems used by leading industrial
robot companies.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• When it comes to programming languages, C and

1. C++ are often considered the gold standard. Both


are mature general-purpose programming
languages and provide real-time performance,

C/C++ meaning programmed actions are executed at a


specified time, which is important in robotics since
a robot’s main responsibility is to complete a task
when humans want it to.
• As far as differences between the two
programming languages, C++ is just a more
enhanced version of C that supports objects and
classes.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• Python is one of the easiest programming


languages to learn — and one of the most popular,
alongside C and C++. An interpreted language,
Python has a robust selection of libraries, which
2. makes implementing basic functions even easier.
Fewer lines of code are required with Python as
well, making it faster to use — and to learn — than
Python C and C++.
• Given its wide use and popularity, Python also has
a large community of developers, which can be an
excellent resource for novices to tap into during
the learning phase.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• Java is another popular


programming language that gets
3. robots up and running in a more
human-like fashion.
• It is popular among developers
Java working in artificial intelligence
as neural networks can be
created.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• C# is Microsoft’s proprietary programming


language and is used within Microsoft’s
Visual C# Express, a free development
support program.

4. C# • C# is run on .NET, Microsoft’s software


development framework, and is often used
to develop network and communication
structures like ports and sockets — making
it a good choice for integrating neural
network systems into robotic applications.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• For developers wanting to analyze data and


run simulations, and develop and
implement robotic control systems with
5. specially-designed interfaces, MATLAB is a
great tool.
• When paired with the Robotics Toolbox for
MATLAB MATLAB, which includes functions for
kinematics, dynamics and trajectory
generation, developers can create systems
for robotic arm research and simulations.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• Circuits are a critical component in


6. robotics and where hardware
description languages play a key
Hardware role in robotic programming. HDLs,
Description like Verilog and VHSIC Hardware
Description Language (or VHDL),
Languages make programming circuits easier
(HDLs) by allowing developers to describe
circuits using words and symbols.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ROBOT PROGRAMMING LANGUAGES

• One of the oldest programming


languages used in robotics, Lisp is easy
to use.
• It is also having a resurgence for use in
7. Lisp creating AI and robotic applications, as
much of the robotic operating system
— the open-source framework used to
develop robotic applications — is
written in this programming language.

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
ACTIVITY NO. 4 – ACQUISITION AND
PRODUCTION
EXPECTED OUTCOMES:
The BSME-4TH Year Students are expected to
read the presented lecture, acquire ideas, and
then produce a WRITTEN OUTPUT using their
own understanding of the concepts discussed
in this lesson.
ACTIVITY NO. 4 – ACQUISITION AND
PRODUCTION
PROCEDURE:
Answer/Discuss the following topics or concepts
related to this lesson. Each question is good
for 10 points. Incomplete answers are only
good for 7 points.
• Use a yellow sheet of paper.
• Write in ENGINEERING LETTERING – ALL CAPS
and avoid erasures.
ACTIVITY NO. 4 – ACQUISITION AND
PRODUCTION
QUESTIONS:
1. WHAT IS A ROBOT PROGRAM? WHAT ARE ITS
TWO TYPES? DEFINE EACH.
2. WHAT ARE THE TYPES OF CONTROL (BASED
ON HARDWARE AND CONTROL LAW USED TO
DRIVE THE JOINTS)? DEFINE EACH.
3. CHOOSE AT LEAST 3 TYPES OF ROBOT
PROGRAMMING TECHNIQUES.
DIFFERENTIATE EACH.
ANALYSIS AND CONTROL OF ROBOTS

ANALYSIS CONTROL

• Finding a mathematical • Operating the robot’s


description of a robot in actuators so as to
relation to its produce a specified
surroundings which will path and velocity of the
allow the calculation of payload
the geometric and
dynamical quantities
used in controlling it

Biba, J. (2024, May 29). Top 8 robotic Programming languages. Built In.
https://builtin.com/robotics/robotic-programming-language
IMPORTANT PROBLEMS IN ANALYSIS
AND CONTROL OF ROBOTS
Formulating the kinematic equations (joint coordinates to world coordinates)
(world coordinates - the center of a robot's world is located at the center point of
its base)

Solving the kinematic equations (world coordinates to joint coordinates)

Forward problem of dynamics – finding the motions resulting from joint torques

Inverse problem of dynamics – finding the torques needed to produce a given


motion
IMPORTANT PROBLEMS IN ANALYSIS
AND CONTROL OF ROBOTS

Specifying a trajectory between target


points on path

Actuator Servo Control – for a single


actuator, how to drive it so as to produce
a specified position, velocity or torque.
FORMULATING KINEMATIC
EQUATIONS

KINEMATICS
It can yield very accurate
It is concerned with only
calculations in many
the instantaneous values of
It is the study of the problems, such as
the robot's coordinates
relationship between a positioning a gripper at a
(distances and angles and
robot's joint coordinates place in space, designing a
translational and angular
and its spatial layout, and is mechanism that can move
velocities and
a fundamental and classical a tool from point A to point
accelerations), and ignores
topic in robotics. B, or predicting whether a
their movement under
robot's motion would
forces and torques
collide with obstacles.
FORMULATING KINEMATIC
EQUATIONS
• For each joint, a transformation is found
between the coordinate system of the two
links it connects; if this transformation is
applied to each joint in succession, the
relationship between any two links, including
the payload and the fixed base of the robot
can be found.
• These transformations are expressed as
KINEMATIC EQUATIONS of the manipulator.
SOLVING KINEMATIC EQUATIONS
• Jacobian Formulation
– The kinematic equations deal in coordinates (angles and
distances) from the base axes of each coordinate set.
However, it is convenient to deal in different changes.
– This gives a way of calculating how velocities and
accelerations transform between coordinate systems
– The relationship between differential changes in two
coordinate systems is expressed by a matrix called
JACOBIAN, and control methods based on its used are
referred to as JACOBIAN CONTROL
– Example of the use of this is calculating the joint velocities
needed to produce a given payload velocity
THE ‘FORWARD’ AND ‘INVERSE’
PROBLEM OF DYNAMICS
• Robot dynamics are the relationship between
the forces acting on a robot and the resulting
motion of the robot.
THE ‘FORWARD’ AND ‘INVERSE’
PROBLEM OF DYNAMICS
FORWARD PROBLEM INVERSE PROBLEM

• problem of how a system • Used to calculate the


of links moves when required joint torques; It is
torques are applied to its clearly relevant to the
joints; control of robots;
• amounts to solving the • it can be thought of as
equations of motion of formulating equations in
the system motion in such a way that
the torques are given by
functions of angles and
velocities
SPECIFYING TRAJECTORIES
• Used how to calculate the theoretical path we
want the robot to follow
• A trajectory is a path plus a schedule. It tells us
how quickly we should move along the path, at
what time we should be at what point along the
path.
– 1. Trajectory (or path) of an individual joint
– 2. Trajectory of the whole arm, meaning all set of all
joint angle functions
– 3. Trajectory of the end effector or arm tip, which is a
path through three-dimensional space
SERVO CONTROL OF ACTUATORS
• Servomechanism - is an automatic device that uses error-
sensing negative feedback to correct the action of a
mechanism.
• Form of Servo System – depends on the nature of actuator,
which is a transducer of some input signal such as current
or voltage to an output quantity such as position or torque
• Actuator – may have ’invisible’ servo systems built into it so
that it appears as a proportional transducer of input
voltage to output shaft angle (Transducer - a device that
converts variations in a physical quantity, such as pressure
or brightness, into an electrical signal, or vice versa)
• Analogous Servo System – can be designed for stepper
motors or hydraulic actuators
SOURCES
• Todd, D. (1986). Fundamental of Robot Technology.
Kogan Page Ltd.
• Gupta, A., Arora, S., & Westcott, J. R. (2016). Industrial
Automation and Robotics: An Introduction. Mercury
Learning and Information.
• Biba, J. (2024, May 29). Top 8 robotic Programming
languages. Built In.
https://builtin.com/robotics/robotic-programming-
language
Disclaimer: This is a compilation of topics from different sources wherein most discussions are explicitly copied.
The objective of this work is purely for educational purposes only to discuss similar contents to
undergraduate students taking up the same course. Figures, tables, examples, and most discussions are
credited to the owners.

You might also like