Changes

From Dynomotion

Jump to: navigation, search

Main Page

14,206 bytes added, 30 September
/* Installation Topics */
==Dynomotion Software Topics==
===Installation Topics===
* Announcement of our Latest Production Release(5.3.6) on the [https: //www.dynomotion.com/forum/viewtopic.php?f=4&t=1796 Dynomotion Forum]* [httphttps://dynomotion.com/Software/Download.html Full release download page (includes link to signed Windows Drivers)  Latest Release] Note:to use For Windows 7 64bit signed Drivers for W7 64bit Drivers from V4.34a or later are required.  Also to work, all Windows Updates should be performed for the chain of trust to work properly].
* [[Upgrading from previous KMotion Versions]]
  Archive of Test Releases: * Latest Previous Test Release: 09/16/2024: [https://dynomotion.com/Software/KMotion5.3.5.exe KMotion.exe 5.3.5], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.3.5%20Changes.pdf 5.3.5 release notes (pdf)] * Previous Test Release: 08/13/2024: [https://dynomotion.com/Software/KMotion5.3.4.exe KMotion.exe 5.3.4], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.3.4%20Changes.pdf 5.3.4 release notes (pdf)] * Previous Test Release: 04/04/2024: [https://dynomotion.com/Software/KMotion5.3.3.exe KMotion.exe 5.3.3], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.3.3%20Changes.pdf 5.3.3 release notes (pdf)] * Previous Test Release: 02/01/2024: [https://dynomotion.com/Software/KMotion5.3.2.exe KMotion.exe 5.3.2], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.3.2%20Changes.pdf 5.3.2 release notes (pdf)] * Previous Test Release: 11/20/2023: [https://dynomotion.com/Software/KMotion5.3.1.exe KMotion.exe 5.3.1], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.3.1%20Changes.pdf 5.3.1 release notes (pdf)]* Previous Test Release: 09/19/2023: [https://dynomotion.com/Software/KMotion5.3.0.exe KMotion.exe 5.3.0], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.3.0%20Changes.pdf 5.3.0 release notes (pdf)]* Previous Test Release: 06/30/2023: [https://dynomotion.com/Software/KMotion5.1.0.exe KMotion.exe 5.1.0], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.1.0%20Changes.pdf 5.1.0 release notes (pdf)]* Previous Test Release: 05/01/2023: [https://dynomotion.com/Software/KMotion5.0.7.exe KMotion.exe 5.0.7], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%205.0.7%20Changes.pdf 5.0.7 release notes (pdf)]* Previous Test Release: 09/21/2022: [https://dynomotion.com/Software/KMotion435h.exe KMotion.exe V4.35h], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35h%20Changes.pdf V4.35h release notes (pdf)]* Previous Version 4.35g was not released, but see the change notes for this version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35g%20Changes.pdf V4.35g change notes (pdf)]* Previous Test Release: 12/28/2020: [https://dynomotion.com/Software/KMotion435f.exe KMotion.exe V4.35f], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35f%20Changes.pdf V4.35f release notes (pdf)]* Previous Test Release: 11/18/2019: [https://dynomotion.com/Software/KMotion435e.exe KMotion.exe V4.35e], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35e%20Changes.pdf V4.35e release notes (pdf)]* Previous Test Release: 09/10/2019: [https://dynomotion.com/Software/KMotion435d.exe KMotion.exe V4.35d], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35d%20Changes.pdf V4.35d release notes (pdf)]* Previous Test Release: 01/28/2019: [https://dynomotion.com/Software/KMotion435b.exe KMotion.exe V4.35b], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35b%20Changes.pdf V4.35b release notes (pdf)]* Previous Test Release: 12/21/2018: [https://dynomotion.com/Software/KMotion435a.exe KMotion.exe V4.35a], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.35a%20Changes.pdf V4.35a release notes (pdf)]* Previous Test Release: 09/28/2017: [https://dynomotion.com/Software/KMotion434j.exe KMotion.exe V4.34j], See the release notes for this test version here: [https://dynomotion.com/Software/KMotion%20Released%20Version%204.34j%20Changes.pdf V4.34j release notes (pdf)]* Previous Test Release: 05/07/2017: [httphttps://dynomotion.com/Software/KMotion434i.exe KMotion.exe V4.34i], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34i%20Changes.pdf V4.34i release notes (pdf)]* Previous Test Release: 12/14/2016: [httphttps://dynomotion.com/Software/KMotion434h.exe KMotion.exe V4.34h], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34h%20Changes.pdf V4.34h release notes (pdf)]* Previous Test Release: 12/13/2016: [httphttps://dynomotion.com/Software/KMotion434g.exe KMotion.exe V4.34g], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34g%20Changes.pdf V4.34g release notes (pdf)]* Previous Test Release: 12/05/2016: [httphttps://dynomotion.com/Software/KMotion434f.exe KMotion.exe V4.34f], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34f%20Changes.pdf V4.34f release notes (pdf)]* Previous Test Release:  11/07/2016: [httphttps://dynomotion.com/Software/KMotion434e.exe KMotion.exe V4.34e], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34e%20Changes.pdf V4.34e release notes (pdf)]* Previous Test Release:  10/32/2016: [httphttps://dynomotion.com/Software/KMotion434d.exe KMotion.exe V4.34d], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34d%20Changes.pdf V4.34d release notes (pdf)]* Previous Test Release:  10/23/2016: [httphttps://dynomotion.com/Software/KMotion434c.exe KMotion.exe V4.34c], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34c%20Changes.pdf V4.34c release notes (pdf)]* Previous Test Release:  10/03/2016: [httphttps://dynomotion.com/Software/KMotion434b.exe KMotion.exe V4.34b], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34b%20Changes.pdf V4.34b release notes (pdf)]* Previous Test Release:  03/09/2016: [httphttps://dynomotion.com/Software/KMotion434a.exe KMotion.exe V4.34a], See the release notes for this test version here: [httphttps://dynomotion.com/Software/KMotion%20Released%20Version%204.34a%20Changes.pdf V4.34a release notes (pdf)]* [httphttps://dynomotion.com/Help/KFLOPQuickStart/KFLOPQuickStart.htm How to install KMotion.exe and KMotionCNC]* [[How to install KMotion.exe and KMotion in Windows 10|Preparing Windows 10 for driver installation]](no longer required)
* [[Special Case for Windows 8.1 Industry Embedded Enterprise]]
* [[Updating KFLOP Firmware|How to update KFLOP Firmware]] - whenever a new version of software is installed, the firmware within KFLOP must be updated to match the new version
[[Rigid Tapping G84 Setup and Use]]
 
[[Tool Length/Offsets G43Hn G49]]
====<span style="text-decoration: underline;">Customize KMotionCNC</span>====
: '''General Information'''
: Compiling KMotionCNC
:: The KMotionCNC's Visual Studio Project Solution (\PC VC Programs\KMotionCNC\KMotionCNC.sln) is currently written for Visual Studio 2008 2015 Standard.  This version can be used for the simplest compatibility.  Projects can be upgraded to newer version of VS with minimal effort.  Including Microsoft's Free Visual Studio 2013 Community.  [[PC Example Applications|More info on PC Example Applications.]]
:: Note Test Versions 4.34a and later have project solutions targeted for Visual Studio 2015 Community which is free for most Users.
: '''KMotionCNC Customization Examples and Applications'''
:: Links to examples of projects that explain KMotionCNC customizations::: . Troy (tmday7) created some helpful documents listed on the Yahoo Group Files Section (PDF format):: :* [https://groupswww.yahoodynomotion.com/neoforum/groupsarchive/DynoMotionattachments/filesHow%20to%20Edit%20KMotionCNC%20Faces.pdf How to edit KMotionCNC faces]:* [https://www.dynomotion.com/forum/archive/attachments/KmotionCNCAdding%20Screen20External%20Customizing20Buttons.pdf Adding external buttons]:* [https:/ here/www.dynomotion.com/forum/archive/attachments/Adding%20More%20User%20Buttons.pdf Adding more user buttons]:* [https://www.dynomotion.com/forum/archive/attachments/Adding%20Jog%20Percent%20Cell%20to%20Main%20Dialog%20Face.pdf Adding Jog Percent Cell to Main Dialog Face] 
====<span style="text-decoration: underline;">KMotionCNC Screen Editor</span>====
'''Table Introduces the capability of contents:'''using Screen Script files to modify the look and function of KMotionCNC.<br />[[KMotionCNC Screen Editor|More information.]]
# Introduction====<span style="text-decoration: underline;">KMotionCNC Geometric Correction</span>====# Control styles# Control attributes# Main Window attributes# Bitmap types and Alpha Information regarding the powerful [https://dynomotion.com/Help/KMotionCNC/GeoCorrection.htm Geometric Correction capability] which allows calibration and locationsdistortion correction of the XY CAD space to Machine/Actuator Space as well as flatness in Z.  Simple 4 point correction tables can apply XY Scale, Rotation, skew, offset, tilt.  Larger tables can apply more non-linear corrections.
===Introduction===Note the Geometric Correction is built into the KMotion Libraries and can be utilized by Custom Programs as well as with KMotionCNC<br />[[Geometric Correction|More information and Examples.]]
Video: [https://www.youtube.com/watch?v=l6d_AYTptVQ https===<span style="text-decoration:underline;">KMotionCNC Linear Table Correction (Screw Mapping)<//www.youtube.com/watch?vspan>=l6d_AYTptVQ===Individual Axes can be corrected in a 1 dimensional manner referred to as Linear Table Corrections.  For more information See [[Linear Table Correction|here]].
'''Features include:'''===PC Example Applications===A number of PC Applications using the KMotion Libraries are available in the Software download.&nbsp; Visual Studio should be used to modify/compile the applications.&nbsp;
* Show/Hide Controls
* Change Size and Position of Controls
* Change Label/Button Text
* International Character Support
* Change Font/Text Size
* Bitmap Buttons and Labels
* JPG, BMP, PNG Bitmaps
* Toggle Bitmap Labels (LEDs)
* Customizable Keyboard Hotkeys
* Customizable Button Tool Tips
* Programmable DRO (Digital Read Output) Labels
* Custom User Entry Controls
'''Note All the projects in KMotion Versions 4.34a and later have now been updated and should work out-of-the-box with VS2015.'''
The 6-axes default screen is changed to a 5-axes screen by deleting the z-axis. We start by installing KMotion 4.34b or later. Note that if you don’t already have Dot Net version 4.62 or Visual Studio 2015 libraries installed, you will be prompted to load those. Create desktop icons for KMotion, KMotionCNC and KMotionCNC Screen Editor. Run KMotion and observe the default 3-axes resizable screen[[PC Example Applications|More information.]]
[[File:3axes===KMotion Libraries -resizableGCode Interpreter - Trajectory Planner - Coordinated Motion -screen.png|none|linkNET=|504x286px]]==The KMotion Libraries are a series of DLLs (Dynamic Link Libraries) that reside on the PC that contain the common core motion control, I/O, and communication functionality for KFLOP.  These libraries permit PC Applications to be built using high level control without being concerned with the underlying details of Interpreting GCode, Trajectory Planning, Coordinated Motion, Motion Buffering, USB Communication, etc.
Close the G Viewer window and change the dialog face to Default Custom Screen with no screen script specified[[KMotion Libraries - GCode Interpreter - Trajectory Planner - Coordinated Motion - .NET|More information]]. (Tool Setup):
[[File:Default-custom-screen.png|none|link=]]==Kinematics===The KMotion Libraries contain a Kinematics Layer where Users can add their own non-linear Kinematics
Now run the KMotionCNC Screen Editor. It automatically syncs to KMotionCNC’s controls and they are graphically displayed[[Kinematics|More information]].
This graphical representation allows you ===KFLOP C Programs===C Programs provide a powerful and flexible capability to select which controls perform almost any sequence of operations within KFLOP.   In most cases after you want to modifyhave tested and tuned all your hardware using the KMotion.exe setup program all the settings and initialization steps required for your system can be placed into an Initialization C Program so that your system can be fully initialized simply by executing the Initialization program.
Notice we can select a control and immediately hide or show it over at KMotionCNC. The controls can be moved or resized. There is also unlimited undo/redo. Multiple controls can be selected by dragging the mouse over the graphical display. Click SHIFT to add more controls, or CTRL to remove from the selection.[[KFLOP C Programs|More Information]]
'''Examples: '''
* Select multiple controls for hiding and moving.
* Change main dialog screen dimensions.
* Change label text. Push SET key and KMotion CNC screen updates the text.
* Increase the size of the controls.
The screen editor features international text support===ModBus===Modbus can be connected to the PC or directly to KFLOP. Note that only certain fonts are capable of displaying international text  A PC connection will not be deterministically real-time but may work for basic speed control and on/off. In our example, we selected Arial  Here is a related Thread for interfacing KMotionCNC to Modbus using a [http://www.modbusdriver.com/modpoll.html free utility]:
Labels can show or toggle bitmaps based on an IO bit[https://www. As an example, we first we select bitmap 1, then bitmap 2dynomotion. Increase the size of the label, so the bitmap shows properlycom/forum/archive/sending%20ModBus%20msgs%20from%20KmotionCNC%20to%20a%20RS485%20port. Then assign an IO bit number that will control the bitmap displayed. Notice the bitmap turns green, because the bit is currently on. Open KMotion and look at the state of IO bit #46 and see that it is on. Toggling the bit affects the bitmap on the screen:html Sending ModBus msgs from KmotionCNC to a RS485 port]
[[File:Toggle-IO-bit.png|none|link=]]
Users can configure push buttons for text, font, size, color, and tool tip. Select two sample labels and change them To connect Modbus directly to typeKFLOP's [http: button//www. Select both buttons and modify their fonts as well as their sizedynomotion. Four colors are available for text and background, each in normal and depressed button statecom/Help/RS232/RS232. You can then change htm UART] see the name of each button individually, one to say “On” and the other“Off”. You can assign tool tips to each of the buttons, so when the operator hovers over the buttons, they will be prompted with a tool tip notification.C Examples in \C Programs\RS232\ModBus\
Buttons can be assigned to perform actions===Linux Support===KMotion Motion Libraries are fully supported under Microsoft Windows. Select a script that can either be a screen script or an action. We select an action type to set bit 46 to 1. Notice that this is the script that indicated that. For Some Users have ported the other button, we select an action which sets bit 46 KMotion Libraries to 0Linux. Now pushing the buttons   Dynomotion will perform these actions. Save your new screen as a screen script file. Screen script is offer support where possible but can't offer full support under the KMotionCNC directory and the sub-directory“Screens”Linux. Configure KMotionCNC   Special Thanks to use this new screen at every new startup[https://github.Notice that tool setup screen can be accessed by right-mouse clicking on the KMotionCNC title (in “Toolscom/Setup files”). Select parhansson/KMotionX Par Hansson] for the screen you just createdinitial Linux Port.
Some more advanced features include input fields, C program actions, label DROs. Load the addition example in the screen editor. Example contains two user input controls and one DRO label control. The input edit controls are associated with KFLOP persist variables 160 and 161. The DRO label is associated with KFLOP persist variable 162. The Add button is configured See [[Linux|here]] for screen script action to run a C program in KFLOP. The C program is contained in the file “Add.c”. Test it by entering two values and pushing the Add button. Now open KMotion and look at the simple C code that is behind the function. (Open the file “Add.c”)more info.
==Dynomotion Hardware Topics==
===General Hardware Information===
====[[KFLOP Hardware Info|KFLOP specific Hardware Info]]====
====[[KStep Hardware Info|KStep specific Hardware Info]]====
====[[Kanalog Hardware Info|Kanalog specific Hardware Info]]====
====[[SnapAmp Info|SnapAmp specific Hardware Info]]====
====[[Konnect Hardware Info|Konnect specific Hardware Info]]====
'''Momentary ===Wiring Diagrams===[[Media:Kanalog_Connections.pdf|Basic Kanalog DAC and Toggle button types in KMotion CNC Screen Editor'''Encoder Connections 3 Axis]]
[https[Media://wwwKanalogSchematic3Axis.youtube.com/watch?v=eE2mSUXxN2M https://www.youtube.com/watch?v=eE2mSUXxN2Mpdf|Basic Kanalog DAC and Encoder Connections 3 Axis #2]]
Start KMotion CNC Screen Editor, and click on the “Main” tab, then on “Read Script” and choose the file named MomentaryToggle[[Media:dyn4 kanalog KE1524 V1.scr1.png|Basic Kanalog DAC and DMM DYN4 Drive 1 Axis]]
You will see two buttons, a Momentary button assigned to bit46 and a Toggle button assigned to bit 47[[Media:Kflop-Kanalog_wiring_11-19-2018. You will also see two labels pdf|Kanalog with Geckos G210 updated 11-19-2018]] (Thanks to display the status of bits 46 and 47 as LED bitmaps. We also have KMotion displaying the status of bits 46 and 47.<span style="color: windowtext;">Joseph Mirocha</span>)
[[FileMedia:Momentary-button-2Kanalog_to_Tree_Journeyman_325_by_Rick_B.pngpdf|none|link=Kanalog to Tree Journeyman 325.pdf]](Thanks to <span style="color: windowtext;">Rick_B</span>)
Clicking the Momentary button activates the bit; releasing it,deactivates it. Clicking the Toggle button once sets the bit; clicking it again releases it[[Media:KFlopSnapBrushMPG.pdf|KFLOP+SnapAmp DC Brush Motors with MPG]]
[[Media:Stepper_Wiring_Diagram_Step-Dir_on_JP5.pdf|KFLOP JP5 Open Collector Step/Dir Connections to Power Step PSD5042-2P Drives ]]
[[Media:Matrika_V1_wiring_diagram_Rev1.pdf|KFLOP+KStep with VFD and NPN Limit Switches for Matrika Rev1]]
'''Instantaneous Feed Rate Display'''[[Media:KonnectTouchPlate.png|Touch Plate Wiring to Konnect]]
[https://youtueasyeda.becom/w350banshee/BreakoutBoard-bKvqXCd0Q https:93bdd16e3c3d48b98ae66c34f2436c40 User Created KFLOP JP7 Breakout//youtu.be/w-bKvqXCd0QOptoIsolation Board]Schematic, Gerbers, PCBs Publicly available (thanks 350banshee)
Normally the feed rate indication in KMotionCNC shows ''average'' feed rate over 100ms, assuming straight line motion[https://www. Here we use a C program to calculate a more instantaneous rate and display it on the KMotionCNC screen using the KMotionCNC screen editordynomotion. Here the C program samples two positions and times, computes the delta position and the delta time, formats it to a string and displays it onto DRO label 162 in KMotionCNC and it performs this com/wiki/index.php?action roughly every one ½ seconds=ajax&title=-&rs=SecureFileStore::getFile&f=/b/bb/RotarySwitchToKanalog. Here is the screen script for the screen shown on the left, we’ve added a type DRO label in the screen editor, edited colors and it is connected png Rotary Switch Connected to persist variable 162. This job consist of a rapid heal explore (?) at a rate of about 6 revolutions per second. It shows the instant feed rate being more correct.Kanalog Opto Inputs]
===3D Board Models===
[[Media:kflop-kstep-3d-models-1.snapshot.3.zip.txt|kflop-kstep-3d-models-1.snapshot.3.zip.txt]]  STEP file format - Thanks to Curtis
'''Split/Full/Hidden GViewer Display on Main Dialog Face'''[[File:kflop_kstep_render.JPG|none|link=|329x329px]]
[https://youtu.be/VkBhYpyGpNU https://youtu.be/VkBhYpyGpNU]
KMotionCNC Screen Editor supports changing main screen style. New Boolean Screen Script “Main:” Options: "Caption:" "MaxBox:" "MinBox:" "ResizeFrame:" "Maximize:"
[[Media:KFLOP3D_Step_IGS_Chris.zip.txt|KFLOP3D_Step_IGS_Chris.zip.txt]] STEP and IGS models - Thanks to Chris
'''Maximized Captionless KMotionCNC Screens'''[[File:KFLOP_3D.png|none|link=|413x296px]]
[https://youtu.be/R44F0_upIoA https://youtu.be/R44F0_upIoA]
New option in KMotionCNC Screen Editor V4.34e allows screens to be maximized to full screen and with or without Window Frame/Title. New options in Screen Editor: turn minimum box on or off, maximum box on or off, resizing frame on or off. Caption on top can be present or absent.
Available viewing options (three buttons on the top-right hand side of the screen[[Media: “Split”: Split screen mode, “View”: G Code Viewer or “Code”: G CodeKONNECT_BOARD_MODEL.zip.txt|KONNECT_BOARD_MODEL.zip.txt]] STEP model - Thanks to Jeff Redington
==<span style="text-decoration: underline;">'''2(Component locations may be off one way or another by . Control styles'''</span>=='''<br /> '''Available style options:<br /> [[File:Style-options.png|none|link=]]5mm)
* '''Label''' <br /> Can be text or bitmap. The background is determined by the main dialog background. * '''Button''' <br /> Buttons can have all 4 options (foreground and background colors in on- and off-state) or they can also be bitmaps. Labels can load actions/scripts when the main screen is loaded. * '''MotionButton''' <br /> Motion buttons are strictly for jog button use only.* '''ToggleButton''' <br /> See description above and [https://www.youtube.com/watch?v=eE2mSUXxN2M video].* '''DROLabel <br /> '''('''D'''igital '''R'''ead '''O'''ut) runs a program in KFLOP, e.g. reads two edit cells in the “Add” example and passes back the result. X, Y, and Z are other examples of DRO labels.* '''VertBar''' <br /> Plots a vertical graph from 0 to 100% and is read by KFLOP like DRO labels. See also the [httpsFile://youtuKonnect_Board.be/w-bKvqXCd0Q Instant Feed Rate Display video].* '''Radio''' button* '''Momentary''' '''button''' <br /> See description above and video:<br /> [https://www.youtube.com/watch?vpng|none|link=eE2mSUXxN2M https://www.youtube.com/watch?v=eE2mSUXxN2M|339x292px]* '''DualButton''' <br /> See description above and video:<br /> [https://www.youtube.com/watch?v=8dAEeGnLaRg https://www.youtube.com/watch?v=8dAEeGnLaRg]* '''Checkbox<br /> '''* '''DualLabel<br /> '''F for feed rate and S for spindle are example of dual labels. They display the state (one or another). They are fixed and cannot be edited.
==<span style="text-decoration: underline;">'''3. Control ''''''attributes'''</span>=='''[[File:Control-attributes.png|none|link=]]'''Konnect Basic Step file showing hole locations
[[Media:KonnectHoles.stp.txt|KonnectHoles.stp.txt]]
[[File:KonnectHoles.png|none|link=|352x323px]]
* '''Select ID'''<br /> Defines the name of the control on the screen.
* '''Type'''<br /> Defines the type of control, e.g.: CONTROL, PUSHBUTTON, COMBOBOX.
* '''Font'''<br /> Set the font type, size and normal, bold, or italic.
* '''BitmapFile1, BitMapFile2<br /> '''Select a bitmap image (.bmp, .gif or .png) for your buttons. BitMapFile1 will show the selected file when the button is in normal state, BitMapFile2 when the button pressed.
* '''Colors''' <br /> Select two colors for on- and off-state (text).
* '''Highlight''' <br /> Select two colors for on- and off-state (background).
* '''Tool Tip''' <br /> Compose text to describe the button action. This text will be visible when the user hovers over the button. 
* '''HotKey''' <br /> Assigns a keyboard key to perform an action. This field is by default set to “-1”. For example, select a control like “mm” and type “CTRL M” or select “in” and type “CTRL I” and click “Set”. The “x” button next to the field will restore the value back to “-1”.
* '''Var<br /> '''Numeric variable attribute. Assigning a number toggles the corresponding bit in KFLOP (from 0 to 2047).
* '''X, Y<br /> '''Changes the horizontal and vertical position of the control.
* '''Width, Height'''<br /> Changes the size of the control.
* '''Script'''<br /> Using this field, the user has three options:<br /><br />
a) Selecting a screen script file from the library:Kanalog Step Model with Mechanical hole and Pin locations
[[FileMedia:Script-Option-1Kanalog.pngstp.txt|none|link=Kanalog.stp.txt]]
b) Selecting an Action:<br />[[File:Script-Option-2KanalogFromStep.png|none|link=|none304x279px]]
c) Selecting a Windows Message:<br /> [[File:Script-Option-3.png|none|link=]]Kanalog Step Model with Mechanical hole and Connectors (Thanks to
* Roberto Gotti of Powertech)'''Show<br /Hide>'''<br /> Select a control and immediately show or hide it.
* '''Move/Resize'''<br /> Move the position of the control or change its size.* '''Undo/Redo <br /> '''An unlimited number of undoes and redoes is available. * '''Copy/Paste <br /> '''The user can edit all three screens (Split, View, and Code) by clicking “Copy” after making an edit such as moving a button, then loading the next screen, clicking outside the editable area and selecting “Paste”.* '''General <br /> '''When selecting multiple controls, white fields are shown when all settings are the same, and grey fields when the values are different. In the example below note that we have selected the radio buttons labeled 1 through 7. While they all share the same font type, size, width and horizontal (x) position etc., “text” and “y-position” are grayed-out, since the radio buttons’ text labels and their vertical position are unique to each field. To override this, just click into the grayed-out field(s) and start editing.<br />[[FileMedia:GeneralKANALOG_BOARD.pngstp.txt|none|link=KANALOG_BOARD.stp.txt]]
==<span style="text-decoration: underline;">'''<br />4. Main Window attributes'''</span>==* '''Main Dialog Screen<br /> '''Defines the look and feel as well as the size of your KMotionCNC screen. You can choose a background color, or select a bitmap file as your background. Choose the size of the window, or whether the window should be resizable or fixed and so on. <br /><br />* '''Script File'''<br />Select a screen script file from the library or set an action. A screen script file defines the look of a page. You can assign an action to a button to load a screen script file.<br />[[File:Style-fileKanalogWithConnectors.png|none|link=|311x286px]]
==<span style="text-decoration: underline;">'''5. Bitmap types, Alpha, and locations'''<Board Terminal DXF/span>DWG files===<br />The following bitmap types are supported[[Media: KFLOP_Terminals.bmp, dxf|KFLOP_Terminals.gif, and.png. Out of these, only the png file type supports alpha channels, i.edxf]] [[Media:KFLOP_Terminals. background transparencydwg|KFLOP_Terminals.dwg]]
[[Media:Kanalog_Terminals.dxf|Kanalog_Terminals.dxf]] [[Media:Kanalog_Terminals.dwg|Kanalog_Terminals.dwg]]
Images are stored in the following “Resources” location[[Media:Konnect_Terminals.dxf|Konnect_Terminals.dxf]] [[Media:Konnect_Terminals.dwg|Konnect_Terminals.dwg]]
[[Media:KStep_Terminals.dxf|KStep_Terminals.dxf]] [[Media:KStep_Terminals.dwg|KStep_Terminals.dwg]]
\KMotion434i\PC VC Examples\KMotionCNC\res===Wiring Topics===Place links to pages on wiring inputs and
===PC Example Applications===A number of PC Applications using the KMotion Libraries are available in the Software download.&nbsp; Visual Studio should be used outputs specific to modify/compile the applicationsyour experiences and projects.  Be descriptive with page titles and links.&nbsp;
Currently the projects are compatible with VS 2008 Standard but later Versions can upgrade the projects and can be used including the free Microsoft Version of VS 2013 Community.&nbsp; In some cases MFC capability needs to be added as a separate download.
'''Note All the projects in KMotion Versions 4.34a and later have now been updated and should work out-of-the-box with VS2015.'''
[[PC Example Applications|More information.]]
===KMotion Libraries - GCode Interpreter - Trajectory Planner - Coordinated Motion - .NET=KFLOP IDC Connectors and Cables====The KMotion Libraries are a series of DLLs (Dynamic Link Libraries) Cables that reside on the PC that contain connect between Dynomotion boards are normally included when purchasing the boards together. They are also very common core motion control, Iand easy to make. <br /O, ><br />Use '''16-conductor or 26-conductor ribbon cable''' (0.05 inch pitch 26 AWG preferrably or 28AWG) and communication functionality for KFLOPIDC sockets.  These libraries permit PC Applications <br /><br />[[File:RibbonCable.png|none|link=]]16 conductor ribbon cable 3M part number 3801/16 100 <br />https://www.digikey.com/product-detail/en/3m/3801-16-100/3M156105-100-ND/1107501<br /><br />26 conductor ribbon cable 3M part number C3801/26 100 <br />https://www.digikey.com/product-detail/en/3m/C3801-26-100/C3801-26-100-ND/1107648<br /><br />Winford also sells ribbon cable (although only the thinner 28 AWG):<br />http://www.winford.com/products/rib.php<br /><br />Note you can usually tear off wires to be built using high level control without being concerned with reduce the underlying details number of Interpreting GCode, Trajectory Planning, Coordinated Motion, Motion Buffering, USB Communication, etcconductors.For example from 26 down to 16. Tear off the conductors away from the red stripe that marks pin 1.<br /><br />The '''crimp tools''' are common:<br />https://www.amazon.com/Accessories-Crimp-Ribbon-Cable-Connectors/dp/B007R2JEM4/<br />[[File:RibbonCrimp.png|none|link=]]<br /><br />'''IDC Sockets 16-pin '''(pin pitch 0.1 inch)<br />https://www.digikey.com/product-detail/en/assmann-wsw-components/AWP-16-7240-T/HHKC16H-ND/5031953<br />Assman Part number AWP 16-7240-T[[File:16pinIDC.png|none|link=]]https://www.digikey.com/product-detail/en/assmann-wsw-components/AWP-26-7240-T/HHKC26H-ND/5011313[[File:26pinIDC.png|none|link=]]
[[KMotion Libraries - GCode Interpreter - Trajectory Planner - Coordinated Motion - ====KFLOP KStep JR1 Molex Power Connectors====KFLOP and KStep JR1 are standard Disk Drive Power Connectors.NET|More information]]Possibly one of the most common connectors.Originally used on PC ATX Power Supplies. Sometimes referred to as Molex Connectors. They have 4 pins with 0.2 inch pitch with 0.083~0.084 inch socket pins. The mating cable will have female socket pins as shown here:
[[File:Molex_female_connector.jpg|none|link===KFLOP C Programs===C Programs provide a powerful and flexible capability to perform almost any sequence of operations within KFLOP.   In most cases after you have tested and tuned all your hardware using the KMotion.exe setup program all the settings and initialization steps required for your system can be placed into an Initialization C Program so that your system can be fully initialized simply by executing the Initialization program.|251x168px]]
[[KFLOP C Programs|More Information]]
Molex Series 8981 P# [https://www.digikey.com/short/zjp329 0015244048]  using Molex Series 8980 Crimp Pins P# [https://www.digikey.com/short/zjp3ff 0002081201]
Also AMP Series MATE-N-LOK P# [https://www.digikey.com/short/zjpq3n 1-480424-0] using AMP Series MATE-N-LOK Crimp Pins P# [https://www.digikey.com/short/zjpqqw 60619-1] or P# [https://www.digikey.com/en/products/detail/molex/0194200002/2404783 194200002]
===ModBus===Modbus can be connected to the PC or directly to KFLOP.  A PC connection will not be deterministically real-time but may work for basic speed control and on/off.Molex Crimp Tool P#  Here is a related Thread for interfacing KMotionCNC to Modbus using a [httphttps://www.modbusdriverdigikey.com/modpoll.html free utilityen/products/detail/molex/0640160035/665311 0640160035].
https://groups====MPG Wiring and Interface====MPGs (Manual Pulse Generators) should be connected directly to KFLOP for guaranteed real-time response (not USB based or connected to the PC).yahoo MPGs are handled by a C Program that monitors the MPG and creates motion based on the MPG Encoder changes and switch selections for axis, speed, and so forth.  See the MPG C Program Examples.  Here is a Discussion with other links.com/neo/groups/DynoMotion/conversations/topics/7941
To connect Modbus directly to KFLOP's [httphttps://www.dynomotion.com/Helpforum/RS232archive/RS232Jogging%20Pendant.htm UARThtml Jogging Pendant] see the C Examples in \C Programs\RS232\ModBus\
==Dynomotion Hardware Topics=====General Hardware Information===KFLOP [[KFLOP Hardware Info|Hardware Info]https://www.dynomotion.com/forum/archive/Connecting%20Keling%20MPG2%20pendant.html Connecting Keling MPG2 Pendant]
KStep [[KStep Hardware Info|Hardware Info]https://www.cnczone.com/forums/dynomotion-kflop-kanalog/349740-applying-acceleration-mpg-target-possible.html#post2119732 CNCZone Thread] on obtaining smooth filtered motion.
Kanalog [[Kanalog Hardware InfoFile:MPG4_from_cnc4pc.jpg|Hardware Infonone|link=|83x169px]]
SnapAmp [[SnapAmp Info|Hardware Info]]====Interfacing NPN Devices to KFLOP IO====NPN devices (open collector)operate as a switch to GND and can be interfaced to KFLOP using a pull up resistor as shown below. When the transistor switches to 0V the KFLOP IO Pin is driven low. The transistor will need to sink ~3ma. When the transistor is off (open circuit) the resistor pulls the IO Pin to 3.3V. Note even though some KFLOP IO Pins can tolerate 5V pulling them above 3.8V should be avoided when possible so the 3.3V supply is used. This technique will only work with KFLOP IO Pins that do not have pull down resistors (JP7 and JP5). In some cases a 0.1uF Ceramic capacitor connected close to KFLOP might be added in parallel with the resistor to filter noise.  Cable shielding connected to KFLOP GND on the KFLOP end only is recommended.  Note that in noisy environments this technique may couple noise into KFLOP so opto isolation should be used instead.
Konnect [[Konnect Hardware InfoFile:NPN_Interface_to_KFLOP.png|Hardware Infonone|link=|544x544px]]
===Wiring Diagrams=Multiplexing Encoder Inputs to KFLOP JP4 and JP6====[[Media:Kanalog_Connections.pdf|Basic Kanalog DAC If KFLOP JP7 and Encoder Connections JP5 are used for other purposes the encoder inputs can be multiplexed to KFLOP JP4 and JP6. There is an option to multiplex encoders 0-3 Axis]]from JP7 to JP4 and another option to multiplex encoders 4-7 from JP5 to JP6. See the MuxEncoders.c for an example.
[[Media:KanalogSchematic3AxisNote the JP4 and JP6 IO are 3.pdf|Basic Kanalog DAC 3V inputs and Encoder Connections shouldn't be driven hard (more than 10ma) above 3 Axis #2]].8V. This is not usually an issue as most encoders or RS422 drivers don't do this. The inputs also have 150 ohm termination.
[[Media:dyn4 kanalog KE1524 V1The following line of code might be added to your Initialization C Program.1It needs to be executed once to multiplex the encoders after any power cycle.png|Basic Kanalog DAC Encoders 0-3 will then be input on JP4 and DMM DYN4 Drive 1 Axis]]4-7 will be on JP6. Both JP4 and Jp6 have 10 IO bits. The 4 encoders will appear on the first 8 IO bits. 2 bits for each encoder's A B channels in order. So for example Encoder #0 will appear on JP4 IO16 (Pin5) and IO17 (Pin6)
[[Media:Kanalog_with_Geckos_G210.pdf|Kanalog_with_Geckos_G210]] (Thanks to <span stylepre class="colorbrush: windowtext;c">Joseph Mirocha// Mux encoder inputs from KFLOP JP7 & JP5 to JP4 and JP6FPGAW(ENC_NOISE_FILTER_ADD) = ENC_0_3_JP4 + ENC_4_7_JP6 + ENC_NOISE_FILTER_DEFAULT_VAL; </spanpre>)
[[Media:KFlopSnapBrushMPG.pdf|KFLOPJP4 and JP6 have +SnapAmp DC Brush Motors with MPG]]5V available on Pin1 and GND on Pins 8 and 9 that might be used to power 5V encoders.
[[Media:Stepper_Wiring_Diagram_Step==<span id="Axes_Servo_Tuning_and_Trajectory_Planner" class="mw-Dir_on_JP5.pdf|KFLOP JP5 Open Collector Stepheadline">Axes Servo Tuning and Trajectory Planner</Dir Connections span>=====Basic Servo Tuning Overview===Once an axis is configured and proved capable of holding a position it is ready to Power Step PSD5042-2P Drives ]]be tuned and optimized. Most often a small value of P Gain only is used to show the servo is functional and can hold position. The Servo may be very weak and inaccurate but will be functional.
[[Media:Matrika_V1_wiring_diagram_Rev1.pdf|KFLOP+KStep with VFD Every system is different and NPN Limit Switches for Matrika Rev1]]the tuning parameters are interactive in a manner that usually doesn't allow parameters to be determined one at a time. Rather after one parameter is changed it may be necessary to revisit the other parameters.
[[Media:KonnectTouchPlateIn general higher gains will reduce errors and improve accuracy, but tend to make the system more unstable.png|Touch Plate Wiring   So the general idea is to Konnect]]increase gains to reduce errors as much as possible but still have a stable system.
Often during tuning the system may go unstable. In fact, it is normally intentionally driven to instability to find its limits for a certain parameter. This can result in a violent oscillation or worse so one should be prepared to quickly disable the Servo. If an appropriate [httpshttp://easyedadynomotion.com/350bansheeHelp/BreakoutBoard-93bdd16e3c3d48b98ae66c34f2436c40 User Created KFLOP JP7 BreakoutConfigurationScreen/OptoIsolation BoardConfigurationScreen.htm#Max_Following_Error Max Following Error] Schematicis used the axis can be automatically disabled before the oscillation becomes too violent, Gerbers, PCBs Publicly available (thanks 350banshee)yet not disable when performing a normal test.
===Wiring Topics===Place links KMotion.exe allows you to pages change any axis parameter on wiring inputs and outputs specific the Step/Response, Config, or Filters Screens then simply push "Move" to your experiences and projectssee the effect of the changeBe descriptive with page titles Note that as performance improves the errors will become small and linksdifficult to see on the Position Plot without Zooming in (Left click drag) so changing the plot type to plot the error is useful.
====MPG Wiring and Interface====MPGs (Manual Pulse Generators) should be connected directly to KFLOP for guaranteed real-time response (not USB based or connected to the PC).  MPGs are handled by a C Program that monitors the MPG and creates motion based on the MPG Encoder changes and switch selections for axis, speed, and so forth.  See the MPG C Program Examples.  Here is a Discussion with other links.The overall process normally goes something like this:
https# Select a Test [http://groupsdynomotion.yahoocom/Help/StepScreen/StepScreen.htm#Measurement Move Size] and [http://dynomotion.com/neoHelp/groupsStepScreen/DynoMotionStepScreen.htm#Motion_Profile Motion Profile].  [http:/conversations/messageswww.dynomotion.com/12287wiki/index.php?title=Main_Page#Velocity.2C_Acceleration.2C_and_Jerk See Also]# Select [http://dynomotion.com/Help/StepScreen/StepScreen.htm#max_limits Max Limits] to allow for the Test.  [http://www.dynomotion.com/wiki/index.php?title=Main_Page#Max_Limits_-_Error See Also]# Determine maximum level of [http://dynomotion.com/Help/StepScreen/StepScreen.htm#PID P Gain]# Determine maximum level of [http://dynomotion.com/Help/StepScreen/StepScreen.htm#PID D Gain] (with Low Pass Filtering)  See Also [http://www.dynomotion.com/wiki/index.php?title=Main_Page#Torque_Servos_vs_Velocity_Servos here] and [http://www.dynomotion.com/wiki/index.php?title=Main_Page#Lead_Compensator_vs_Derivative_Gain here].# Determine new maximum level of P Gain now that D Gain increased stability# Add I Gain to improve accuracy and remove steady state errors.  [http://www.dynomotion.com/wiki/index.php?title=Main_Page#I_Gain.2FMax_Limit_Integrator See Also]# Add [http://dynomotion.com/Help/StepScreen/StepScreen.htm#Feed_Forward Feed Forward] to reduce errors
[[File:MPG4_from_cnc4pc.jpg|none|link=|83x169px]]
==<span id="Axes_Servo_Tuning_and_Trajectory_Planner" classTorque Servos vs Velocity Servos="mw==+/-headline">Axes Servo Tuning 10V Analog Amplifiers usually come in one of two varieties: '''Torque''' or '''Velocity'''. Torque mode amplifiers consider the input command as a Torque Command and Trajectory Planner<work to generate the commanded Motor Torque. Velocity mode amplifiers consider the input command as a Velocity Command and work to generate the commanded Velocity.  Its important to understand what type of Amplifiers you have.  '''Velocity Mode Amplifiers''' need some form of feedback going to the Amplifier in order for the drive to know the current velocity. This might be a digital encoder or an analog tachometer. Its easy to tell if you have a Velocity Mode Amplifier by looking at a plot of a move on the Step Response Screen.  The Output (green plot with right scale) will be proportion to the motor velocity.  When moving at constant speed the output will be relatively constant.  See in the plot below the output (green) remains at a relatively constant ~1100 DAC counts while the position (red) ramps at a constant slope of the 90000 count/span>sec rate: [[File:VelocityAmp.png|none|link=]] Velocity mode amplifiers can be relatively easy to tune using only P (Proportional) Gain.  Additional Gains and filters can be used for best performance but using only P Gain will often result in reasonable performance and a stable system (unlike Torque Mode Amplifiers).  As an example consider controlling the speed of a car using only Proportional Gain as it approaches a target (Stop sign).  Consider a P Gain of 0.1 where at 1000ft from the stop sign we command 1000 x 0.1 = 100MPH.  Then at 100ft we command 10MPH.  Then at 10ft we command 1MPH.  This results in a nice, smooth, exponential approach, without overshoot. Contrast this with controlling the acceleration (torque) of a car using only Proportional Gain as it approaches a target (Stop sign).  At large distance we apply maximum acceleration.  Although as we approach the stop sign we reduce acceleration, we continue to accelerate and speed continues to increase until we pass the stop sign.  Torque mode servos are inherently unstable.  P only gain only works at all if there is some friction (the car is dragging a sled which slows us down with less torque).  '''Acceleration Mode Servos''' may or may not have any feedback.  If they have feedback it is usually used only to commutate a brushless motor.  In the plots the Output (green) will have large magnitude when the Position (red) is accelerating, where the plot has curvature (changing slope). Acceleration mode Servos are unlikely to work well or at all with only P Gain.  Some form of damping or lead compensation will usually be required to get a stable system.   D (derivative) Gain (or a lead compensator) should be included with the P Gain to help stabilize the system.  D Gain can be increased to make the system more stable up to a point.  After some point the additional D Gain will make the system more unstable. and should be reduced. When using D Gain (or lead compensation) the quantization noise (steps) in the encoder position can cause spikes in the output.  For example a D Gain of 100 will cause a spike of 100 counts in the output whenever the input changes suddenly by 1 count.  If the spikes are very high amplitude and short duration, the Amplifier may not handle them in the expected manner.  A low pass filter can be used to widen and reduce their amplitude allowing the amplifier to handle them more effectively.  Typically a 2nd order low pass filter of 500Hz Q=1.4 is used.  The last filter is normally used so it is applied to any Feed Forward. Such as: [[File:LowPass400Q1p4.png|none|link=|680x439px]] 
===<span id="Velocity.2C_Acceleration.2C_and_Jerk" class="mw-headline">Velocity, Acceleration, and Jerk</span>===
<div id="yui_3_16_0_1_1445622719616_3315" class="yiv2818182665class" style="color: #000000; font-size: 13.3333px; font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; background-color: transparent; font-style: normal;">The Velocity, Acceleration, and Jerk in the Step Response Screen (KFLOP parameter settings) and the Acceleration and Velocity in the KMotionCNC | Tool Setup | Trajectory Planner | Axis Parameters are both used for different things.  The two sets of parameters are independent. </div>
So to provide some margin an Max Limit Integrator Value of 3500 might be used.
 
 
 
===Max Limits - Error===
Max limits error can be helpful to have your system respond less violently in the abnormal event where an excessively large error occurs.  Normally with a properly tuned system following errors should be small.   Setting a Max limits error can cause the servo to treat errors beyond a specified limit as if they were only the size of the limit and therefore respond less so than they would otherwise.  The max limits error is normally set to a value so it is not limiting under normal circumstances.
 
 
The Plot below shows a situation where a small max limits error combined with a low P gain severely limits the Output.  In the plot below a large move (10000 counts) at a high speed (40000 counts/sec) is commanded.  Only P Gain (0.2) is used to provide the Output (green).  The max error limit of 200 combined with the low gain (0.2) limits the output to only 40 DAC counts.  Even as the true error increases to many thousands of counts, the servo is told to ignore the amount over 200.  So the output can never exceed 40 DAC counts.  The 40 DAC count limit means that the Axis is therefor not capable of providing the output necessary to keep up with the commanded motion.  The axis does the best it can with the limited output, and only does a fraction of the desired motion.
 
[[File:Move10000.png|none|link=|665x431px]]
 
 
After increasing the max limits error the Output (green - right scale) now goes to a much higher value (900), and the Position (red) follows the Command (blue) to a much better degree.
 
[[File:Move10000_nolimit.png|none|link=|667x430px]]
 
 
Increasing the P Gain to 1.6 also applies more Output sooner and the Position follows the command still better.
 
[[File:Move1000_p1.6.png|none|link=|667x432px]]
 
 
 
 
 
 
 
===Lead Compensator vs Derivative Gain===
Derivative (D) Gain is often used to help stabilize a system.&nbsp; It helps to think in the Frequency Domain to help understand how the two forms of compensation help.&nbsp; Please read below and [http://dynomotion.com/Help/BodeScreen/BodeScreen.htm this] for more information on the Frequency Domain.&nbsp; Both Compensation methods add positive phase to help stabilize the system.&nbsp; Unfortunately both methods increase gain at higher frequencies possibly causing the system to go unstable at higher frequency.&nbsp; A Lead Compensator provides the benefit of positive phase but without as much gain increase at higher frequencies.&nbsp; This figure shows a simplified Gain Plot comparison:
 
 
[[File:DGainvsLead.png|none|link=|593x593px]]
 
Here is a Bode Plot of a P=0.5 D=20 Compensator.   Note the KMotion.exe Bode Plot Screen has the capability of plotting the Frequency Domain Response of the PID+Filters Compensation.  Assume we desire positive phase to be added at 40Hz.  Notice the positive phase of 40 degrees at 40Hz which is good.  However the Gain increase in the 1KHz region of about 21db which is bad.
 
[[File:P.5D20Annotate.png|none|link=|621x460px]]
 
 
Here is a Bode Plot of a P=0.5 N1=N2=25Hz D1=D2=70Hz Compensator.   Assume we desire positive phase to be added at 40Hz.  We choose N1 N2 and D1 D2 to surround the frequency where the positive phase is desired.  Moving them further apart will increase the amount of positive phase but also increase the added Gain.  Notice the positive phase of 60 degrees at 40Hz which is good.  However the Gain increase in the 1KHz region of about 12db which is bad.  However both are improvements over the D Gain compensator.
 
 
 
[[File:PoleZeroFilter.png|none|link=|210x319px]]
 
 
 
[[File:P.5D0N25D70Annotate.png|none|link=|644x478px]]
 
 
 
===Tuning Master/Slave Configurations===
Master/Slave [http://dynomotion.com/Help/ConfigurationScreen/ConfigurationScreen.htm#Master/Slave_Settings Configurations] allow two (or more) motors to drive the same axis.  Slaves are configured to follow a Master Axis.  For example two lead screws on both sides of a gantry.
 
Tuning slaved axes is kind of a catch 22.  In order to tune one axis the other axis must be tuned well enough to follow and vice versa.  If possible, disconnect any mechanical linkage between the Master and Slave and test them separately without Slaving the Axes together to verify each axis Servos (can hold a position), moves at least somewhat properly, and moves in the same direction (assuming a positive [http://dynomotion.com/Help/ConfigurationScreen/ConfigurationScreen.htm#Master/Slave_Settings Slave Gain] will be used).
 
It is usually possible to incrementally tune each axis, at first moving slowly, then later at higher speeds, accelerations, and gains.  Only the Master Axis can be tested with the [http://dynomotion.com/Help/StepScreen/StepScreen.htm Step Response Screen].  This is because the Slave will follow any movement of the Master, but the Master will not follow movement of the Slave.  So if the Master Axis is moved all is well as both axes will move together, but if you try to move the Slave axis the two axes will fight.  The Master fighting to stay where it is, and the Slave fighting to move.
 
To test/tune the Slave axis temporarily reverse the Master/Slave roles to make it the Master and then test it as the Master.
 
Note: only the Master Axis should be included into the Coordinated Motion System.
 
 
===Bode Plots===
A Bode Plot is a powerful tool for characterizing and providing insight into a dynamic system. It can help determine closed loop stability, bandwidth/performance, resonant frequencies, and more. It is entirely based on the system being linear. Linear in the sense that if the amplitude of some input signal is changed then the output signal will change proportionally as well. Unfortunately most systems are not entirely linear. Stiction, backlash, encoder quantization, amplifier saturation, and other effects are non-linear. For example driving a system with a signal too small to overcome stiction will result in no output at all whereas a larger signal will result in some output. This is clearly non-linear behavior. It would be nice to use a technique that handles non-linear systems but basically none are known.<br data-attributes="%20/"><br data-attributes="%20/">A Bode Plot is made injecting a stimulus to the system and observing how the system responds. For the reasons of non-linearity it is very important to perform a Bode Plot measurement using a representative level of stimulus similar to what the system will actually have during normal operation. If the Stimulus is not adjusted properly the result is likely to be completely invalid. Additionally the system should be reasonably tuned and stable so that it is responding in a reasonable way to the stimulus. If the system is unstable or very poorly tuned the result is likely to be completely invalid.<br data-attributes="%20/"><br data-attributes="%20/">You might think of it somewhat like shaking a box to determine what is in it. You should shake it with enough intensity and at frequencies to get some reaction, but not so high of intensity to break or distort the object inside.<br data-attributes="%20/"><br data-attributes="%20/">To create a Bode Plot use the KMotion.exe Bode Plot Screen. First select Plot: Time domain - Command, Position, Output vs Time and adjust the Amplitude and cutoff Freq until there is small but significant Position (red) changes (ie 50 encoder counts), at a frequency low enough that the Position at least somewhat attempts to follow the Command (blue), and where the Output (green) is not near saturation for the Drive being used.<br data-attributes="%20/"><br data-attributes="%20/">After the Stimulus/Noise Injection settings are set switch to Plot: Open Loop - Magnitude and Phase vs Frequency. Set the number of Samples to average (ie 20) and perform a Measurement.  &nbsp; [http://dynomotion.com/Help/BodeScreen/BodeScreen.htm See here for more information]. ===Links to other Information on Tuning and Bode Plots===[http://ctms.engin.umich.edu/CTMS/index.php?example=Introduction&section=ControlFrequency umich.edu Introduction section Control Frequency] [http://www.motiontech.com.au/assets/pdf/Kollmorgen%20Use%20Control%20Theory%20to%20Improve%20Servo%20Performance%20230712.pdf Kollmorgen Use Control Theory to Improve Servo Performance 230712.pdf]
==Problems and Resolutions==
===Software-Specific Problems and Resolutions===
:* Place links to pages explaining resolutions to problems that are largely software-related here
[[KFLOP User C Programs Compiling/Launching Slowly because of Windows Defender]]
 
===Hardware-Specific Problems and Resolutions===
:* Place links to pages explaining resolutions to problems that are largely hardware-related
====[[Step/Dir Drives loose lose 2 Steps for each pair of Direction Reversals]]==== 
==Applications and Projects==
:* Place links to pages that explain how you accomplished your particular project.  Write clear explanations that provide background on what you did and how you did it.
====[[Tool Changer - router linear 4 Tools - C Program]]====[[File:LINEAT+ATC.jpg|none|link=|246x178px]]====[[Part Zero & Tool Height Touch Plate|Part Zero & Tool Height Touch Plate]]More linear milling tools: https://www.ichome.com/
====[[Part Zero & Tool Height Touch Plate|Part Zero & Tool Height Touch Plate]]====
====[[Driving Hobby Servos]]====
[[File:HobbyServo.png|left|link=]]
[[Driving Hobby Servos]]
[[File:HobbyServo.png|left|link=]]
HiTec Type
==Electrical Discharge Machining==
[https://en.wikipedia.org/wiki/Electrical_discharge_machining EDM (wikipedia)] is a method of cutting materials with high precision and detail.  Dynomotion Motion Controllers work well for EDM because of the ability for feedrate to be dynamically controlled including reversal along cutting path.
[[Information on BAXEDM Arc Generators used with KFLOP]]
HiTec TypeApplied Science video that shows how to build an BAXEDM drilling machine using KFLOP and describes how it works:  {{#ev:youtube|https://youtu.be/rpHYBz7ToII|||||start=980}} ==How to convert a milling machine to a 3D printer in 3 easy steps==[[File:CNCto3DPrinter.png|none|link=]] More information [[How to convert a milling machine to a 3D printer in 3 easy steps|here]].
==International and other Languages==
61
edits