Post-processor configuration-machine data file (.SM)

At version 7 all post-processor configuration is in a file with the .SM extension. The file is usually found in he Cadfil install directory. When Cadfil is run a file called ‘default.sm’. is always read. If is is not found in the install directory a windows ‘file open’ dialog box is shown and you must ‘browse’ to find it.

If on reading the .SM there are errors in it there is than an option to view the error log which will identify the problem(s). If there are errors in the file all the post-process options will be greyed out, that is, you will NOT be able to post-process.

On the ‘NC-Post Process menu’ there is a ‘select winding machine’ option which allows the selection of a different .SM file, Thus if you have two different winding machines you could have ‘machine-name1.sm’ and ‘machine-name2.sm’.

Each time you post-processes the text ‘The Active machine configuration is > machine-name.sm’ is displayed in the text window so you know which configuration is in use.

If you change a .SM file while CADFIL is running you need to exit or re-select the .SM file using the ‘select winding machine’ option to ensure the changes are being used.

The .SM file is a text file that can be viewed or changed using a text editor such as Notepad. If you use notepad set ‘Word Wrap off’ on the ‘Format’ menu.

The SM file contains comments describing all the parameter and variables in it. A number of sample files are usually supplied. It is normal for CCL to configure the ‘default.sm’ file to the best knowledge we have available at the time the software is supplied. We can offer technical assistance on this if required, please ask!

If you are unsure do not modify this file and always make a safe copy of the original file before changing it.

There are three types of data in the SM, system constants which are $ variables i.e. $constant-name some of these parameters are described below. There are some  $contants  that define the program layout  and this can contain @@variables. These variables have the format  @@variable-name@@, for example @@DATE@@, during the post-process run time this variable would be substituted for the current time & date. A list & description of @@logicals can  be found under the topic post processor logicals.

$GEARING-AX-n These are the ratios, which relate the units of of the winding machine. The post processor uses rotational units of degrees, thus if an axis rotation of 1 degree corresponds to a rotation of 234.567 machine units then the scaling ratio would be 234.567. If the rotating axis units on the machine are degrees, then the scaling factor would be 1.0. For linear axes e.g. cross-feed these relate the units used to define the mandrel in Cadfil to those of the machine i.e. if the machine uses mm and the mandrel is specified in mm the gear is 1.0. It is strongly recommended that a system of units for the mandrel are adopted and then used constantly. This removes the need to change the scaling data in the configuration file once it has been set up correctly. In practice all customer use either mm or inch for the mandrel definition.

$OFFSET-AX-n These values for each axis (n=1 to 6) from the machine reference point (machine 'home' position or payout origin) to the spindle datum. The offsets MUST be in machine units and have the CORRECT SIGN. They are the values one would use to instruct the machine to move (crash!) the centre of the payout origin (the position were the payout eye is attached), to the spindle datum point. These offsets are constants for the machine, but may change when maintenance work is performed on it.

The spindle datum point is a fixed point on the machine winding axis, this usually being located on the head-stock or tail-stock. When the mandrel is located in the machine, the position of the mandrel must then be measured from this point. Thus, the mandrel's position can be defined in the machine co-ordinate system vie the Xdatum post-process variable.

Click here to see a diagram for OFFSETS

$FEED-DEFAULT-WIND: This is the value of feed-rate that is used in the NC subprogram to wind the component.

$FEED-DEFAULT-START: This is the value of feed-rate that is used in the move to the start position in the NC main program.

$SMALL-MOVE-AX-n: Significant axis motions for axes 1 to n. A value must be supplied for each axis on the machine. This function holds small incremental axis motions, until the value of the motion for an axis is greater than the significant axis motion specified for that axis. If values of zero ( 0.0 ) are entered then all motions are output, however small they may be. The values entered for each axis should be in the relevant machine units. If an axis is not present on the machine, a value should still be entered (0.0 for example), as six values are always expected. If these are set to zero for active axes, then there may occasionally be very small machine motions due to the numerical rounding errors associated with the generation of the path across the surface mesh. Such motions will not add to the accuracy of the winding of the path and may impair the smoothness of the winding operation. This feature is not used on the last line of a subroutine, hence ensuring there is no misclosure error

$MAX-SPEED-AX-n: The user can specify a maximum feedrate for each of the axes, this can be used with the speed mode options to ensure no axis goes over-speed and can be used to optimise winding time. When graphics of speed are displayed these are as a proportion of the maximum speed for the axis i.e. 0.5=50% maximum speed.

; example uses deg/min and mm/min                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
; set all 6 axes even if machine does not have them                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
$MAX-SPEED-AX-1=60000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
$MAX-SPEED-AX-2=60000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
$MAX-SPEED-AX-3=60000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
$MAX-SPEED-AX-4=40000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
$MAX-SPEED-AX-5=30000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
$MAX-SPEED-AX-6=30000.

$MAX-ACCEL-AX-n: This can set acceleration values for each axis which can help to create a smoother faster winding program. For this option to be active in the post-processor the option $ACCEL_DISABLED=0 must be set, this is NOT the default state. If $ACCEL_DISABLED=0 is set, there is a further option $ACCEL_CALC_OFF this sets the initial (default) state for the ‘acceleration check box’ on the feed-rate dialog box during post proces, the acceleration option is default on used if $ACCEL_CALC_OFF=0 is set. This last set can be over ridden by the user each time the post-processor is used.

;example of axis acceleration values in mm/min/mm or deg/min/min                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
;example assuming machine can go from 0 to max speed in 1/15 mins (4 seconds)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
;thus accel = vmax * 15                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
$MAX-ACCEL-AX-1=900000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
$MAX-ACCEL-AX-2=900000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
$MAX-ACCEL-AX-3=900000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
$MAX-ACCEL-AX-4=900000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
$MAX-ACCEL-AX-5=900000.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
$MAX-ACCEL-AX-6=900000.

$AX-3-ROTN-OFFSET: Machines with a yaw axis often have the rotating centre of the yaw not at the fibre dispensing point. When the head yaws the post-processor must compensate with cross-feed and carriage movements. The total rotating length from the dispense point to yaw centre is made up of the FIXED OFFSET+POLEN. The fixed offset is a constant for the machine (and is internally programmed into the post-processor) and will not change. If there is no yaw axis, set the offset to 0.00.

$MAX-AX-3-INCR.The yaw axis moves the head on a circular path. The cross-feed and carriage axes have to make compensating moves. As the axes move on a linear path point to point, if the yaw angle is large the clearance of the dispensing point could temporarily increase or decrease during the motion. If clearances are small this could cause a clash with the mandrel. The max- increment can be set to 10 degrees for reasonable accuracy. Any larger yaw movements are then broken into smaller parts and the correct carriage/cross-feed motions calculated for each. If the max.-increment is set to >2*yaw axis limit the feature is fully deactivated.

See also the values to set the transfer software to the NC winder which are also set in the SM file.

Next Section