2.1 OVERVIEW
Linux is a free UNIX clone that was developed by volunteers around the world. Although Linux is almost a decade old, it went largely unnoticed by the general public until a couple of years ago. Since then it has become very popular with individual users, universities and large corporations. For example, IBM has made it a major part of their business strategy for server hardware. Many software companies already offer Linux versions of their software, including products such as Oracle, Labview and MSC Nastran. Other companies have developed embedded applications using Linux. Currently Linux can be found in devices as small as a wristwatch [1] and as large as a Beowulf class supercomputer [2]. The popularity of Linux is based on three factors:
-costs are lower because the software is free and it runs well on less expensive hardware.
-it has more software, capabilities, and features than other operating systems.
-the source code is open, so users can customize the operating system to meet their needs.
This chapter will present the Linux operating system in general, and its current status in computing.
- 1.3 PRACTICE PROBLEMS
- 2. AN INTRODUCTION TO LINUX/UNIX
- 2.1 OVERVIEW
- 2.1.1 What is it?
- 2.1.7 Distributions
- 2.1.8 Installing
- 2.2 USING LINUX
- 2.2.1 Some Terminology
- 2.2.4 Processes
- 2.3 NETWORKING
- 2.3.1 Security
- 2.4 INTERMEDIATE CONCEPTS
- 2.4.1 Shells
- 2.4.4 Desktop Tools
- 2.5 LABORATORY - A LINUX SERVER
- 2.8 REFERENCES
- 3.7 ARCHITECTURE OF ‘C’ PROGRAMS (TOP-DOWN)
- 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.7 Documentation
- 3.9.7.1 - Users Manual:
- 3.9.7.2 - Programmers Manual:
- 3.10 PRACTICE PROBLEMS
- 3.11 LABORATORY - C PROGRAMMING
- 4. NETWORK COMMUNICATION
- 4.1 INTRODUCTION
- 4.2 NETWORKS
- 4.2.1 Topology
- 4.2.3 Networking Hardware
- 4.2.6 SLIP and PPP
- 4.3 INTERNET
- 4.3.2 Computer Ports
- 4.3.3 Security
- 4.4 FORMATS
- 4.4.1 HTML
- 4.4.5 Java
- 4.4.6 Javascript
- 4.6 DESIGN CASES
- 4.9 LABORATORY - NETWORKING
- 5. DATABASES
- 5.2 DATABASE ISSUES
- 6. COMMUNICATIONS
- 6.1 SERIAL COMMUNICATIONS
- 6.2 SERIAL COMMUNICATIONS UNDER LINUX
- 6.3 PARALLEL COMMUNICATIONS
- 7. PROGRAMMABLE LOGIC CONTROLLERS (PLCs)
- 7.12.1 Data Files
- 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.3 Basic Data Handling
- 7.13.3.1 - Move Functions
- 7.15 LOGICAL FUNCTIONS
- 7.20 DESIGN TECHNIQUES
- 7.20.1 State Diagrams
- 7.23.1 SWITCHED INPUTS AND OUTPUTS
- 7.25 PRACTICE PROBLEMS
- 8.2 PROPRIETARY NETWORKS
- 8.2.0.1 - Data Highway
- 8.4 LABORATORY - DEVICENET
- 8.5 TUTORIAL - SOFTPLC AND DEVICENET
- 9. INDUSTRIAL ROBOTICS
- 9.1 INTRODUCTION
- 9.1.1 Basic Terms
- 9.2.2 Types of Robots
- 9.2.2.1 - Robotic Arms
- 9.3 MECHANISMS
- 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
- 10. OTHER INDUSTRIAL ROBOTS
- 10.1 SEIKO RT 3000 MANIPULATOR
- 10.1.1.2 - Commands Summary
- 10.2 IBM 7535 MANIPULATOR
- 10.2.1 AML Programs
- 10.3 ASEA IRB-1000
- 10.6 LABORATORY - SEIKO RT-3000 ROBOT
- 11. ROBOT APPLICATIONS
- 11.0.1 Overview
- 11.1 END OF ARM TOOLING (EOAT)
- 11.1.1 EOAT Design
- 11.1.2 Gripper Mechanisms
- 11.1.3 Magnetic Grippers
- 11.1.3.1 - Adhesive Grippers
- 11.1.4 Expanding Grippers
- 11.3 INTERFACING
- 12. SPATIAL KINEMATICS
- 12.1 BASICS
- 12.2.1 Denavit-Hartenberg Transformation (D-H)
- 12.3 SPATIAL DYNAMICS
- 12.3.1 Moments of Inertia About Arbitrary Axes
- 12.4 DYNAMICS FOR KINEMATICS CHAINS
- 12.4.1 Euler-Lagrange
- 12.4.2 Newton-Euler
- 13.1.3 Modeling the Robot
- 13.2.2 Computer Control of Robot Paths (Incremental Interpolation)
- 13.4 LABORATORY - AXIS AND MOTION CONTROL
- 14. CNC MACHINES
- 14.1 MACHINE AXES
- 14.2 NUMERICAL CONTROL (NC)
- 14.3 EXAMPLES OF EQUIPMENT
- 14.3.1 EMCO PC Turn 50
- 14.4 PRACTICE PROBLEMS
- 14.5 TUTORIAL - EMCO MAIER PCTURN 50 LATHE (OLD)
- 14.6.1 LABORATORY - CNC MACHINING
- 15.3 PROPRIETARY NC CODES
- 16.5 DISCRETE IO
- 16.6 COUNTERS AND TIMERS
- 16.7 ACCESSING DAQ CARDS FROM LINUX
- 16.8 SUMMARY
- 16.9 PRACTICE PROBLEMS
- 17. VISIONS SYSTEMS
- 17.1 OVERVIEW
- 17.11 PRACTICE PROBLEMS
- 18. INTEGRATION ISSUES
- 18.1 CORPORATE STRUCTURES
- 18.2 CORPORATE COMMUNICATIONS
- 19. MATERIAL HANDLING
- 19.1 INTRODUCTION
- 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.6 THE NEED FOR CONCURRENT PROCESSING
- 20. PETRI NETS
- 20.1 INTRODUCTION
- 20.2 A BRIEF OUTLINE OF PETRI NET THEORY
- 20.4.3 An Exclusive OR Transition:
- 20.4.5 RELATIONAL NETS
- 20.7 PRACTICE PROBLEMS
- 21. PRODUCTION PLANNING AND CONTROL
- 21.1 OVERVIEW
- 21.2 SCHEDULING
- 21.3 SHOP FLOOR CONTROL
- 21.3.1 Shop Floor Scheduling - Priority Scheduling
- 22. SIMULATION
- 22.3 DESIGN OF EXPERIMENTS
- 23. PLANNING AND ANALYSIS
- 23.1 FACTORS TO CONSIDER
- 24. REFERENCES
- 25. APPENDIX A - PROJECTS
- 25.1 TOPIC SELECTION
- 25.1.1 Previous Project Topics
- 25.2 CURRENT PROJECT DESCRIPTIONS