Design for Robotic Manufacturing is a subset of the Design for Automation (DfA) methodology specific to the use of robotics to automate manufacturing (or other) processes.
Further subsets of design methodologies branch into being application-specific. For example: Design for Automated Assembly (DfAA) or Design for Robotic Additive Manufacturing
Another way to look at this is through the lens of a principle called "Moravec's Paradox", which states that tasks which are easy/subconscious for humans are difficult to automate, and vice-versa
Practically, this all means that tasks that are designed around human interaction likely need to be redesigned in order to be more possible/efficient if automated, and vice-versa
When spec-ing out a robot, there are several key technical characteristics to consider, including:
Payload Capacity: The maximum, safe, added weight that can be added to a robot and still have it operate at maximum speed/performance. Determines the robot's ability to perform specific tasks.
Reach: The maximum distance a robot can reach from its base. Determines the robot's ability to access specific areas or objects.
Speed: The maximum speed at which a robot can move. Determines the robot's ability to perform tasks within a given time frame.
Accuracy: The degree to which a robot can perform a task with precision. Determines the robot's ability to perform tasks that require a high level of accuracy, such as assembling small parts.
Repeatability: The ability of a robot to perform the same task repeatedly with a high level of accuracy. Determines the robot's ability to perform tasks that require consistent and repeatable results.
Degrees of Freedom: The number of independent axes or joints that a robot has. Determines the robot's ability to perform complex movements and tasks.
Environmental Considerations: The environmental conditions under which the robot will operate, including temperature, humidity, and exposure to dust, water, or chemicals. Determines the type of robot that is suitable for the environment and the level of maintenance required.
Power Requirements: The power supply needed to operate the robot, including voltage, current, and frequency. Determines the type of power supply needed and the electrical infrastructure required.
Programming Language and Software Compatibility: The programming language and software that the robot uses. Determines the level of expertise required to operate and program the robot.
End of Arm Tooling (EOAT) refers to the specialized equipment attached to the end of a robotic arm to perform a specific task. EOAT is designed to interact with the environment and perform tasks such as gripping, manipulating, and moving objects, as well as performing process-specific manufacturing operations.
Generally speaking, there are two broad categories of End Effectors:
Grippers, which use physical touch & mechanical interaction to manipulate objects
Tools, which are typically manufacturing process-specific, and can be specialized to perform almost any task
EOAT can also be categorized by how they work:
Active/Powered EOAT, which require additional energy input beyond the robot's movement. This includes most Grippers and tools, and can be powered one or more ways:
(Electro) Pneumatic Powered Devices
(Electro) Mechanically Powered Devices
(Electro) Magnetic Devices
Hydraulic Powered Devices
Vacuum Powered Devices
Passive/Unpowered EOAT, which do not require additional energy input beyond the robot's movementĀ
Simple Mechanical Devices (e.g. Hooks, Scoops, etc.)
(Permanent) Magnet Devices
Adhesive Devices
EOAT can also be multi-purpose, in several different ways:
Multiple Gripper EOAT, which have multiple grippers that can be used to pick up and manipulate multiple objects at the same time. This is useful in applications where the robot needs to perform multiple tasks simultaneously, such as in assembly, material handling, or machine tending.
Multiple Tool EOAT, which have multiple process-specific tools that can be used to perform different tasks. For example, a robot in a manufacturing plant may need to switch between a drill, a saw, and a grinder to perform different operations. A multiple tool EOAT allows the robot to quickly use multiple tools to perform multiple tasks without the need for manual intervention.
Combination EOAT (Gripper + Tool) EOAT, which have both gripper(s) and tool(s) to perform complex tasks. For example, a robot may use one gripper to hold an object while using a tool to drill a hole in the object.
Quick-Change EOAT, which allows the robot to quickly and easily change end effectors based on the task being performed. Quick-change EOAT typically use a standardized interface to allow for easy and fast tool changes. This is useful in applications where the robot needs to perform multiple tasks with different end effectors, such as in manufacturing or assembly. Quick-change EOAT can also be combined with multiple gripper or multiple tool EOAT to increase the flexibility and versatility of the robot.
Aside from grippers and tools, sensors can and often are incorporated into EOAT for several reasons:
Feedback: Sensors can provide feedback to the robot control system about the state of gripper(s) or tool(s). For example, a force sensor can provide feedback about the amount of force being exerted by the robot, allowing the control system to adjust the force as needed.
Process Monitoring: Sensors can be used to monitor the progress of a process and provide feedback to the robot control system. For example, a temperature sensor can be used to monitor the temperature of a material during a welding process, allowing the robot to adjust the welding parameters as needed.
A robot Tool Center Point (TCP) is the specific point on a robot's end-effector (tool) that is used as the reference point for controlling the robot's movements. The TCP is the point where any force or torque is applied to the object being manipulated. In simple terms, it is the point at which the robot "touches" the object it is working with.
Setting a TCP allows movement (jogging or programmed) of the Robot in relation to the functional location of whatever tool(s) you are using
Example: When doing Robotic welding, it is critical to maintain a precise & consistent arc length between your electrode & the workpiece being welded
You can also align TCP's with other objects and Work Coordinate Systems (WCS's), to ensure movement/actions are precisely coordinated to the object(s) the robot is interacting with
Considerations that affect the TCP include the design and geometry of the end-effector, the weight and size of the objects being manipulated, and the workspace of the robot.
The position and orientation of the TCP also affect the robot's accuracy, reachability, and dexterity.
In addition, the robot's control software must be programmed to take into account the TCP and its associated parameters, such as tool length and orientation, to ensure accurate and effective operation.
There are a few key pieces of information needed to set a TCP correctly, which are:
Dimensional Position from Robot Flange
Orientation (if EOAT not in-line with Robot Flange Z-Axis)
Payload/Mass (in kg)
Remember: This counts towards the robot's overall payload!
Center of Gravity
If the TCP is not set properly, it can cause errors in the robot's calculations of the required joint movements to compensate for added payload, which can result in excessive wear and tear on the robot's components, reduced accuracy and repeatability, and reduced overall performance.
When using multi-tool/gripper or combination EOAT, you can set multiple TCP's for each tool/gripper, and reference and move or perform actions related to both/all of them within the same program, as neededĀ
There are generally three methods for determining the key values needed to fully define TCP's for a robot:
Manual TCP Calibration can be used for simple, lightweight EOAT and when required precision/tolerances are loose/forgiving. This is typically done using what is known
A Ruler/Square can be used to find the rough XYZ Dimensional Position from Robot Flange
A Square/Protractor/Angle Finder can be used to find the rough angular XYZ Orientation
A Scale can be used to find the rough Payload/Mass
Balancing the EOAT on a Finger/Rod can be used to find the rough Center of Gravity
Point Calibration Method is an alternative way for setting TCP data that requires little/no measurement compared to doing things fully manually, and offers similar precision
A Calibration Tool/Point can be used to give you both rough Dimensional Position from Robot Flange as well as Orientation
Payload/Mass and Center of Gravity must still be determined using another method(s), whether the manual method or via a CAD model
CAD Model TCP Calibration. Most EOAT designs used in industry start with a CAD model, which can be used to determine all the TCP data needed:
Inspecting/Sketching lines/points from the Robot Flange to the TCP can give you both precise Dimensional Position from Robot Flange as well as Orientation
Assigning accurate Material Properties to components, then analyzing the overall EOAT properties in CAD can give you both precise Payload/Mass and Center of Gravity
Robot singularities are configurations of a robot where the robot loses one or more degrees of freedom, which can cause unexpected or unwanted behavior.
Singularities occur when the robot's joints align in a specific way, such that the robot's kinematic equations have no solution for a specific position or orientation.
In other words, the robot's inverse kinematics become indeterminate or ambiguous, and the robot's motion becomes unpredictable.
Singularities should be avoided at all cost, as they can negatively impact the operation the robot is attempting to perform
For example, in a welding application, a robot that reaches a singularity configuration may be unable to maintain the desired welding trajectory or maintain the distance between the welding torch and the workpiece. This can cause the weld to be of poor quality, which can lead to product failure or even pose a safety hazard if the welded joint fails.
When programming a robot, singularities can be avoided by using specific techniques and algorithms that take into account the robot's kinematic structure and constraints. Here are some common methods for avoiding singularities:
Bottom-up Joint Movements: Moving into a positionĀ
Joint limit avoidance: Limiting the range of motion of the robot's joints to avoid joint limits can help prevent singularities
Motion planning: Planning the robot's motion to avoid specific joint configurations that are prone to singularities can help prevent them from occurring
Workspace analysis: Analyzing the robot's workspace can help identify areas where singularities are likely to occur, allowing for more careful planning and programming of robot motions
Task-specific programming: In some cases, it may be possible to design tasks that are less likely to result in singularities, such as by using alternative approaches or adjusting the position of the workpiece
Singular value decomposition (SVD): SVD can be used to detect and avoid singularities in real-time by adjusting the robot's motion as it approaches a singularity
By using these techniques, it is possible to minimize the occurrence of singularities and ensure that the robot's motion remains predictable and reliable.