ProEZDNC DNC software program for easy RS232 NC file transfer to CNC machines - free 60 day trial.


ProEZDNC - DNC Syntax ProEZDNC allows you to send files to your CNC and receive files back from your CNC without leaving the controller. To enable ProEZDNC to understand what you actually want to do, be it to send a file to your CNC or receive a file back from your CNC, you need to setup your DNC commands.

These commands can be permanently stored in your CNCs memory as very small NC files and each time you want to send or receive a file you edit the filename portion of the DNC command so that ProEZDNC now knows which command and file you want. You then punch this small file OUT of your CNC via the RS232 port and immediately put your CNC into receive mode - some time later ProEZDNC will send the file you requested. (Saving a file OFF your CNC is even easier, as all you do is punch out the file and ProEZDNC will automatically save it away)

All you need do is setup these commands and make sure that what you setup is the same at the ProEZDNC and CNC ends.
Basically, a DNC command block is made up of 3 simple parts... 1. the command 2. the filename(s) 3. the End Command Character. In the first example below, the DNC command is "(/GET", the filename is "TEST" and the End Command Character is ")".

Whenever you send this out of the CNC, ProEZDNC will check first for which command you have sent, it will try and find the end-request character, and it will then try and work out the names of the files you have specified. You can create any DNC commands of your own, using any sequence of characters as long as it follows this simple structure. The only proviso is that the commands are not duplicated elsewhere in the DNC command file (such as in comments).

CNC with comments - Send file to CNC from PC

%
(/GET TEST)
%


The command line consists of this structure...

DNC COMMAND + FILENAME + END COMMAND CHARACTER

The actual block example as above
(/GET + TEST + )

This program is stored on your CNC.  In this example, it will get the file TEST from the default folder, with the default file extension on your PC, and send it to the CNC.  If you wanted to get another file, you would simply edit the comment block to the filename you wanted.  For example, edit the "TEST" to "YOURFILENAME".   You would send this program out through the CNC port, and when it had been sent, put your CNC into receive mode.  A short while later, ProEZDNC sends you the appropriate file (if it exists on your PC).

You can use any numbers or characters and spaces in your filename. Because many CNC do not allow backspace, all "/" are replaced by "\" . In addition if you want to explicitly request a file, then "//" are replaced by colons so that disk drives can be requested.

It's important to understand that IT DOES NOT REALLY MATTER what you use for these requests AS LONG AS BOTH THE CNC AND PROEZDNC MATCH.  For example you could set it up so that (DOG meant send me a file and as long as you send out (DOG TEST) from your CNC it would send back the file "TEST"The use of "(/GET" is purely arbitrary, we use this as default, because you are GETTING a file WITH RESPECT TO THE CNC. You could just as easily use (RECEIVE, ie receive a file from the PC, the "/" block skip has no bearing at all, its just we like the blockskip, because that block would NEVER get executed by the control accidentally and cause a possible tool movement.

Please do not get confused with program numbers.  For example on a Fanuc you are only allowed a 4 digit program number.  This bears absolutely no relation to the file you send back, because on the PC you can call a file what you like (although many of our customers tend to call the file on the PC the same as that on the CNC)

More examples

%
(/GET USA/TEXAS/AEROSPACE/1000)
%


This will get the file 1000.TXT from your root default folder, and get it from the sub folder \USA\TEXAS\AEROSPACE with the default extension of TXT

