SPRA7004
SPRA7004
SPRA7004
Definition of a Robot
• "A reprogrammable, multifunctional manipulator designed to move material, parts, tools, or specialized
devices through various programmed motions for the performance of a variety of tasks" .
Or a simpler version
• An automatic device that performs functions normally ascribed to humans or a machine in the form of a
human.
• Dirty Tasks
• Repetitive tasks
• Dangerous tasks
• Impossible tasks
• Robots assisting the handicapped.
First, they are hardworking and reliable. They can do dangerous work or work that is very boring
or tiring for humans. They can work around the clock without complaining and without needing rest, food
or vacations. And robots can go places that humans cannot, such as the surface of Mars, deep under the
ocean or inside the radioactive parts of a nuclear power plant
Asimov’s Laws of Robotics (1942)
• A robot may not injure a human being, or, through inaction, allow a human being to come to harm
• A robot must obey orders given it by human beings, except where such orders would conflict with the
First Law.
• A robot must protect its own existence as long as such protection does not conflict with the First or
Second Law.
Robot Anatomy
Arm or Manipulator
End effectors
Drive Mechanism
Controller
Rotary motion
Consists of a sliding arm (L joint) actuated relative to the body, which can rotate about both a
vertical axis (T joint) and horizontal axis (R joint) Notation TRL:
Consists of a vertical column, relative to which an arm assembly is moved up or down. The arm can
be moved in or out relative to the column Notation TLO:
Consists of three sliding joints, two of which are orthogonal other names include rectilinear robot
and x-y-z robot Notation LOO:
Similar in appearance to human arm Rotated base, shoulder joint, elbow joint, wrist joint.
Notation TRR:
Spatial region within which the end of the robot’s wrist can be
manipulated Determined by
– Physical configurations
– Size
– Number of axes
– The robot mounted position (overhead gantry, wall-mounted, floor mounted, on tracks)
– Limits of arm and joint configurations
– The addition of an end-effectors can move or offset the entire work volume
Precision of movement
The precision with which the robot can move the end of its wrist
1. Spatial resolution
2. Accuracy
3. Repeatability
Spatial resolution
Smallest increment of motion at the wrist end that can be controlled by the robot
Depends on the position control system, feedback measurement, and mechanical accuracy
Fig 1.10 Spatial Resolution
Smallest increment of motion
Control increments
Accuracy
• The lifting capability provided by manufacturer doesn’t include the weight of the end effectors
• Usual Range 2.5lb-2000lb
• Condition to be satisfied:
Load Capability > Total Wt. of work piece +Wt. of end effectors + Safety range
Speed of movement
Weight of the
object Distance
moved
The amount of distance per unit time at which the robot can
move. Speed of the end effectors
The special tooling for a robot that enables it to perform a specific task
Two types:
Grippers – to grasp and manipulate objects (e.g., parts) during work cycle
Tools – to perform a process, e.g., spot welding, spray painting
Device attached to the robot’s wrist to perform a specific task
Grippers
Sensors in robotics
Proximity and range sensors (optical sensors, acoustical sensors, electromagnetic sensors)
Miscellaneous sensors (transducers and sensors which sense variables such temperature,
Safety monitoring
Origin and axes of robot manipulator are defined relative to the robot base
Alignment of the axis system is defined relative to the orientation of the wrist faceplate
(to which the end effector is attached)
The Situation:
You have a robotic arm that starts out aligned with the xo-axis. The first link to move by U1
and the second link to move by U2
1. Geometric Approach
This might be the easiest solution for the simple situation. However, notice that the angles
are measured relative to the direction of the previous link. (The first link is the exception. The angle
is
measured relative to its initial position.) For robots with more links and whose arm extends
into 3 dimensions the geometry gets much more tedious.
2. Algebraic Approach
Involves coordinate transformations.
You are having a three link arm that starts out aligned in the x-axis. Each link has lengths l1,
l2, l3, respectively. You tell the first one to move by U1 , and so on as the diagram suggests.
Find the Homogeneous matrix to get the position of the yellow dot in the X0Y0 frame.
Y 0
H
Z 0
1 1
Notice that multiplying by the (0, 0, 0, 1) vector will equal the last column of the H matrix.
****************************
SCHOOL OF MECHANICAL ENGINEERING
DEPARTMENT OF MECHANICAL ENGINEERING
Limited sequence control – pick-and-place operations using mechanical stops to set positions
Playback with point-to-point control – records work cycle as a sequence of points, then
plays back the sequence during program execution
Playback with continuous path control – greater memory capacity and/or interpolation
capability to execute paths (in addition to points)
Intelligent control – exhibits behavior that makes it seem intelligent, e.g., responds to
sensor inputs, makes decisions, communicates with humans
• Path control - how accurately a robot traces a given path (critical for gluing, painting,
welding applications);
• Velocity control - how well the velocity is controlled (critical for gluing, painting
applications)
• Types of control path:
- Point to point control (used in assembly, palletizing, machine loading); -
continuous path control/walkthrough (paint spraying, welding).
- controlled path (paint spraying, welding)
Limited sequence control – pick-and-place operations using mechanical stops to set
positions
Playback with point-to-point control – records work cycle as a sequence of points,
then plays back the sequence during program execution
Playback with continuous path control – greater memory capacity and/or
interpolation capability to execute paths (in addition to points)
Intelligent control – exhibits behaviour that makes it seem intelligent, e.g., responds
to sensor inputs, makes decisions, communicates with humans
Control Methods
• In addition to the control over the endpoints, the path taken by the end effectors
can be controlled
• Path is controlled by manipulating the joints throughout the entire motion, via
closed loop control
• Applications:
– spray painting, polishing, grinding, arc welding
Sensors in Robotics
In its simplest form a servo or a servomechanism is a control system which measures its own
output and forces the output to quickly and accurately follow a command signal, se Figure 1-
1. In this way, the effect of anomalies in the control device itself and in the load can be
minimized as well as the influence of external disturbances. A servomechanism can be
designed to control almost any physical quantities, e.g. motion, force, pressure, temperature,
electrical voltage or current.
Capabilities of electro-hydraulic servos When rapid and precise control of sizeable loads is
required an electro-hydraulic servo is often the best approach to the problem. Generally
speaking, the hydraulic servo actuator provides fast response, high force and short stroke
characteristics. The main advantages of hydraulic components are.
Mechanical grippers are used to pick up, move, place, or hold parts in an automated system.
They can be used in harsh or dangerous
VACUUM GRIPPERS: for non-ferrous components with flat and smooth surfaces, grippers
can be built using standard vacuum cups or pads made of rubber-like materials. Not suitable
for components with curved surfaces or with holes.
Vacuum grippers
Vacuum-grippers become in suction cups, the suctions cups is made of rubber. The suction
cups are connected through tubes with under pressure devices for picking up items and for
releasing items air is pumped out into the suction cups. The under pressure can be created
with the following devices:
The vacuum grippers use suction cups (vacuum cups) as pick up devices. There are different
types of suction cups and the cups are generally made of polyurethane or rubber and can be
used at temperatures between -50 and 200 °C. The suction cup can be categorized into four
different types; universal suction cups, flat suction cups with bars, suction cups with bellow
and depth suction cups as shown in figure 3.
The universal suction cups are used for flat or slightly arched surfaces. Universal suction cups
are one of the cheapest suction cups in the market but there are several disadvantages with this
type of suction cups. When the under pressure is too high, the suction cup decreases a lot which
leads to a greater wear. The flat suction cups with bars are suitable for flat or flexible items that
need assistance when lifted. These types of suction cups provides a small movement under load
and maintains the area that the under pressure is acting on, this reduces the wear of the flat
suction cup with bars, this leads to a faster and safer movement. Suction cups with bellows are
usually used for curved surfaces, for example when separation is needed or when a smaller
item is being gripped and needs a shorter movement. This type of suction cups can be used in
several areas but they allow a lot of movement at gripping and low stability with small under
pressure. The depth suction cup can be used for surfaces that are very irregular and curved or
when an item needs to be lifted over an edge. [5] Items with rough surfaces (surface roughness
≤ 5 µm for some types of suction cups) or items that are made of porous material will have
difficulty with vacuum grippers. An item with holes, slots and gaps on the surfaces is not
recommended to be handled with vacuum grippers. The air in the suction is sucked out with
one of the techniques described earlier, if the material is porous or has holes on its surface; it
will be difficult to suck out the air. In such cases the leakage of air can be reduced if smaller
suction cups are used. Figure 4 shows different types of suction cups.
Magnetic Gripper: used to grip ferrous materials. Magnetic gripper uses a magnetic head
to attract ferrous materials like steel plates. The magnetic head is simply constructed with
a ferromagnetic core and conducting coils. Magnetic grippers are most commonly used in
a robot as end effectors for grasping the ferrous materials. It is another type of handling
the work parts other than the mechanical grippers and vacuum grippers. Types of magnetic
grippers:
The magnetic grippers can be classified into two common types, namely:
Electromagnetic grippers include a controller unit and a DC power for handling the materials.
This type of grippers is easy to control, and very effective in releasing the part at the end of the
operation than the permanent magnets. If the work part gripped is to be released, the polarity
level is minimized by the controller unit before the electromagnet is turned off. This process
will certainly help in removing the magnetism on the work parts. As a result, a best way of
releasing the materials is possible in this gripper.
Permanent magnets:
The permanent magnets do not require any sort of external power as like the electromagnets
for handling the materials. After this gripper grasps a work part, an additional device called as
stripper push – off pin will be required to separate the work part from the magnet. This device
is incorporated at the sides of the gripper.
The advantage of this permanent magnet gripper is that it can be used in hazardous applications
like explosion-proof apparatus because of no electrical circuit. Moreover, there is no
possibility of spark production as well.
Benefits:
It does not require separate designs for handling different size of materials.
It is capable of grasping materials with holes, which is unfeasible in the vacuum grippers.
Drawbacks:
The gripped work part has the chance of slipping out when it is
moving quickly. Sometimes oil in the surface can reduce the
strength of the gripper.
Sensors are devices that can sense and measure physical properties of the environment,
Transducer
a device that converts a primary form of energy into a corresponding signal with a
different energy form Primary Energy Forms: mechanical, thermal, electromagnetic,
optical, chemical, etc.
Tactile sensing
Touch and tactile sensor are devices which measures the parameters of a contact
between the sensor and an object. This interaction obtained is confined to a small
defined region. This contrasts with a force and torque sensor that measures the total
forces being applied to an object. In the consideration of tactile and touch sensing, the
following definitions are commonly used:
Touch Sensing
This is the detection and measurement of a contact force at a defined point. A touch
sensor can also be restricted to binary information, namely touch, and no touch. Tactile
Sensing
This is the detection and measurement of the spatial distribution of forces perpendicular
to a predetermined sensory area, and the subsequent interpretation of the spatial
information. A tactile-sensing array can be considered to be a coordinated group of
touch sensors.
Force/torque sensors
Force/torque sensors are often used in combination with tactile arrays to provide
information for force control. A single force/torque sensor can sense loads anywhere
on the distal link of a manipulator and, not being subject to the same packaging
constraints as a “skin” sensor, can generally provide more precise force measurements
at higher bandwidth. If the geometry of the manipulator link is defined, and if single-
point contact can be assumed (as in the case of a robot finger with a hemispherical tip
contacting locally convex surfaces), then a force/torque sensor can provide information
about the contact location by ratios of forces and moments in a technique called
“intrinsic tactile sensing”
Proximity sensor
A proximity sensor is a sensor able to detect the presence of nearby objects without any
physical contact. A proximity sensor often emits an electromagnetic field or a beam of
electromagnetic radiation (infrared, for instance), and looks for changes in the field or
return signal. The object being sensed is often referred to as the proximity sensor's
target. Different proximity sensor targets demand different sensors. For example, a
capacitive or photoelectric sensor might be suitable for a plastic target; an inductive
proximity .sensor always requires a metal target. The maximum distance that this sensor
can detect is defined "nominal range". Some sensors have adjustments of the nominal
range or means to report a graduated detection distance. Proximity sensors can have a
high reliability and long functional life because of the absence of mechanical parts and
lack of physical contact between sensor and the sensed object.
Proximity sensors are commonly used on smart phones to detect (and skip) accidental
touch screen taps when held to the ear during a call. They are also used in machine
vibration monitoring to measure the variation in distance between a shaft and its support
bearing. This is common in large steam turbines, compressors, and motors that use
sleeve-type bearings.
Ranging sensors
Ranging sensors include sensors that require no physical contact with the object being
detected. They allow a robot to see an obstacle without actually having to come into
contact with it. This can prevent possible entanglement, allow for better obstacle
avoidance (over touch-feedback methods), and possibly allow software to distinguish
between obstacles of different shapes and sizes. There are several methods used to
allow a sensor to detect obstacles from a distance. Below are a few common methods
ranging in complexity and capability from very basic to very intricate. The following
examples are only made to give a general understanding of many common types of
ranging and proximity sensors as they commonly apply to robotics.
The use of sensors in robots has taken them into the next level of creativity. Most importantly,
the sensors have increased the performance of robots to a large extent. It also allows the robots
to perform several functions like a human being. The robots are even made intelligent with the
help of Visual Sensors (generally called as machine vision or computer vision), which helps
them to respond according to the situation. The Machine Vision system is classified into six
sub-divisions such as Pre-processing, Sensing, Recognition, Description, Interpretation, and
Segmentation.
This type of sensor is capable of pointing out the availability of a component. Generally, the
proximity sensor will be placed in the robot moving part such as end effector. This sensor will
be turned ON at a specified distance, which will be measured by means of feet or millimeters.
It is also used to find the presence of a human being in the work volume so that the accidents
can be reduced.
Range Sensor:
Range Sensor is implemented in the end effector of a robot to calculate the distance between
the sensor and a work part. The values for the distance can be given by the workers on visual
data. It can evaluate the size of images and analysis of common objects. The range is measured
using the Sonar receivers & transmitters or two TV cameras.
Tactile Sensors:
A sensing device that specifies the contact between an object, and sensor is considered as the
Tactile Sensor. This sensor can be sorted into two key types namely: Touch Sensor and Force
Sensor.
The force sensor is included for calculating the forces of several functions like the machine
loading & unloading, material handling, and so on that are performed by a robot. This sensor
will also be a better one in the assembly process for checking the problems. There are several
techniques used in this sensor like Joint Sensing, Robot – Wrist Force Sensing, and Tactile
Array Sensing.
A machine vision system is employed in a robot for recognizing the objects. It is commonly
used to perform the inspection functions in which the industrial robots are not involved. It is
usually mounted in a high speed production line for accepting or rejecting the work parts. The
rejected work parts will be removed by other mechanical apparatuses that are in contact with
the machine vision system.
Machine Vision System
Machine vision system is a sensor used in the robots for viewing and recognizing an object
with the help of a computer. It is mostly used in the industrial robots for inspection purposes.
This system is also known as artificial vision or computer vision. It has several components
such as a camera, digital computer, digitizing hardware, and an interface hardware &
software. The machine vision process includes three important tasks, namely:
In this funct on, the image interpretation and data reduction processes are
done. The threshold of an image frame is developed a binary image for reducing the data.
The data reduction will help in converting the frame from raw image data to the feature
value data. The feature value data can be calculated via computer programming. This is
performed by matching the image descriptors like size and appearance with the previously
stored data on the computer.
The image processing and analysis function will be made more effective by training
the machine vision system regularly. There are several data collected in the training process
like length of perimeter, outer & inner diameter, area, and so on. Here, the camera will be very
helpful to identify the match between the computer models and new objects of feature value
data.
Applications:
Some of the important applications of the machine vision system in the robots are:
• Inspection
• Orientation
• Part Identification
• Location
Signal conversion
Our interface modules are the links between the real physical process and the control system.
Use the [EEx ia]-version of this function modules to assure a save data transmission from the
potentially explosive area to the non-hazardous area and vice-versa. Select the respective
product properties below. The right-hand column adjusts the product list immediately and
displays only products corresponding to your specifications.
Image Processing
Machine Vision
A robotic system f nds ts place in many fields from industry and robotic services.
Even is used for identification or navigation, these systems are under continuing
improvements with new features like 3D support, filtering, or detection of light intensity
applied to an object.
Applications and benefits for robotic vision systems used in industry or for service robots:
• automating process;
• object detection;
• defense applications;
A tracking system has a well-defined role and this is to observe the persons
or objects when these are under moving. In addition, the tracking software is capable of
predicting the direction of motion and recognizes the object or persons.OpenCV is the most
popular and used machine vision library with open-source code and comprehensive
documentation. Starting with image processing, 3D vision and tracking, fitting and many
other features, the system include more than 2500 algorithms. The library interfaces have
support for C++, C, Python and Java (in work), and also can run under Windows, Linux,
Android or Mac operating systems.
SwisTrack
Used for object tracking and recognition, SwisTrack is one of the most
advanced tools used in machine vision applications. This tracking tool required only a video
camera for tracking objects in a wide range of situations. Inside, SwisTrack is designed with
a flexible architecture and uses OpenCV library. This flexibility opens the gates for
implementing new components in order to meet the requirements of the user.
visual navigation
Edge Detector
A robot cell is a complete system that includes the robot, controller, and other
peripherals such as a part positioned and safety environment. Robot cells are
sometimes referred to as work cells.
Robot-centered cell is one of the commonly used layouts in the industrial applications.
In this arrangement, a single robot will be incorporated at the center of the work cell for
performing operations on several machines that are set in a semi-circle form. This type of work
cell is shown in the below figure. This arrangement was organized because in 1960’s a single
robot was used to perform only one function, either carrying out a production process or
examining a production machine. Those times, the robots were mostly employed in several
operations like die casting, loading and unloading of parts, etc. where the usage of robots was
very low when compared with the machine usage times. This inequity in performance was
highly occurred in the metal machining operations. During this process, a robot remains
inactive for a longer period. As a result, Robot-centered cell was introduced to maximize the
usage of robots.
Arc welding operation is an application of the Robot-centered cell. In this process, a robot is
used to perform the production process, instead of examining the production machine.
An In-Line robot cell arrangement has a movable conveyor with the work parts. This conveyor
travels near the robots for performing a function on the work parts. This type of arrangement
is mostly used in the automobile industries for assembling the car bodies. To be more specific,
the robots are placed beside the assembly line to carry out some operations like spot welding.
In the in-line robot cell design, anyone of the following transfer system can be used:
Synchronous or intermittent
transfer system Continuous
transfer system
In this transfer system, every work part is transported at the same time from one workplace and
stored in another workstation. The robots are placed in a fixed position near the moving line in
which the work parts travel. With the help of start and stop motion, the work parts are stopped
next to a robot for performing the operations on it.
The continuous transfer system transfers the work parts continuously at a constant time along
a conveyor. The continuous movement of work parts makes the robots tough to operate in a
fixed position. As a result, there are two tracking system that helps to solve this problem such
as:
A moving baseline tracking system: During an operation, this system allows the robot
to move equivalent with the path of work parts. Hence, the traveling position of the
robot and work parts will remain the same.
A stationary baseline tracking system: In this method, the robot is placed in a fixed
position along a line. Instead of moving the robot, this system uses the manipulator for
tracking the movable work parts. Here, tracking refers to the ability of a robot to sustain
the locations of the programmed points relative to the work part even during the
movement of the conveyor.
The non-synchronous transfer system allows the work parts to transfer separately along a
conveyor. As like synchronous transfer, this system also moves with a start and stop motion.
Sometimes, there is the possibility of uneven arrival timings. Therefore, sensors are used for
specifying the starting time of the process to a robot. This transfer system is also called as
power – and – free system.
Mobile robot work cell comes under the category of the robot cell layouts. Robot-centered
work cell and In-line robot work cellare also one of the categories in this cell design. In the
mobile robot work cells, the robots are arranged to move at different places in the cell. It is
made possible by attaching the robot in a movable bottom, which is connected to the rail system.
This system can be done by either anyone of the following methods:
When comparing the floor track system and overhead rail systems, two things can be described:
The overhead rail system looks to be the best one in terms of floor space. The reason is
that it requires less floor space than the floor track system.
The cost for constructing the floor track system is very lower than the overhead rail system.
If a robot examines several machines for a longer period, then mobile robot work cell will be
the perfect choice.
During this process, the robot will be mostly employed in the tasks than being in idle times.
Fig 4.4 Mobile work cell layout
If this process is not applied, then separate robot will be required to perform this process,
which causes less usage of the robot. It is said so because each robot should wait until the
process gets finished in the production machine. A mobile robot cell has a problem in its design
for identifying the best possible machines that a robot requires to examine. Moreover, this
problem helps to increase the machines in the work cell without providing any idle times to
the machines. Additionally, this operation requires pallets, conveyors, and other devices for
providing the work parts to the cell. These devices will place the work parts in a preferred area
for appropriate lifting. Human workers are also employed for performing the part loading and
unloading tasks.
Methods:
Results:
A total of 127 participants were randomized to usual care plus robot therapy (n=49),
usual care plus intensive comparison therapy (n=50), or usual care alone (n=28). The
average cost of delivering robot therapy and intensive comparison therapy was $5152 and
$7382, respectively (P<0.001), and both were significantly more expensive than usual care
alone (no additional intervention costs). At 36 weeks postrandomization, the total costs were
comparable for the 3 groups ($17 831 for robot therapy, $19 746 for intensive comparison
therapy, and $19 098 for usual care). Changes in quality of life were modest and not
statistically different.
Conclusions:
Before starting the development of a robot, some of the data must be collected to
carry out economic analysis effectively. They are:
· Cost to installarobot.
In an industry, the inves ment put on the development of a robot can be compared and analyzed
by hree common methods such as:
· Payback method
· EUAC (Equivalent Uniform Annu l Cost)
The duration taken to equal the nitial investment and net accumulated cash flow in
the development of a robot is called payback period or payback method. If the net annual
cash flows are identical to every year, then it can be stated by a formula given below.
EUAC method:
The EUAC is the short form of Equivalent Uniform Annual Cost method. It is used
to alter thetotal cash flows and investments into the equivalent uniform costs over the
expected time of developing a robot It is done by employing different interest features that
are connected with the calculations of engineering economy.
ROI method:
The Return on Investment is the expansion of ROI method. It is used to determine the return
ratio of the current project, which is related to the anticipated expenditures and profits. If the
rate of return is low to the expected cost of a company, then the investment made is accepted.
SCHOOL OF MECHANICAL ENGINEERING
DEPARTMENT OF MECHANICAL ENGINEERING
There are three bas c methods for programming industrial robots but
currently over 90% are programmed using the each method.
Teach Method
The logic for the program can be generated either using a menu based system
or simply using a text editor but the main characteristic of this method is the means
by which the robot is taught the positional data. A teach pendant with controls to
drive the robot in a number of different co-ordinate systems is used to manually drive
the robot to the desired locations.
These locations are then stored with names that can be used within the robot
program. The co-ordinate systems available on a standard jointed arm robot are :-
JointCo-ordinates
Global Co-ordinates
The tool centre point of the robot can be driven along the X, Y or Z axes of
the robots global axis system. Rotations of the tool around these axes can also be
performed
Tool Co-ordinates
Similar to the global co-ordinate system but the axes of this one are attached
to the tool centre point of the robot and therefore move with it. This system
is especially useful when the tool is near to the workpiece.
Workpiece Co-ordinates
Lead Through
This system of programming was initially popular but has now almost
disappeared. It is still however used by many paint spraying robots. The
robot is programmed by being physically moved through the task by an
operator. This is exceedingly difficult where large robots are being used and
sometimes a smaller version of the robot is u ed for this purpose. Any
hesitations or inaccuracies that are introduced into the progr m c nnot be
edited out easily without reprogramming the whole task. The robot con roller
simply records the joint positions at a fixed time interval and then plays this
back.
Off-line Programming
ROBOTC : Other Languages which we use are C,C++ and C # etc. or their
implementation, like ROBOTC, ROBOTC is an implementation of C language. If
we are designing a simple
Robot, we do not need assembly code, but in complex de igning we need well-
defined codes. ROBOTC is another programming language which is C-based. It is
actually a text based programming language. The commands which we w nt to give
to our Robot, first written on the screen in the form of simple text, now as we know
that Robot is a kind of machine and a machine only understands machine langu ge.
So these commands need to be converted in machine language so that robot can
easily underst nd and do whatever it is instructed to do.
Although commands are given in text form (called as codes) but this language
is very specific about the commands which is provi ed as instruction. If we do even
a minor change in given text it will not accept it command. If the command which is
provided to it is correct it colorizes that text, and we came to know that the given
command in text form is correct (as we have shown in our example gi en below).
Programming done in ROBOTC is very easy to do. Commands given are very stra
ghtforward. Like if we want our robot to switch on any hardware part, we just have
to give code regarding to that action in text form. Suppose we want robot to turn
motor of port, we just have to give command in this way:
Although program above is not exactly shown in the way in which it should
be written, this is just to provide you a visualization of what we have told you. This
is not written in an appropriate manner.ROBOTC provide advantage of speed, a
Robot programmed in ROBOTC programming supports 45 times more speed than
provided by other programming based on C plus it has a very powerful debugging
feature.
ROBOTICS.NXT :
Real-time systems are slaves to the clock. They achieve the illusion
of smooth behavior by rapidly updating set of control signals many times per second.
For example, to smoothly turn a robot's head to the right, the head must accelerate,
travel at constant velocity for a while, and then decelerate. This is accomplished by
making many small adjustments to the motor torques. Another example: to get the
robot's LEDs to blink repeatedly, they must be turned on for a certain period of time,
then turned off for another length of time, and so forth. To get them to glow steadily
at medium intensity, they must be turned on and off very rapidly.
The robot's operating system updates the states of all the effectors
(servos, motors, LEDs, etc.) every few milliseconds. Each update is called a "frame",
and can accommodate simultaneous changes to any number of effectors. On the
AIBO, updates occur every 8 milliseconds and frames are buffered four at a time, so
the application must have a new buffer available every 32 milliseconds; other robots
may use different update intervals. In Tekkotsu these buffers of frames are produced
by the MotionManager, whose job is to execute a collection of simultaneously active
MotionCommands (MCs) of various types every few milliseconds. The results of
these MotionCommands are assembled into a buffer that is passed to the operating
system (Aperios for the AIBO, or Linux for other robots). Suppose we want the robot
to blink its LEDs on and off at a rate of once per second. What we need is a
MotionCommand that will calculate new states for the LEDs each time the
MotionManager asks for an update. LedMC, a subclass of both Motion Command
and LedEngine, performs this service. If we create an instance of LedMC, tell it the
frequency at which to blink the LEDs, and add it to the MotionManager's list of
active MCs, then it will do all the work for us. There's just one catch: our application
is running in the Main process, while the MotionManager runs in a separate Motion
process. This is necessary to assure that potentially lengthy computations taking
place in Main don't prevent Motion from running every few milliseconds. So how
can we communicate with our MotionCommand while at the same time making it
available to the Motion Manager.
Machine Loading
Machine loading The first application of industrial robots was in unloading die-
casting machines. In die casting the two halves of a mould or die are held together in a
press while molten metal, typically zinc or aluminium, is injected under pressure. The
die is cooled by water; when the metal has solidified the press opens and a robot extracts
the casting and dips it in a quench tank to cool it further. The robot then places the
casting in a trim press where the unwanted parts are cut off. The robot often grips the
casting by the sprue. (The sprue is the part of the casting which has solidified in the
channels through which molten metal is pumped to the casting proper. Several castings
may be made at once; in this case they are connected to the sprue by runners. When the
sprue and runners are cut off by the trim press, the press must automatically eject the
casting(s) onto a conveyor.
Spray Painting