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

21br563 Forp Module 04 Notes

This document provides an overview of robot programming, detailing various methods such as lead-through, textual robot languages, graphical programming, and offline programming. It discusses the importance of robot programming in automation, efficiency, and flexibility across industries, as well as the evolution of robot programming languages through different generations. Key elements of robot programming, including commands, variables, control structures, and sensors, are also outlined.

Uploaded by

Thanmay JS
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)
9 views

21br563 Forp Module 04 Notes

This document provides an overview of robot programming, detailing various methods such as lead-through, textual robot languages, graphical programming, and offline programming. It discusses the importance of robot programming in automation, efficiency, and flexibility across industries, as well as the evolution of robot programming languages through different generations. Key elements of robot programming, including commands, variables, control structures, and sensors, are also outlined.

Uploaded by

Thanmay JS
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/ 8

Mysore University School of Engineering

8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006

Fundamentals of Robotics and its Programming


(21BR563)

MODULE 04 NOTES

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006

Module 43: Course Content

4.0 Introduction to Robot Programming:


4.1 Introduction to methods of Robot Programming
a) Lead through methods
b) Textural robot languages
c) Graphical Programming
d) Offline Programming
4.2 Introduction to generations of Robot Programming Languages
4.3 Robot language structure block diagram.
4.4 Definitions of Robot Language
4.5 Robot Programming Elements and its functions.

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006
4.0 Introduction to Robot Programming
Robot programming is the process of creating a set of instructions that control a robot's behavior and
movements to perform specific tasks. These instructions tell the robot how to interact with its environment,
process information from sensors, and carry out operations autonomously or in collaboration with humans.
The field of robot programming is vast, involving various methods, languages, and techniques, all designed
to make robots efficient, intelligent, and versatile in performing tasks. Robots are commonly used in industries
such as manufacturing, logistics, healthcare, and even home automation, and their programming is essential
for the success and functionality of these robots.
Need for Robot Programming
• Automation: Robots reduce the need for human labor in repetitive, hazardous, or complex tasks. By
programming them correctly, robots can work autonomously and complete tasks accurately and
consistently.
• Efficiency: Properly programmed robots optimize processes, minimizing downtime and errors, which
increases productivity in industries.
• Flexibility: Robots can be programmed to perform a wide range of tasks, from assembly lines to
medical surgeries, making them adaptable to various needs.

4.1 Introduction to Methods of Robot Programming


There are different approaches to programming robots, each suited for specific tasks and environments. The
main methods of robot programming include:
a) Lead-through Methods: This method involves manually guiding the robot through its task by moving its
arms or actuators. The robot records the movements and can replicate them autonomously. There are two
variations:
• Manual Lead-through: The robot is manually moved by the operator without power, and its
movements are recorded for future execution.
• Powered Lead-through: The robot is powered during the process, and the operator guides the robot
through the task, with the robot assisting in following the path.
Manual Lead through Powered Lead through

Steps:
1. The operator physically moves the robot to a start position.
2. The robot’s sensors or position trackers record the path or movement.
3. The operator continues to guide the robot through the necessary task.
4. The movements are saved as a program that can be executed by the robot.

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006
b) Textual Robot Languages
Textual robot languages involve writing specific programming instructions in a language designed to control
robot movements and tasks. These languages allow for precision in controlling the robot’s behavior, much like
how traditional programming languages are used to control computers. This method uses written code to
instruct the robot. Robot programming languages allow for high levels of
customization and can control complex tasks such as decision-making,
sensor feedback, and multi-step operations. Common textual robot
programming languages include:
• Robot Programming Language (RPL)
• KUKA Robot Language (KRL)
• VAL (Variable Assembly Language)
Examples:
1. LISP (LISt Processing): It is used in some AI-based robotics applications due to its flexibility and
symbolic computation capabilities.
2. Robot Programming Language (RPL): Used to program robots with specific commands.
3. C/C++: Many industrial robots use a version of C to control complex robot behavior.
Example Code (in pseudo-RPL):
MOVE(0,0,10) # Move to position (0, 0, 10)
WAIT(2) # Wait for 2 seconds
GRIPPER(ON) # Turn on the gripper to grab an object
MOVE(0,10,10) # Move to position (0, 10, 10)
GRIPPER(OFF) # Turn off the gripper

c) Graphical Programming: Graphical Programming is a method of programming robots using visual


elements such as icons, blocks, or flow diagrams to represent logic and instructions, rather than writing
traditional textual code. This type of programming is particularly useful for individuals who are not familiar
with complex coding languages, making robotics more accessible and user-friendly. It’s commonly used in
educational settings and with beginner-level robotics, but it's also utilized in professional environments for
certain tasks. This method is user-friendly, often used in educational settings or for simpler robots. Examples
include Blocky, VEX Code, LabView, Scratch etc.
Example of Blockly for Robots:
• Block 1: MOVE_FORWARD (10) (Move forward for 10 sec).
• Block 2: TURN_RIGHT (90) (Turn the robot 90 degrees).
• Block 3: GRIPPER(ON) (Activate the gripper to pick up an
object).

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006
Advantages of Graphical Programming
1. User-Friendly: It’s much easier for beginners to learn, especially those with little to no experience in
programming.
2. No Syntax Errors: Since the blocks or icons are predefined and visual, users don’t have to worry
about common syntax errors (e.g., missing semicolons or parentheses in textual code).
3. Easy Debugging: Errors are easier to spot because users can visually trace the flow of logic and
actions.
4. Visualization: Helps users understand how robot actions flow step-by-step, providing clarity on how
commands interact.

