Changes in release 19.1 (2022-02-01)
- Version 19 Service Pack One release.
Changes in release 19.0 (2021-07-19)
- Version 19 release.
- Added StixCtlGenerate flag to linearize all arcs and helixes. This
uses a series of linear moves instead of the circular interpolation
codes (G2/G3) for the format. The chord tolerance parameter
controls how fine the curve is faceted.
- getChordTolerance()
- getLinearizeAllCurves()
- setChordTolerance()
- setLinearizeAllCurves()
- Fix missing M5 (or equivalent) when turning spindle off by setting speed to zero.
- The cursor applies the workplan.toolpath_orientation if present.
- APT output messages as PPRINT, extended ncfuns as INSERT
- Retired stix_export* functions used by the maker library.
Changes in release 18.2 (2019-10-28)
- Version 18 Service Pack One release.
- Added StixCtlGenerate::exportCNCFile() function as a simple wrapper that creates a cursor and writes a codes to the named file using the current settings.
- StixCtlGenerate functions to give IJK values and angles separate
digits of precision from the rest of the position values. Added
convenience wrappers for catNumber() to use each of the different
digit settings.
- catNumberAsAngle()
- catNumberAsFeed()
- catNumberAsIJK()
- catNumberAsSpindle()
- catParamAsAngle()
- catParamAsFeed()
- catParamAsIJK()
- catParamAsSpindle()
- getAngleDigits()
- getAngleMinDigits()
- getIJKDigits()
- getIJKMinDigits()
- setAngleDigits()
- setAngleMinDigits()
- setIJKDigits()
- setIJKMinDigits()
Changes in release 18.1 (2019-04-05)
- The cursor now emits a TOOL_CHANGE event for load tool and unload tool NC functions. It first emits the EXEC_NCFUN event, as before, followed by the TOOL_CHANGE event.
- Skip comment when generating an extended nc function with an "INSERT/" statement.
- Invert axis for APT circle output.
Changes in release 18.0 (2018-10-01)
- Version 18 release.
- Change Siemens helix output to use angle rather than centerpoint.
- Marking workingstep transitions on siemens by incrementing STPWS
- Add G64 to Siemens program start.
- Clear Fanuc probing variables at program start.
- Added STPWS count variable to siemens-traori and renishaw output and similar #185 variable to the imts-fanuc output.
- Now emitting extended NC functions that have an "INSERT/" prefix. The prefix is stripped and the rest is inserted verbatim. This is now the default behavior for all code styles.
- Adding STOPRE before variable assignments in Siemens to keep from early execution.
- Now generating CYCLE800 tilted plane instructions on Siemens for five axis and non axis aligned probing operations. The CYCLE800 calls request that the tool tip be adjusted instead of retracting. In the control, under the page for machine configuration / Kinematic channel1 / Swivel mode, "Track tool" must be set to "Yes".
Changes in release 17.3 (2018-02-28)
- Reworked G-code generator so that you can easily use your own codes alongside the ones that we generate. Walk the program with a cursor and get codes for each event as a string from the new StixCtlFormat class. Print the codes to a file, or mix in your own codes.
- When generating five axis moves on Fanuc or Siemens, the IJK axis values are now normalized.
- When generating five axis moves on Fanuc TCP, all IJK components are generated. Giving only one or two may be misinterpreted by the control.
- Checking whether a circular move is a full circle now takes place at the effective output precision. We had been checking at a tighter internal precision and would sometimes miss splitting some arc moves that rounded to a full circle.
Changes in release 17.2 (2017-12-30)
- Fixed length units for arc positions in cursor. Were not being set.
- Updates for latest EXPRESS class library. No longer using custom all-args ctors internally.
Changes in release 17.1 (2017-07-14)
- Generating Rennishaw vector probing cycles for both Siemens and Haas. The Siemens can do a 3D probe while Haas can only probe in the XY plane or in Z. Siemens probing tested in 5-axis ORIWKS, works well enough but the probe prepositioning moves to minus the ball radius seem to be in the part coordinate system rather than the native one. Also added L9800 before every workplan to force reset the Rennishaw internal variables in case a measurement had been interrupted and left bad data there.
- Added feature UUID and probing counts to the Rennishaw output. These set variables that are expected to be defined as global on the control. The variables are STPFEAT, STPFACE, STPNUM, STPMAX, STPX, STPY, STPZ, and STPCT.
- Probing motion direction was not getting the setup transform.
- Now able to disable tool change and spindle macros for Siemens. Added siemens-dmdii style which does not use those macros and uses the Rennishaw macros.
- Initial support for the Canonical Robot Control Language (CRCL)
- Added StixCtlCursor, a new process cursor that handles all of the traversal duties previously hidden in the StixCtl class. It will step through the process and pause at events, such as a position change, beginning of a toolpath, end of an operation. This will make the process more accessible as we reorganize the library so that MCD interfaces are customizable with .NET or NODE.
- Added new package documentation and examples for StixCtlCursor.
Changes in release 17.0 (2017-04-07)
- When five-axis toolpaths are present anywhere in the output, we initialize the tool axis to (0,0,1) after a tool change, even if the first toolpath after the change is just a three axis move.
- Added additional checks and comments on feed override processing.
Changes in release 16.18 (2016-09-09)
- Now looks for mist and through-spindle coolant settings in the machine functions. Uses M08 for flood and M07 for mist on most configs, has special codes for through spindle on Okuma and Haas. Other configs just emit a comment for through spindle.
Changes in release 16.17 (2016-07-25)
- NCPack release 16.21
Changes in release 16.16 (2016-06-01)
- Update for ST-Developer v16 SP4
Changes in release 16.15 (2016-04-25)
- Minor API change to support program id setting.
Changes in release 16.14 (2016-02-10)
- Changed default behavior for fanuc and haas output. Now always uses a decimal point for feeds and coordinates, even when the value is an integer. This avoids ambiguity because some controls interpret a value without a decimal point as a count of least input increments. This means that X10 could be 10mm or 10 ticks (maybe 10 * 0.001mm) depending on how the control was configured.
Changes in release 16.13 (2016-01-04)
- Version bump for new ARM library in ncpack 16.17
Changes in release 16.12 (2015-11-21)
- Version bump for new ARM library in ncpack 16.16
Changes in release 16.11 (2015-09-21)
- Update for ST-Developer v16 SP3
Changes in release 16.10 (2015-07-24)
- Release and rework for rosemath
Changes in release 16.9 (2015-06-02)
- Update for stpman, SP2
Changes in release 16.8 (2014-12-12)
- Added tracking and search capability for block N-numbers in addition to the basic block count stuff.
Changes in release 16.7 (2014-11-18)
- Rebuild for ST-Developer SP1 update.
Changes in release 16.6 (2014-08-04)
- Adjusted curve parameterization for via point arcs, which should result in better toolpath tracking on the CNC in STEP-NC explorer.
Changes in release 16.5 (2014-07-17)
- Okuma tool changes now check if the tool is already in the spindle to avoid a complaint from the control. Tool changes also reset all modal codes just to be sure.
- Now checking arc moves for precision underflow on the radius.
Changes in release 16.4 (2014-05-23)
- Forced Okuma spindle speeds to be integer values (no decimal).
- Added functions to manage the correlation between STEP-NC data and the block numbers from the last G-code export.
Changes in release 16.3 (2014-05-23)
Changes in release 16.2 (2014-05-22)
Changes in release 16.1 (2014-05-13)
- Refresh for updated ARM library
Changes in release 16.0 (2014-03-26)
- Updated test program to handle wide command line input
- Updated version.mak to latest conventions
Changes in release 15.5 (2014-02-07)
- Rebuild for ROSE library updates in Beta 6 / Personal Edition
Changes in release 15.3 and 15.4 (2013-12-31)
- Packaging update to add Visual Studio 2012 libraries
Changes in release 15.3 (2013-12-13)
- Rebuild for recent changes to the ST-Developer libraries.
Changes in release 15.2 (2013-09-30)
- Rebuild for ST-Developer v16 beta 5
Changes in release 15.1 (2012-12-03)
- Rebuild for recent changes to the ARM and STIX libraries.
Changes in release 15.0 (2012-09-27)
- Port to the new stpman code stack based on the stpman_arm and stixbase libraries. This required reimplementing STEP-NC traversal code from the old stixlib (access functions and cursors) using the newer ARM class methods. The end result will integrate much better with the STEP-NC DLL and other applications that use ARM classes. Most of the reimplemented functions are declared in stixctl_utils.h
Changes in release 1.107 (2012-03-29)
- Rebuilt for ST-Developer v15
Changes in release 1.106 (2011-11-10)
- Rebuilt for stixlib 0.41 and roselib 14.5 updates.
Changes in release 1.105 (2011-11-10)
- Rebuilt for stixlib 0.41 and roselib 14.5 updates.
- Fixed some signed char string processing code that would break if given a utf8 string with high bits set.
Changes in release 1.105 (2011-10-14)
- Rebuilt for stixlib 0.40 and roselib 14.4 updates
Changes in release 1.104 (2011-08-24)
- Rigid tapping on Fanuc and Haas now use G84/G80 blocks.
- Use style function is now case insensitive.
- RPI Haas style now uses whitespace for better readability.
Changes in release 1.103 (2011-08-12)
- Rewrote style selection to be table-based, retired old Esprit verifier code style. Added rpi-haas style.
- Added ability to specify minimum number of digits for precision as well as the maximums.
- Reorganized the test files to be grouped by style rather than file. This scales better as we add more styles. This needed a major CVS reorg in the tests subdir.
- Began work on Fanuc/Haas G84 rigid tapping. Needs code reorg to handle modal stuff for patterns.
Changes in release 1.102 (2010-10-15)
- Now stripping STRLs from workingstep names in the output comments.
Changes in release 1.101 (2010-10-11)
- Corrected extraneous linear moves after Fanuc-style helix export in fanuc, okuma, and haas output.
Changes in release 1.100 (2010-10-08)
- Allowing for up to five degrees of slack in the determination of the helix working plane to account for setup compensation adjustments.
Changes in release 1.99 (2010-10-05)
- Built for ST-Modules 1.54.
Changes in release 1.98 (2010-09-15)
- Built for ST-Modules 1.53.
Changes in release 1.97 (2010-09-15)
- Built for ST-Modules 1.52.
Changes in release 1.96 (2010-09-05)
- Built for ST-Modules 1.51.
Changes in release 1.95 (2010-09-03)
- Built for STIX 0.38 and ST-Modules 1.50 which add new closed-loop programing AIM and ARM constructs.
Changes in release 1.94 (2010-08-20)
- Final build after roselib usedin corrections, for use with ST-Developer 14 libraries.
Changes in release 1.93 (2010-08-17)
- Correct installer problem.
Changes in release 1.92 (2010-08-17)
- Built for ST-Developer 14.
Changes in release 1.91 (2010-07-01)
- Added guard code to the helix processing to watch for degenerate planar cases and generate plain arc moves instead.
- Rebuild for ST-Modules.
Changes in release 1.90 (2010-06-10)
- Now forcing a hard stop M00 whenever the setup changes.
- Added basic framework for generating tapping operations using the parameters in the operation and feature locations, plus specific code for G331/G332 rigid tapping operations on Siemens.
Changes in release 1.89 (2010-06-04)
- Rebuild for ST-Modules.
Changes in release 1.88 (2010-04-16)
- Rebuild for ST-Module 1.39
Changes in release 1.87 (2010-03-23)
- Built for ST-Developer 13.
- Changed the behavior of stixctl_is/set_enabled() so the enabled status is now kept in persistent STEP data, using the TC1 enabled property on executable.
- Moved some functions over into stixlib. Corrected code issues from build testing on VC9.
- Corrected failure to suppress unchanged Z on some Heidenhain arcs.
Changes in release 1.86 (2009-09-15)
- Added support for Selective program elements. Generates code for the first enabled workingstep it happens to find.
Changes in release 1.85 (2009-09-11)
- Fanuc and Haas output now explicitly declare units using G20/G21
- Added support for Siemens G700/G710 unit declarations.
Changes in release 1.84 (2009-09-10)
- Now using the digits of precision rather than a fixed epsilon to detect and suppress repeated coordinates on Fanuc, Siemens, Haas, Okuma, Heidenhain, and MDSI.
Changes in release 1.83 (2009-09-09)
- Corrected the output of arc moves when a setup transformation is present. In all output styles, transformations were not applied properly to the Z axis of trimmed circles, and when outputting MDSI style lathe code they were being applied when they should not have been to the tool axis direction.
- Extended Siemens output for G2/G3 to emit A3/B3/C3 axis directions to specify the plane of the circle when not in the XY plane.
Changes in release 1.82 (2009-09-02)
- Transformations were applied in the wrong order when a setup placement on a workplan and a toolpath placement on a workingstep were both present in the data. The code was applying the toolpath transform to the setup one, rather than the other way around. This affected the Boxy data and should now be corrected.
- Fixed case where we were not transforming the toolaxis when the toolpath did not provide an axis curve, was just passing through the default 0,0,1 axis untransformed.
- Moved the StixCtlTiltAxes enum into the StixCtl class, changed the name to StixCtl::TiltAxes, and shortened the enumerators. Also added a TiltAxes_none value to force three-axis behavior.
- Added ability to control output of comments for toolpaths,
workingsteps, even points. Controlled by the trace_comments()
function on StixCtl. Gets and takes an enum that calls for comments
on each workplan, workingstep, toolpath, or point. Also added the
following for DLL use. It takes the integer value of the enum.
- stix_export_using_comments (int level);
Changes in release 1.81 (2009-07-29)
- Changed the comments at program start for all known styles that support comments so that they include the STEP-NC source filename before the timestamp.
- Eliminated do and don't execute lists from the StixCtl object and converted everything to use the stixctl_is_enabled() mechanism.
- Reworked StixCtl so that it can be used as an execution cursor by doing a special cursor style and replacing selected hooks with user functionality. Hooks can now be given a special SKIP value that will cause them to not be called.
Changes in release 1.80 (2009-07-02)
- Added functions for querying flute count on tools, as well as getting and setting a nonpersistent current flute count.
- Adding constant chip load feedrate optimizations using the current tool parameters to adjust the spindle or feedrate.
Changes in release 1.79 (2009-05-08)
- Added block number upper limit capability to wrap sequence numbers that exceed an upper value, such as N99999 for Okuma.
- Added support for Okuma output using O238 and OTCG macros for the program start and cleanup as well as tool changes.
Changes in release 1.78 (2009-04-14)
- Added G56 tool offset in Z to Okuma tool changes. Also broke out the Okuma-specific code into okuma.cxx.
Changes in release 1.77 (2009-04-14)
- Added G90 and clear work offset to Okuma startup.
Changes in release 1.76 (2009-04-10)
- Added G15 work offset support and G20/G21 support to Okuma output.
- Added a descriptive comment before each tool change listing the tool parameters (length,diameter,etc) in the STEP-NC data.
Changes in release 1.75 (2009-03-18)
- Rebuild for stmodule 1.37
Changes in release 1.74 (2009-03-04)
- Rebuild for stmodule 1.36
Changes in release 1.73 (2009-02-27)
- Rebuild for stmodule 1.34
Changes in release 1.72 (2009-02-05)
- Changed helix output on siemens so that the center coordinates are tagged as absolute values.
Changes in release 1.71 (2009-01-26)
- Updates for stix v0.34.
Changes in release 1.70 (2009-01-22)
- Updates for stix v0.33.
Changes in release 1.69 (2008-10-07)
- Corrected checking in G0/G1 code for situations where no actual location change would occur. The IJK fixes in v1.67 revealed some weaknesses in this code, resulting in axis moves that simply repeat a previous position (from X0 to X0) or possibly malformed moves when suppressing axes as in the MDSI turning codes.
- Updates for stix v0.32. Removed temporary code that compensated for missing or changed utilities.
Changes in release 1.68 (2008-09-29)
- Moved M6 to separate line in siemens-traori style.
Changes in release 1.67 (2008-09-25)
- Changes to boeing-fanuc style to force IJK components.
- Added a siemens-traori style to handle Siemens TCP control by calling TRAORI(1) directly without any of the WSMODEON/OFF macros.
- Added code to use/supress speed curves for individual workingsteps.
Changes in release 1.66 (2008-09-23)
- Added a boeing-fanuc style to test special tool calls and C axis unwind between workingsteps.
- Updated the enable/disable code to handle entire workplans.
Changes in release 1.65 (2008-09-17)
- On Heiedenhain, added M126 code after tool changes to correct problems with Vericut simulation. Not clear whether it has any effect on an actual run since we already explicitly move the C axis along the shortest traverse.
Changes in release 1.64 (2008-09-11)
- Changed handling of C axis on Heiedenhain to eliminate sudden wraparound. The axis is no longer limited to -180 to +180, but moves the shortest distance, possibly winding up to multiple full revolutions.
Changes in release 1.63 (2008-09-08)
- Tool direction vectors are now properly transformed by the destination transform. Previously, only the tool location was being transformed.
Changes in release 1.62 (2008-09-02)
- Added support for the toolpath orientation transform on a machining workingstep, which moves the given toolpaths to a new location.
Changes in release 1.61 (2008-08-28)
- Built with ST-MfgARM v1.24
Changes in release 1.60 (2008-08-28)
- Built with ST-MfgARM v1.24
Changes in release 1.60 (2008-07-31)
- Built with ST-MfgARM v1.21
Changes in release 1.59 (2008-07-31)
- Built with ST-MfgARM v1.20
Changes in release 1.58 (2008-07-25)
- Built with ST-MfgARM v1.19
Changes in release 1.57 (2008-07-11)
- Built with ST-MfgARM v1.18
Changes in release 1.56 (2008-07-02)
- Added work offset support for the Fanuc and Haas outputs.
Changes in release 1.55 (2008-06-30)
- Updated the default tool change behavior to to G43Hx when TCP is disabled.
Changes in release 1.54 (2008-05-12)
- Updated APT export style to declare tools using TLDATA command.
Changes in release 1.53 (2008-05-09)
- Added export style for APT text output. The style name given to stix_export_as_style is 'apt'.
Changes in release 1.52 (2008-05-08)
- Added support for index table function on Heidenhain. Outputs a comment on all other platforms. Also added placeholder for index pallet and exchange pallet.
Changes in release 1.51 (2008-05-05)
- Built with ST-MfgARM v1.16
Changes in release 1.50 (2008-04-04)
- Added support for surface normal curves that are represented as trimmed curves when used with trimmed arcs.
- Built with ST-MfgARM v1.14
Changes in release 1.49 (2008-03-06)
- Now queueing G40 for issue with the next move.
- Restructured surface normal analysis and G41/42 output for cutter contact toolpaths to be more robust in the face of corners and other cases where the normal changes between paths.
Changes in release 1.48 (2008-02-27)
- Added support for variable feed within a toolpath controlled by a speedprofile curve. Also supports the other speedprofile option, a single feed multiplier that applies to the entire toolpath.
- Added output option to disable use of the speed curve and force the base feedrates only. By default the speed curve will be used. stix_export_using_speedprofile (int yn)
- Removed extra comment when setting tool corner radius compensation on the Siemens 810.
Changes in release 1.47 (2008-02-19)
- Improvements to the Siemens traceabilty output.
- Updated Siemens 810 output to adjust the $TC_DP compensation parameters for corner radius when the STEP-NC file contains a current value for it.
Changes in release 1.46 (2008-02-18)
- Corrected doubled spindle commands when the operation has a different technology from the first toolpath in the operation
- Added output option for traceabilty timing. Only available with Siemens output. Enable using: stix_export_using_traceability (int yn)
Changes in release 1.45 (2008-02-14)
- Release engineering problem with 1.44
Changes in release 1.44 (2008-02-14)
- Minor fix to Siemens 810 compensation.
Changes in release 1.44 (2008-02-14)
- Updated Siemens 810 output to adjust the $TC_DP compensation parameters for length and diameter upon tool changes when the STEP-NC file contains current values for these.
Changes in release 1.43 (2008-02-07)
- Updates to logic for cutter contact code generation to handle transition from cutter location to cutter contact paths. Also more robust when given unrealistic numeric values.
Changes in release 1.42 (2008-01-31)
- Now generates code for helixes on all controls, Siemens and Heidenhain use distinct notations, while Fanuc, Okuma, and Haas appear to share the same notation.
Changes in release 1.41 (2008-01-29)
- Update to via arc output to address boundary cases.
Changes in release 1.40 (2008-01-29)
- Now generates code in all output styles from arcs described using the via-point method. Helixes using via points are not supported yet but are generated as linear moves between the vias.
Changes in release 1.39 (2008-01-22)
- Tool change now clears the position and issues a move to the complete XYZ start point of the next toolpath. Previously it expected that after the toolchange the tool was located at the endpoint of the previous workingstep and only issued moves for axes that changed in the first point of the next workingstep.
Changes in release 1.38 (2008-01-15)
- Updated DMIS output to declare and use the final datums when the underlying feature is measured. Corrected missing datum on the declarations of some tolerances. Added tolerance declarations for linear distance dimensions.
- Updated for use with STIX 0.31
Changes in release 1.37 (2007-10-26)
- Declaring DMIS tolerances with the features, added additional probe declarations and other setup boilerplate at the start of the program. Generating manual mode initial declarations for all datums on the workpiece.
- Changed DMIS output logic so that it emits moves for any workplan that contain any nested probes. Workplans that do not contain any probing are ignored.
- Corrected placement of Cylinder features in DMIS output.
Changes in release 1.36 (2007-10-19)
- Changed the DMIS manual output so that the position and normal of the features are transformed properly when the workpiece contains assembly placements.
Changes in release 1.35 (2007-10-15)
- Changed the DMIS manual output so that we measure known features directly (PLANE,CYLNDR) rather than create many point features and construct from them. This simplifies the DMIS tremendously. We still define point features if the STEP-NC feature is based on an geometry type that does not map to a DMIS feature.
Changes in release 1.34 (2007-10-11)
- Issue G43 as prefix to next move and force that move to contain a Z move in non-TCP fanuc output.
Changes in release 1.33 (2007-10-10)
- Added G43 tool length compensation to non-TCP fanuc output
- Added UNIX makefiles and did build testing on several platforms, correcting various compile issues. Renamed StixCtl.export() to export_program() to avoid reserved word conflicts.
Changes in release 1.32 (2007-10-05)
- Corrected botched installer that used outdated MSMs.
Changes in release 1.31 (2007-10-05)
- Added some no-op functions for disabling things in the DMIS
interface
- stixctl_do_tool_none()
- stixctl_do_spindle_none()
- Fixed problem with Fanuc comment display and made use_tcp operate properly with the Fanuc G43.5 output.
Changes in release 1.30 (2007-09-12)
- Transition to install on ST-Developer 12.
- Fixes to Heidenhain iTNC530 output. Converted probing output to use G427 but not emitting Q260 clearance parameter since we do not have that explicitly. Now canceling M128 before tool change. Added an M30 at program end (otherwise the last M129 code is not executed)
- Updated do_comment functions to strip newlines and other control characters.
- Changed strcat_number code to catch minus zeros resulting from rounding or decimal suppression.
Changes in release 1.29 (2007-08-27)
- Updated to build against STIX 0.27
Changes in release 1.28 (2007-06-25)
- Reversed B angle in Heidenhain iTNC530 output.
Changes in release 1.27 (2007-06-14)
- Fixes to Heidenhain iTNC530 output. Line numbers were the default, but could be turned off by the STEP-NC explorer. Now permanent on. Was not numbering the initial call to G90.
- First attempt at Heidenhain probing output, using the MEASURING cycle. The maximum move distance is 110% of the nominal value and the retract after touch is 10% before it rapids back to the start point. The probing feed is 100mm/min.
Changes in release 1.26 (2007-06-13)
- Fixes to Heidenhain iTNC530 output. Forced block numbers, and whitespace between control words for improved readability. Tool change no longer uses M6, and includes a G17. Forced absolute coordinates at start with G90, as well as another G17, and that spindle and coolant are off at the end. Switched the spindle speed S word and M3/M4 order so that the speed now comes first.
Changes in release 1.25 (2007-06-08)
- Added Heidenhain iTNC530 output for a BC machine.
Changes in release 1.24 (2007-06-07)
- Changed handling of rotational axes for Heidenhain iTNC530. The C axis was measured from +X rather than +Y and the A axis was tilting in the wrong direction.
- Stubbed out message handling on Heidenhain iTNC530. Manuals do not document how to do it.
- Let Z component be optional on arc moves for Heidenhain iTNC530. The docs imply that arcs are only usable within the XY plane, or possibly when tilting the working plane with a G80.
- Corrected old calls to ROSE.error that were exiting and preventing the throw/catch exception mechanism from working properly.
Changes in release 1.23 (2007-05-23)
- Added export style for Siemens 810D, based on the 840 code but without any of the WS macros.
- Added export style for Heidenhain iTNC530 with TCP programming handled by using M128 on an AC configuration.
- Some final adjustments to the ESAB output to disable M77. Some analysis needs to be done on paths before that can be used.
Changes in release 1.22 (2007-05-08)
- For the ESAB output, changed the transform for cutting and marking on the near side to normal XYZ axes an offset of (+3,-3-(max Y dim)) for near side work, and normal X->X, Y->-Y, Z->-Z axes with an offset of (+3,+3+(max Y dim)) for far side marking.
- Added M77 before every M75 laser on code to improve speed.
Changes in release 1.21 (2007-05-03)
- For the ESAB output, applied transform X->X, Y->-Y, Z->-Z and an offset of (+3,-3) for near side work, and normal XYZ axes with an offset of (+3,+3) for far side marking.
- For the ESAB output, changed M65 to M70. Corrected initialization problem that was resulting in missing G0/G1 on the first move of far or near marking.
- For the ESAB output, modified G0/G1 so they always emit both X and Y coordinates rather than supressing unchanged ones. Also forcing at least one decimal digit in all floating point values. Tracking head state to supress head off commands (M75) when already off. Changed default file extension to .cnc.
- Put together separate set of functions for inserting linear or tangential lead-ins/lead-outs to workingsteps. Used to prepare plate cutting data for actual plasma cutting.
Changes in release 1.20 (2007-04-26)
- Began work on Heidenhain output style.
- ESAB output generates G92 to compensate for plate registration offset, M67 to set kerf left before turning on cutting, part id marking now uses the proper workpiece id string.
- ESAB output generates M176 before setting the head angle to turn on the plate riding height sensor and M177 when going back to straight cutting to turn on the arc voltage height sensor. Now generating G141 to set the line type when LFONT commands are seen.
- ESAB output generates M145D1 to turn on bevel land correction when making a beveled cut and M145D0 to turn it off when returning to straight cuts.
- ESAB output generates M63/M64 to enable head rotation during beveling and during all marking.
- ESAB output now emits three separate files, one for cutting, one for near side marking and one for far side marking. Also ignoring dummy cycles.
Changes in release 1.19 (2007-04-20)
- Minor change in DMIS unit declarations.
- Updated ESAB output to eliminate comments, wrap text marking in a D003/D004 block, and output a feedrate before marking.
- Added do_project hook to customize top level logic.
Changes in release 1.18 (2007-04-19)
- Added DMIS manual mode that simply exports the point and feature definitions.
Changes in release 1.17 (2007-04-16)
- Improvements to DMIS output. Now generating a series of PTMEAS commands followed by the construction of a DMIS feature from the points if the probing operations share a common STEP-NC feature. Currently only works for planes. Also generating GOTO commands toolpath probe positioning motions, and setting UNITS correctly.
- Added do_goto hook to customize linear motion and broke apart previous monolithic code.
- Added do_goto hook to customize workplan handling.
Changes in release 1.16 (2007-04-12)
- Updated to allow probing after a workpiece complete probing, and to transform the probing start point if a destination xform is set. The probing direction is NOT transformed, because that could push the motion of the probe off the X or Y axis, which is not supported on the siemens.
Changes in release 1.15 (2007-04-12)
- Improved ESAB full circle output, extended the output to handle NC functions for turning the plasma or marking head on/off, controling bevel cutting as well as marking cycles for scribing geometry, part labels or other text characters.
Changes in release 1.14 (2007-04-05)
- Initial work on DMIS output.
- Initial work on ESAB plate cutting output.
- Added STIXCTL_HOOKFN to simplify addition of new hooks, and added do_toolpath hook to support DMIS GOTARG, but as it turns out, we do not need that at the moment.
- Added do_feed hook to customize feed behavior.
- Added do_arc hook to customize circular motion and broke apart previous monolithic code.
- Added stixctl_use_style() function as a central place to set the output style using a string style name. Now used in the DLL as well as the stepnc_load exec.
- Added regression test suite to test all output styles.
Changes in release 1.13 (2007-03-19)
- Source changes for STIX v0.26, mostly restructuring the export functions and updating to revised function names.
Changes in release 1.12 (2007-03-12)
- Centralized control of block numbers so they can be turned on and
off as desired using the call below. By default, block numbers are
now turned off.
- stix_export_using_blocknums()
Changes in release 1.11 (2007-03-09)
- Forgot a WSMODEOF call after toolchange in previous release.
Changes in release 1.10 (2007-03-09)
- Added TCP on/off flag to control output in probing demo. Still need
to integrate to Fanuc code and warn if there are 5axis moves.
- stix_export_using_tcp();
- Refinements to the Siemens output. Now turning off coolant and spindle at the end of a program. Moved the probing DEF INT _LOG to be above the first Gcode in the file.
Changes in release 1.9 (2007-03-09)
- Refinements to the MDSI lathe output. Putting T0000 before each tool change rather than just at the start. Also reversed spindle sense from the STEP-NC file and the use of G2/G3
Changes in release 1.8 (2007-03-08)
- Added query functions for debugging.
- stix_export_get_transform()
- stix_export_has_transform();
Changes in release 1.7 (2007-03-07)
- Supress probing operations if a workpiece complete probing operation is in the file. Temporary behavior for NIST demonstration.
Changes in release 1.6 (2007-03-07)
- Fixed problem with empty log file and added some formatting to make it easier to follow.
- Added stix_export_using_transform() to permit access to the dst_xform functionality.
- Fixed problem detecting probing operations within a program.
Changes in release 1.5 (2007-03-06)
- Fixed problem with stix_export_using_digits()
Changes in release 1.4 (2007-03-06)
- Fixed problem with as-is work offset and made "as-is" the default for generating.
- Added export option functions to place optional stops between
workingsteps, override the number of digits, and to set a program
identifier.
- stix_export_using_digits()
- stix_export_using_program_id()
- stix_export_using_stop_after_workingstep()
- Added "asis" as an option for stix_export_using_unit() and merged code into the StixCtl class to identify the default unit from the toolpaths in the file.
Changes in release 1.3 (2007-03-06)
- Revised work_offset_frame() behavior to allow "as-is" where we do not try to change any of the work offsets.
- Added stix_export_as_style() function which takes a string description of the desired output style. A more expandable option that all of the as_fanuc, as_siemens, etc. functions.
- Logfiles created by stixctl_log_open() strip the extension before adding cnclog resulting in "foo.cnclog" rather than "foo.nc.cnclog"
- The do_probe() code now checks the type of probing operations and
calls hook functions depending on the type. Default no-op functions
are used for now.
- stixctl_do_probe_workpiece_default()
- stixctl_do_probe_tool_len_default()
- stixctl_do_probe_tool_rad_default()
Changes in release 1.2 (2007-03-05)
- Added work_offset_frame() parameter on StixCtl to select the
preferred work offset frame to use in generated code. Offset 0 is
no work offset, 1 is the first on the machine, and so on. Used by
Siemens only at the moment. Also added the following function to
set a default for the stix_export_* functions.
- stix_export_using_work_offset (int ofs);
Changes in release 1.1 (2007-03-05)
- Forgot to backport the stix_export_using_unit() function.
Changes in release 1.0 (2007-03-05)
- The Haas and Okuma output now use the plain T<n>M6 toolchange rather than the Fanuc TCP one.
- Siemens macro declarations are now unnumbered and the probing log declaration has been moved to the start of the program.
- Created a new package called stixctl that merges code previously split between the stixlib and cncload packages. The package has a single StixCtl class to hold configuration and state information and several StixCtlDest classes to handle communication with the code destination (file, online control, simulated control).
- Restructured the tool change functionality to use hook functions and
broke the previous monolithic code into the following.
- stixctl_get_toolnum()
- stixctl_do_tool_fanuc()
- stixctl_do_tool_siemens()
- stixctl_do_tool_mdsi()
- stixctl_do_tool_default()
- Restructured the spindle functionality to use hook functions and
broke the previous monolithic code into the following.
- stixctl_do_spindle_default()
- stixctl_do_spindle_siemens_macro()
- Restructured the coolant functionality to use hook functions and
broke the previous monolithic code into the following.
- stixctl_do_coolant_default()
- stixctl_do_coolant_siemens_macro()
- Restructured the comment and display message functionality to use
hook functions and broke the previous code into the following.
- stixctl_do_comment_default()
- stixctl_do_comment_none()
- stixctl_do_comment_parens()
- stixctl_do_comment_parens_uppercase()
- stixctl_do_comment_semi()
- stixctl_do_message_default()
- stixctl_do_message_none()
- stixctl_do_message_comma_uppercase()
- stixctl_do_message_okuma()
- stixctl_do_message_siemens()
- Replaced the open() and close() functions with begin/end program
hooks and split the previous behavior into:
- stixctl_do_program_begin_default()
- stixctl_do_program_begin_fanuc()
- stixctl_do_program_begin_heidenhain()
- stixctl_do_program_begin_mdsi()
- stixctl_do_program_begin_okuma()
- stixctl_do_program_begin_siemens()
- stixctl_do_program_end_default()
- stixctl_do_program_end_fanuc()
- stixctl_do_program_end_okuma()
- stixctl_do_program_end_siemens()
- Restructured the probing code so that it uses hook functions rather
than style variables and member functions. Also added hooks for the
start and end of the program to complement the previous start and
end of the workplan:
- stixctl_do_probe_default()
- stixctl_do_probe_macro()
- stixctl_do_probe_okuma()
- stixctl_do_probe_rennishaw()
- stixctl_do_probe_siemens_xy()
- stixctl_do_probe_prog_begin_default()
- stixctl_do_probe_prog_begin_siemens()
- stixctl_do_probe_prog_end_default()
- stixctl_do_probe_wp_begin_default()
- stixctl_do_probe_wp_begin_okuma()
- stixctl_do_probe_wp_end_default()
- stixctl_do_probe_wp_end_okuma()
- stixctl_program_has_probes()
- stixctl_workplan_has_probes()
Changes in releases prior to 1.0
- Changelog and version numbering not maintained