KMotion Libraries - GCode Interpreter - Trajectory Planner - Coordinated Motion - .NET

From Dynomotion

Jump to: navigation, search

KMotionDLL.dll

C++ Library that facilitates and coordinates all the communication to KFLOP.  It contains the CKMotionDLL class which provides the multi-process, multi-thread, multi-board access to KFLOP using a Client/Server approach.  It also creates and instance of the Coordinated Motion Class and GCode Interpreter Classes.


GCodeInterpreter.dll

C++ Library that facilitates Trajectory Planning, Coordinated Motion, Motion Buffering, and GCode.  It contains the CCoordMotion and CGCodeInterpreter classes.


GCode Actions

The GCode Interpreter has a method of invoking generalized "Actions".  Actions can be invoked from MCodes, S Words, User Defined Buttons, or Special Actions.  The Actions performed can be various operations such as changing the states of one or two I/O Bits, writing a Speed value to a DAC, Invoking a User C Program in KFLOP, Invoking a PC Program, Application Callback, or Executing GCode.


The GCode Interpreter contains a Table of Actions:

MCODE_ACTION McodeActions[MAX_MCODE_ACTIONS];

An Action is defined by an action code and several parameters (several numeric and a string parameter).


The Actions are packed into a contiguous array of actions.  When configuring the Actions  from an Application the Array Index is used.  When Invoking the Action the Action # is used.  See the table below for the relationship.

Index Description Action#
0 M0 0
1 M1 1
2 M2 2
3 M3 3
4 M4 4
5 M5 5
6 M6 6
7 M7 7
8 M8 8
9 M9 9
10 S 10
11 User But0 11
12 User But1 12
13 User But2 13
14 User But3 14
15 User But4 15
16 User But5 16
17 User But6 17
18 User But7 18
19 User But8 19
20 User But9 20
21 M100 100
22 M101 101
23 M102 102
24 M103 103
25 M104 104
26 M105 105
27 M106 106
28 M107 107
29 M108 108
30 M109 109
31 M110 110
32 M111 111
33 M112 112
34 M113 113
35 M114 114
36 M115 115
37 M116 116
38 M117 117
39 M118 118
40 M119 119
41 M30 24
42 Cycle Start 25
43 Halt 26
44 Stop 27
45 FeedHold 28
46 Resume 29
47 Prog Start 30
48 ProgExit 31



KMotion_dotNet.dll

The KMotion Libraries are accessible from Programming environments that support .NET (ie C#, VB, Labview, etc.).  The .NET interface allows a single reference to KMotion dotNet.dll to pull in all the available functionality of the library and permit support for things like Auto Complete and type/parameter checking.


A Help File Based description of the KMotion dotNet functionality is available here

(note when downloading help files some Operating Systems may require the file to be unblocked in its properties to work fully).  See Below:

Unblock Help File.png