d) Offline Programming: This method involves programming robots using software without connecting
directly to the robot hardware. It allows engineers to develop and test programs in a virtual environment before
deploying them on the robot. It helps minimize downtime and optimize robot operations.
Offline programming refers to the process of creating and testing robot programs on a computer or simulation
platform without having the robot physically present. The idea is to develop the code or instructions in a virtual
environment, simulate the robot’s movements, and fine-tune the behavior before actually deploying it to the
physical robot. Offline programming is especially beneficial in industrial settings, as it reduces downtime,
improves efficiency, and allows for more precise control over the robot's tasks.
Offline programming is typically used in environments where robots need to perform repetitive tasks, and
where downtime for programming or reprogramming needs to be minimized. It is common in areas like
manufacturing, automotive assembly lines, and packaging industries.
Steps in Offline Robot Advantages of Offline Challenges of Offline
Programming Programming Programming
1. Create the 3D Model of the Robot 1. Reduced Downtime 1. Accuracy in Simulation
and Workspace 2. Simulation and Testing 2. Complexity of Tasks
2. Define the Robot’s Actions 3. Faster Programming 3. Learning Curve
3. Simulate the Program 4. Optimized Paths 4. Cost of Software
4. Optimize the Program 5. Remote Programming
5. Transfer the Program to the Robot
6. Fine-Tune the Robot in Real-World
Conditions

Popular Offline Programming Software and Tools


1. ABB RobotStudio
2. KUKA.Sim
3. Fanuc ROBOGUIDE
4. VEX Robotics Virtual Robot
5. Siemens NX

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006
4.2 Introduction to Generations of Robot Programming Languages
Robot programming languages are designed to control robot behavior and enable interaction with sensors,
actuators, and the environment. These languages can be divided into different generations:
1. First Generation Languages
First-generation robot programming languages were basic and machine-specific. They allowed robots to
perform simple tasks like moving to a specific location. These languages were often used in early industrial
robots.
• Example: Early robot programming systems like Ladder Logic or teach pendant-based systems used
in early industrial robots.
2. Second Generation Languages
Second-generation languages introduced more advanced features, such as decision-making capabilities, loops,
and subroutines. These languages enabled robots to perform more complex tasks by incorporating conditional
statements, loops, and variables.
• Examples:
o VAL (Variable Assembly Language): A language that allowed more advanced control over
robot movements.
o KUKA Robot Language (KRL): A more modern and high-level programming language used
for KUKA robots.
3. Third Generation and Beyond
More modern robot programming languages now include high-level programming languages like Python,
C++, and Java, combined with libraries and frameworks specifically designed for robotics, such as ROS
(Robot Operating System).
• Examples:
o Python: Widely used for controlling robots, thanks to its simplicity and powerful libraries for
machine learning, robotics, and sensor integration.
o C++: Used for more performance-critical applications, where low-latency response times and
real-time control are important.

4.3 Robot Language Structure Block Diagram


A robot programming language generally consists of several key components. A block diagram can help
visually understand how these components interact.
Key Components:
1. Input Commands: Instructions for the robot, such as movement, sensor readings, or control
commands.
2. Control Flow: Logic constructs like loops and conditional statements (if-else, while loops) that control
the flow of the program.
Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006
3. Output/Execution: The actions the robot takes, such as moving an arm, opening a gripper,
or turning on a motor.
4. Feedback Loop: Sensors are used to monitor the robot's actions, providing data that can influence
future actions.

Block Diagram Example:

4.4 Definitions of Robot Language


A robot programming language is a set of instructions or syntax used to control a robot’s movements,
decision-making, and interaction with its environment. The language allows the programmer to specify tasks
for the robot, define sequences of actions, and implement feedback and adjustments.
Characteristics:
• Precision: Control over the robot’s movements, positions, and tasks.
• Flexibility: Ability to define complex behavior through loops, conditions, and functions.
• Real-time feedback: Handling sensor input in real time, allowing robots to adjust their behavior based
on environmental changes.

4.5 Robot Programming Elements and Its Functions


The key elements of robot programming languages include commands, variables, control structures, functions,
and sensors.
1. Commands: Basic instructions to control robot actions.
Example: move_forward(), turn_left()).
2. Variables: Store data, such as robot positions, speeds, or sensor readings.
Example: var_speed = 5 sets the speed to 5.
3. Control Structures: Direct the flow of execution, enabling decision-making.
Example: if, while, OR, AND etc
4. Functions/Methods: Reusable blocks of code that perform specific tasks and can be called multiple
times (e.g., a function for picking up objects).
5. Sensors and Actuators: Allow interaction with the environment, enabling feedback-driven actions.
Example: Sensors for detecting obstacles or measuring distances can trigger specific responses,
like adjusting the robot’s path.

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006
Mysore University School of Engineering
8J99+QC7, Manasa Gangothiri, Mysuru, Karnataka 570006
Modal Questions
3-4 Marks Questions

1) Explain Robot Programming and List the types of Robot Programming


2) Explain the features of Lead through methods in Robot Programming
3) Explain the features of Textural robot languages methods in Robot Programming
4) Explain the features of Graphical Programming methods in Robot Programming
5) Explain the features of Offline Programming methods of Robot Programming
6) Mention the significance of generations of Robot Programming Languages
7) Briefly explain Robot language structure block diagram.
8) Definitions of Robot Language and Robot Language Elements and its functions.

8-10 Marks Questions

1) Explain Robot Programming and Explain any 2 types


2) Define Robot language and explain its structure, Elements and functions

Prepared by: Mr Thanmay J S, Assistant Professor, Bio-Medical & Robotics Engineering, UoM, SoE, Mysore 57006

You might also like