<< Click to Display Table of Contents > Transformation |
![]() ![]() ![]() |
The following FCI commands are found in this chapter:
Command |
Description |
---|---|
Set a defocus. |
|
Enable one of the stored heads. |
|
Get correction file name |
|
Get field size [mm] |
|
Get/Set rotation. |
|
Set head specific rotation. |
|
Get/Set scaling. |
|
Set correction file name |
|
Get transformation matrix |
|
Set/Get head specific transfomation matrix. |
|
Get/Set translation [bits]. |
|
Get/Set head specific translation [bits]. |
Table 57: Overview Commands Transformation
Get/Set the defocus. |
|
|||
---|---|---|---|---|
Description |
Get or set a defocus value in bit. This defocus is applied on top of the current z-value of each point without further correction in X or Y. The defocus can be set even during marking and will be applied directly. |
|||
<Value>
|
Value: <int> |
Function |
||
empty |
Get the defocus value. |
|||
Value [-32768, 32767] |
Set the defocus value. |
|||
Example |
Command |
Return |
Note |
|
DF |
0: 100 |
Current defocus for Z is 100 bit. |
||
DF -300 |
0: |
Set -300 bit as new defocus. |
||
Notes |
•Up to 2048 bit, the offset is set immediately. For values > 2048 bit, an overflow occurs to protect the scan head. If an overflow occurred, the scan head moves with 65 bit / 10µs to the new position. •We strongly recommend to use DF only with jobs without pen defocus. |
|||
Save |
N/A |
|||
Restriction |
•The defocus of a job (pen) and the DF value are rivals. This means that the last set one of the 2 will overwrite the other. This can be either one depending on the exact structure of the job and job procedure. •We strongly recommend to use DF only with jobs without the defocus of the pen. |
|||
Errors |
•1: Too many parameters •8: Parameter out of range •17: Wrong parameter type |
Table 58: DF
Enable one of the stored heads |
|
|||
---|---|---|---|---|
Description |
Enable or disable one of the three heads of the USC card. Heads need to be activated and stored in SAMLight or sc_setup before they can be addressed with this command. |
|||
<HeadID>
|
Value: <int> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
HeadNumber [-1; 0; 1; 2] |
Specify the head number which should be enabled/disabled. The parameter -1 addresses all stored heads. |
|||
<Enable> |
Value: <string> |
Function |
||
empty |
Without this parameter, the state of the head of <HeadID> can be read. |
|||
0 |
Disable Head |
|||
1 |
Enable Head |
|||
Example |
Command |
Return |
Note |
|
EH 0 1 |
0: |
Enable head 0. |
||
EH 1 0 |
0: |
Disable head 1. |
||
EH 2 1 |
12: |
Command not available. Maybe, head 2 has not been enabled and stored in sc_setup. |
||
Notes |
•Only stored heads can be enabled/disabled with the EH command. •To address all heads with the FCI command EH, do the following: oActivate all three Heads in SAMLight ->Settings -> System -> Optic -> Advanced -> Correction Settings. oClick the Store button and reboot the USC card |
|||
Save |
•Changes are saved immediately. •Cannot be saved with SVG. |
|||
Restriction |
•Set: not allowed during marking |
|||
Errors |
•1: Too many parameters •2: Too few parameters •5: Not allowed during marking •8: Parameter out of range •12: Command not available |
Table 59: EH
Get correction file name |
|
|||
---|---|---|---|---|
Description |
The command GCN returns the correction file name for the selected head. Get correction file name for one of the 3 available heads of the USC card. |
|||
<HeadID>
|
Value: <int> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
HeadNumber [0; 1; 2] |
Specify the head number for which the correction file should be set. |
|||
Example |
Command |
Return |
Note |
|
GCN 0 |
0: corfile.ucf |
Get the name of the correction file of Head0. |
||
GCN 3 |
8: |
Parameter out of range. No HeadID = 3. |
||
GCN |
2: |
Too few parameters. GCN needs a HeadID. |
||
Notes |
- |
|||
Save |
N/A |
|||
Restriction |
•Set: not allowed during marking |
|||
Errors |
•1: Too many parameters •2: Too few parameters •5: Not allowed during marking •8: Parameter out of range |
Table 60: GCN
Get field size [mm] |
|
|||
---|---|---|---|---|
Description |
Get the field size in mm which is currently stored on the USC-card. |
|||
Example |
Command |
Return |
Note |
|
GFS |
0: 100 |
Get the field size stored on the card. Here, it is 100mm. |
||
GFS 120 |
1: |
Too many parameters. Read only command. |
||
|
|
|
||
Notes |
- |
|||
Save |
N/A |
|||
Restriction |
None |
|||
Errors |
•1: Too many parameters |
Table 61: GFS
Get/Set rotation |
|
|||
---|---|---|---|---|
Description |
Get or set the rotation in degrees. The rotation influences the transformation matrix. |
|||
<Angle> [optional] |
Value: <float> |
Function |
||
empty |
Get the angle of the rotation in degrees. |
|||
Angle [-400; 400] |
Set the angle for the rotation in degrees. The range is from -400° to 400°. |
|||
Example |
Command |
Return |
Note |
|
RT 45 |
0: |
Rotate by 45 degrees. |
||
RT -45 |
0: |
Rotate by -45 degrees. This equals RT 315. |
||
|
|
|
||
Notes |
•The rotation is defined in degrees. •The rotation center is the middle of the field. •The angle is defined counterclockwise. •RT -45 equals RT 315! •The Default value is 0. |
|||
Save |
•Changes are saved with SVG. •When not saved, changes are valid until the next reboot of the USC-Card. •Saved changes are restored with LDG. |
|||
Restriction |
•Set: not allowed during marking |
|||
Errors |
•1: Too many parameters •5: Not allowed during marking •8: Parameter out of range •17: Wrong parameter type |
Table 62: RT
Set head specific rotation |
|
|||
---|---|---|---|---|
Description |
Set the rotation in degrees. The rotation influences the transformation matrix. |
|||
<HeadID> |
Value: <int> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
HeadNumber [0; 1; 2] |
Specify the head number for which the rotation should be set. |
|||
<Angle> [optional] |
Value: <float> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
Angle [-400; 400] |
Set the angle for the rotation in degrees. The range is from -400° to 400°. |
|||
Example |
Command |
Return |
Note |
|
RTH 0 45 |
0: |
Rotate by 45 degrees for Head0 |
||
RT 0 -45 |
0: |
Rotate by -45 degrees for Head0. This equals RT 315. |
||
Notes |
•The rotation is defined in degrees. •The rotation center is the middle of the field. •The angle is defined counterclockwise. •RT -45 equals RT 315! •The default value is 0. •This command can only be used to set the head specific rotation. Getting the values set by this command is not possible. |
|||
Save |
N/A |
|||
Restriction |
None |
|||
Errors |
•1: Too many parameters •2: Too few parameters •8: Parameter out of range •17: Wrong parameter type |
Table 63: RTH
SC [<XScale> <YScale> <ZScale>]
Get/Set scaling |
|
|||
---|---|---|---|---|
Description |
Get or set the scaling. The scaling influences the transformation matrix. |
|||
<Xscale> [optional]
|
Value: <float> |
Function |
||
empty |
Get the current scaling factor for X, Y and Z. Only available for <Yscale> and <Zscale> empty. |
|||
Xscale [-100; 100] |
Set the scaling of the X dimension. This parameter needs the parameters <Yscale> and <Zscale>. |
|||
<Yscale> [optional] |
Value: <float> |
Function |
||
empty |
Get the current scaling factor for X, Y and Z. Only available for <Xscale> and <Zscale> empty. |
|||
Yscale [-100; 100] |
Set the scaling of the Y dimension. This parameter needs the parameters <Xscale> and <Zscale>. |
|||
<Zscale> [optional] |
Value: <float> |
Function |
||
empty |
Get the current scaling factor for X, Y and Z. Only available for <Xscale> and <Yscale>empty. |
|||
Zscale [-100; 100] |
Set the scaling of the Z dimension. This parameter needs the parameters <Xscale> and <Yscale>. |
|||
Example |
Command |
Return |
Note |
|
SC |
0: 1.000 1.000 1.000 |
Get the scaling factors for X, Y and Z. The default is 1 for each dimension. |
||
SC 0.9 0.8 1.5 |
0: |
Scale in X by a factor of 0.9, in Y by a factor of 0.8 and in Z by a factor of 1.5. |
||
SC 3 2 |
2: |
Too few parameters. Xscale, Yscale and Zscale need to be set together. |
||
Notes |
- |
|||
Save |
•Changes are saved with SVG. •When not saved, changes are valid until the next reboot of the USC-Card. •Saved changes are restored with LDG. |
|||
Restriction |
•Set: not allowed during marking |
|||
Errors |
•1: Too many parameters •2: Too few parameters •3: Unknown command •5: Not allowed during marking •8: Parameter out of range •17: Wrong parameter type |
Table 64: SC
Set correction file name |
|
|||
---|---|---|---|---|
Description |
Set a correction file for one of the 3 available heads of the USC-Card. This command allows to switch the correction file in standalone mode.The new correction file must already be on the flash memory. |
|||
<HeadID>
|
Value: <int> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
HeadNumber [0; 1; 2] |
Specify the head number for which the correction file should be set. |
|||
<File> |
Value: <string> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
FileName |
Set the name of the correction file with extension, e.g. cor_neutral.ucf. |
|||
Example |
Command |
Return |
Note |
|
SCN 0 cor.ucf |
0: |
Assign 'ftp://USC-3-IP/cor/cor.ucf' as correction file for head 0 |
||
SCN 3 cor.ucf |
8: |
Parameter out of range. No HeadID = 3. |
||
SCN 1 Not.ucf |
15: |
File not found. Check if the correction file "Not.ucf" is on the flash memory. |
||
Notes |
•The new correction file must already be on the flash memory. This can be done with oUSC-2: FTP: ftp://USC-2-IP/cor/ oUSC-3: FTP: ftp://USC-3-IP/cor/ •The FlashMode flag 0x4000000 disables the correction file clean up of the sc_usc_server. •If the addressed correction file does not exist the error message 9 'Internal error' will be returned. |
|||
Save |
•Changes are saved immediately. |
|||
Restriction |
•Set: not allowed during marking |
|||
Errors |
•1: Too many parameters •2: Too few parameters •5: Not allowed during marking •8: Parameter out of range •9: Internal error •15: File not found |
Table 65: SCN
TMB [<M00> <M01> <M02> <M10> <M11> <M12>]
Get/Set transformation matrix |
|
|||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Description |
Get/Set the transformation matrix. This command has 6 optional parameters, one for each entry of the transformation matrix. To set the matrix, all 6 parameters are needed. |
|||||||||||||||
<M00> [optional] |
Value: <float> |
Function |
||||||||||||||
empty |
Without any parameters: get all transformation matrix elements. |
|||||||||||||||
MatrixElement [-100, 100] |
Set the transformation matrix element M00. Needs all other parameters. |
|||||||||||||||
<M01> [optional] |
Value: <float> |
Function |
||||||||||||||
empty |
Without any parameters: get all transformation matrix elements. |
|||||||||||||||
MatrixElement [-100, 100] |
Set the transformation matrix element M01. Needs all other parameters. |
|||||||||||||||
<M02> [optional] |
Value: <float> |
Function |
||||||||||||||
empty |
Without any parameters: get all transformation matrix elements. |
|||||||||||||||
MatrixElement [-100, 100] |
Set the transformation matrix element M02. Needs all other parameters. |
|||||||||||||||
<M10> [optional] |
Value: <float> |
Function |
||||||||||||||
empty |
Without any parameters: get all transformation matrix elements. |
|||||||||||||||
MatrixElement [-100, 100] |
Set the transformation matrix element M10. Needs all other parameters. |
|||||||||||||||
<M11> [optional] |
Value: <float> |
Function |
||||||||||||||
empty |
Without any parameters: get all transformation matrix elements. |
|||||||||||||||
MatrixElement [-100, 100] |
Set the transformation matrix element M11. Needs all other parameters. |
|||||||||||||||
<M12> [optional] |
Value: <float> |
Function |
||||||||||||||
empty |
Without any parameters: get all transformation matrix elements. |
|||||||||||||||
MatrixElement [-100, 100] |
Set the transformation matrix element M12. Needs all other parameters. |
|||||||||||||||
Example |
Command |
Return |
Note |
|||||||||||||
TMB |
0:1 0 0 0 1 0 |
Get transformation matrix elements. Default values are: M00=M11=1, M01=M02=M10=M12=0 |
||||||||||||||
TMB 0.9 0 2000 0 0.8 1000 |
0: |
Scales by a factor of 0.9 in X and of 0.8 in Y. Translate in X by 2000 and in Y by 1000 bits. |
||||||||||||||
Notes |
•The offset parameters M02, M12 are denoted in bits. •The global transformation matrix applies to all vectors in the following form: Xnew = Xold*M00 + Yold*M01 + M02 Ynew = Xold*M10 + Yold*M11 + M12 •Transformation matrix elements:
Table 66: Transformation matrix elements |
|||||||||||||||
Save |
•Changes are valid until the next reboot of the USC-Card. •Default settings can be restored with LDG. |
|||||||||||||||
Restriction |
•Set: not allowed during marking |
|||||||||||||||
Errors |
•1: Too many parameters •2: Too few parameters •5: Not allowed during marking •8: Parameter out of range •17: Wrong parameter type |
Table 67: TMB
Table 69: TMH
TRB [<XTrans> <YTrans> <ZTrans>]
Get/Set translation [bits] |
|
|||
---|---|---|---|---|
Description |
Get or set the general translation in bits. |
|||
<XTrans> [optional]
|
Value: <int> |
Function |
||
empty |
Without any parameters the X, Y and Z translation is given in bit. |
|||
XTrans [-32768; 32767] |
Set the X translation in bit. This parameter needs the parameters <Ytrans> and <Ztrans>. |
|||
<YTrans> [optional] |
Value: <int> |
Function |
||
empty |
Without any parameters the X, Y and Z translation is given in bit. |
|||
YTrans [-32768; 32767] |
Set the Y translation in bit. This parameter needs the parameters <Xtrans> and <Ztrans>. |
|||
<ZTrans> [optional] |
Value: <int> |
Function |
||
empty |
Without any parameters the X, Y and Z translation is given in bit. |
|||
ZTrans [-32768; 32767] |
Set the Z translation in bit. This parameter needs the parameters <Xtrans> and <Ytrans>. |
|||
Example |
Command |
Return |
Note |
|
TRB |
0: 0 0 0 |
Get the general translation in bit. The default is 0 0 0. |
||
TRB 1000 –5000 0 |
0: |
Translates in X by 1000 in Y by –5000 and in Z by 0 |
||
Notes |
•The translation vector is defined in bit. •The default value for XTrans, YTrans and ZTrans is 0. •USC-3: For Optic3D systems ZTrans works since USC-3 firmware version USC3_REL_20210715_70 (included in SAMLight installer REL_4_0_5_20210715_0037). The Z values are mapped by the USC Z bit value calculation. •Only the last send TRB command will be used |
|||
Save |
•Changes are saved with SVG globally. •Changes are saved with JS job specifically. •Globally saved changes are restored with LDG. •When not saved, changes are valid until the next reboot of the USC-Card. |
|||
Restriction |
•Set: not allowed during marking |
|||
Errors |
•1: Too many parameters •2: Too few parameters •5: Not allowed during marking •8: Parameter out of range •17: Wrong parameter type |
Table 70: TRB
TRH <HeadID> [<XTrans> <YTrans>]
Get/Set head specific translation [bits] |
|
|||
---|---|---|---|---|
Description |
Get or set the head specific translation in bits. |
|||
<HeadID>
|
Value: <int> |
Function |
||
empty |
Not available. This parameter is obligatory. |
|||
HeadNumber [0; 1; 2] |
Specify the head number for information on the translation or for executing a translation. |
|||
<XTrans> [optional] |
Value: <int> |
Function |
||
empty |
Get the X transformation in bits for the head specified with <HeadID>. |
|||
XTrans [-32768; 32767] |
Set the X translation in bits for the head specified with <HeadID>. |
|||
<YTrans> [optional] |
Value: <int> |
Function |
||
empty |
Get the Y transformation in bits for the head specified with <HeadID>. |
|||
YTrans [-32768; 32767] |
Set the Y translation in bits for the head specified with <HeadID>. |
|||
Example |
Command |
Return |
Note |
|
TRH 0 |
0: 0 0 |
Get the X and Y translation for Head 0. The default is 0 0. |
||
TRH 1 33 -9 |
0: |
Set the translation of Head 1 to X = 33 bit and Y = -9 bit. |
||
Notes |
•The translation vector is defined in bit. •Up to 2048 bit, the offset is set immediately. For values > 2048, an overflow occurs to protect the scan head. If an overflow occurred, the scan head moves with 65 bit / 10µs to the new position. •Only the last send TRH command for each head will be used. |
|||
Save |
N/A |
|||
Restriction |
None |
|||
Errors |
•1: Too many parameters •2: Too few parameters •8: Parameter out of range •17: Wrong parameter type |
Table 71: TRH
All the transformation commands act on the global transformation matrix. The commands directly set the corresponding values of the transformation matrix. The transformation matrix elements are computed as shown in the tables above. But in most cases, it would be the best to use the corresponding commands for setting the scale, rotation and translation values.