Robot Applications

Péter Dr. Korondi

János Halas

Krisztián Dr. Samu

Attila Bojtos

Péter Dr. Tamás

A tananyag a TÁMOP-4.1.2.A/1-11/1-2011-0042 azonosító számú „ Mechatronikai mérnök MSc tananyagfejlesztés ” projekt keretében készült. A tananyagfejlesztés az Európai Unió támogatásával és az Európai Szociális Alap társfinanszírozásával valósult meg.

Reviewed by: Dr. Husi Géza

Published by: BME MOGI

Editor by: BME MOGI

ISBN 978-963-313-136-7

2014


Table of Contents
1. Introduction: Trends in robotics
1.1. Human Robot Cooperation on shopfloors
1.1.1. Robot operation in shared space
1.1.2. Flexible human robot interaction
1.2. Engineering concepts for service robotics
1.2.1. Movement of the robots
1.2.2. Informatics concepts
1.3. Etho-Robotics
1.3.1. Informatics concepts with etho-inspiration
1.4. Conclusion for the introduction
1.5. References for Robotics trends
2. Robot middleware
2.1. Introduction
2.2. Requirements of the robot middleware
2.3. Existing robot middleware
2.4. Comparison of Robot middleware the point of view of developers
2.4.1. Creating a new project
2.4.2. Component development
2.5. Services for end-users
2.6. Summary for robot middleware
2.7. References for robot middleware
3. Universal robot controller
3.1. Introduction
3.2. RS274NGC G-code standard and LinuxCNC
3.3. Rt-middleware framework
3.4. Different architecture concepts
3.4.1. The first one is a joint controller
3.4.2. The second one is a simple decentralized CNC controller
3.4.3. Linux based modular multi-axis controller
3.5. Example solution
3.5.1. Kinematics of the experimental non-Cartesian system
3.5.2. Application example
3.6. Conclusion for the universar robot controller
3.7. References for the Universal robot controller
4. Internet-based Telemanipulation
4.1. Abstract
4.2. Introduction
4.2.1. Brief History of Telemanipulation
4.2.2. What is Telemanipulation
4.3. General approach of telemanipulation
4.3.1. Basic definitions
4.3.2. Ideal Telepresence
4.3.3. Layer Definitions
4.3.4. Sensor layer
4.3.5. Manipulator layer
4.3.6. Transporter layer
4.3.7. Special types of telemanipulation
4.4. Master devices as haptic interfaces
4.4.1. Joystick with force feedback
4.4.2. The point type master device
4.4.3. The arm type master devices
4.4.4. The glove type master device
4.4.4.1. Mechanical structure
4.4.5. Micromanipulation Systems
4.4.5.1. The Master Device of the micromanipulation system
4.4.5.2. The Slave Device of the micromanipulation system
4.5. Animation of the operator’s hand wearing the sensor glove
4.5.1. Grasping
4.6. Overview of control modes
4.6.1. Basic Architectures
4.6.2. Nonlinear scaling (Virtual coupling impedance)
4.6.3. Time delay compensation of internet based telemanipulation
4.6.3.1. The Smith Predictor
4.6.3.2. Wave variable approach
4.6.4. Friction compensation for master devices
4.6.4.1. Model Reference Adaptive Control based friction compensation
4.6.4.2. Sliding mode control based friction compensation
4.6.4.3. Friction Compensation Experience for sensor glove
4.6.4.3.1. Free motion of the operator's index finger
4.6.4.3.2. Virtual wall experiment
4.6.4.3.3. Visual Feedback of the operator
4.6.4.4. Friction Compensation Experience for the micro manipulation system
4.7. A complete application example: A handshake via Internet
4.7.1. Virtual Impedance with Position Error Correction
4.7.1.1. A. 1 Virtual Impedance
4.7.1.2. Position Error Correction
4.7.2. Experiment
4.8. Conclusions for telemanipulation
4.9. References for telemanipulation
5. Holonomic based robot for behavioral research
5.1. Introduction
5.2. Concept
5.2.1. Etho-motor
5.2.2. iSPACE
5.2.3. Behavior
5.2.4. Drive system of the robot
5.3. Technical design of MogiRobi
5.3.1. The basement of the robot
5.3.2. Body
5.3.3. Head
5.3.4. Gripper
5.3.5. Tail
5.3.6. Control and power electronics
5.4. Conclusion
6. Fuzzy automaton for describing ethological functions
6.1. Ethologically inspired Human-Robot Interaction
6.2. Behaviour-based control
6.3. Fuzzy automaton
6.4. Simulation of the ‘Strange Situation Test’ (SST)
6.5. References for Fuzzy automaton for describing ethological functions
8. Models of Friction
8.1. Early Models of Friction
8.1.1. The first friction model
8.1.2. A more scientific approach
8.2. Friction phenomena
8.2.1. Friction - General observations
8.2.2. Origin of friction
8.3. Simple elements
8.3.1. Coulomb friction
8.3.2. Viscous friction
8.3.3. Static friction
8.3.4. Stribeck effect
8.3.5. Presliding displacement
8.3.6. Rising static friction and dwell time
8.3.7. Frictional memory
8.4. Complex models
8.4.1. Steady state models
8.4.1.1. Stribeck curve
8.4.1.2. Tustin model
8.4.2. Dynamic models
8.4.2.1. Seven-parameters friction model
8.4.2.2. State variable friction model
8.4.2.3. Karnopp friction model
8.4.2.4. LuGre model
8.4.2.5. Modified Dahl model
8.4.2.6. M2 model
8.5. Comparison of dynamic model properties
8.6. Simulations
8.6.1. Stick-slip motion
8.6.2. Zero velocity crossing
8.6.3. Spring-like stiction behavior
9. PCI universal motion control system
9.1. Introduction
9.2. Features and interfaces
10. PCI CARD – Specifications
10.1. Pin-outs and electrical characteristics
10.1.1. RS485: Extension modules
10.1.2. GPIO connectors
10.1.2.1. Pinout
10.1.2.2. Input electrical characteristics
10.1.2.3. Output electrical characteristics
10.1.3. CAN-bus: Position reference for servo modules
10.1.4. Axis connectors
10.1.4.1. Encoder input characteristics
10.1.4.2. Fault inputs
10.1.4.3. Enabled outputs
10.1.4.4. Step, Direction and DAC serial line output characteristics
10.1.5. Homing & end switch connector
10.1.5.1. Pinout
10.1.5.2. Input electrical characteristics
10.1.6. LEDs
10.1.6.1. CAN
10.1.6.2. RS485
10.1.6.3. EMC
10.1.6.4. Boot
10.1.6.5. Error
10.2. Mechanical dimensions
10.3. Connecting servo modules
10.4. Axis interface modules
10.4.1. Typical servo configurations
10.4.1.1. Analogue system with encoder feedback
10.4.1.2. Incremental digital system with encoder feedback and differential output
10.4.1.3. Incremental digital system with encoder feedback and TTL output
10.4.1.4. Incremental digital system with differential output
10.4.1.5. Incremental digital system with TTL output
10.4.1.6. Absolute digital (CAN based) system
10.4.1.7. Absolute digital (CAN based) system with conventional (A/B/I) encoder feedback
10.4.2. AXIS – Optical Isolator
10.4.2.1.
10.4.3. AXIS – DAC (Digital-to-Analogue Converter)
10.4.4. AXIS – Differential breakout
10.4.5. AXIS – Breakout
12. HAL settings
12.1. Encoder
12.1.1. Pins:
12.1.2. Parameters:
12.1.3. HAL example
12.2. Stepgen module
12.2.1. Pins:
12.2.2. Parameters:
12.2.3. HAL example:
12.3. Axis DAC (digital-to-analogue converter)
12.3.1. Pins:
12.3.2. Parameters:
12.4. Enable and Fault signals
12.4.1. Pins:
12.5. Watchdog timer
12.5.1. Pins:
12.5.2. Parameters:
12.6. GM-CAN
12.6.1. Pins:
12.6.2. Parameters:
12.7. Home and Limit switches
12.7.1. Pins:
12.8. Emergency stop input signals
12.8.1. Pins:
12.9. General purpose I/O
12.9.1. Pins:
12.9.2. Parameters:
13. RS485 modules
13.1. Available module types
13.2. Automatic node recognizing
13.3. Fault handling
13.4. System description
13.4.1. Powering of the nodes
13.4.2. Connecting of the nodes
13.4.3. Addressing
13.4.4. Status LED
13.5. Modules
13.5.1. Relay output module
13.5.2. Digital input module
13.5.3. ADC & DAC module
13.5.4. Teach pendant module
13.5.5. Mechanical dimensions
13.6. Digital Servo Drives (BMEGEMIMM25)
13.7. Robot application Homework (Sample)
13.7.1. Authors
13.7.2. Project description
13.7.3. Selected machine
13.7.4. Elaboration in summary
13.7.5. Attachment
13.7.6. Blockdiagram of the control
13.7.7. Table: Connection of the robot and the control
References
List of Figures
1.1. Robot industry market projections [1]
1.2. Flexiblity factors
1.3. Traditional (upper) and flexible (lower) user interface for industrial robots
1.4. Steered vehicle path planning
1.5. Marker localisation concept
1.6. QR code
1.7. Omnidirectional movement
1.8. Aesthetic markers, [10]
1.9. Robot eye concept
1.10. Ethon robots and the aesthetic marker concept
2.1. Main use cases of robot middleware
2.2. The graphical interface of RTC Builder
2.3. The architecture of RT component
2.4. The graphical interface of the System Editor of the OpenRTM-aist
3.1. The block diagram of the joint controller RTC
3.2. Block diagram of the 3 axis CNC controller
3.3. Default (a) graphical user interface of LinuxCNC software system
3.4. Customized (b) graphical user interface of LinuxCNC software system
3.5. (a) Typical system layout of the LinuxCNC based motion controller
3.6. (b) Typical system layout of the LinuxCNC based motion controller
3.7. RS485 expansion (a) bus
3.8. RS485 expansion (b) module concepts
3.9. Examples of (a) analogue incremental servo interface
3.10. Examples of (b) differential incremental servo interface
3.11. Mechanical drawing of the Adept 604-S SCARA robot. m1, m2, m3 are the masses, l1,l2,d0,d3 are the length, q1,q2,q3,q4 are the angles of the corresponding joints. (These data are necessary only for the calculations of robot dynamics: lc1 and lc2 are the masses position on joint 1 and joint 2, respectively.)
3.12. Shows (a) control of the modular controller
3.13. Shows (b) power amplifier of the modular controller
3.14. Shows (c) power electronics shelves of the modular controller
4.1. Information streams of the Telemanipulation (adapted from [3])
4.2. General concept of the telemanipulation
4.3. Ideal Telepresence systems: (a) Revolute motion manipulation, (b) Linear motion manipulation
4.4. Layer definition for the general concept of the Internet-based Telemanipulation.
4.5. Sensor Layer definition for the general concept of the Internet-based Telemanipulation.
4.6. Manipulator Layer definition for the general concept of the Internet-based Telemanipulation.
4.7. Layer definition for the general concept of the Internet-based Telemanipulation
4.8. Telemanipulation in the virtual reality
4.9. Micro/nano teleoperation system
4.10. A point type master device
4.11. An arm type master device
4.12. A glove type master device
4.13. Mechanical structure of the sensor glove
4.14. Finger movement in the glove
4.15. Structure of one D.O.F. of the Sensor Glove
4.16. Concept of the Micro Telemanipulation
4.17. The photo of the Master Device
4.18. The photo of the Slave Device
4.19. Object Grasped by 3 Fingers
4.20. Contact Point and Contact Frame
4.21. Conventional bilateral control schema with force and position feedback
4.22. Conventional bilateral control schema with two position control loops
4.23. The Configuration of the Smith Predictor
4.24. A simple teleoperator with time delay Td.
4.25. Telemanipulation with wave variables
4.26. Sliding mode based feedback compensation
4.27. Discrete-time chattering phenomenon
4.28. Controller scheme for position control
4.29. Experimental results: Position control tests
4.30. Overall control scheme for force control
4.31. Experimental results of one joint of glove type device; (left) PID, (right) PID with disturbance observer, angel of motor, torque of human joint, output voltage and estimated disturbance
4.32. The geometry setup of wirtual wall touching experiment
4.33. Meassurement results of virtual wall touching, depth from the operator’s palm (upper) and the torque (middle)
4.34. Visual feedback for the operator
4.35. Classical MRAC scheme
4.36. Sliding mode based MRAC scheme
4.37. Axis X: Comparison of the response of the reference model and the real plant
4.38. Axis Y: Comparison of the response of the reference model and the real plant
4.39. Tele Handshaking Device: (a) Photo (b) Structure
4.40. One DOF linear motion manipulator with virtual impedance
4.41. Virtual Impedance with Position Error Correction for a teleoperator system with time delay
4.42. Control diagram the Handshaking device
4.43. Experimental results of tele handshaking device without time delay (a) Results with VI and without PEC
4.44. Experimental results of tele handshaking device without time delay (b) Results with VIPEC
4.45. Experimental results of tele handshaking device with 400 ms time delay (a) Results with VI and without PEC
4.46. Experimental results of tele handshaking device with 400 ms time delay (b) Results with VIPEC
5.1. MogiRobi: the holonomic drive based ethological robot
5.2. The concept of the iSPACE and the behaviour attitude
5.3. MogiRobi expressing sadness
5.4. MogiRobi expressing happiness
5.5. Different direction of moving and looking during holonomic movement.
5.6. The basement of the robot
5.7. The design of the basement
5.8. The omnidirectional wheels
5.9. The neck of the robot
5.10. The ball joint of the head
5.11. The head
5.12. The gripper
5.13. The oscillating mechanical system and the wired servo drive
5.14. The tail
5.15. The motion control board
5.16. The servo control board
5.17. The LCD and the control buttons
6.1. Diagram of the fuzzy automaton
6.2. FRI based Fuzzy Automaton.
6.3. FRI behaviour-based structure
6.4. Structure of the simulation
6.5. Screenshot of the simulation application
6.6. A sample track induced by the exploration behaviour component
6.7. A sample track induced by the ‘DogGoesToDoor’ behaviour component
6.8. Some of the state changes during the sample run introduced in
6.9. Fuzzy partition of the following terms: dgro - dog greets owner, dpmo - dog’s playing mood with the owner, dpms - dog’s playing mood with the stranger, dgtt - dog goes to toy, dgtd - dog goes to door, oir - owner is inside, ogo - owner is going outside
6.10. Fuzzy partition of the term ddo (distance between dog and owner)
6.11. Fuzzy partition of the term danl (dog’s anxiety level)
6.12. Fuzzy partition of the term dgto (dog is going to owner) and dgtd (dog is going to the door)
8.1. Leonardo da Vinci’s studies about the influence of apparent area upon the force of friction.
8.2. Amonton’s sketch of his apparatus used for friction measurement in 1699.
8.3. Contact surfaces at microscopic level
8.4. Visualization of rigid bodies in contact
8.5. The breaking of bristles
8.6. Coulomb friction characteristic
8.7. Viscous friction combined with Coulomb friction
8.8. Viscous friction combined with Coulomb friction and static friction
8.9. Stribeck friction characteristic
8.10. Steady state friction-velocity curve used for simulation
8.11. Karnopp model, stick-slip curve
8.12. Seven-parameters model, stick-slip curve
8.13. LuGrell model, stick-slip curve
8.14. Modified Dahl model, stick-slip curve
8.15. M2 model, stick-slip curve
8.16. Seven-parameters model, change of friction force during velocity reversals
8.17. Seven-parameters model, change of spring force during velocity reversals
8.18. Seven parameter model, change of mass velocity during velocity reversals
8.19. Seven parameter model, change of displacement during velocity reversals
8.20. Dahl model, change of spring force during velocity reversals
8.21. Modified Dahl model, change of mass velocity during velocity reversals
8.22. Modified Dahl model, change of displacement during velocity reversals
8.23. Modified Dahl model, change of displacement during velocity reve
8.24. LuGre model, change of spring force during velocity reversals
8.25. LuGre model, change of mass velocity during velocity reversals
8.26. LuGre model, change of mass displacement during velocity reversals
8.27. LuGre model, change of friction force during velocity reversals
8.28. Karnopp model, change of mass velocity during velocity reversals
8.29. Karnopp model, change of mass displacement during velocity reversals
8.30. Karnopp model, change of friction force during velocity reversals
8.31. Karnopp model, change of spring force during velocity reversals
8.32. M2 model, change of mass velocity during velocity reversals
8.33. M2 model, change of mass displacement during velocity reversals
8.34. M2 model, change of friction force during velocity reversals
8.35. M2 model, change of spring force during velocity reversals
8.36. Presliding displacement curve of the seven-parameters friction model
8.37. Presliding displacement curve of LuGre model
8.38. Presliding displacement curve of Modified Dahl model
8.39. Presliding displacement curve of M2 model
9.1. Connection layout of PCI card based motion control system
10.1. PCI card connectors and LEDs
10.2. Pin numbering of RS485-bus connector
10.3. Pinout of RS485-bus connector
10.4. Equivalent circuit of an output pin. Direction of I/O pins depending on configuration see chapter 4.9
10.5. Pin numbering of CAN-bus connector
10.6. Pinout of CAN-bus connector
10.7. Pin numbering of axis connectors
10.8. Pinout of axis connectors
10.9. Equivalent circuit of fault input for an axis
10.10. Equivalent circuit of enabled outputs
10.11. Equivalent circuit of output pins (Step, Direction, and DAC serial line) on axis connectors
10.12. Pin numbering of homing & end switch connector
10.13. Pinout of homing & end switch connector
10.14. Equivalent circuit of input pins
10.15. Mechanical dimension
10.16. Axis interface modules: Differential line driver, Digital to analogue converter, Optical isolator, Encoder/ reference breakout
10.17. Analogue system with encoder feedback
10.18. Incremental digital system with encoder feedback and differential output
10.19. Incremental digital system with encoder feedback and TTL output
10.20. Incremental digital system with differential output
10.21. Incremental digital system with TTL output
10.22. Absolute digital (CAN based) system
10.23. Absolute digital (CAN based) system with conventional (A/B/I) encoder feedback
10.24. Block diagram of the optical isolator module connection
10.25. Pinout of PCI card (RJ50) connector and power input terminals
10.26. Pinout of reference output and encoder input connectors
10.27. Equivalent circuit of output pins
10.28. Fault signal input equivalent circuit
10.29. PCI card (RJ50) input equivalent circuit
10.30. RJ50 to PCI card: Fault output equivalent circuit
10.31. Block diagram of the digital to analogue converter module connection
10.32. Controller side pinout
10.33. Machine side pinout
10.34. Equivalent circuit of fault signal output
10.35. Enable output
10.36. Equivalent circuit of fault input circuit
10.37. Fault management flowchart
10.38. Block diagram of the differential line driver module connection
10.39. Controller side pinout
10.40. Machine side pinout
10.41. Optocoupler
10.42. Fault input circuit equivalent circuit
10.43. Block diagram of the breakout module connection
10.44. Pin numbering of RJ50 and RJ45 modular connectors
10.45. Encoder pinout
10.46. Encoder pinout
10.47. Terminal connector pinout
12.1. Step/Dir type reference
12.2. Up/Down count (CW/CCW) reference
12.3. Quadrant (A/B) type reference
13.1. 8-channel relay output module
13.2. 8-channel digital input module
13.3. 8 channel ADC and 4-channel DAC module
13.4. Teach Pendant module
13.5. Powering of the nodes
13.6. Bus setting
13.7. Connecting of the nodes
13.8. Node NBC addressing
13.9. Relay output module
13.10. Numbering of output terminal connector and 24 input
13.11. Output connection diagram
13.12. Pin assignment table: NO: Normally Open, NC: Normally Closed, COM: Common
13.13. Digital input module
13.14. Equivalent circuit of digital input lines
13.15. Numbering of input terminal connector
13.16. Pin assignment table
13.17. AD & DC modul
13.18. Numbering of the terminal connector
13.19. Pin assignment table
13.20. Teach pendant module
13.21. Connectors and pin numbering of the teach pendant module
13.22. Pin assignment table of the digital input connector
13.23. Mechanical dimensions
13.24. (http://grabcad.com/library/robot-puma-560) Download: 2013. november 2.
13.25. Blockdiagram of the control
13.26. Connection of the robot and of the control
List of Tables
4.1. Minimum Force Required For Moving the Master Device
8.1. Parameters
8.2. Different friction phenomenon
8.3. Behavior of the model
8.4. State variable model parameter values