- •1. INTEGRATED AND AUTOMATED MANUFACTURING
- •1.1 INTRODUCTION
- •1.1.1 Why Integrate?
- •1.1.2 Why Automate?
- •1.2 THE BIG PICTURE
- •1.2.2 The Architecture of Integration
- •1.2.3 General Concepts
- •1.3 PRACTICE PROBLEMS
- •2. AN INTRODUCTION TO LINUX/UNIX
- •2.1 OVERVIEW
- •2.1.1 What is it?
- •2.1.2 A (Brief) History
- •2.1.3 Hardware required and supported
- •2.1.4 Applications and uses
- •2.1.5 Advantages and Disadvantages
- •2.1.6 Getting It
- •2.1.7 Distributions
- •2.1.8 Installing
- •2.2 USING LINUX
- •2.2.1 Some Terminology
- •2.2.2 File and directories
- •2.2.3 User accounts and root
- •2.2.4 Processes
- •2.3 NETWORKING
- •2.3.1 Security
- •2.4 INTERMEDIATE CONCEPTS
- •2.4.1 Shells
- •2.4.2 X-Windows
- •2.4.3 Configuring
- •2.4.4 Desktop Tools
- •2.5 LABORATORY - A LINUX SERVER
- •2.6 TUTORIAL - INSTALLING LINUX
- •2.7 TUTORIAL - USING LINUX
- •2.8 REFERENCES
- •3. AN INTRODUCTION TO C/C++ PROGRAMMING
- •3.1 INTRODUCTION
- •3.2 PROGRAM PARTS
- •3.3 CLASSES AND OVERLOADING
- •3.4 HOW A ‘C’ COMPILER WORKS
- •3.5 STRUCTURED ‘C’ CODE
- •3.6 COMPILING C PROGRAMS IN LINUX
- •3.6.1 Makefiles
- •3.7 ARCHITECTURE OF ‘C’ PROGRAMS (TOP-DOWN)
- •3.8 CREATING TOP DOWN PROGRAMS
- •3.9 CASE STUDY - THE BEAMCAD PROGRAM
- •3.9.1 Objectives:
- •3.9.2 Problem Definition:
- •3.9.3 User Interface:
- •3.9.3.1 - Screen Layout (also see figure):
- •3.9.3.2 - Input:
- •3.9.3.3 - Output:
- •3.9.3.4 - Help:
- •3.9.3.5 - Error Checking:
- •3.9.3.6 - Miscellaneous:
- •3.9.4 Flow Program:
- •3.9.5 Expand Program:
- •3.9.6 Testing and Debugging:
- •3.9.7 Documentation
- •3.9.7.1 - Users Manual:
- •3.9.7.2 - Programmers Manual:
- •3.9.8 Listing of BeamCAD Program.
- •3.10 PRACTICE PROBLEMS
- •3.11 LABORATORY - C PROGRAMMING
- •4. NETWORK COMMUNICATION
- •4.1 INTRODUCTION
- •4.2 NETWORKS
- •4.2.1 Topology
- •4.2.2 OSI Network Model
- •4.2.3 Networking Hardware
- •4.2.4 Control Network Issues
- •4.2.5 Ethernet
- •4.2.6 SLIP and PPP
- •4.3 INTERNET
- •4.3.1 Computer Addresses
- •4.3.2 Computer Ports
- •4.3.2.1 - Mail Transfer Protocols
- •4.3.2.2 - FTP - File Transfer Protocol
- •4.3.2.3 - HTTP - Hypertext Transfer Protocol
- •4.3.3 Security
- •4.3.3.1 - Firewalls and IP Masquerading
- •4.4 FORMATS
- •4.4.1 HTML
- •4.4.2 URLs
- •4.4.3 Encryption
- •4.4.4 Clients and Servers
- •4.4.5 Java
- •4.4.6 Javascript
- •4.5 NETWORKING IN LINUX
- •4.5.1 Network Programming in Linux
- •4.6 DESIGN CASES
- •4.7 SUMMARY
- •4.8 PRACTICE PROBLEMS
- •4.9 LABORATORY - NETWORKING
- •4.9.1 Prelab
- •4.9.2 Laboratory
- •5. DATABASES
- •5.1 SQL AND RELATIONAL DATABASES
- •5.2 DATABASE ISSUES
- •5.3 LABORATORY - SQL FOR DATABASE INTEGRATION
- •5.4 LABORATORY - USING C FOR DATABASE CALLS
- •6. COMMUNICATIONS
- •6.1 SERIAL COMMUNICATIONS
- •6.2 SERIAL COMMUNICATIONS UNDER LINUX
- •6.3 PARALLEL COMMUNICATIONS
- •6.4 LABORATORY - SERIAL INTERFACING AND PROGRAMMING
- •6.5 LABORATORY - STEPPER MOTOR CONTROLLER
- •7. PROGRAMMABLE LOGIC CONTROLLERS (PLCs)
- •7.1 BASIC LADDER LOGIC
- •7.2 WHAT DOES LADDER LOGIC DO?
- •7.2.1 Connecting A PLC To A Process
- •7.2.2 PLC Operation
- •7.3 LADDER LOGIC
- •7.3.1 Relay Terminology
- •7.3.2 Ladder Logic Inputs
- •7.3.3 Ladder Logic Outputs
- •7.4 LADDER DIAGRAMS
- •7.4.1 Ladder Logic Design
- •7.4.2 A More Complicated Example of Design
- •7.5 TIMERS/COUNTERS/LATCHES
- •7.6 LATCHES
- •7.7 TIMERS
- •7.8 COUNTERS
- •7.9 DESIGN AND SAFETY
- •7.9.1 FLOW CHARTS
- •7.10 SAFETY
- •7.10.1 Grounding
- •7.10.2 Programming/Wiring
- •7.10.3 PLC Safety Rules
- •7.10.4 Troubleshooting
- •7.11 DESIGN CASES
- •7.11.1 DEADMAN SWITCH
- •7.11.2 CONVEYOR
- •7.11.3 ACCEPT/REJECT SORTING
- •7.11.4 SHEAR PRESS
- •7.12 ADDRESSING
- •7.12.1 Data Files
- •7.12.1.1 - Inputs and Outputs
- •7.12.1.2 - User Numerical Memory
- •7.12.1.3 - Timer Counter Memory
- •7.12.1.4 - PLC Status Bits (for PLC-5s)
- •7.12.1.5 - User Function Memory
- •7.13 INSTRUCTION TYPES
- •7.13.1 Program Control Structures
- •7.13.2 Branching and Looping
- •7.13.2.1 - Immediate I/O Instructions
- •7.13.2.2 - Fault Detection and Interrupts
- •7.13.3 Basic Data Handling
- •7.13.3.1 - Move Functions
- •7.14 MATH FUNCTIONS
- •7.15 LOGICAL FUNCTIONS
- •7.15.1 Comparison of Values
- •7.16 BINARY FUNCTIONS
- •7.17 ADVANCED DATA HANDLING
- •7.17.1 Multiple Data Value Functions
- •7.17.2 Block Transfer Functions
- •7.18 COMPLEX FUNCTIONS
- •7.18.1 Shift Registers
- •7.18.2 Stacks
- •7.18.3 Sequencers
- •7.19 ASCII FUNCTIONS
- •7.20 DESIGN TECHNIQUES
- •7.20.1 State Diagrams
- •7.21 DESIGN CASES
- •7.21.1 If-Then
- •7.21.2 For-Next
- •7.21.3 Conveyor
- •7.22 IMPLEMENTATION
- •7.23 PLC WIRING
- •7.23.1 SWITCHED INPUTS AND OUTPUTS
- •7.23.1.1 - Input Modules
- •7.23.1.2 - Actuators
- •7.23.1.3 - Output Modules
- •7.24 THE PLC ENVIRONMENT
- •7.24.1 Electrical Wiring Diagrams
- •7.24.2 Wiring
- •7.24.3 Shielding and Grounding
- •7.24.4 PLC Environment
- •7.24.5 SPECIAL I/O MODULES
- •7.25 PRACTICE PROBLEMS
- •7.26 REFERENCES
- •7.27 LABORATORY - SERIAL INTERFACING TO A PLC
- •8. PLCS AND NETWORKING
- •8.1 OPEN NETWORK TYPES
- •8.1.1 Devicenet
- •8.1.2 CANbus
- •8.1.3 Controlnet
- •8.1.4 Profibus
- •8.2 PROPRIETARY NETWORKS
- •8.2.0.1 - Data Highway
- •8.3 PRACTICE PROBLEMS
- •8.4 LABORATORY - DEVICENET
- •8.5 TUTORIAL - SOFTPLC AND DEVICENET
- •9. INDUSTRIAL ROBOTICS
- •9.1 INTRODUCTION
- •9.1.1 Basic Terms
- •9.1.2 Positioning Concepts
- •9.1.2.1 - Accuracy and Repeatability
- •9.1.2.2 - Control Resolution
- •9.1.2.3 - Payload
- •9.2 ROBOT TYPES
- •9.2.1 Basic Robotic Systems
- •9.2.2 Types of Robots
- •9.2.2.1 - Robotic Arms
- •9.2.2.2 - Autonomous/Mobile Robots
- •9.2.2.2.1 - Automatic Guided Vehicles (AGVs)
- •9.3 MECHANISMS
- •9.4 ACTUATORS
- •9.5 A COMMERCIAL ROBOT
- •9.5.1 Mitsubishi RV-M1 Manipulator
- •9.5.2 Movemaster Programs
- •9.5.2.0.1 - Language Examples
- •9.5.3 Command Summary
- •9.6 PRACTICE PROBLEMS
- •9.7 LABORATORY - MITSUBISHI RV-M1 ROBOT
- •9.8 TUTORIAL - MITSUBISHI RV-M1
- •10. OTHER INDUSTRIAL ROBOTS
- •10.1 SEIKO RT 3000 MANIPULATOR
- •10.1.1 DARL Programs
- •10.1.1.1 - Language Examples
- •10.1.1.2 - Commands Summary
- •10.2 IBM 7535 MANIPULATOR
- •10.2.1 AML Programs
- •10.3 ASEA IRB-1000
- •10.4 UNIMATION PUMA (360, 550, 560 SERIES)
- •10.5 PRACTICE PROBLEMS
- •10.6 LABORATORY - SEIKO RT-3000 ROBOT
- •10.7 TUTORIAL - SEIKO RT-3000 ROBOT
- •10.8 LABORATORY - ASEA IRB-1000 ROBOT
- •10.9 TUTORIAL - ASEA IRB-1000 ROBOT
- •11. ROBOT APPLICATIONS
- •11.0.1 Overview
- •11.0.2 Spray Painting and Finishing
- •11.0.3 Welding
- •11.0.4 Assembly
- •11.0.5 Belt Based Material Transfer
- •11.1 END OF ARM TOOLING (EOAT)
- •11.1.1 EOAT Design
- •11.1.2 Gripper Mechanisms
- •11.1.2.1 - Vacuum grippers
- •11.1.3 Magnetic Grippers
- •11.1.3.1 - Adhesive Grippers
- •11.1.4 Expanding Grippers
- •11.1.5 Other Types Of Grippers
- •11.2 ADVANCED TOPICS
- •11.2.1 Simulation/Off-line Programming
- •11.3 INTERFACING
- •11.4 PRACTICE PROBLEMS
- •11.5 LABORATORY - ROBOT INTERFACING
- •11.6 LABORATORY - ROBOT WORKCELL INTEGRATION
- •12. SPATIAL KINEMATICS
- •12.1 BASICS
- •12.1.1 Degrees of Freedom
- •12.2 HOMOGENEOUS MATRICES
- •12.2.1 Denavit-Hartenberg Transformation (D-H)
- •12.2.2 Orientation
- •12.2.3 Inverse Kinematics
- •12.2.4 The Jacobian
- •12.3 SPATIAL DYNAMICS
- •12.3.1 Moments of Inertia About Arbitrary Axes
- •12.3.2 Euler’s Equations of Motion
- •12.3.3 Impulses and Momentum
- •12.3.3.1 - Linear Momentum
- •12.3.3.2 - Angular Momentum
- •12.4 DYNAMICS FOR KINEMATICS CHAINS
- •12.4.1 Euler-Lagrange
- •12.4.2 Newton-Euler
- •12.5 REFERENCES
- •12.6 PRACTICE PROBLEMS
- •13. MOTION CONTROL
- •13.1 KINEMATICS
- •13.1.1 Basic Terms
- •13.1.2 Kinematics
- •13.1.2.1 - Geometry Methods for Forward Kinematics
- •13.1.2.2 - Geometry Methods for Inverse Kinematics
- •13.1.3 Modeling the Robot
- •13.2 PATH PLANNING
- •13.2.1 Slew Motion
- •13.2.1.1 - Joint Interpolated Motion
- •13.2.1.2 - Straight-line motion
- •13.2.2 Computer Control of Robot Paths (Incremental Interpolation)
- •13.3 PRACTICE PROBLEMS
- •13.4 LABORATORY - AXIS AND MOTION CONTROL
- •14. CNC MACHINES
- •14.1 MACHINE AXES
- •14.2 NUMERICAL CONTROL (NC)
- •14.2.1 NC Tapes
- •14.2.2 Computer Numerical Control (CNC)
- •14.2.3 Direct/Distributed Numerical Control (DNC)
- •14.3 EXAMPLES OF EQUIPMENT
- •14.3.1 EMCO PC Turn 50
- •14.3.2 Light Machines Corp. proLIGHT Mill
- •14.4 PRACTICE PROBLEMS
- •14.5 TUTORIAL - EMCO MAIER PCTURN 50 LATHE (OLD)
- •14.6.1 LABORATORY - CNC MACHINING
- •15. CNC PROGRAMMING
- •15.1 G-CODES
- •15.3 PROPRIETARY NC CODES
- •15.4 GRAPHICAL PART PROGRAMMING
- •15.5 NC CUTTER PATHS
- •15.6 NC CONTROLLERS
- •15.7 PRACTICE PROBLEMS
- •15.8 LABORATORY - CNC INTEGRATION
- •16. DATA AQUISITION
- •16.1 INTRODUCTION
- •16.2 ANALOG INPUTS
- •16.3 ANALOG OUTPUTS
- •16.4 REAL-TIME PROCESSING
- •16.5 DISCRETE IO
- •16.6 COUNTERS AND TIMERS
- •16.7 ACCESSING DAQ CARDS FROM LINUX
- •16.8 SUMMARY
- •16.9 PRACTICE PROBLEMS
- •16.10 LABORATORY - INTERFACING TO A DAQ CARD
- •17. VISIONS SYSTEMS
- •17.1 OVERVIEW
- •17.2 APPLICATIONS
- •17.3 LIGHTING AND SCENE
- •17.4 CAMERAS
- •17.5 FRAME GRABBER
- •17.6 IMAGE PREPROCESSING
- •17.7 FILTERING
- •17.7.1 Thresholding
- •17.8 EDGE DETECTION
- •17.9 SEGMENTATION
- •17.9.1 Segment Mass Properties
- •17.10 RECOGNITION
- •17.10.1 Form Fitting
- •17.10.2 Decision Trees
- •17.11 PRACTICE PROBLEMS
- •17.12 TUTORIAL - LABVIEW BASED IMAQ VISION
- •17.13 LABORATORY - VISION SYSTEMS FOR INSPECTION
- •18. INTEGRATION ISSUES
- •18.1 CORPORATE STRUCTURES
- •18.2 CORPORATE COMMUNICATIONS
- •18.3 COMPUTER CONTROLLED BATCH PROCESSES
- •18.4 PRACTICE PROBLEMS
- •18.5 LABORATORY - WORKCELL INTEGRATION
- •19. MATERIAL HANDLING
- •19.1 INTRODUCTION
- •19.2 VIBRATORY FEEDERS
- •19.3 PRACTICE QUESTIONS
- •19.4 LABORATORY - MATERIAL HANDLING SYSTEM
- •19.4.1 System Assembly and Simple Controls
- •19.5 AN EXAMPLE OF AN FMS CELL
- •19.5.1 Overview
- •19.5.2 Workcell Specifications
- •19.5.3 Operation of The Cell
- •19.6 THE NEED FOR CONCURRENT PROCESSING
- •19.7 PRACTICE PROBLEMS
- •20. PETRI NETS
- •20.1 INTRODUCTION
- •20.2 A BRIEF OUTLINE OF PETRI NET THEORY
- •20.3 MORE REVIEW
- •20.4 USING THE SUBROUTINES
- •20.4.1 Basic Petri Net Simulation
- •20.4.2 Transitions With Inhibiting Inputs
- •20.4.3 An Exclusive OR Transition:
- •20.4.4 Colored Tokens
- •20.4.5 RELATIONAL NETS
- •20.5 C++ SOFTWARE
- •20.6 IMPLEMENTATION FOR A PLC
- •20.7 PRACTICE PROBLEMS
- •20.8 REFERENCES
- •21. PRODUCTION PLANNING AND CONTROL
- •21.1 OVERVIEW
- •21.2 SCHEDULING
- •21.2.1 Material Requirements Planning (MRP)
- •21.2.2 Capacity Planning
- •21.3 SHOP FLOOR CONTROL
- •21.3.1 Shop Floor Scheduling - Priority Scheduling
- •21.3.2 Shop Floor Monitoring
- •22. SIMULATION
- •22.1 MODEL BUILDING
- •22.2 ANALYSIS
- •22.3 DESIGN OF EXPERIMENTS
- •22.4 RUNNING THE SIMULATION
- •22.5 DECISION MAKING STRATEGY
- •23. PLANNING AND ANALYSIS
- •23.1 FACTORS TO CONSIDER
- •23.2 PROJECT COST ACCOUNTING
- •24. REFERENCES
- •25. APPENDIX A - PROJECTS
- •25.1 TOPIC SELECTION
- •25.1.1 Previous Project Topics
- •25.2 CURRENT PROJECT DESCRIPTIONS
- •26. APPENDIX B - COMMON REFERENCES
- •26.1 JIC ELECTRICAL SYMBOLS
- •26.2 NEMA ENCLOSURES
page 523
19.5 AN EXAMPLE OF AN FMS CELL
19.5.1 Overview
•A workcell has been constructed using one light industrial robot, and one NC milling machine. Some automated fixtures are also used.
•All of the devices in the workcell are controlled from a single Sun computer. This is an engineering workstation with UNIX. Thus, it is capable of multitasking (running more than one program at once).
•Software drivers, interfaces, and applications have been developed, to aid in teaching and demonstration.
•The following pages will describe the interfacing in the workcell, as an example of the connection between process control computers and a plant floor computer. A project in development will be discussed for networking Plant Floor (and higher) computers.
page 524
FMS Cell Connection Diagram
Plant Floor Control & Up (Network Based Level)
Ethernet |
|
|
|
|
Ethernet |
||
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sun Computer (“Sunbane”)
Sun Computer (“RA”)
RS 232
Interface Level
|
|
|
|
|
RS 232 |
RS 232 |
|
|
|
|
|
|
RS 232
IBM PC Compatible
(Running CAM/CAM
Software)
Process Controllers
CRS Robot Controller |
Dyna Controller |
Microbot Controller |
Sensors and Actuator Level
rocesses
Conveyor Belt
DYNA NC
CRS Plus Robot |
Pneumatic Vice |
Milling Machine |
Microbot Teach Mover |
page 525
19.5.2 Workcell Specifications
• Workcell Layout
|
|
|
NC Milling |
Conveyor |
|
NC Milling Machine Machine |
|
Robot |
|
|
Controller |
|
gripper |
Pneumatic Vice |
|
|
Pneumatic Vice |
Robot Controller |
|
|
|
||
|
|
Controller |
|
|
|
|
|
|
|
Sun 3/60 Computer |
|
• Devices:
1 Sun Computer
2.CRS-Plus robot
•A five axis, articulated robot arm
•Communicates over an RS232 serial data line
•Interprets a language called RAPL
•Has 16 Digital I/O lines
•Uses a pneumatically controlled gripper
•The robot controller is 8088 based
3.DYNA-Mite Milling Machine
•A 3-axis 2.5D milling machine
•Uses a proprietary NC code
•Can be run locally, or remotely (over RS232 serial communication lines)
•Programs may be executed as they are entered, or when they are completely ordered
•Can handle objects of dimensions 6” by 5” by 4”
page 526
•Can machine plexiglass, wax, aluminum, steel (at low feed rates)
4.Pneumatic Vice
•Has a maximum opening of 4 inches
•Has a maximum travel of 1 inches
•Controlled by a pneumatic solenoid
•Pneumatic solenoid controlled from CRS-Plus robot controller
5.Conveyor
•A former undergraduate student project
•Activated electronically by the CRS-Plus robot controller
6.Fixtures (for making customized keytags)
•These are highly specific to the task being performed
•Parts Feeder - Provides a structured environment so that the robot may easily pick up the parts.
•Robot Gripper - Designed to provide a reasonable reach into the vice (and parts feeder), and to firmly grasp the workpiece.
•Vice Fixture - Designed to hold the workpiece at a level fixed height, and has a location for drill through of the keytag. This part does not effect the travel of the vice.
19.5.3 Operation of The Cell
page 527
• Developed/Proprietary software in the workcell
User |
|
|
Programming |
Interface |
User Interface |
|
|
Routines |
(written with the Sunview Window Interface Library) |
|
Module |
on Sun |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Device |
|
|
|
|
|
|
|
|
|
|
|
|
Robot |
|
Vice |
|
Conveyor |
|
DynaMill |
|
|||||
Specific |
|
|
|
|
||||||||
Control |
|
Control |
|
Control |
|
Control |
|
|||||
Routines |
|
|
|
|
||||||||
Subroutines |
|
Subroutines |
|
Subroutines |
|
Subroutines |
|
|||||
on Sun |
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Serial |
|
|
|
|
|
Software |
|
Interface |
|
|
|
|
|
||
Serial Communication Subroutines |
Written |
||||||
Routines |
|||||||
|
|
|
|
|
|
||
on Sun |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Controllers |
|
|
|
|
and |
|
DynaMill |
Hardware |
|
proprietary |
CRS-Plus Robot Controller |
|||
Controller |
||||
Operating |
|
Purchased |
||
|
|
|||
|
|
or Built |
||
Systems |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Hardware |
CRS-Plus |
|
Pneumatic |
|
Conveyor |
|
|
DynaMill |
|
||||
|
|
|
|
Milling |
|
||||||||
Robot |
|
Vice |
|
Belt |
|
|
|
||||||
|
|
|
|
|
Machine |
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
High Level User Interface ( or application program)
Low Level Device Drives and Communication Routines
Hardware and Controllers Supplied by Manufacturers (except Conveyor)
page 528
2.1.4 - Example of Robot and Vice Software Driver Use
void demo()
{
static double a1, a2, a3, a4, a5;
crs_init();
crs_speed(40.0);
crs_open(); crs_close();
conv_on();
crs_xy_r_move(-5.0, -5.0, 0.0); crs_xy_status(&a1, &a2, &a3, &a4, &a5);
conv_off();
crs_xy_a_move(a1+3.0, a2+2.0, a3);
crs_depart(-2.0); crs_depart(2.0);
crs_home();
crs_r_move(0.0, 10.0, 0.0, 0.0, 0.0); crs_speed(100.0)
vice_closed();
crs_a_move(-90.0, 0.0,0.0,0.0,0.0);
vice_open();
}
Set up Robot
Set speed to 40% of Maximum Open the Gripper
Close the Gripper
Turn on Conveyor
Move Robot with relative Cartesian Coordinates
Return Cartesian Position of
End Effector
Turn off Conveyor
Move Robot to absolute
Cartesian Position
Move robot gripper 2” forward Move robot gripper 2” backward Move robot to home position
Move robot in relative joint coordinates
Close the Vice
Move the Robot in
Absolute Joint Coordinates
Open the Vice
|
|
|
|
|
|
page 529 |
|
|
|
|
|
|
|
|
|
|
||||
• NC code Example (for the Dyna Milling Machine) |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||
000 START INS 01 |
|
|
|
|
|
|
|
Start Program in inches |
||||||||||||
001 |
TD = 0.125 |
|
|
|
|
|
|
|
Set Tool Diameter |
|||||||||||
002 FRXY = 10 |
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
003 FRZ = 4 |
|
|
|
|
|
|
|
|
Set Feed Rates |
|||||||||||
004 SETUP > zcxyu |
|
|
|
|
|
|
|
Set Absolute Zero Position |
||||||||||||
005 |
GOY -.625 |
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
Move to Start Position |
||||||||||||
|
|
|
|
|
|
|
|
|||||||||||||
006 |
GOZ -.125 |
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
||||||||||||||
007 |
GRa -180 |
A |
|
|
|
|
|
|
|
|
|
|
||||||||
008 ZERO AT |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
009 |
X .634 |
|
B |
|
|
|
|
|
|
|
|
|
|
|||||||
010 |
Y .5 |
|
2.00” |
|||||||||||||||||
011 GOr .125 |
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
012 |
a 90 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
013 |
GRa -30 |
|
|
|
|
|
|
|
|
|
B |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
014 |
> REF COODS |
|
|
|
Y |
30° |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||
015 ZERO AT |
|
|
|
|
|
|
|
|
|
|
|
|
0.50” |
|||||||
|
|
|
|
|
|
|
|
|
C |
|||||||||||
016 |
X 1.50 |
|
|
|
|
|
|
Z |
|
|
||||||||||
|
|
|
|
|
|
|
||||||||||||||
017 |
Y 0 |
|
C |
|
|
|
|
X |
|
|
||||||||||
018 |
GOr .125 |
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
D |
|
||||
019 |
a 60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.50” |
|||
|
|
A |
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||
020 |
GRa -60 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
E |
|||||||
021 |
> REF COODS |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
022 ZERO AT |
|
|
|
|
|
|
|
|
F |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
023 |
X 1.5 |
|
|
|
|
|
|
|
|
|
0.20”R |
|
|
|
|
|
|
|||
024 |
Y -0.3 |
|
D |
|
|
|
||||||||||||||
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||
025 |
GOr .125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
026 |
a 0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
027 |
GRa -90 |
|
|
E |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
028 |
GRX -1.3 |
|
F |
|
|
|
|
|
|
|
|
|
|
|||||||
029 END |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
End Program
page 530
• An Example of the Dyna Mill Software Drivers
void demo()
{
char ret[100];
/* Initialize Dyna Mill and check for failure */ if(dyna_init() == NO_ERROR){
/* Send NC Program to Dyna Mill */ dyna_load(“/usr/people/cim/nc.code/test1.nc”); /* Download program from NC Mill */ dyna_download(“/usr/people/cim/nc.code/test”); /* Send program to mill 1 step at a time */ dyna_step(“/usr/people/cim/nc.code/test2.nc”);
}
/* Deinitialize mill */ dyna_kill();
}
page 531
• A User interface forWorkcell Control
Robot Control
Subwindow
Vice and Conveyor
Controls
Dyna Mill Control
Subwindow
Key Tag Programs (Also uses Dyna Mill)
Programming
Master Control
page 532
• Actual Communication with devices, via a report window
page 533
• Workcell Programming window
•Advantages:
•UNIX Based system allows easy control of cell in modes which are both parallel and/or concurrent
•A blend of high level computers with low level devices allows for a very modular system, with a variety of computing resources.
•Synchronization of processes is very simple.
•Allows rapid reconfiguration of the workcell.
•This workcell will perform all of the basic CAD/CAM/CIM functions.
•The hierarchical design of software tools has simplified the development of new applications.
•Disadvantages: