Industrial Robot/Research Development: Difference between revisions

From Open Source Ecology
Jump to navigation Jump to search
No edit summary
Line 81: Line 81:


*[12] 22 AWG Insulated Wire (Link for 5VDC and GND between the Incremental Encoders and the Power Supply)
*[12] 22 AWG Insulated Wire (Link for 5VDC and GND between the Incremental Encoders and the Power Supply)
===Hydraulic System===
====Major Components====
*[1] Hydraulic Filter
*[1] Reservoir
*[1] Pressure-compensated Variable Displacement Hydraulic Pump
*[1] Inline 3-port Pressure Relief Valve
*[6] Stepper-operated Needle Valve (Flow Control Valve)
*[6] 2-position 4-way Solenoid Valve (Directional Control Valve)
*[6] Solenoid Valve Subplate (Mounts Ports onto Solenoid Valve
*[6] Hydraulic Vane Motor
====Minor Components====
*[1] 1/2 NPTM Hose (Link between the Pump and the Pressure Relief Valve)
*[1] 1/2 NPTM Hose (Link between the Pressure Relief Valve and the Primary Tee Set)
*[5] 1/2 NPTF Tee (Altogether forms the Primary Tee Set)
*[4] 1/2 NPTM Nip (Link between the Tees in the Primary Tee Set)
*[6] 1/2 NPTM Hose (Link between the Primary Tee Set and the Stepper-operated Needle Valves)
*[6] 1/2 NPTM Hose (Link between the Stepper-operated Needle Valves and the Solenoid Valve Subplate)
*[24] 1/2 NPTF to SAE 6 Adaptor (Adaptor for all Ports on the Solenoid Valve Subplate)
*[12] 1/2 NPTM Hose (Link between the Solenoid Valve Subplates and the Hydraulic Vane Motors)
*[6] 1/2 NPTM Hose (Link between the Solenoid Valve Subplates and the Secondary Tee Set)
*[1] 1/2 NPTM Hose (Link between the Pressure Relief Valve and the Secondary Tee Set)
*[6] 1/2 NPTF Tee (Altogether forms the Secondary Tee Set)
*[5] 1/2 NPTM Nip (Link between the Tees in the Secondary Tee Set)


===Design===
===Design===

Revision as of 20:44, 30 August 2011


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

Research

Wanted: Brief description about the highest version of the GVCSTool

Theory

  • The primary reasons for inclusion of the industrial robot in the GVCS are:
    • 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

Robot Operating System

Enhanced Machine Controller 2

Incremental Encoders

Conceptual Notes

Wanted: Ifs, ands and buts.

Development

Outline

  • The industrial robot is comprised of 3 major systems: control, hydraulics, and structure.
  • The control system includes electronics and software required for homing, teaching, and commanding sequences for actual robotic movements.
  • The 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.
  • The structural system includes a foundation, connecting frames, and gearboxes which altogether comprise the physical form of the industrial robot.

Control System

Diagram

  • IndustrialRobotControlSystem.jpg

Major Components

  • [1] Software including HAL file, INI file, and EMC2 (Files with Setup Programs and Information)
  • [1] Computer with DB25 parallel port (Operator Interface and Real-time Processing)
  • [1] Mesa 7i43 (Anything I/O Board)
  • [1] FRC - DSUB Terminal Block (Terminal Block for easy connections to the Anything IO Board)
  • [6] Easydriver 4.4 (Step Motor Driver, each with 1 channel)
  • [2] PWM Driver 1.1 (Solenoid Driver, each with 3 channels)
  • [6] USDigital H6 Optical Shaft Encoder (Incremental Encoder)
  • [1] 12VDC and 5VDC Power Supply (Power Supply for Step Motor Drivers, Solenoid Drivers, and Incremental Encoders)

Minor Components

  • [1] DB25 to IDC26 Connector (Link between the Computer and the Anything IO Board)
  • [1] 50 Wire FRC Cable, Female Ends (Link between the Anything IO Board and the Terminal Block)
  • [12] 22 AWG Insulated Wire (Link for step and direction between the Anything IO Board and the Step Motor Drivers)
  • [24] 18 AWG Insulated Wire (Link between the Step Motor Drivers and the Step Motors)
  • [18] 18 AWG Insulated Wire (Link for GND, GND, and 12VDC between the Step Motor Drivers and the Power Supply)
  • [6] 22 AWG Insulated Wire (Link for PWM between the Anything IO Board and the Solenoid Drivers)
  • [2] 22 AWG Insulated Wire (Link between the Solenoid Drivers and GND)
  • [2] Molex 4-pin Connector and Wire (Link for 12VDC, GND, GND, and 5VDC between the Solenoid Drivers and the Power Supply)
  • [18] 22 AWG Insulated Wire (Link for channel A, channel B, and Index between the Anything IO Board and the Incremental Encoders)
  • [12] 22 AWG Insulated Wire (Link for 5VDC and GND between the Incremental Encoders and the Power Supply)

Hydraulic System

Major Components

  • [1] Hydraulic Filter
  • [1] Reservoir
  • [1] Pressure-compensated Variable Displacement Hydraulic Pump
  • [1] Inline 3-port Pressure Relief Valve
  • [6] Stepper-operated Needle Valve (Flow Control Valve)
  • [6] 2-position 4-way Solenoid Valve (Directional Control Valve)
  • [6] Solenoid Valve Subplate (Mounts Ports onto Solenoid Valve
  • [6] Hydraulic Vane Motor

Minor Components

  • [1] 1/2 NPTM Hose (Link between the Pump and the Pressure Relief Valve)
  • [1] 1/2 NPTM Hose (Link between the Pressure Relief Valve and the Primary Tee Set)
  • [5] 1/2 NPTF Tee (Altogether forms the Primary Tee Set)
  • [4] 1/2 NPTM Nip (Link between the Tees in the Primary Tee Set)
  • [6] 1/2 NPTM Hose (Link between the Primary Tee Set and the Stepper-operated Needle Valves)
  • [6] 1/2 NPTM Hose (Link between the Stepper-operated Needle Valves and the Solenoid Valve Subplate)
  • [24] 1/2 NPTF to SAE 6 Adaptor (Adaptor for all Ports on the Solenoid Valve Subplate)
  • [12] 1/2 NPTM Hose (Link between the Solenoid Valve Subplates and the Hydraulic Vane Motors)
  • [6] 1/2 NPTM Hose (Link between the Solenoid Valve Subplates and the Secondary Tee Set)
  • [1] 1/2 NPTM Hose (Link between the Pressure Relief Valve and the Secondary Tee Set)
  • [6] 1/2 NPTF Tee (Altogether forms the Secondary Tee Set)
  • [5] 1/2 NPTM Nip (Link between the Tees in the Secondary Tee Set)

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

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

Hydraulics

Circuit

  • Powercube (1500psi, 18GPM)
  • [2] Motor 1,2
  • [4] Motor 3,4,5,6
  • [6] Solenoid Valve

Wikipedia on Solenoid Valves

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

Wikipedia on Needle Valves

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

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

Solarbotics on Stepper Motors

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

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

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.