%
(/GET C//USA/TEXAS/AEROSPACE/1000.CNC)
%


This will get the file 1000.CNC from the folder C:\USA\TEXAS\AEROSPACE

Once you get used to it, and understand how it works, it is very easy indeed.


To save a file back to your PC from your CNC Control


Saving a file back to your computer from your CNC is very easy and you have 3 separate ways of doing this.

Method 1. You can embed the command within the filename itself and this command tells ProEZDNC what to call the file. For example all you have to do is something like this (NOTE : You should not duplicate the command elsewhere in the program or have multiple commands stored in the same file or unpredictable results may happen)

Tick the "Receive File Command Is In My Code" option
%
N10 (/PUT 1000)
N20 X30 Y20 M3
N30 G00 Z20 M6 T3
....
....
....
....
M30
%

Then all you do is just dump this file out of your CNC and ProEZDNC will save it away with the filename you specify. If you make a mistake and ProEZDNC cannot interpret the result it will still get stored away with the machine name and the date and time as part of its filename so you can never lose information....

Another example
%
N10 (/PUT UK/YORKSHIRE/1000)
N20 X30 Y20 M3
N30 G00 Z20 M6 T3
....
....
....
....
M30
%


This will put the file 1000.TXT into the root save folder, in the subfolder \UK\YORKSHIRE\. If any of the folders leading to the filename do not exist, they are automatically created.

%
N10 (/PUT D//CNCFILES/FANUC/VERTICAL/UK/YORKSHIRE/1000.NCF)
N20 X30 Y20 M3
N30 G00 Z20 M6 T3
....
....
....
....
M30
%


This will put the file 1000.NCF into the folder D:\CNCFILES\FANUC\VERTICAL\UK\YORKSHIRE\. If any of the folders leading to the filename do not exist, they are automatically created.

The use of "(/PUT" is purely arbitrary, we use this as default, becausyou are PUTTING a file WITH RESPECT TO THE CNC back to the remote PC. You could just as easliy use (SEND, ie SEND a file back to the CNC, its up to you.

Method 2. If you don't want to embed the command within the filename itself then you can, but it has to be a two stage process .

The first stage - You need to output a file that contains the filename information, this then puts ProEZDNC into a receive state, and you then send the actual file out of the CNC, this is the second stage. So whereas in the method 1 above, that was a single operation, this is a 2 stage operation.

DO NOT Tick the "Receive File Command Is In My Code" option
%
N10 (/PUT 1000)
M30
%


You output this file out first, this tell ProEZDNC to get ready to receive the actual file you want to store away, above its file 1000.
Then you PUNCH OUT the file from the CNC and ProEZDNC stores it away. This method is less elegant because its 2 stage, but then again, you do not have to actually embed the filename in the file itself.
Method 3. Autonaming allows the user to just output a file from the CNC, and if properly setup, ProEZDNC will save the file with the CNC filenumber, or a text string contained within a comment. In addition, it can save multiple files, so you could out put all from memory, and all the individual files will be saved. This method is by far the easiest and most powerful way of saving.

It works by setting up two unique combinations of characters on a block of code. It looks at these two characters, and if the exist, it chops up the block and calculates the filename, which it will then use as a filename and store to disk.


Auto Name Start Character

For example on a Fanuc the program may start ":1234" in this case the autoname start character would be the colon ":"

If for example, the program started like "O1234", the character would be the capital letter "O".

Auto Name End Character
This is the second character that is used to "chop" up a block of code and extract the filename. If the program contains only the program number and nothing else, then leave this blank. ProEZDNC will work out up to the end of block and extract the filename. If you have a comment on the same block as the program number, then use the opening character of the comment.

So if for example, your code looked like this :1234 (A FILENAME HERE) the opening character of the comment would be open-bracket "("

Because of the limitations of autoname, you can only ever store them away into the root default folder with the default file extension.
There are several options to autonaming.

Use Comment As Program #
If you tick this, then rather than use the CNC filenumber, it will use whatever is in the comment section as the filename.

Strip Out Master Program % Symbols
If you tick this, then all the lines that have % will have the % stripped off.

Put Program % Symbols Into Each Split File

If you tick this, then all the files will have a % put on the very first and very last line of the program.

Strip Out Blank Lines
This will tidy up the programs and stip out any blank lines

Prefix Filenames With O
If you tick this, then all the files will have a letter "O" as the first character of the stored filename i.e program 1234 will get saved as O1234.

Disable Multi Auto naming
If you tick this, then all the files that you output will be stored in a single file, rather than have ProEZDNC split them all up.
Wait Before Sending
This is the time that ProEZDNC waits before it sends the data to your CNC. You can set up ProEZDNC so that it gives you time to setup your CNC and put into INPUT mode.

Wait After Sending
This is the time that ProEZDNC waits after it sends the data to your CNC. This is useful if your CNC drops the last few blocks or characters because your computer closes the comms port too early.

Wait For Requests Time Out
This is the time that ProEZDNC waits for any other requests before it shuts down this event and resets itself. It can be useful if your CNC sends data out "unevenly" in bursts waiting a few seconds before sending more data, maybe as a header of nulls, or you want to save several files away in the same file. This is the time that will show on ProEZDNC screen as "Waiting For Further Requests".

Receive File Time Out
This is the time that ProEZDNC waits for any data from your CNC during a "Manual" file receive. It will wait for you to send a file within this time period, if you do not send anything within this time, it will not store anything away and will reset DNC.

Inactivity Time Out
This is the time that ProEZDNC waits for the result of a command to happen. So if you have Wait For XON activated, but you never actually receive an XON, then after this time, the DNC will set itself back to waiting for request. Similarly if waiting for a CTS and the CNC never actually puts the port pin high, it will reset itself.
Add Characters To Requested Filename
Whatever you type in here will be added to the requested filename at the CNC. Example, you only use a filename of "1000" in the DNC request, but the actual file that is sent back will be "O1000". (in the screen shot above)

Add Characters To Saved Filename
Whatever you type in here will be added to the saved filename at the CNC. Example, you only use a filename of "1000" in the DNC request, but the actual file that is saved will be "O1000". (in the screen shot above)

Ignore "Y" and "Z" From CNC Request & Strip Spaces & Decimals From CNC Request
If you are using an older CNC without commenst, you are limited no only to numeric filenames, but the length of file. You can use extra axes "Y" and "Z" to lengthen the file name. EG. /N10 X1000 Y2345 Z7890 M99 could get the filename "1000 2345 7890" Used in combination with stripping spaces, it can become "100023457890"
 
Try Out One Of Our Other Products - Check Out Our Product Comparison Matrix

http://www.dnc4u.com
http://www.kwikdnc.com
http://www.prodnc.com
http://www.dncsoftware.net


All Trademarks acknowledged E & OE

DNC software system, CNC RS232 file transfer, free trial DNC programs, Drip Feed
DNC software for easy RS232 CNC file transfer - great value for machine shops of all sizes