Industrial Robot/Research Development: Difference between revisions

From Open Source Ecology
Jump to navigation Jump to search
(Added some more links under the "See Also" section)
 
(55 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{ToolTemplate|ToolName=Industrial Robot}}
{{GVCS Header}}
----
 
{{Template:TOC left}}
 
=Overview=


==Research==
==Research==


{{wanted|Brief description about the highest version of the GVCSTool}}
*'''Industrial Robot Function''' is to hold, move, and apply a tool (called the end-effector) at the end of its structure towards a particular task with repetitive automation.


===Theory===
===Theory===


*The primary reasons for inclusion of the industrial robot in the GVCS are:
*'''Degrees of Freedom''' - is the number of rotation axes of the industrial robot. This number should be at least 6.
**Significant reduction in operator involvement for a wide range of procedures, resulting in more automation of tasks and more safety for humans
**High reach, payload, repeatability, and working cycle that the human arm cannot match


===Relevant Links===
[[File:degreesofreedom.gif|thumb|500px|Degrees of Freedom]]


[http://www.ros.org/wiki/ Robot Operating System]
*'''Payload at Maximum Reach''' - is the highest weight that the industrial robot can lift and move when its arm is fully extended. This weight should be at least 100 lb.


[http://linuxcnc.org/ Enhanced Machine Controller 2]
*'''Maximum Reach''' - is the distance between an imaginary line at axis 1 and the point of application at the end-effector. This distance should be at least 4 ft.


[http://thedenneys.org/pub/robot/encoders/ Incremental Encoders]
*'''Repeatability''' - is the precision error determined by the standard deviation of point1-to-point2-to-point1--- testing. This error should be at most +/- 2mm. Note that repeatability is not a measure of accuracy.


===Conceptual Notes===
[[File:Repeatabilityvsaccuracy.jpg|thumb|left|300px|Accuracy and Repeatability]]


{{wanted|Ifs, ands and buts.}}
*'''Working Envelope''' - is the volume around the industrial robot in which the end-effector's point of application can reach.


==Development==
[[File:workingenvelope.gif|thumb|250px|Working Envelope]]


*The current design of the industrial robot uses:
===Relevant Links===


**Basic Frame (Tubes, Bars, Plates)
[http://www.youtube.com/watch?v=7coUcEHxnYA Basic Overview of Electric Industrial Robot]


**Hydraulic Motors
===Conceptual Notes===


**Pressure Relief Valve, Solenoid Valves, Stepper-controlled Needle Valves
*'''Foundation''' - is the mount of the industrial robot that fastens to the ground and elevates the shoulder and hence the working envelope.


**Incremental Encoders
*'''Shoulder''' - is the base of the industrial robot that rests on top of the foundation and contains axis 1 and 2.


**Spur Gearboxes
*'''Arm''' - is the connecting frame between the shoulder and the elbow.


**Microcontroller, Stepper Drivers, Solenoid Drivers
*'''Elbow''' - is the the middle of the industrial robot that joins the arm and forearm and contains axis 3 and 4.


===Design===
*'''Forearm''' - is the connecting frame between the elbow and the wrist.


*[[Industrial Robot/Research Development/Requirements|Requirements]]
*'''Wrist''' - is the end of the industrial robot that fastens to the end-effector and contains axis 5 and 6.


*[[Industrial Robot/Research Development/Speed|Speed]]
*'''End-effector''' - is the interchangeable tool mounted to the end of the industrial robot and used to have an effect on the work to be done.


*[[Industrial Robot/Research Development/Throughput|Throughput]]
==Development==


*[[Industrial Robot/Research Development/Weight|Weight]]
===Overview===


*[[Industrial Robot/Research Development/Size Constraints|Size Constraints]]
[[File:industrialrobotoverview.jpg|thumb|400px|Overview Diagram]]


*[[Industrial Robot/Research Development/Feed stock|Feed stock]]
*'''Control System''' includes electronics and software required for homing, teaching, and commanding sequences for actual robotic movements.


*[[Industrial Robot/Research Development/Design Description|Design Description]]
*'''Hydraulic System''' includes a hydraulic circuit that utilizes a pump, flow and directional control valves, and pressure relief valves in order to power hydraulic motors that, in turn, spin the industrial robot's 6 axes of rotation.


*[[Industrial Robot/Research Development/Calculations|Calculations]]
*'''Structural System''' includes a foundation, connecting frames, and slewing bearings which altogether comprise the physical form of the industrial robot.


*[[Industrial Robot/Research Development/Drawings and Diagrams|Drawings and Diagrams]]
===Control System===


*[[Industrial Robot/Research Development/Concept and Alternatives|Concept and Alternatives]]
[[File:IndustrialRobotControlSystem.jpg|thumb|300px|Control System Diagram]]


*[[Industrial Robot/Research Development/Full Design Views|Full Design Views]]
====Software====


*[[Industrial Robot/Research Development/Cut-away Views|Cut-away Views]]
*'''Firmware''' (the XML file and BIT file) is basically configuration information for the Anything IO Board. The Firmware tells the Anything IO Board which pins are for which functions (ie. pins 1,3,5 are for step generation and pins 2,4,6 are for step direction).


*[[Industrial Robot/Research Development/Exploded Parts View|Exploded Parts View]]
*'''Enhanced Machine Controller 2''' (EMC2) with a custom HAL file and INI file has the information required for the initialization and real-time performance of the industrial robot.


*[[Industrial Robot/Research Development/3D Renders|3D Renders]]
[http://linuxcnc.org/ Enhanced Machine Controller 2]


*[[Industrial Robot/Research Development/Decisions|Decisions]]
====Electronics====


*[[Industrial Robot/Research Development/Project Team|Project Team]]
*'''Anything IO Board''' - is an intermediary between the computer and the drivers/encoders that improves real-time performance and increases the total number of physical pins available for use.


===Industry Standards===
[http://www.mesanet.com/ Mesa Electronics > Anything IO FPGA Cards > 7I43 FPGA USB/EPP Anything IO Card]


{| cellpadding="6" cellspacing="2" border="1" align="center"
*'''Breakout Board''' - just takes the pins from the Anything IO Board and connects them individually to terminal blocks, which facilitate wiring changes.
|-align="center"
! '''Industry Standard'''
! '''GVCSTool'''


|}
[http://www.mesanet.com/ Mesa Electronics > Anything IO Daughter Cards > 7I42TA Breakout/FPGA Protection Card]


===Funding===
*'''PWM driver 1.1''' - powers the solenoid valves like a relay (on or off).


{{wanted|List of expenses for prototyping and documenting GVCSTool}}
[http://reprap.org/wiki/PWM_Driver_1_1 PWM Driver 1.1]


===Peer Reviews===
*'''Easydriver 4.4''' - powers the stepper-operated needle valves.


{{wanted|Peer reviews from the scientific community regarding the R&D of GVCSTool}}
[http://www.schmalzhaus.com/EasyDriver/ Easydrivers]


===Experiments and Prototypes===
*'''H6 Optical Shaft Encoder''' - transmits incremental changes in the angular position of an axis on the industrial robot.


{{wanted|Empirical data on performance}}
[http://thedenneys.org/pub/robot/encoders/ Incremental Encoders]


====Experimental Results====
[http://usdigital.com/products/encoders/incremental/rotary/shaft/h6 H6 Optical Incremental Shaft Encoder Technical Drawings]


*'''Power Supply''' - provides 12+VDC, 5+VDC, and GND by means of connections to barrier strips.


====Prototype Notes, Observations, etc.====
*'''Barrier Strips''' - provide screw terminal connections between the power supply and the rest of the electronics.


===Hydraulic System===


===Failure Mode Analysis===
[[File:IndustrialRobotHydraulicCircuit.jpg|thumb|300px|Hydraulic System Diagram]]


====Hydraulic Power Source====


===Testing Results===
*'''Hydraulic Filter''' - ensures that impurities (ex. solid particulates) in the hydraulic fluid do not enter or accumulate in the hydraulic circuit; such impurities lead to hydraulic system malfunctions.


*'''Hydraulic Reservoir''' - is a storage tank for hydraulic fluid to be transferred to the hydraulic pump. The reservoir holds excess hydraulic fluid to compensate for differing volumetric requirements of the hydraulic circuit at any one moment in time.


===Recommendations for Improvement===
*'''Hydraulic Pump''' - converts mechanical power from a prime mover (ex. engine) to hydraulic power as flow rate and pressure of the hydraulic fluid within the circuit.


====Pressure Relief====


=Open Section Explanations=
*'''Pressure Relief Valve''' - activates when pressure at a point in the hydraulic system approaches near a pre-determined value. Upon activation, the pressure relief valve opens a flow path between the pump and tank. The pressure relief valve ensures that pressure build-up never rises above the pre-determined value and also that continuity of flow is always maintained, without which hydraulic malfunctions occur.


==Structure==
====Flow and Directional Control====


comprises the actual robotic arm, including the frame, hydraulic motors, gearboxes, and encoders
*'''Stepper-operated Needle Valve''' - is comprised of a step motor mechanically coupled to the adjusting handle of a needle valve. As the step motor shaft rotates, the needle valve adjusting handle does too, changing the flow rate of the hydraulic fluid through the needle valve.


===Foundation===
*'''2-position 4-way Solenoid-operated Directional Valve''' - is comprised of a casing that contains a spool connected to a solenoid and spring. The spring keeps the spool position at one end of the valve for one flow direction; energizing the solenoid overcomes the opposing spring force, moves the spool position to the other end, and hence reverses the flow direction.


is the ground-mounted and raised platform on which the remainder of the industrial robot rests
====Hydraulic Motors====
- converts hydraulic energy into kinetic energy as to rotate the axes of the industrial robot


*[2] Main Tube
*'''Hydraulic Motor 1'''


is the ground-mounted foundation component
[http://www.phtruck.com/download/hpm/catalogs/CombinedPumpMotorCatalogs.pdf Parker Vane Hydraulic Motor TB0390FP100AAAB Technical Drawings]


*[2] Support Tube
*'''Hydraulic Motor 2'''


reinforces the rigidity of the foundation in combination with the main tubes
*'''Hydraulic Motor 3'''


*[4] Raising Bar
*'''Hydraulic Motor 4'''


rises like a pillar while mounted to the main and support tubes at the bottom, providing a structural means of raising the foundation
*'''Hydraulic Motor 5'''


*[1] Plate
*'''Hydraulic Motor 6'''


mounts on top of the raising bars, providing a platform on which to mount the remainder of the industrial robot's structure
===Structural System===


====Fasteners====
[[File:irstructuralsystem.jpg|thumb|300px|Structural System Diagram]]


*[12] Bar Bolts
[[File:irhydmotorencodermounting.jpg|thumb|300px|Exploded Diagram for Mounting the Hydraulic Motor and Encoder onto the Structural System - encoder in blue, encoder coupling in purple, hydraulic motor in yellow, pinion gear in orange, external gear slewing bearing in black, steel components in grey]]


fastens together the main tubes, the support tubes, and the raising bars
====Shoulder====


*[4] Ground Bolts
*'''Foundation''' - the ground-mounted frame component that elevates the remainder of the industrial robot. The foundation can simply be a large metal tube that is flanged at both ends.


fastens the main tubes to the ground
*'''Slewing Bearing 1''' - the mechanism allowing axis 1 rotation while handling large radial, axial, and moment loads.


*[4] Plate Bolts
[[File:slewingbearing.jpg|thumb|200px|Slewing Bearing Example]]


fastens the plate to the raising bars
*'''Shoulder Angle''' - the frame component that mounts hydraulic motors and encoders 1 and 2, and connects slewing bearings 1 and 2.


===Main Arm===
*'''Slewing Bearing 2''' - the mechanism allowing axis 2 rotation while handling large radial, axial, and moment loads.


*[1] Bar
====Arm====


connects the axis 2 gearbox to the axis 3 gearbox
*'''Shoulder Arm Plate''' - the reinforcing metal plate between the arm and slewing bearing 2.


====Fasteners====
*'''Arm''' - the long connecting frame between the shoulder and the elbow. The arm can simply be a large metal bar.


*[8] Bolts
*'''Elbow Arm Plate''' - the reinforcing metal plate between the arm and slewing bearing 3.


fastens the bar to the axis 2 gearbox
====Elbow====


*[8] Bolts
*'''Slewing Bearing 3''' - the mechanism allowing axis 3 rotation while handling large radial, axial, and moment loads.


fastens the bar to the axis 3 gearbox
*'''Elbow Angle''' - the frame component that mounts hydraulic motors and encoders 3 and 4, and connects slewing bearings 3 and 4.


===Forearm===
*'''Slewing Bearing 4''' - the mechanism allowing axis 4 rotation while handling large radial, axial, and moment loads.


*[1] Perpendicular Plate
====Forearm====


connects to the axis 4 gearbox
*'''Elbow Forearm Plate''' - the reinforcing metal plate between the forearm and slewing bearing 4.


*[1] Tube
*'''Forearm''' - the long connecting frame between the elbow and the wrist. The forearm can simply be a square or round tube.


welds to the perpendicular plate and parallel plate on opposite ends
*'''Wrist Forearm Plate''' - the reinforcing metal plate between the forearm and slewing bearing 5.


*[1] Parallel Plate
====Wrist====


connects to the axis 5 gearbox
*'''Slewing Bearing 5''' - the mechanism allowing axis 5 rotation while handling large radial, axial, and moment loads.


====Fasteners====
*'''Wrist Angle''' - the frame component that mounts hydraulic motors and encoders 5 and 6, and connects slewing bearings 5 and 6.


*[8] Bolts
*'''Slewing Bearing 6''' - the mechanism allowing axis 6 rotation while handling large radial, axial, and moment loads.


fastens the perpendicular plate to the axis 4 gearbox
*'''End-effector Mount''' - the mechanism that mounts interchangeable end-effectors onto the wrist.


*[8] Bolts
===Design===


fastens the parallel plate to the axis 5 gearbox
*[[Industrial Robot/Research Development/Requirements|Requirements]]
*[[Industrial Robot/Research Development/Speed|Speed]]
*[[Industrial Robot/Research Development/Throughput|Throughput]]
*[[Industrial Robot/Research Development/Weight|Weight]]
*[[Industrial Robot/Research Development/Size Constraints|Size Constraints]]
*[[Industrial Robot/Research Development/Feed stock|Feed stock]]
*[[Industrial Robot/Research Development/Design Description|Design Description]]
*[[Industrial Robot/Research Development/Calculations|Calculations]]
*[[Industrial Robot/Research Development/Drawings and Diagrams|Drawings and Diagrams]]
*[[Industrial Robot/Research Development/Concept and Alternatives|Concept and Alternatives]]
*[[Industrial Robot/Research Development/Full Design Views|Full Design Views]]
*[[Industrial Robot/Research Development/Cut-away Views|Cut-away Views]]
*[[Industrial Robot/Research Development/Exploded Parts View|Exploded Parts View]]
*[[Industrial Robot/Research Development/3D Renders|3D Renders]]
*[[Industrial Robot/Research Development/Decisions|Decisions]]
*[[Industrial Robot/Research Development/Project Team|Project Team]]


===Industry Standards===


===Gearbox 1,2===
{| cellpadding="6" cellspacing="2" border="1" align="center"
|-align="center"
! '''Industry Standard'''
! '''GVCSTool'''


*[2] Hydraulic Motor
|}


rotates the axes of the industrial robot when a hydraulic fluid flows through
===Funding===


*[1] Angle
{{wanted|List of expenses for prototyping and documenting GVCSTool}}


is the major structural component on which the remainder of the gearboxes rests, providing two perpendicular planes for two perpendicular axes
===Peer Reviews===


*[2] Input Plate
{{wanted|Peer reviews from the scientific community regarding the R&D of GVCSTool}}


allows mounting of hydraulic motor, rear ball bearing, and shaft encoder
===Experiments and Prototypes===


*[4] Side Plate
{{wanted|Empirical data on performance}}


holds the input plate rigid to the metal angle
====Experimental Results====


*[2] Cover Plate


protects the gearbox insides from external particles and promotes safety from the gearbox's moving parts
====Prototype Notes, Observations, etc.====


*[4] Outer Race Plate


contains a wide, hollow cylinder that can house loose ball bearings
===Failure Mode Analysis===


*[2] Round Bar


acts as the output shaft for the gearbox
===Testing Results===


*[4] Inner Race


is a metal cylinder with notches that allows the containment of loose ball bearings and sealing O-rings
===Recommendations for Improvement===


*[2] Output Hub
===Encoder===
 
keyed onto the gearbox output shaft, mounts to the next structural component to connect to the next axis of rotation
 
*[2] Support Hub
 
keyed onto the gearbox output shaft, mounts to the shaft encoder coupling
 
*[1] Loose Ball Bearings
 
are the moving members of the ball bearings
 
*[4] O-ring Seal
 
prevents lubrication fluid from leaking from the ball bearing as well as protecting the races from external particles
 
*[2] Input gear
 
mounts onto the hydraulic motor shaft for transmitting rotational force
 
*[2] Output gear
 
mounts onto the output shaft for receiving rotational force with an overall gear reduction (higher torque, lower angular speed)
 
*[1] Key
 
mechanical element of transmitting torque from the output shaft to its held components
 
====Fasteners====
 
*[8] Input Race Bolts
 
fastens the input plate to the outer race plate
 
*[8] Input Race Nuts
 
fastens the input plate to the outer race plate
 
*[8] Output Race Bolts
 
fastens the angle to the outer race plate
 
*[8] Output Race Nuts
 
fastens the angle to the outer race plate
 
*[12] Side plate bolts
 
fastens the input plate, side plates, and angle together
 
*[12] Side plate nuts
 
fastens the input plate, side plates, and angle together
 
*[4] Cover plate bolts
 
fastens the cover plate onto the gearbox
 
*[2] Motor shaft bolts
 
prevents release of input gear from motor shaft
 
*[4] Output shaft bolts
 
fastens the shaft ends so that the gear and hubs do not fall off
 
*[4] Lube bolts
 
screws into the outer race plate for covering the lubrication hole
 
===Gearbox 3,4===
 
*[2] Hydraulic Motor
 
rotates the axes of the industrial robot when a hydraulic fluid flows through
 
*[1] Angle
 
is the major structural component on which the remainder of the gearboxes rests, providing two perpendicular planes for two perpendicular axes
 
*[2] Input Plate
 
allows mounting of hydraulic motor, rear ball bearing, and shaft encoder
 
*[4] Side Plate
 
holds the input plate rigid to the metal angle
 
*[2] Cover Plate
 
protects the gearbox insides from external particles and promotes safety from the gearbox's moving parts
 
*[4] Outer Race Plate
 
contains a wide, hollow cylinder that can house loose ball bearings
 
*[2] Round Bar
 
acts as the output shaft for the gearbox
 
*[4] Inner Race
 
is a metal cylinder with notches that allows the containment of loose ball bearings and sealing O-rings
 
*[2] Output Hub
 
keyed onto the gearbox output shaft, mounts to the next structural component to connect to the next axis of rotation
 
*[2] Support Hub
 
keyed onto the gearbox output shaft, mounts to the shaft encoder coupling
 
*[1] Loose Ball Bearings
 
are the moving members of the ball bearings
 
*[4] O-ring Seal
 
prevents lubrication fluid from leaking from the ball bearing as well as protecting the races from external particles
 
*[2] Input gear
 
mounts onto the hydraulic motor shaft for transmitting rotational force
 
*[2] Output gear
 
mounts onto the output shaft for receiving rotational force with an overall gear reduction (higher torque, lower angular speed)
 
*[1] Key
 
mechanical element of transmitting torque from the output shaft to its held components
 
====Fasteners====
 
*[8] Input Race Bolts
 
fastens the input plate to the outer race plate
 
*[8] Input Race Nuts
 
fastens the input plate to the outer race plate
 
*[8] Output Race Bolts
 
fastens the angle to the outer race plate
 
*[8] Output Race Nuts
 
fastens the angle to the outer race plate
 
*[12] Side plate bolts
 
fastens the input plate, side plates, and angle together
 
*[12] Side plate nuts
 
fastens the input plate, side plates, and angle together
 
*[4] Cover plate bolts
 
fastens the cover plate onto the gearbox
 
*[2] Motor shaft bolts
 
prevents release of input gear from motor shaft
 
*[4] Output shaft bolts


fastens the shaft ends so that the gear and hubs do not fall off
see also: [[Rotary_encoder]]
 
*[4] Lube bolts
 
screws into the outer race plate for covering the lubrication hole
 
 
===Gearbox 5,6===
 
*[2] Hydraulic Motor
 
rotates the axes of the industrial robot when a hydraulic fluid flows through
 
*[1] Angle
 
is the major structural component on which the remainder of the gearboxes rests, providing two perpendicular planes for two perpendicular axes
 
*[2] Input Plate
 
allows mounting of hydraulic motor, rear ball bearing, and shaft encoder
 
*[4] Side Plate
 
holds the input plate rigid to the metal angle
 
*[2] Cover Plate
 
protects the gearbox insides from external particles and promotes safety from the gearbox's moving parts
 
*[4] Outer Race Plate
 
contains a wide, hollow cylinder that can house loose ball bearings
 
*[2] Round Bar
 
acts as the output shaft for the gearbox
 
*[4] Inner Race
 
is a metal cylinder with notches that allows the containment of loose ball bearings and sealing O-rings
 
*[2] Output Hub
 
keyed onto the gearbox output shaft, mounts to the next structural component to connect to the next axis of rotation
 
*[2] Support Hub
 
keyed onto the gearbox output shaft, mounts to the shaft encoder coupling
 
*[1] Loose Ball Bearings
 
are the moving members of the ball bearings
 
*[4] O-ring Seal
 
prevents lubrication fluid from leaking from the ball bearing as well as protecting the races from external particles
 
*[2] Input gear
 
mounts onto the hydraulic motor shaft for transmitting rotational force
 
*[2] Output gear
 
mounts onto the output shaft for receiving rotational force with an overall gear reduction (higher torque, lower angular speed)
 
*[1] Key
 
mechanical element of transmitting torque from the output shaft to its held components
 
====Fasteners====
 
*[8] Input Race Bolts
 
fastens the input plate to the outer race plate
 
*[8] Input Race Nuts
 
fastens the input plate to the outer race plate
 
*[8] Output Race Bolts
 
fastens the angle to the outer race plate
 
*[8] Output Race Nuts
 
fastens the angle to the outer race plate
 
*[12] Side plate bolts
 
fastens the input plate, side plates, and angle together
 
*[12] Side plate nuts
 
fastens the input plate, side plates, and angle together
 
*[4] Cover plate bolts
 
fastens the cover plate onto the gearbox
 
*[2] Motor shaft bolts
 
prevents release of input gear from motor shaft
 
*[4] Output shaft bolts
 
fastens the shaft ends so that the gear and hubs do not fall off
 
*[4] Lube bolts
 
screws into the outer race plate for covering the lubrication hole
 
 
 
===Encoder===


[http://thedenneys.org/pub/robot/encoders/ Denneys on optical incremental encoders]
[http://thedenneys.org/pub/robot/encoders/ Denneys on optical incremental encoders]
Line 567: Line 307:


mounts the encoder onto the main angle
mounts the encoder onto the main angle
==Hydraulics==
===Circuit===
*Powercube (1500psi, 18GPM)
*[2] Motor 1,2
*[4] Motor 3,4,5,6
*[6] Solenoid Valve
[http://en.wikipedia.org/wiki/Solenoid_valve Wikipedia on Solenoid Valves]
[http://www.hydraulicspneumatics.com/200/FPE/IndexPage.aspx Hydraulicspenumatics on Hydraulics (including directional valves)]
The flow direction through the hydraulic motors determine their shafts' direction of rotation.
A 2-position, 4-way solenoid valve can achieve the directional control required.
Solenoid valve operating pressure required: 2000
Solenoid valve flow rate required (gpm): 10
*[6] Solenoid Valve Subplate
*[6] Needle Valve
[http://en.wikipedia.org/wiki/Needle_valve Wikipedia on Needle Valves]
[http://www.tpub.com/content/engine/14105/css/14105_89.htm Tpub on Needle Valves]
The flow of hydraulic fluid through the hydraulic motors determine their rotational speed and hence the rate of movement of the industrial robot; the needle valve allows that flow to be controlled. One needle valve is required for each of the 6 degrees of freedom.
Needle valve operating pressure required (psi): 2000
Needle valve flow rate required (gpm): 15
*[1] Pressure Relief Valve
[http://en.wikipedia.org/wiki/Pressure_relief_valve Wikipedia on Pressure Relief Valves]
A pressure relief valve maintains continuity of flow from the pump even while all hydraulic motor flow control valves are closed. This improves the safety level of the hydraulic system because pressure buildup can cause failure in a hydraulic component if not supported by a pressure relief function.
Pressure relief valve maximum flow rate (GPM): 20
Pressure relief valve pressure range (psi): 1000 to 2500
*[3] Hose (1NPTM, 3')
*[1] Hose (1NPTM, 6')
*[18] Hose (1/2NPTM, 3')
*[6] Hose (1/2NPTM, 8')
*[6] Hose (1/2NPTM, 6')
*[4] Hose (1/2NPTM, 4')
*[6] Adaptor (1/2NPTM to 1/2NPTM, x6)
*[28] Adaptor (1/2NPTF to SAE6M, x28)
*[4] Adaptor (1/2NPTF to SAE10M, x4)
*[4] Adaptor (SAE4M to SAE6F, x4)
====Fasteners====
*[24] Bolts
mounts the solenoid valves to their subplate
===Stepper Mount===
*[6] Stepper motor
[http://www.solarbotics.net/library/pdflib/pdf/motorbas.pdf Solarbotics on Stepper Motors]
[http://en.wikipedia.org/wiki/Stepper_motor Wikipedia on Stepper Motors]
Stepper motors are brushless DC motors that rotate their shaft in "steps", each of which has consists of a minute angle. Hence, stepper motors can be accurately controlled even with open-loop control (no shaft encoder or such feedback devices).
Stepper motors can be mounted onto one side of a metal angle then connected via a shaft coupling to a needle valve. This allows for flow control of the hydraulic system using electronically operated stepper motors.
The torque of the stepper motors:
*[6] mount angle
main structure for mounting the stepper motor and fitting the needle valve
*[12] mount plate
connected to the mount angle and holds the valve in place
*[6] Shaft coupling bar
connects the stepper motor shaft to the needle valve shaft
====Fasteners====
*[24] Stepper motor mounting screws
fastens the stepper motor to the mount angle
*[18] plate bolts
fastens the mount plates to the mount angles
*[30] plate nuts
fastens the mount plates to the mount angle
*[6] stepper coupling screw
fastens the stepper shaft to the coupling
*[6] valve coupling screw
fastens the valve shaft to the coupling
==Electronics==
*[1] Microcontroller
The microcontroller is the programmable command unit of the industrial robot. The microcontroller can send signals to the stepper motor drivers and solenoid drivers to move the robot; the microcontroller can receive signals from the shaft encoder to determine how far the robot has moved at each of the 6 axes points.
Microcontroller connections:
6 digital outputs to the solenoid drivers
12 digital outputs to the stepper motor drivers
6 digital inputs from the shaft encoders
1 universal serial bus (USB) port for interfacing with the computer
*[2] Solenoid Driver
The function of the solenoid driver is to power on or off the solenoid valves. The solenoid driver receives a digital signal (high or low) from the microcontroller and correspondingly switches the solenoid valve on or off.
*[6] Stepper Motor Driver
*The function of the stepper motor driver is to power the stepper motors in discrete increments based on control signals from the microcontroller.
*[1] Power Supply (as necessary to connect to 6 step motor drivers, 2 solenoid drivers, and 6 encoders)
The power supply feeds energy to the shaft encoders, solenoid drivers, and stepper motor drivers (separate driver and motor power connections).
===Electrical Links===
*Wire (18 AWG, 12+')
=Programming=
[http://www.arduino.cc/ Arduino Homepage]
The Arduino Mega 2560 Microcontroller has a pre-burnt bootloader that allows for a direct computer boot into the open source Arduino integrated development environment (IDE). Programming can be done with C in this IDE.
Microcontroller programming allows digitally assisted movement of the industrial robot


==Lead-by-Nose==
==Lead-by-Nose==
Line 733: Line 327:


*In essence, gcode > industrial robot movement
*In essence, gcode > industrial robot movement
=Other=
*Inquire into the Robot Operating System (ROS)
*Slewing bearings can have internal, external, or no gear
*Encoder coupling can be gear-to motor gear, gear-to slewing gear, or coupling-to frame attachment
*Encoder coupling-to-frame cannot be used on the same side of a hydraulic motor for an internal/external gear slewing bearing if the center encoder mount position is blocked
*A functional frame design allows mounting slewing bearings by extending the angles with plates
*If necessary, further geardown for hydraulic motors can be achieved with a planetary gearbox
*If necessary, axis torque can be increased by using multiple hydraulic motors mounted to a single internal/external geared slewing bearing
*Angles can share inward volumes so that their length only need be equal to the slewing bearing outer diameter


=Analysis and Calculations=
=Analysis and Calculations=
Line 809: Line 421:
*Based on torque calculations and scalability analysis, the industrial robot's payload can exceed 1000kg (2200lb) in future designs as necessary.
*Based on torque calculations and scalability analysis, the industrial robot's payload can exceed 1000kg (2200lb) in future designs as necessary.


=See Also=
*[[Skyentific]]


=Useful Links=
*Hexapod open source walking robot - 3 instructors are open source and professional robot designers - [http://www.kickstarter.com/projects/projecthexapod/stompy-the-giant-rideable-walking-robot-0?ref=thanks]


[[Category: Industrial Robot]]
{{GVCS Footer}}

Latest revision as of 03:44, 9 April 2020


Industrial Robot
   Home  |  Research & Development  |  Bill of Materials  |  Manufacturing Instructions  |  User's Manual  |  User Reviews    Industrial Robot.png

Overview

Research

  • Industrial Robot Function is to hold, move, and apply a tool (called the end-effector) at the end of its structure towards a particular task with repetitive automation.

Theory

  • Degrees of Freedom - is the number of rotation axes of the industrial robot. This number should be at least 6.
Degrees of Freedom
  • Payload at Maximum Reach - is the highest weight that the industrial robot can lift and move when its arm is fully extended. This weight should be at least 100 lb.
  • Maximum Reach - is the distance between an imaginary line at axis 1 and the point of application at the end-effector. This distance should be at least 4 ft.
  • Repeatability - is the precision error determined by the standard deviation of point1-to-point2-to-point1--- testing. This error should be at most +/- 2mm. Note that repeatability is not a measure of accuracy.
Accuracy and Repeatability
  • Working Envelope - is the volume around the industrial robot in which the end-effector's point of application can reach.
Working Envelope

Relevant Links

Basic Overview of Electric Industrial Robot

Conceptual Notes

  • Foundation - is the mount of the industrial robot that fastens to the ground and elevates the shoulder and hence the working envelope.
  • Shoulder - is the base of the industrial robot that rests on top of the foundation and contains axis 1 and 2.
  • Arm - is the connecting frame between the shoulder and the elbow.
  • Elbow - is the the middle of the industrial robot that joins the arm and forearm and contains axis 3 and 4.
  • Forearm - is the connecting frame between the elbow and the wrist.
  • Wrist - is the end of the industrial robot that fastens to the end-effector and contains axis 5 and 6.
  • End-effector - is the interchangeable tool mounted to the end of the industrial robot and used to have an effect on the work to be done.

Development

Overview

Overview Diagram
  • Control System includes electronics and software required for homing, teaching, and commanding sequences for actual robotic movements.
  • Hydraulic System includes a hydraulic circuit that utilizes a pump, flow and directional control valves, and pressure relief valves in order to power hydraulic motors that, in turn, spin the industrial robot's 6 axes of rotation.
  • Structural System includes a foundation, connecting frames, and slewing bearings which altogether comprise the physical form of the industrial robot.

Control System

Control System Diagram

Software

  • Firmware (the XML file and BIT file) is basically configuration information for the Anything IO Board. The Firmware tells the Anything IO Board which pins are for which functions (ie. pins 1,3,5 are for step generation and pins 2,4,6 are for step direction).
  • Enhanced Machine Controller 2 (EMC2) with a custom HAL file and INI file has the information required for the initialization and real-time performance of the industrial robot.

Enhanced Machine Controller 2

Electronics

  • Anything IO Board - is an intermediary between the computer and the drivers/encoders that improves real-time performance and increases the total number of physical pins available for use.

Mesa Electronics > Anything IO FPGA Cards > 7I43 FPGA USB/EPP Anything IO Card

  • Breakout Board - just takes the pins from the Anything IO Board and connects them individually to terminal blocks, which facilitate wiring changes.

Mesa Electronics > Anything IO Daughter Cards > 7I42TA Breakout/FPGA Protection Card

  • PWM driver 1.1 - powers the solenoid valves like a relay (on or off).

PWM Driver 1.1

  • Easydriver 4.4 - powers the stepper-operated needle valves.

Easydrivers

  • H6 Optical Shaft Encoder - transmits incremental changes in the angular position of an axis on the industrial robot.

Incremental Encoders

H6 Optical Incremental Shaft Encoder Technical Drawings

  • Power Supply - provides 12+VDC, 5+VDC, and GND by means of connections to barrier strips.
  • Barrier Strips - provide screw terminal connections between the power supply and the rest of the electronics.

Hydraulic System

Hydraulic System Diagram

Hydraulic Power Source

  • Hydraulic Filter - ensures that impurities (ex. solid particulates) in the hydraulic fluid do not enter or accumulate in the hydraulic circuit; such impurities lead to hydraulic system malfunctions.
  • Hydraulic Reservoir - is a storage tank for hydraulic fluid to be transferred to the hydraulic pump. The reservoir holds excess hydraulic fluid to compensate for differing volumetric requirements of the hydraulic circuit at any one moment in time.
  • Hydraulic Pump - converts mechanical power from a prime mover (ex. engine) to hydraulic power as flow rate and pressure of the hydraulic fluid within the circuit.

Pressure Relief

  • Pressure Relief Valve - activates when pressure at a point in the hydraulic system approaches near a pre-determined value. Upon activation, the pressure relief valve opens a flow path between the pump and tank. The pressure relief valve ensures that pressure build-up never rises above the pre-determined value and also that continuity of flow is always maintained, without which hydraulic malfunctions occur.

Flow and Directional Control

  • Stepper-operated Needle Valve - is comprised of a step motor mechanically coupled to the adjusting handle of a needle valve. As the step motor shaft rotates, the needle valve adjusting handle does too, changing the flow rate of the hydraulic fluid through the needle valve.
  • 2-position 4-way Solenoid-operated Directional Valve - is comprised of a casing that contains a spool connected to a solenoid and spring. The spring keeps the spool position at one end of the valve for one flow direction; energizing the solenoid overcomes the opposing spring force, moves the spool position to the other end, and hence reverses the flow direction.

Hydraulic Motors

- converts hydraulic energy into kinetic energy as to rotate the axes of the industrial robot

  • Hydraulic Motor 1

Parker Vane Hydraulic Motor TB0390FP100AAAB Technical Drawings

  • Hydraulic Motor 2
  • Hydraulic Motor 3
  • Hydraulic Motor 4
  • Hydraulic Motor 5
  • Hydraulic Motor 6

Structural System

Structural System Diagram
Exploded Diagram for Mounting the Hydraulic Motor and Encoder onto the Structural System - encoder in blue, encoder coupling in purple, hydraulic motor in yellow, pinion gear in orange, external gear slewing bearing in black, steel components in grey

Shoulder

  • Foundation - the ground-mounted frame component that elevates the remainder of the industrial robot. The foundation can simply be a large metal tube that is flanged at both ends.
  • Slewing Bearing 1 - the mechanism allowing axis 1 rotation while handling large radial, axial, and moment loads.
Slewing Bearing Example
  • Shoulder Angle - the frame component that mounts hydraulic motors and encoders 1 and 2, and connects slewing bearings 1 and 2.
  • Slewing Bearing 2 - the mechanism allowing axis 2 rotation while handling large radial, axial, and moment loads.

Arm

  • Shoulder Arm Plate - the reinforcing metal plate between the arm and slewing bearing 2.
  • Arm - the long connecting frame between the shoulder and the elbow. The arm can simply be a large metal bar.
  • Elbow Arm Plate - the reinforcing metal plate between the arm and slewing bearing 3.

Elbow

  • Slewing Bearing 3 - the mechanism allowing axis 3 rotation while handling large radial, axial, and moment loads.
  • Elbow Angle - the frame component that mounts hydraulic motors and encoders 3 and 4, and connects slewing bearings 3 and 4.
  • Slewing Bearing 4 - the mechanism allowing axis 4 rotation while handling large radial, axial, and moment loads.

Forearm

  • Elbow Forearm Plate - the reinforcing metal plate between the forearm and slewing bearing 4.
  • Forearm - the long connecting frame between the elbow and the wrist. The forearm can simply be a square or round tube.
  • Wrist Forearm Plate - the reinforcing metal plate between the forearm and slewing bearing 5.

Wrist

  • Slewing Bearing 5 - the mechanism allowing axis 5 rotation while handling large radial, axial, and moment loads.
  • Wrist Angle - the frame component that mounts hydraulic motors and encoders 5 and 6, and connects slewing bearings 5 and 6.
  • Slewing Bearing 6 - the mechanism allowing axis 6 rotation while handling large radial, axial, and moment loads.
  • End-effector Mount - the mechanism that mounts interchangeable end-effectors onto the wrist.

Design

Industry Standards

Industry Standard GVCSTool

Funding

Wanted: List of expenses for prototyping and documenting GVCSTool

Peer Reviews

Wanted: Peer reviews from the scientific community regarding the R&D of GVCSTool

Experiments and Prototypes

Wanted: Empirical data on performance

Experimental Results

Prototype Notes, Observations, etc.

Failure Mode Analysis

Testing Results

Recommendations for Improvement

Encoder

see also: Rotary_encoder

Denneys on optical incremental encoders

The function of the shaft encoder is to determine the position of a motor shaft as time passes. This function is necessary for the industrial robot to perform tasks with accuracy, because the robot's movement is determined not only by the power supplied to the motors but also the load being moved.

An absolute encoder can identify different positions of the measured shaft, but is more complex than an incremental encoder. However, an incremental encoder only provides relative position information. An incremental encoder can be used as an "pseudo-absolute" by saving the relative movement information; for instance, for day 1, joint A moves 5 degrees clockwise from the home position, then day 2, joint A moves 10 more degrees clockwise; by saving the information from day 1, the microcontroller can understand that joint A has moved a total of 15 degrees clockwise from the home position, not just 10 degrees. Another method of attaining the pseudo-absolute characteristic is to record a home position each time the robot starts up. This home position is represented by a third ring on the encoder disc that has a single slit; the robot is programmed to move until sensing its home position upon which the microcontroller's angle counter is reset to zero.

Hall-effect absolute encoders -- packaged (US Digital, Renishaw) or chip -- are simple and pretty cheap, compared to optical absolute encoders. Unlike opticals, the magnetic devices usually have limited absolute accuracy (~0.5 degree) even when they have fine resolution/repeatability.

An optical incremental encoder can have a "smart" index track which has a digital pattern instead of just a single slit; this allows the microcontroller to reset its angle counter after only a small amount of movement. Gurley offers this as a product, but we could also design an open-source version (it wouldn't be hard to skirt this patent).

Combining that with schmidt trigger'd comparators, 2 digital outputs can carry signals to the microcontroller, one output to determine direction of shaft rotation and the other output to determine speed of shaft rotation. (if output B changes when output A is high, the shaft is rotating in one direction; if output B changes when output A is low, the shaft is rotating in the other direction).

Explaining Repeatability When a robotic arm is commanded to move its end-effector to a particular point in space, the end-effector may arrive a location close to the desired point but not quite. Through testing, the maximum possible inaccuracy (the distance from the desired point) can be observed and recorded. The value of this measurement is called the repeatability of the robotic arm; hence, if a robotic arm is said to have a repeatability of 1mm, then the robot's greatest margin of error when moving its end-effector to a desired point is 1mm.

Visually, the repeatability of the robotic arm can be represented by a sphere centered at the desired point of movement with a radius equal to the repeatability; when moving to that desired point, the robotic arm will always finish at a point within the sphere.

Note that the repeatability of a robotic arm is determined by a repetition test where the arm moves to and from a desired point a given number of times while measuring the inaccuracy each time it stops; it follows that the observed value of repeatability is imperfect, though a high number of trials can reduce the uncertainty.

Improving Repeatability Repeatability can be improved by lowering the deflection that occurs when the frame of the robotic arm is placed under stress. Deflection minimization can be achieved by increasing the rigidity of all components placed under stress.

When a robotic arm is commanded to move and stop its end-effector at a certain location, shaft encoders determine where the robot stops moving. Shaft encoders measure the angular position of the shaft (ex. 45.6 degrees) but must do so in intervals (ex. between 1 and 4 degrees, between 4 and 7 degrees, ...). Therefore, the resolution of the shaft encoders significantly affects the repeatability of the robotic arm (the higher the resolution, the smaller the intervals); increasing the encoder resolution will improve repeatability.

  • [6] Incremental Encoder

observes and transmits digital signals based on position of gearbox output shaft to microcontroller

  • [6] Support Angle

mounts onto the outer race plate at the input plate of the gearbox

  • [6] Main Angle

mounts onto the support angle and provides a face upon which to mount the encoder

  • [6] Shaft Coupling

connects the gearbox's support hub to the encoder's shaft

Electrical Links

  • [6] Electrical connector

connects the shaft encoder to the microcontroller and power supply

Fasteners

  • [12] Hub Coupling Screw

connects the coupling to the gearbox's support hub

  • [6] Encoder Coupling Screw

connects the coupling to the encoder shaft

  • [12] Mounting screws

mounts the encoder onto the main angle

Lead-by-Nose

  • Lead-by-nose refers to a method of producing a repeatable sequence of robotic movements. After deactivating the source of hydraulic flow and allowing each axis to rotate freely, an operator moves the end-effector through the desired movements; the microcontroller notices the extent and direction of axes rotation through digital signals from the shaft encoders; correct timing is achieved by a clock circuit within the microcontroller.

Teaching

  • Teaching is similar to the lead-by-nose method of recording a repeatable sequence of robotic movements. The major difference is that instead of the industrial robot being physically moved by the operator to the desired positions, the robot is digitally controlled through the positions (ex. keyboard arrow keys or a control stick)

Computerized Numerical Control

EMC2 Homepage

EMC2 Kinematics Module Instructions

  • The enhanced machine controller 2 (EMC2) is a software program that can transform input gcode to output control signals. These control signals can be fed to the microcontroller in order for the industrial robot to perform the desired movement.
  • Because the industrial robot rotates on 6 detached axes instead of moving parallel along xyz axes, the EMC2 kinematics module must be used to manipulate the control signals an additional time.
  • In essence, gcode > industrial robot movement

Other

  • Inquire into the Robot Operating System (ROS)
  • Slewing bearings can have internal, external, or no gear
  • Encoder coupling can be gear-to motor gear, gear-to slewing gear, or coupling-to frame attachment
  • Encoder coupling-to-frame cannot be used on the same side of a hydraulic motor for an internal/external gear slewing bearing if the center encoder mount position is blocked
  • A functional frame design allows mounting slewing bearings by extending the angles with plates
  • If necessary, further geardown for hydraulic motors can be achieved with a planetary gearbox
  • If necessary, axis torque can be increased by using multiple hydraulic motors mounted to a single internal/external geared slewing bearing
  • Angles can share inward volumes so that their length only need be equal to the slewing bearing outer diameter

Analysis and Calculations

Kinematic Parameters

Wikipedia on Denavit-Hartenberg Parameters (video included)

Formal Lecture Notes on Denavit-Hartenberg

  • The Denavit-Hartenberg parameters define the position relationships between 2 motors of the industrial robot. More specifically, the robot has 6 motors, hence one parameter would be between motor 1 and 2; another between motor 2 and 3, 3 and 4, 4 and 5, and 5 and 6.
  • The Denavit-Hartenberg parameters are as follows, for joint(i): depth(i), normal length(i), z angle (i), x angle (i).
    • Joint(1): Depth(1)= , Normal Length(1)= , Z Angle(1)=90deg , X Angle(1)=*
    • Joint(2): Depth(2)= , Normal Length(2)= , Z Angle(2)=00deg , X Angle(2)=*
    • Joint(3): Depth(3)= , Normal Length(3)= , Z Angle(3)=90deg , X Angle(3)=*
    • Joint(4): Depth(4)= , Normal Length(4)= , Z Angle(4)=90deg , X Angle(4)=*
    • Joint(5): Depth(5)= , Normal Length(5)= , Z Angle(5)=90deg , X Angle(5)=*
    • where * is the joint variable

Force Analysis

  • Format
    • Force is expressed in newtons (N)
    • Maximum absolute displacement is expressed in millimeters (mm)
    • Dimensions are expressed in inches (“)
  • A36 Steel Specifications
    • Poisson Ratio = 0.285
    • Young's Modulus = 200GPa

Torque Calculations

  • Required torque for each axis (in-lbs)
    • Axis 1: 0
    • Axis 2:
    • Axis 3:
    • Axis 4:
    • Axis 5:
    • Axis 6: 0
  • Actual torque for each axis (in-lbs)
    • Axis 1: 18800
    • Axis 2: 18800
    • Axis 3: 7800
    • Axis 4: 7800
    • Axis 5: 7800
    • Axis 6: 7800
  • Payload (lbs):

Toolchains for Toolpaths

Toolchain for Toolpaths (Electrical)

  • Electrical Schematic Designer (gschem) > export ( __ filetype)> PCB Layout Creator (PCB) > export (gerber filetype)> G-code generator from gerber files (PCB2gcode) > export (gcode filetype) > Machine Controller (EMC2) > export (logic signals) > Machine ( __ ) > export (work)

Toolchain for Toolpaths (Mechanical)

  • CAD (FreeCAD) > export (stl, dxf, svg) > CAM (PyCAM) > export (gcode) > Machine Controller (EMC2) > export (logic signals) > Machine (CNC milling, various) > export (work)
  • In FreeCAD, a 3d mesh drawing can be exported as an stl file; alternatively, a 2d drawing can be exported as a dxf or svg file. Any of these files can then be imported in PyCAM, in which toolpaths can be generated for those drawings. These toolpaths can then be exported from PyCAM as a gcode file. EMC2 can then import the gcode file and simulate the toolpath, plus send logic signals to an external electronic controller that moves a machine to correspond to the toolpath. This toolchain allows digital fabrication to be utilized for the construction of the industrial robot.

Other

Future Development

  • As various components of the industrial robot shift from commercial purchase to open source fabrication, design flexibility will increase, improving performance while reducing input resource usage.
  • Based on torque calculations and scalability analysis, the industrial robot's payload can exceed 1000kg (2200lb) in future designs as necessary.

See Also

Useful Links

  • Hexapod open source walking robot - 3 instructors are open source and professional robot designers - [1]


The Global Village Construction Set
Habitat CEB Press Cement Mixer Sawmill Bulldozer Backhoe
Agriculture Tractor Seeder Hay Rake Well-Drilling Rig
Microtractor Soil Pulverizer Spader Hay Cutter Trencher
Bakery Oven Dairy Milker Microcombine Baler
Industry Multimachine Ironworker Laser Cutter Welder Plasma Cutter
CNC Torch Table Metal Roller Rod and Wire Mill Press Forge Universal Rotor
3D Printer 3D Scanner CNC Circuit Mill Industrial Robot Chipper Hammermill
Drill Press Induction Furnace
Energy Power Cube Gasifier Burner Solar Concentrator Electric Motor Generator Hydraulic Motor
Steam Engine Heat Exchanger Wind Turbine Pelletizer Universal Power Supply
Nickel-Iron Battery
Materials Aluminum Extractor Bioplastic Extruder
Transportation Car Truck

Imprimante 3D Scanner 3D Extracteur d'Aluminum Pelleteuse Four à Pain Presse à balles de paille Extrudeuse à bioplastiques Bulldozer Voiture Presse BTC Betonnière Broyeur à marteaux Imprimante de circuits électroniques Table de découpe numérique Trayeuse Perçeuse à colonne Moteur électrique Gazogène Faucheuse Râteau à foin Moteur hydraulique Fourneau à induction Bras robotisé Poinçonneuse Découpeur Laser Laminoir à plaques Microcombine Microtracteur Multimachine Batterie Ni-Fe Machine à granulés Torche plasma Power Cube Presse hydraulique Laminoir à barres et fils de fer Pulvérisateur de terre Scierie Semoir Concentrateur solaire Roto-bêche Moteur à vapeur Echangeur de chaleur Tracteur Fraiseuse de tranchée Camion Alimentation électrique universelle Rotor universel Poste de soudure à l'arc Plateforme de forage de puits Eolienne

Key Design Planning Prototype Almost done Full Release