User Tools

Site Tools


mycnc:server_api

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mycnc:server_api [2019/10/22 12:18] ivanmycnc:server_api [2022/09/07 15:33] (current) ivan
Line 1: Line 1:
 ====== Server API ====== ====== Server API ======
  
-This article serves as the main reference point for all myCNC material related to the myCNC Server API. It will be expanded at a full manual.+//This article serves as the main reference point for all myCNC material related to the myCNC Server API.// 
  
-The server API allows to control movement and machine coordinates remotely, via a series of commands. A list of such commands is presented below for jog control, etc.+The server API allows to control movement and machine coordinates remotely, via a series of commands. 
 + 
 +To enable Server API functionality, first head into your Settings > Config > Network, and enable the ''Server Interface'' option, as well as set a ''Server Port'' (the server port will be used to connect to your system via the ''telnet'' command, for example ''telnet 127.0.0.1 4266''): 
 + 
 +{{:mycnc:server-api-002-network-tab.png}} 
 + 
 +A list of Server API commands is presented below for jog control, etc. To obtain a full list of commands, type ? while connected to the remote host: 
 + 
 +{{:mycnc:server-api-001-commands-list.png}} 
 + 
 +A full list of commands is provided below: 
 + 
 +^ Parameter ^ Description ^  
 +| EchoMode |  | 
 +| ProgramFileOpen |  | 
 +| ProgramBegin |  
 +| ProgramAppend | 
 +| ProgrmaEnd | 
 +| ProgramPlay | Starts running the program | 
 +| ProgramPlayBack | 
 +| ProgramPlayStep | 
 +| ProgramPlayStepBack | 
 +| ProgramPause | 
 +| ProgramStop | Stops the running program | 
 +| ProgramReset | Resets the program to the beginning |  
 +| GetEstimateTime | 
 +| GetMachinePosition | Returns all of the current machine position coordinates | 
 +| GetProcess | 
 +| GetWorkPosition | Returns all of the current work (program) coordinates | 
 +| GetMyCNCVersion | 
 +| GetFVariable | Returns the value stored in a global variable (as double) | 
 +| GetIVariable | Returns the value stored in a global variable (as int) | 
 +| GetReady | 
 +| LineAppend | 
 +| GetScanData | 
 +| GetSensors | 
 +| GetMCC | Get Motion Control Code - read machine status, returns a number (for example, 3) | 
 +| GetMCPtr | Get Motion Control Pointers | 
 +| GetHW | 
 +| GetHWDAC | 
 +| GetHWADC | 
 +| GetHWInputBit | Returns (reads) the state of a particular input | 
 +| GetHWInputs | Returns (reads) the state of an input group | 
 +| GetHWOutputs | 
 +| GetHWPWM | 
 +| GetPWMs | 
 +| GetPausedLine | 
 +| GetLastMessage | 
 +| GetWorkState | 
 +| PendantWidgetShow | 
 +| PendantWidgetHide | 
 +| PendantWidgetHidden | 
 +| RunPLC | 
 +| SaveConfig | 
 +| SetG92 | Sets the current work position to the selected value (for example, ''SetG92 X0'') | 
 +| SetHWDAC | 
 +| SetHWOutputBit | 
 +| SetHWPWM | 
 +| SetPendant | 
 +| SetRotationAngle | 
 +| SetCNCVariable | 
 +| SetJog | 
 +| SetScale | 
 +| SetGVariable | 
 +| SinglePlay | 
 +| ShutDown |  
 +| GetJobName | Get the full job name and file path | 
 +| GetSVariable8020 | Get the full job name and file path (same as GetJobName) | 
 +| GetSVariable8109 | Get current job (file) size, in MB |  
 +| GetSVariable8108 | Get the current job (file) folder path (same as GetJobName but without the actual file name) | 
 +| GetSVariable8107 | Get the current job name without the folder path (name only) | 
  
 ====Server API, Jog control==== ====Server API, Jog control====
Line 36: Line 106:
 ====Server API, Pendant control emulation==== ====Server API, Pendant control emulation====
  
-Server API has a command to simplify Pendant control emulation. This command can be used for writing third-patry Pendant control device drivers.+Server API has a command to simplify Pendant control emulation. This command can be used for writing third-party Pendant control device drivers.
  
 ==SetPendant== ==SetPendant==
Line 126: Line 196:
 ===Manipulation through PLC procedure=== ===Manipulation through PLC procedure===
  
-Server API command "RunPLC" loads and runs PLC procedure on the controller end with a given parameter. We can run a PLC procedure that manipulates Hardware outputs to get a similar result. Normally every profile configuration contains PLC procedures for Hardware outputs manipulation :+Server API command "RunPLC" loads and runs PLC procedure on the controller end with a given parameter. We can run a PLC procedure that manipulates Hardware outputs to get a similar result. Normallyevery profile configuration contains PLC procedures for Hardware outputs manipulation:
  
 ==M62== ==M62==
mycnc/server_api.txt · Last modified: 2022/09/07 15:33 by ivan

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki