NCPLUS software is in use since 1988.
Version 4.204 was closed in 1999 and is not supported anymore.
This older version is still in use by Numatix, which is not a customer of Numeryx or Gil Hagiz.
The newest release of the software is called NCPLUS 2000, version 6.11
Upgrade information from version 4.204 can be found in the User/Programmer section.
Upgrade information from Tiger 3-4 can be found in the User/Programmer section.
Version 6 works in graphic mode so there is no delay when switching between alpha and graphic displays, and some newer displays don't even support the old 720x400 alpha mode.
In VGA's 640x480 mode there is 20% more room on the screen; this enables displaying 8 axes simultaneously on the screen and displaying 30 lines in the editor (instead of 25). Look
Up to 2 pairs of gantry axes are supported.
New RTCP extensions:
HBRA5 - B-tilt & A rorary.
HBRC5 - B-tilt & C rorary.
All new and upgraded 5.11 systems may have running program time display, trace error display, G0-override, and auto power-off on M2.
The number of offsets can be seamlessly extended beyond #12 (g59.3), up to 99.
This requires additional code in the cnx file.
The extended offsets can be set up with an edge finder the same way as the good old ones- one axis at a time or 2 or 3 together, as many times as desired.
Both regular and extended offsets can be viewed and modified with a new HOME.CNC utility. Look
In a user program an extended offset is called by G54.1 O_ (O= 13 to 99)
See application note in the user/programmer section.
This sub-program can engrave constant or variable text in any size, mirror, and in a slope.
See application note in the user/programmer section.
Projection of Y on A. 2 bugs from version 4.2 have been fixed.
Circular interpolation with tool radius compensation had a face-lift.
In earlier versions, the start point XY and IJ were used to calculate the absolute center and because of the limited 4 decimals accuracy of XYIJ the endpoint was most likely off the arc and consequently could sometimes skip a full circle or create one.
Now the program finds the absolute center based on the start and end points so these points are inherently on the arc. The absolute center is calculated with 15 digit accuracy.
This utility replaces the old makepcx.exe. The program is provided by the installer/retrofitter. It cannot be used with earlier versions.
In the INI file enter:
Total number of I/O's increased from 288 to 640 (more I/O boards are required).
The new driver for up to 640 I/O's is IOPDRIVE.SYS.
The old driver PORTSDRV.SYS can be used if less than 288 I/O's are required.
There is no change in functionality of current plc programs.
A new IOPSET.EXE is backward compatible with the old driver.
A new feature is saving and loading a text file mirror of the IO map.
This command simplifies the writing of the tapping cycle.
Tapping(C-axis, ratio) begin rigid tapping Tapping(0,0) end rigid tappingNew tapping canned cycles, either pitch or TPI can be used (TPI works in metric system too):
To run version 5 user programs w/o modification add in the INI file:
With this setting G-codes 20 to 25 and 51 are recognized (as well as their new replacements 10.1 to 15.1 and 5.1).
Switching g70/71 to g20/21 is disabled.
G53 assumes XYZ dimension in mm.
This is done by setting plc#66 to the percentage.
The percentage is applied to G0 only and can be changed any time. The regular feed override affects all motions.
Plc#66 can be set by a selector, up/down pushbuttons or keys, e.g. 1 to 4 for 25% steps.
The rarely used spherical coordinates G-codes 20 to 25 have been replaced by 10.1 to 15.1.
This frees g20/21 to be used instead of g70/71 (by setting a parameter).
G5.1 replaces g51 (graphic zero). This frees g51 for a user defined function.
3D tool radius compensation is done by g41.1 and g42.1 (g41.1 instead of previous g44).
G42.1 uses negative IJK vector, same as using negative TR & TS.
DT channels can be associated with NCPlus axes not in their sequential order.
In the INI file define the order:
Axes=xyzab dtsx=12356This can be used to reserve DT's channel #4 for the spindle and use channels #5 and #6 for the 4th and 5th axes.
Resolution as small as 1 nanometer can be used (was 0.00025 mm). All internal motion calculations are performed in 1 nanometer resolution (ultra-high-precision nano interpolation), regardless of the encoders. However, the encoder count should be limited to 4,000,000 count/sec (by limiting the feedrate).
The motion routine has been improved and is smoother than before, even with sub-micron increments.
A new dtsdrive.sys, which is backward compatible with version 5.xx, should be used.
Both G and M accept numbers with one decimal:
These codes are used with tool compensation to approach a contour similar to positioning (tangent to the next move) but using feed.
They are one shot and are always converted to g1 and g11.
Same approaching procedure is used if g1 or g11 is the first g-code after g41/g42.
G59.1 to g59.3 use offsets 10 to 12.
To select these offsets from the keyboard use alt-A to alt-C.
This setting can be done by a superuser in Set-Home mode.
To set the machine zero for an axis move it to the desired position, select Home #0, and set the axis same as any other Home.
Table limits are set the same way, and to select them use alt-P or alt-N for the positive and negative limits. While selected, 'Pos Limit' or 'Neg Limit' is displayed instead of Home #.
The setting is saved in the update.txt file.
If the machine zero is outside table limits, g-53 lets you go up to that zero.
If an ATC requires this feature set the change-position as the machine zero.
Using g53 or selecting home #0 does not enable limit overriding.
These codes can be programmed with other g-codes in the same block.
G53 and offset #0 use xyz data in current unit (inch-mm). However, scale, rotation, and g91 are ignored.
G-53 is for use in the Cnx file.
G+53 is for use in the cnx. It is a single shot like g-53 but it uses offset #3 as reference. It can be used in a g28 routine so that the user can set it in set-home mode.
G-53, G+53, set-ref and chk-ref always use xyz data in mm.
The letter address O is not used anymore. Current home number is saved in plc#94.
Offsets g54 and above can be set from within a program. For example, to set offset #5 at x10 y20 write:
g92 g55 x10 y20
Compensation data is entered via a built-in data-entry program.
The span between the data points must be a whole number of millimeters.
The comp data has the following structure: Look
Graph command is replaced by new commands.
x,y are coordinates or x-y related data, c=color:
pixel(x,y,c) lineto(x,y,c) gain(x,y1,y2) scope(reg,Ypos,c)
Gain sets the gain for a dual trace oscilloscope mode.
X is the time base, in msec per pixel, Y1 is the gain for channel #1 and Y2 is for channel #2.
If the time base is zero the scope runs in XY mode where channel #2 is X.
Y1 and/or Y2 can be negative to reverse the polarity.
Scope takes a plc register-number to display.
PosY is an offset in pixels from Y-zero.
C is the color.
scope(391,80,white) scope(392,-80,magenta+$200)Motion parameters that are of interest are trace error (#391 to #398) position (#21 to #28), leadscrew comp (#401 to #408).
This command was modified as follows:
1 - 15: as before. 16 : column for the min-max values in SetHome. (Row and Size are ignored). 17 - 20: reserved. 21 -699: PLC register to display.
The total number of displayed registers in any mode is up to 40.
Plc 300 to 369 are not reserved for Place anymore. (They are reserved for NCPlus).
Size of $71 (or $73) displays time format- HH:MM:SS
Reg is the first in a pair of 2 plc registers.
The first is the time in seconds up to 3599,
The second is time in hours, up to 99 (100 rollovers to zero).
When the size is 5 (or 7), if the ones digit of Reg is an axis number, the contents of that register is displayed as dimension for that axis, assuming that it holds encoder counts.
The display begins with the axis letter and follows inch-mm switching.
This function can display on-the-fly offset, trace error, leadscrew comp, etc.
All axes can be followers in any combination.
Follower() takes axis number for On and negative number for Off;
Zero clears all followers.
putini('var', dat) dat can be either a string (as before) or a number (up to 8 decimals are saved).
Getini$('var') returns a string, as before.
Getini('var') returns a number.
Length(x,y) - SQRT(sum Squares) can take more arguments:
#1=len(1,2,3,4,5) - up to 255
It also does tool radius comp for 5-axis profiling.
This function requires a post-processor generated contouring file of g1 moves with the normal vector given in each block under IJK.
G44 activates the 3D cutter radius compensation.
The tool table was expanded to hold the bull nose smaller radius. Look
if #1<>0 and #2<>0 then... #1= #1&$04<>0 and #2&$08<>0In version 6 these statements work just fine (in both plc and cnc programs):
if #1 and #2 then... #1= #1&$04 and #2&$08
Tabs: the compiler treats Tab same as space.
Trace command was renamed to buffers. This command lets you reduce the number of buffers if so desired. (required in cases of real-time feedback).
Big('text') displays text in double size characters. All 256 ASCII characters are supported.
Aspect ratio is the ratio between screen's X and Y. For a screen with resolution of 640x480, 800x600 or 1024x768 it is 1 and needn't be set. For resolution of 1280x1024 it is 0.9375 and it is entered in line n100 under @R (where the screen default zoom is entered under R).
Trace test: all axes are displayed. It is recommended to use small font in the Place command (size=1).
Projection, Jig, Virtual, Magnify, Location, Loctable.
Also Location table, Teach-Box and 3D correction have been canceled.
New DT device driver dtxdrive.sys replaces dtsdrive.sys and can be used with both ISA and PCI boards.
It can take command line parameters /s and /t as before but not /i.
The default is /sD800 /t2.
A new !!deltau.cnc works with both ISA and PCI boards.
A program DTPCI.EXE should be called from the AUTOEXEC.BAT.
This program identifies the PCI board and sets its memory space.
It works okay with ISA boards.
In mill*.pmc add:
M100->DP$D210In the motion program change line:
m113=0 x(m71) y(m72) . . . . . m113=1 to x(m71) y(m72) . . . . . m100=1
The hardware lock is part of the NCPlus package and must be plugged into the parallel port or NCPlus works in offline only.
The Lock can be programmed to expire after 30 days or to work indefinitely with a permanent enable code.
Expiration date lets the user test all available features, like TCP, before ordering them.
The Lock is field programmable from MDI with the command zulu, which takes 3 parameters.
4 commands are currently available:
To read the expiration date use zulu(0,0,0).
All other commands are encoded by a setup program available to retrofitters; the command is emailed to the user and entered by the user in MDI.
Note: If the computer date is tampered with then the program expires immediately
For these machines additional files are defined in the INI file.
The following geometries are supported:
Heads: CA, B (tilt), BA.
Rotary: AB, AC.
Editor capacity increased to 3-4 million lines.
Long Search and Replace sluggish behavior has been fixed.
ESC can be used to abort long operations like Find or file R/W.
The main dir is C:\RR.
The system files are in the c:\rr\cnx dir.
Files compiled from this dir are stored in c:\rr\cnx\bin dir.
These are the cn$, pl$, tool-table, leadscrew-comp, and utilities.
User dirs can be sub dirs of RR, and they all have a BIN dir (created automatically) for the user compiled files.
Key is a CNX parameter that holds the last keyboard-key returned by:
Readkey, Inkey, Input(), and Input$().
It can be used after Readkey or Inkey to test more values:
if readKey==41 or key==42 then....end
Such a loop can now be interrupted by Esc.
These codes can be written with other g-codes in the same block.
The standard format is now:
n1 g x.. y.. z.. g81 r...z...q... f... [g91] [g99] [d..]
This works with both Cartesian and Polar coordinates.
The letter-addresses R,Z,Q,D and the g-codes represent:
R- Reference plane
Z- Z at the bottom of the drill
Q- step for g83
D- delay at end of drilling.
G90/91- with g90 (default) Z is absolute, with g91 it is the depth of the hole.
G98/99- with g98 (default) the tool retracts to the initial Z, with g99 it retracts to the R plane.
Virus protection turns system to offline in case a virus has modified the exe file.
Tool table definition in line n100 of the machine data creates or modifies the length of existing table.
T can be zero if no tool table is required. In such a case T can be used for any function.
G8 prevents deceleration at the end of current block (one shot).
G0 now always decelerates before the next move, unless g8 is used.
This axis can be used to move Z up and down on top of the program.
W is displayed and behaves like a real axis, but it moves Z instead.
It can be jogged in Manual or used on-the-fly in Auto.
Its traverse is same as Z and it checks the soft limits.
It replaces the previous on-the-fly function that had a limited traverse and didn't check the soft limits.
Insert tool-length works correctly regardless of W.
M50 clears W w/o any motion.
These procedures synchronize a Plc register with its corresponding I/O immediately.
This Plc function reads encoder input and returns any change.
It eliminates the need for additional Delta-Tau encoder input. More than one encoder can be programmed.
Can be used for a tool changer or MPG.
This function can generate or check 16 bit data for parity.
For even parity it returns 0 and for odd parity it returns FFFF.
This cycle is called from NCplus background.
For 300 MHz Pentium, 100,000 calls/sec are average and 10,000 can be considered safe.
It is used for high-speed operations like reading an MPG.
Program lines can be displayed while running, in a programmable size window.
This function can be turned on and off.
The printing of the lines is done by NCPLUS.
Upon Reset or CS the display starts from the first line.
While running, the display runs concurrently with the program and a blue bar indicates current line.
In Single the display can be scrolled by the up/down arrow keys, but when CS is pressed the program is resumed from the correct line.
Vendor or OEM name can be entered and displayed in the opening window.
The Model= line is not required for basic machines without any transformation.
For 4 and 5 axis machines additional files are used for TCP and transformation.