EMC2_Developer_Manual.pdf

(778 KB) Pobierz
169144691 UNPDF
V2.3 Developers Handbook
The EMC Team
December 29, 2008
i
This handbook is a work in progress. If you are able to help with writing, editing, or graphic
preparation please contact any member of the writing team or join and send an email to emc-
users@lists.sourceforge.net.
Copyright (c) 2000-7 LinuxCNC.org
Permission is granted to copy, distribute and/or modify this document under the terms of the
GNU Free Documentation License, Version 1.1 or any later version published by the Free Software
Foundation; with no Invariant Sections, no Front-Cover Texts, and one Back-Cover Text: "This EMC
Handbook is the product of several authors writing for linuxCNC.org. As you find it to be of value in
your work, we invite you to contribute to its revision and growth." A copy of the license is included in
the section entitled "GNU Free Documentation License". If you do not find the license you may order
a copy from Free Software Foundation, Inc. 59 Temple Place, Suite 330 Boston, MA 02111-1307
169144691.001.png
Contents
Cover
i
I EMC2 Code Notes
1
1 Introduction 2
1.1 Intended audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Organisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Overview of EMC2
3
2.1 Terms and definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Architecture overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3 Motion Controller
5
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Block diagrams and Data Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3 Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3.1
ABORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3.1.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3.1.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3.2
FREE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.2.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.2.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.3
TELEOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.3.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.3.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.4
COORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.4.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.4.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.5
ENABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.5.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.5.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
ii
CONTENTS
iii
3.3.6
DISABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.6.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.6.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.7
ENABLE_AMPLIFIER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.7.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.7.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.8
DISABLE_AMPLIFIER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.8.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.8.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.9
ACTIVATE_JOINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.9.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.9.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.10 DEACTIVATE_JOINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.10.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.10.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.11 ENABLE_WATCHDOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.11.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.11.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.12 DISABLE_WATCHDOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.12.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.12.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.3.13 PAUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.13.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.13.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.14 RESUME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.14.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.14.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.15 STEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.15.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.15.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.16 SCALE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.16.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.16.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.17 OVERRIDE_LIMITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.17.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.17.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.18 HOME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.18.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
CONTENTS
iv
3.3.18.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.19 JOG_CONT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3.19.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.19.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.20 JOG_INCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.20.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.20.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.21 JOG_ABS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.21.1Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.3.21.2Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.22 SET_LINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.23 SET_CIRCLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.24 SET_TELEOP_VECTOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.25 PROBE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.26 CLEAR_PROBE_FLAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3.27 SET_xix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.4 Homing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4.2 Homing Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4.3 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4.3.1 home_search_vel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4.3.2 home_latch_vel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.4.3.3 home_final_vel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4.3.4 home_ignore_limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4.3.5 home_use_index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4.3.6 home_offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.4.3.7 home . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.5 Backlash and Screw Error Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4 Task controller (EMCTASK)
20
5 IO controller (EMCIO)
21
6 User Interfaces
22
7 libnml 23
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.2 LinkedList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.3 LinkedListNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.4 SharedMemory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.5 ShmBuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
7.6 Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
7.7 Semaphore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
7.8 CMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Zgłoś jeśli naruszono regulamin