Skip to content

Beckhoff-USA-Community/TcHmiCncControls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TcHmiCncControls

TwinCAT HMI CNC Controls

The intent of this package is to provide framework controls for use with CNC applications on the Beckhoff TwinCAT HMI platform.

Controls

A simple utilization of the ace editor configured for GCode and wrapped in a TwinCAT HMI framework control. It provides basic editor functions, syntax highlighting, search & replace, etc.

A GCode parser and interpreter, along with a 3D rendering environment using the BabylonJS engine. This control is intended to provide a 3D tool path visualization of the supplied GCode string.

Version Info

The framework project has recently been ported to TwinCAT HMI 1.14. To open it in 1.12, simply change the following like in the TcHmiCncControls\TcHmiCncControls.hmiextproj file:

<HmiRecent>14.1.345.1</HmiRecent>

to

<HmiRecent>1.12.760.59</HmiRecent>

Quick Start

  1. Add reference (Either as a package or as a project reference)

  1. Drop controls on page
  2. Call the SetPath method of the Renderer with the Editor's Content property as input

The control is also able to render the path progress based on the selected line in the editor. It also supports click events on the rendering itself to take you to the GCode line in the editor:

  1. Enable the Render Progress property of the Renderer

  1. Bind the Renderer's Selected Mesh property to the Editor's Selected Line property
  2. Bind the Editor's Selected Line property to the Renderer's Selected Mesh property