Do you have a question about the RTC6 PCIe Board and is the answer not in the manual?
Questions and answers
Subscribe to Our Youtube Channel
Summary of Contents for Scanlab RTC6 PCIe Board
Page 1
Installation and Operation RTC6 PCIe Board RTC6 Ethernet Board Real Time Control of Scan Systems and Lasers RTC6 Software Package V1.16.0 RTC6 boards 2023-03-15 Doc. Rev. 1.0.21 en-US...
EXTENSION 2 Socket Connector ................... 49 MARKING ON THE FLY Socket Connector ..............49 Other Hardware Interfaces ................... 49 2.10.2 Porting RTC4 Source Code to the RTC6 PCIe Board ............49 Changed Initialization ....................49 Command Changes ...................... 50 Increased Parameter Resolution ..................51 Changed Timing Behavior .....................
Page 4
2.12 Source Code for RTC6 User Programs .................... 60 2.12.1 Creating New RTC6 Source Code ..................60 2.12.2 Adapting RTC5 Source Code for the RTC6 PCIe Board ............60 Mandatory Steps ......................60 Optional Steps and Notes on Further Modification and Optimization ......61 2.13 Changes to the RTC6 Command Set .....................
Page 5
C++ ..........................96 C# ..........................96 6.2.3 Initializing the RTC6 DLL and RTC6 Board Management ............ 97 6.2.4 Start of RTC6 PCIe Board Operation ................... 98 Initializing the Board ....................98 Configuring the Board ....................98 Initializing the Scan System Control ................99 Initializing the Laser Control ..................
Page 6
6.4.1 Loading Lists ........................105 “Unconditional” Loading .................... 105 Loading with Protection ..................... 106 Terminating Lists ......................106 6.4.2 List Status ........................107 6.4.3 List Execution Status ......................108 6.4.4 Starting and Stopping Lists ....................109 6.4.5 Interrupting Lists for Synchronization of Processing ............110 6.4.6 Changing Lists Automatically ...................
Page 7
Ellipse Commands ...................... 138 [*]Para[*] Commands ....................139 7.1.2 Microstepping ........................140 7.1.3 Marking Single Dots ......................141 7.1.4 Example Code (C) ......................142 7.2 Delay Settings – Coordinating Scan Head Control and Laser Control .......... 145 7.2.1 Laser Delays ........................145 LaserOn Delay ......................
Page 8
7.3.7 Status Monitoring and Diagnostics .................. 183 Status Information Returned from the Scan System ........... 183 7.4 Laser Control ..........................184 7.4.1 Enabling, Activating and Switching Laser Control Signals ..........184 Signals for “Laser Active” Operation ................186 Signals for “Laser Standby” Operation ............... 186 Automatic Suppression of Laser Control Signals ............
Page 10
8.10.4 Calibration During the Application ................... 277 Automatic Self-Calibration ..................277 Customer-Specific Calibration ..................278 Supplemental Information about Calibration ............. 278 8.11 Camming ............................ 279 8.12 Time Measurements ........................281 8.12.1 RTC6 Timer ........................281 8.12.2 Timestamps ........................281 9 Programming Peripheral Interfaces ....................282 9.1 Signal Output ..........................
Page 11
10.1.3 Version Information ......................305 10.1.4 Optional Functions ......................305 10.1.5 Control Commands ......................306 10.1.6 List Commands ........................ 310 10.1.7 Data Types ........................314 Pointer to Locations in the PC Memory ............... 314 10.2 RTC6 Command Set ........................315 acquire_rtc ..........................
Page 22
16.2.1 Layout – Upper Side ......................879 16.2.2 Layout – Lower Side ......................880 16.2.3 Dimensions and Connector Positions ................881 16.2.4 LASER Socket Connector ....................882 Laser Control Signals ....................882 External Control Signals ....................882 BUSY List Execution Status ..................882 2-Bit Digital Input Port and 2-Bit Digital Output Port ..........
Page 23
16.7 Standalone Functionality ......................908 16.7.1 Upgrading BIOS-ETH ......................909 16.7.2 Preparing the “Standalone Basic State“ ................909 16.7.3 Preparing the “Standalone Full State“ ................910 16.7.4 Boot Image ........................911 Creating a Boot Image on the PC ................911 Copying Boot Image to Board(s) .................
DLL file RTC6DLL.dll DLL 640 The main chapters of this manual use the for 32 bit RTC6 PCIe Board (= “RTC6 PCI Express Board”) to user programs exemplify. For a product overview, see Chapter 2 ”Product Overview”, page DLL file RTC6DLLx64.dll...
RtcStreamParser-DLL – Application Programming Interface Manual, Brief information Data Streaming. Digital signal processor on the RTC6 board. Dynamic Focusing Unit This includes, for example, the following SCANLAB products: varioSCAN, varioSCAN , varioSCAN FC and varioSCAN FLEX, excelliSHIFT. Ethernet Link Loss The cable connection to the RTC6 Ethernet Board has been disconnected.
Page 27
10 µs clock cycle. High-Bandwidth Return Channel Functionality not yet released. Multiplexing iDRIVE Scan Systems In this manual, the term subsumes, for example, the following SCANLAB products: intelliSCAN, intelliSCAN , intelliSCAN intelliDRILL, intellicube, intelliWELD, varioSCAN powerSCAN II 50i, excelliSCAN. Image Field Synonym: Working Field.
Page 28
Means on the one hand the number 0, on the other hand a pointer with the value 0. The spelling for this is different in the different programming languages. Open Interface Extension. SCANLAB product (hardware). See SCANLAB website. Printed Circuit Board. Proportional–Integral–Derivative. Category of controller.
Page 29
RtcStreamParser-DLL RtcStreamParser-DLL – Application Programming Interface Manual. SCANahead System SCANLAB scan system with SCANahead servo control, for example, scan heads of the excelliSCAN series. For further information see “excelliSCAN Scan Heads – Functional Principle of SCANahead Servo Control and Operation by RTC6 Boards”...
Page 30
Signal. • As of scan system firmware 5102 + 5112. TrAck Signal • TrAck Signal-capable SCANLAB scan systems, for example, SCANahead Systems • Refers to the meaning of: – Bit #12, Bit #4, Bit #11, Bit #3 of the XY2-100 status word transferred with 16-bit protocol –...
(2) Keep the packaging, including the antistatic bag • RTC6_Software_Package_Rev.n.n.n_<Datum>.zip the RTC6 PCIe Board is delivered in, so that in case of repair the board can be properly repackaged The content of the RTC6 Software Package is as and returned to SCANLAB.
Folder RTC6 Files Subfolder Program Files • RTC6 files • RTC6_Software_RevisionHistory_<Date>_<Rev>.pdf – RTC6OUT.out Description of RTC6 Software Package changes in Program file for the PCIe-DSP English – RTC6ETH.out • RTC6_Software_Aenderungshistorie_<Date>_<Rev>.p Program file for the Eth-DSP – RTC6RBF.rbf Description of RTC6 Software Package changes in Firmware file for the FPGA German...
– RTC6expl.c enabling options (requires an auxiliary file C functions for RTC6 DLL handling for explicit which is to be purchased from SCANLAB), linking upgrading and downgrading BIOS – RTC6expl.h – for RTC6 Ethernet Boards additionally: C function prototypes of the RTC6 for explicit...
This allows a quick and software commands. flexible software development for laser–scan As many RTC6 PCIe Board as the PCIe bus permits can processes. be operated simultaneously in a single PC. The total The RTC6 PCIe Board is equipped with a fast digital number of RTC6 PCIe Boards and RTC6 Ethernet signal processor (DSP).
Page 36
Only carry out installation and maintenance work when supply voltages and lasers have been switched off. • The RTC6 PCIe Board is a class A product. In a domestic environment this product may cause radio interferences in which case the user may be required to take adequate measures.
2.5 System Requirements Notice! 2.5.1 Hardware • If on your PC an WDM technology-based The RTC6 PCIe Board requires a Windows PC with a RTC3/4/5 board driver PCIe bus interface and at least one free PCIe slot. – is yet installed or –...
• Option “syncA“ – Controlling a 3-Axis Scan System – Support of the syncAXIS control Software Allows that an RTC6 PCIe Board can Allows that SCANLAB syncAXIS control software synchronously control a third axis (z axis, for can be used (board and software are part of example, a varioSCAN as a dynamic focus unit) SCANLAB’s scope of delivery for...
Page 39
SCANLAB, specifying the serial number and the options you want. Then, to apply the upgrade to the board, specify it in RTC6conf.exe. • For retrofitting your RTC6 PCIe Board with the extra DC/DC converter (optoelectronic coupler) you need to send it to SCANLAB.
Jumpers are connections which are either open or closed. The factory solder jumper configuration of an RTC6 PCIe Board can be Notice! identified by its article number. In addition, a three-digit type code scheme is used, •...
The solder jumper field A is located on the lower side of the designations establishes Figure of the RTC6 PCIe Board, see Figure It is used to set the level (5 V or 3.3 V) of all output RTC5 Boards signals at the EXTENSION 1 socket connector, see the following table.
EXTENSION 2 Socket Connector (cont’d) socket connector pin (17) The solder jumper field B is located on the lower side (cont’d) of the RTC6 PCIe Board, see Figure +5 V It serves to configure the signal at pin (17) of the Pin17 Pin15 (high level).
The solder jumper field C is located on the lower side • On RTC6 Ethernet Boards, the printed label of of the RTC6 PCIe Board, see Figure solder jumper field B is ’Pin15’. This has been It serves to configure the signal at pin (15) of the...
2.8.1 XY2-100 Converter RTC6 PCIe Board XY2-100 Converter (Accessory) allows the RTC6 PCIe Board to control scan systems which are Only hardware extensions from SCANLAB should be equipped with a conventional XY2-100 interface. used in combination with the RTC6 PCIe Board. In addition to the RTC6 PCIe Board and its software 2.8.2 Laser Adapter...
2.8.4 Slot Cover with 9-pin D-SUB 2.8.5 Slot Cover with 15-pin D-SUB Connector for “2. SCANHEAD” Connector for Socket Connector “MARKING ON THE FLY” Socket Connector For connecting a second scan head or a z axis to the 2. SCANHEAD Socket Connector a slot cover is For using the input ports and signals of the available, see...
Figure It has been specially developed to control analog and • #130209 digital varioSCAN 40 FLEX devices by SCANLAB laserDESK software. A position change of the varioSCAN 40 FLEX focusing optics is caused by the step motor which changes the working distance of the 3D scan system in the end.
2.9 Supplementary Software To facilitate customizing RTC correction files basing on data of your own test measurements, SCANLAB offers the correXion pro software with accompanying manual, see also Section ”Image Field Correction Algorithm”, page 174. By using the SCANLAB laserDESK software, own laser marking and material-processing programs (“laser jobs“) can be created and executed without...
• For controlling one 3-axis scan system, both Figure scan head connectors must be used, see • With the RTC6 PCIe Board, the level of all output Chapter 8.5.2 ”3D Scan Systems”, page 237. signals at the EXTENSION 1 socket connector can •...
EXTENSION 2 Socket Connector the RTC6 PCIe Board • The RTC4 EXTENSION 2 socket connector does not exist on the RTC6 PCIe Board. Therefore, the User programs written for the RTC4 can only run on “I/O extension board for RTC3 and RTC4”...
Command Changes load_correction_file • changed All unsupported RTC4 commands must be removed • load_program_file changed or replaced. See also Chapter 10.3 ”Unsupported read_pixel_ad • not supported RTC4/RTC5 Commands”, page 864. • read_status changed Changed or enhanced RTC4 commands must be handled differently in the program (for example, by •...
RTC4). • set_laser_delays • For set_laser_timing, output period and pulse length are specified with 1/64 µs resolution • set_mark_speed for the RTC6 PCIe Board (whereas with 1/8 µs or • set_pixel (changed) 1 µs resolution for the RTC4). • set_pixel_line (changed) •...
Changed Timing Behavior The following RTC4 list commands are processed by the RTC6 PCIe Board as “short list commands”. This can result in a changed timing behavior during user program execution, see Section ”Normal, Short, Variable and Multiple List Commands”, page 302.
2.10.3 New and Changed • For optical data transfer between the RTC6 PCIe Board and scan systems, no special Functionality variant of the RTC6 PCIe Board (with XY2-100-O Interface to the PC interface) is required. Optical data transfer can be realized by a SCANLAB data cable with electrical- •...
(on the RTC4, this socket connector is named • LASER Connector with all Laser Control Signals “LASER EXTENSION”) the RTC6 PCIe Board slot cover, see Chapter 4.6.1 – LATCH signal for synchronization of data ”LASER Connector”, page 73, 9-pin female D-SUB transmission connector only by the SCANLAB laser adapter, see –...
– RTC4-Circular queue mode is not available (but ”McBSP/ANALOG Socket Connector”, page 84 can be coded alternatively) • For the RTC6 PCIe Board, there is no longer an IO – List Status extension board. Therefore, it does not have a –...
Laser Marking Special Functions • Vectors and arcs • Synchronization of scan system and laser control – Commands for marking ellipses, see Section – Writing, see Chapter 7.2.4 ”Sky Writing”, ”Ellipse Commands”, page 138 page 160 – Commands for marking helices, see Chapter •...
Page 57
• Processing-on-the-fly, see Chapter 8.6 ”Processing-on-the-fly”, page 242 Notice! – two encoder input ports (RS-422) with 32-bit counter for Processing-on-the-fly correction • The encoder counter direction of RTC4 boards with encoder signals on 2 axes, see (includes RTC4 Ethernet Board and Chapter 9.3.3 ”Synchronization by Encoder RTC4 SCANalone Board) is opposite to that of Signals”, page...
RTC6 PCIe Board can control: Compared to the RTC5 board family, the • Scan systems with SL2-100 interface RTC6 PCIe Board uses newer and more powerful • Scan systems with XY2-100 interface hardware components. This applies in particular to (in conjunction with the...
– In fact the parameter set_sky_writing_para is specified in 64-bit IEEE floating point format (“double”; 1.0 = 1 µs) but on the RTC6 PCIe Board it is actually executed with a resolution of 1/64 µs resolution. (1) See Glossary entry on...
”McBSP/ANALOG Socket Connector”, page User programs written for the RTC5 only become Functionality usable on the RTC6 PCIe Board, if you modify the With RTC6 PCIe Boards, the McBSP/ANALOG program code as described in the following. socket connector cannot be used in mode, see This is true even if program flow remains unchanged.
Optional Steps and Notes on Further – The import declarations were imported in your software and the calling convention std_call Modification and Optimization has been applied, see Chapter 6.2 • Commands which have been removed from the ”Initialization and Program Start-Up”, page RTC6 command set or are no longer supported (2) Take into account these command name changes must be removed or replaced in the program...
2.13 Changes to the RTC6 2.13.2 Removed from Command RTC6 Command Set free_rtc5_dll ..........864 The most RTC5 commands are covered in the RTC6 init_rtc5_dll ..........864 command set. The following chapter describes the rtc5_count_cards ........864 few differences: • Changed commands, see Chapter 2.13.1 ”Changes to the RTC6 Command Set”, page 62 •...
3.2 Laser Safety word “Caution!“. The RTC6 PCIe Board is intended for controlling • Safety notices that recommend scan systems and lasers. Therefore all relevant laser proper use of the device or warn...
Pin-out see Figure 6. Slave ....6-pin socket connector. To connect with another RTC6 PCIe Board for clock synchronization. For details, see Chapter 4.4 ”Master Socket Connector, Slave Socket Connector”, page 7.
Digital I/O Voltage Legend 1. Master ....6-pin socket connector. To connect with another RTC6 PCIe Board for clock synchronization. For details, see Chapter 4.4 ”Master Socket Connector, Slave Socket Connector”, page 2.
RTC6 PCIe Board, see Figure socket connectors. Always connect a Master The RTC6 PCIe Board can be installed into any connector of a board to the Slave connector of Windows PC with a PCI-Express bus interface and at another board by a suitable cable (available from least one free PCI-Express slot.
XY2-100 Converter (Accessory) (or a “2. SCANHEAD” Socket Connector”, page Polymer Optical Fiber converter for optical data transmission). This voltage should not be used for other purposes. RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
STATUS1 channel) receives XY2-100-compliant status plugged into the SCANHEAD connector of the signals returned by the scan system. RTC6 PCIe Board or, (by a short-as-possible 1:1 cable) connected to the corresponding 2. SCANHEAD connector pins of the RTC6 PCIe Board. For the...
Page 70
• Observe the note on get_head_status, page 213. XY2-100 Converter (Accessory): positions of solder jumpers JP1 and JP2 on the PCB. (1) For example, using a slotted screwdriver. RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
D-SUB housing by shielded clamps. connectors (for example, so that the DATA OUT signal of the RTC6 PCIe Board flows to the DATA IN input of the scan system). The cable Some scan heads have only a single connector to length should not exceed 25 m.
Page 72
The STATUS1± channel is the status channel for axis 1 (y axis). For other scan systems, the STATUS1± channel is not needed. Cable for data transmission compliant to XY2-100 protocol: requirements and pin assignments. RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
1 (“Laser On“, for instance) is represented by a LOW level (0 V, TTL). “active-HIGH” means a • If you want to use the RTC6 PCIe Board in logical 1 is represented by a HIGH level (+5 V, TTL).
For programming the input port see Chapter 9.2.2 ”2-Bit Digital Input Port”, page 288. 2-Bit Digital Output Port The RTC6 PCIe Board provides a buffered 2-bit digital output (DIGITAL OUT1 and DIGITAL OUT2). For technical data see Chapter 15 ”Technical Specifications – RTC6 PCIe Board”,...
Page 75
+5 V (07) +12V TLE2142 (15) ANALOG OUT2 +12V TLE2142 ANALOG OUT1 (08) LASER Connector, see also Figure 17: input/output wiring. See also Section ”Option “DC/DC Converter””, page RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
The SCANLAB laser adapter (accessory; #114774) is plugged into the 15-pin LASER Connector of the RTC6 PCIe Board. Then its 9-pin D-SUB connector (female) provides the same signals and pin-out as the RTC4 9-pin LASER connector. LASER1 (01) (06) GND2...
Page 77
JP2: signal at pin (04) ANALOG OUT1 +5 V (default configuration) Laser adapter (accessory): position of solder jumper JP1 and JP2 on the printed circuit board. RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
The EXTENSION 1 socket connector has 40 pins. It is the RTC6 PCIe Board, see Figure 6, the level of all located on the upper side of the RTC6 PCIe Board, see output signals at the EXTENSION 1 socket connector Figure (DIGITAL OUT 0…DIGITAL OUT 15, LATCH_OUT,...
SYNC OUT are referenced to GND . The maximum current load is 10 mA. LASER (1) See footnote on page (2) RTC6 Ethernet Board: socket connector. RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
(1)(2) The EXTENSION 2 socket connector has 26 pins. Chapter 2.7.3 ”Solder Jumper Field C – It is located on the upper side of the RTC6 PCIe Board, Configuring Pin (15) of EXTENSION 2 Socket Figure Connector”, page It provides a buffered 8-bit digital output port: Pin (17) is configured by solder jumper field B, see DATA0…DATA7.
8-bit digital output port, see also Figure The LATCH signal is referenced to GND . Its maximum current load is 10 mA. (1) See footnote on page RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
The signal is referenced to GND MARKING ON THE FLY socket connector: pin-out. The pitch of the pins is 2.54 mm. (1) See footnote on page RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
SCANLAB recommends using an additional slot cover The RS232 socket connector has 10 pins and is for using the input ports and signals of the located on the upper side of the RTC6 PCIe Board, see MARKING ON THE FLY Socket Connector, see Figure Chapter 2.8.5 ”Slot Cover with 15-pin D-SUB...
The McBSP/ANALOG socket connector has 10 pins. XDelay RDelay • It is located on the upper side of the RTC6 PCIe Board, Figure • 8 MHz clock frequency The McBSP/ANALOG socket connector is a hardware Intended for McBSP are pin (03), (05), (07) (outgoing interface that signals) and pin (04), (06), (08) (incoming signals).
Page 85
B31 B30 B29 B2 B1 B0 Timing diagram of McBSP signals at 1 bit data delay. XDelay RDelay Default: = 1. (1) See footnote on page RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
0 through 3. (1) As with RTC5 PCI Express Boards (but not with RTC5 PCI Boards). (2) Note the comment with get_temperature, page 434. RTC6 boards Doc. Rev. 1.0.21 en-US 4 RTC6 PCIe Board – Layout and Interfaces...
4.6.7 STEPPER MOTOR Socket The two SWITCH input ports serve to connect end switches. The RTC6 PCIe Board detects an end switch Connector position by a LOW level (active-LOW). Internally the The STEPPER MOTOR socket connector has 10 pins SWITCH input ports are connected to +3.3 V by and is located on the upper side of the 10 k...
Installation and Start-Up 5.2 Installing the Installation of the RTC6 PCIe Board consists of the following steps: RTC6 PCIe Board (1) Checking the RTC6 PCIe Board jumpers, see Chapter 5.1 ”Checking Jumper Settings”, page 88 Notice! (2) Hardware installation: Installing the RTC6 PCIe Board, see Chapter 5.2 ”Installing the...
RTC3/4/5 board driver and Interfaces”, page – is yet installed or (8) Install the RTC6 PCIe Board into the PCIe slot. – was installed and has been removed or Observe the instructions in the manual of your – you are not sure in this regard: (1)Install the RTC6 board driver.
Win32-based RTC6 dynamic link library RTC6DLLx64.dll – Win64-based RTC6 dynamic link library • The RTC6 PCIe Board does not support power- saving modes that switch off power to the PCIe • RTC6 files bus. Accordingly, you must disable standby or –...
Chapter 16.7.1 ”Upgrading BIOS-ETH”, components of your laser system exactly in the page 909. following order: (1) Turn on the PC containing the RTC6 PCIe Board Prerequisites and start up the control software (initialization of the board). RTC6conf.exe, page 34 •...
(4) Choose File > Load HPGL-File, and then select a *.plt. Therefore, existing Win32 user programs for the RTC6 PCIe Board are able to execute even on 64-bit (5) To start output, choose Mark > Start Marking. RTC6DLL.dll systems, if the included Win32-based file is used.
The current status of a scan head can also be queried via the RTC6 PCIe Board using appropriate Basics commands. For laser control, the RTC6 PCIe Board provides 6.1.1 Controlling Scan Systems and various analog and digital signal output ports freely Lasers – An Introductory available.
Before list commands can be sent to the RTC6 PCIe Board, a control command must define the input pointer to which subsequent list commands are transferred. This corresponds to opening a list, see Chapter 6.4.1 ”Loading Lists”,...
RTC6 Board Management”, page 97 get_rtc_version • provides information about the options installed on your RTC6 PCIe Board. • that initialize the installed RTC6 PCIe Boards, see Chapter 6.2.4 ”Start of RTC6 PCIe Board Operation”, page 98 Only afterward can the user program load the...
Pascal Differences between Implicit and Explicit Linking RTC6Import.pas Use the file as a unit and call the Implicit Linking Explicit Linking RTC6 commands you need, like goto_xy(1000, 2500); Necessary RTC6impl.h RTC6expl.h, RTC6impl.hpp, RTC6expl.c Files for performing a jump to location 1000, 2500. RTC6DLL.lib RTC6DLLx64.lib In C, you can choose either implicit linking –...
The similar applies to the RTC5 Compatibility Mode, each user program so that an RTC6 PCIe Board can be see RTC5RTC6 rows of the command descriptions. addressed at all. This even applies, if only one See also Chapter 2.12.2 ”Adapting RTC5 Source Code...
(1) Set the laser mode by set_laser_mode. necessary correction file(s) to the (2) Set the polarity of the Laser Control Signals RTC6 PCIe Board (you can load a correction table appropriate to your laser system by load_program_file before or after but you set_laser_control.
6.2.5 Example Code (C) The following C source code for a console user program (environment: Win32) illustrates the programming fundamentals of RTC6 DLL RTC6 PCIe Board initialization (for complete demo programs, see Chapter 11 ”Demo Programs”, page 866). Necessary sources: RTC6impl.h, RTC6DLL.lib...
Page 101
RTC4 Compatibility Mode as operation mode (Default: RTC6 Standard Mode // - Optional: stopping any list running on RTC6 PCIe Board number 1 (if it has been used previously by another user program, a list might still be running). load_program_file does this automatically itself.
(during Before list commands can be transferred to the loading of normal command lists). RTC6 PCIe Board, a control command must define the input pointer to which subsequent There are principally two alternative ways to utilize list commands are transferred.
6.3.2 Configuring the RTC6 List Memory RTC6 List Memory offers 8M = 8,388,608 = 2 storage positions in total. After load_program_file RTC6 List Memory areas “List 1” and “List 2” can each store 4,194,304 list commands. The protected RTC6 List Memory area “List 3”...
Page 104
Generally, during configuration are assigned: • lower storage position numbers to “List 1” • medium storage positions numbers to “List 2” • upper storage position numbers to “List 3” When configuring the RTC6 List Memory areas, the following must be observed: •...
6.4 List Handling PCI transfer of the list commands into RTC6 List Memory is buffered to increase the speed for continuous downloads. The buffer is 16 commands in The two RTC6 List Memory areas “List 1” and “List 2” size. serve as intermediate storage for the continuous loading and processing of list commands.
(the RTC6 PCIe Board automatically Automatic list changing after a list is processed can determines the corresponding appropriate list). only occur, if the list has been terminated by...
6.4.2 List Status Notes • If the list status is queried during processing of a Dependent on the command input and output subroutine in the protected RTC6 List Memory statuses, lists receive particular list status values area “List 3”, then the status is returned of the list (compare to Chapter 6.4.3 ”List Execution Status”, “List 1”...
BUSY list execution status is set when: Figure 17 – EXTENSION 1 socket connector, – the RTC6 PCIe Board currently processes one of Figure 22 the two lists – MARKING ON THE FLY socket connector, – a list has been paused by the control...
As soon is called or an external stop signal is transferred to the RTC6 PCIe Board, the currently executed list is aborted and the Signals for “Laser Active” Operation are turned off (but not deactivated).
103, then a second list can be loaded while the list. Each break point is associated with a number first list is still being processed. greater than zero. When the RTC6 PCIe Board reaches a break point during list execution, see Chapter 6.5 It typically takes substantially longer to process a list ”Structured Programming”, page...
Chapter 6.1.2 ”Control Commands and List Commands”, page 94). Otherwise, “old” commands might be unintentionally executed. • The RTC6 PCIe Board does not support the RTC4 circular queue mode, see Chapter 6.5.4 ”RTC4-Circular Queue Mode”, page 121. However, this operating mode can also be...
6.5 Structured Programming Notes • Non-indexed subroutines cannot be written The RTC6 command set supports structured directly to the protected RTC6 List Memory area programming and output of list commands by “List 3”. However, they can be subsequently numerous ways to define subroutines and character protected, see also Section ”Subsequent sets, as well as list commands for controlling...
The management of the indexed subroutines occurs protected RTC6 List Memory area “List 3”, though it on the RTC6 PCIe Board automatically. is no longer indexed. Therefore, it can no longer be For more information on index management, see called through its index by...
Rules for Programming General Information on Calling Subroutines Observe the following guidelines when programming Nested calls up to a maximum depth of 63 are indexed subroutines: possible. • In an indexed subroutine, set_end_of_list When calling with sub_call or list_call, only relative replaced by a list_nop.
Index Management and Defragmentation Defragmentation This situation can be resolved by defragmenting with Index Management save_disk/load_disk. To duplicate, renumber or convert indexed Thereby, all indexed subroutines and (by subroutines, copy_dst_src is provided. set_sub_pointer) subsequently indexed subroutines By copy_dst_src, an indexed subroutine is indexed are rewritten to the protected RTC6 List Memory area...
Subsequent Protection and Conversion of If you want to subsequently protect a non-indexed Non-Indexed Subroutines subroutine – either by method 1 or method 2 – then be aware that absolute jumps within and out from Non-indexed subroutines can be (directly) written the protected RTC6 List Memory area “List 3”...
Unprotecting Subroutines • If using method 2, you should use it fully. If the set_sub_pointer alone is executed, then the The protection of a subroutine stored in the subroutine is already callable by sub_call and its protected RTC6 List Memory area “List 3”...
RTC6 List Memory area “List 3”. area “List 3” and calling them by simple commands. The RTC6 PCIe Board manages up to 4 character sets, Indexed character definitions and text string each with 256 indexed characters. definitions are essentially indexed subroutines, but...
RTC6 List Memory area “List 3”. The RTC6 PCIe Board manages up to 42 indexed text strings. Other than that, the same rules as for indexed subroutines are applicable, see Section ”Indexed Subroutines”, page 113...
(or the “AbsCall” commands specified address which are carried out by the mark_time_abs, mark_date_abs RTC6 PCIe Board at runtime. mark_serial_abs), see Chapter 7.5 ”Marking Dates, With list_jump_pos, an absolute memory address Times and Serial Numbers”, page 210.
6.5.4 RTC4-Circular Queue Mode Notes • Reconfiguration of the RTC6 List Memory With the RTC6 PCIe Board, the RTC4 circular queue conversion of a subroutine can result in an mode does not exist. originally-valid jump address becoming invalid Nevertheless, users can actually replace this...
6.5.5 Loops set_end_of_list deletes the entire loop management, if no automatic list change is pending, Although list jumps, see Chapter 6.5.3 ”Jumps”, list_return does not. page 120, and conditional jumps, see Chapter 9.3.2 Explicit list jumps into or out of the body of a ”Conditional Command Execution”, page 295, let list_repeat/list_until...
(1) Write a Jump Command to the point (500, 500) specified before the parameters. All other parameters into the current list of RTC6 PCIe Board #1: are identical. n_jump_abs(1, 500, 500) (2) Process list with number list_no (1 or 2) on the...
In multi-threaded user programs, this can result For a source code example on how to check which in programming errors. RTC6 PCIe Board is the master and which one is slave, Section ”Example Code (Delphi)”, page 127. After synchronization, the clock phase of each board is delayed by 0…3 1/64 µs clock cycles (= approx.
The synchronization takes place automatically as a master/slave chain is severed by the first not- soon as 2 RTC6 PCIe Boards are connected. initialized board. If an RTC6 PCIe Board is initialized sync_slaves does not have to be called anymore.
Synchronous Starts and Synchronous Stops Notes • See also Chapter 9.3.1 ”Starting and Stopping Within a master/slave chain, External Starts (if Lists by External Control Signals and Master/Slave enabled with set_control_mode) and External Stops Synchronization”, page 289. are passed on: •...
Example Code (Delphi) The following example Delphi source code shows how to check which RTC6 PCIe Board is the master and which one is slave. The code must be included in a user program, see Chapter 6.2.5 ”Example Code (C)”, page 100.
– Access rights (even if temporary) to boards are then the RTC6 PCIe Board can be further used granted on an exclusive basis by the RTC6 DLL.
Page 129
An alternative restoration method is not possible. When an RTC6 PCIe Board is acquired by another user program, some important information The intermixed loading of protected functions by managed by the previous user program only in the differing applications should therefore be RTC6 DLL is not (automatically) taken over.
In order to catch errors in the program flow, the RTC6 PCIe Board carries out a general error handling. • LastError With some commands there is also an individual error – Error code handling.
For list-command downloads, each download is read back and compared (for equality) against the sent command. Here, only transfer to the RTC6 PCIe Board itself is checked; automatic parameter adjustments (for example, clipping) are not taken into account. (2) Loading of control commands...
(4) Loading of correction files For loading by load_correction_file, the integrity of the to-be-loaded correction file is checked (by the checksum) and the transfer itself checked for correctness by an immediate read back of the correction table. For this function, the correction file must contain a checksum, see command description of set_verify...
(for example, if no RTC6 PCIe Board has been detected) • The desired RTC6 PCIe Board (here: the board with serial number 12345) is not found • Access is denied to the desired RTC6 PCIe Board • An error occurs during load_program_file (for...
Page 134
else printf( "Initializing the DLL: Error %d detected\n", ErrorCode ); free_rtc6_dll(); return; else // Reading the internal board number for the desired RTC6 board const UINT SerialNumberOfDesiredBoard ( 12345 ); const UINT RTC6CountCards = rtc6_count_cards(); UINT InternalNumberOfDesiredBoard ( 0 ); for ( UINT i = 1;...
6.9 Miscellaneous 6.9.1 Free Variables 8 so-called “free” variables are available. Users can freely assign data to them by the control command set_free_variable and the short list command set_free_variable_list. These variable values can be: • outputted at the McBSP interface, see also Chapter 9.1.7 ”McBSP Interface”, page 287 •...
Vector Commands and Field coordinate system. “Arc” Commands At run-time, each vector or arc to be traced by the scan system gets divided by the RTC6 PCIe Board into As explained in Chapter 6.1 ”RTC6 Software Concept Microsteps, see Chapter 7.1.2 ”Microstepping”, Basics”, page...
[*]mark[*] Commands (and linearly from the start point to the end point of the “Arc” Commands). vector. The RTC6 PCIe Board automatically turns on Signals for “Laser Active” Operation are switched Signals for “Laser Active” Operation at the off at the beginning of the (normal) command that...
Ellipse Commands Notes • By a, you can specify either the short or long half- The RTC6 command set also provides commands for axis (then use b for the other axis). Phi0, Phi and marking elliptical arcs. Alpha are always relative to axis a. Here (unlike marking of vectors or circular arcs), you •...
[*]Para[*] Commands • Elliptical arcs can also be marked by circular Arc Commands (for example, arc_abs) if an • para_jump_abs appropriate coordinate transformation (for • para_jump_abs_3d example, scaling that differs in the • para_jump_rel x direction/y direction) has been specified by set_matrix.
7.1.2 Microstepping Notes • Custom curves can be implemented by using The RTC6 PCIe Board splits up each micro_vector[*] Commands, see Chapter 8.8 • Jump Command, ”micro_vector[*] Commands”, page 273. • [*]mark[*] Command • Only iDRIVE scan systems which are equipped with an appropriate tuning can execute jumps •...
7.1.3 Marking Single Dots To mark a single point, the Signals for “Laser Active” Operation must be switched on for the desired time period, see laser_on_list, laser_on_pulses_list, para_laser_on_pulses_list Chapter 7.4 ”Laser Control”, page 184. Alternatively, a single dot can also be marked by a timed Mark Command of length zero, see...
7.1.4 Example Code (C) The following example C source code shows the commands of a simple laser scan application. A point, a square and a circle are marked in Mode. Here it is assumed that the RTC4 Compatibility Mode is activated. The code must be included in a user program, see Chapter 6.2.5 ”Example Code (C)”, page 100.
Page 143
// Setting the jump speed and mark speed: set_jump_speed( 1000.0 ); set_mark_speed( 250.0 ); // In RTC4 Compatibility Mode the RTC6 board multiplies the speed values by 16. // Jump speed = 1000.0 bits/ms. // Marking speed = 250.0 bits/ms. // Setting the laser timing, see Chapter 7.4 ”Laser Control”, page 184 set_laser_pulses( 800, 400 );...
Page 144
// Marking a square around the center point: jump_abs( -20000, -20000 ); // Jump to the bottom left corner of the square // A Jump Delay is automatically inserted after the jump. mark_abs( -20000, 20000 ); // Marking the left edge of the square mark_abs( 20000, 20000 );...
7.2 Delay Settings – Coordinating 7.2.1 Laser Delays Scan Head Control and Laser There are two different Laser Delays: Control • LaserOn Delay • LaserOff Delay Scan head control and laser control should suit the dynamic behavior of the system components, that is, Laser Delays determine when the Signals for...
LaserOn Delay LaserOff Delay LaserOn Delay is automatically inserted at the The end of a marking is not defined by the marking start of a single Mark Command and at the start of a itself, but by the first “normal” list command that is series of Mark Command (“Polyline”) and delays the...
• Polygon Delays (optionally: variable) After each Jump Command Mark Command, the RTC6 PCIe Board inserts one of these Scanner Delays before the next command is executed (unless otherwise specified). These Scanner Delays are defined by set_scanner_delays. Their unit is 10 µs each.
> 0 (at • The “minimum” Jump Delay should not be larger set_delay_mode_list). than the “normal” Jump Delay. Otherwise, Then the RTC6 PCIe Board inserts a linearly “Variable Jump Delays“ can become very large. MinJumpDelay interpolated Jump Delay between (from...
Mark Delay Notes • If no further Mark Command follows a Mark Delay is specified by set_scanner_delays Mark Command, a Mark Delay is inserted Mark with the parameter. automatically and the laser is switched off after a A typical course for a single Mark Command with the LaserOff...
Polygon Delay Polygon Delay is specified by Polygon set_scanner_delays with the parameter. A typical course for a series of Mark Commands (“Polyline”) where Polygon Delays (instead of Mark Delays) are inserted between the individual Mark Command is shown in Figure Short list commands do not interrupt a Polyline.
0 scale() 2), see Figure 40. The default scaling function after load_program_file Then, the RTC6 PCIe Board calculates the “Variable scale() = 1 – cos(). It can be replaced by a Polygon Delay“ v_delay() for every Polyline corner user-defined scaling function, see Section ”User-...
Page 152
Figure 40. This might lead to burn-in effects in sharp corners of a Polyline. EdgeLevel If an value > 0 is specified (at set_delay_mode), the RTC6 PCIe Board switches off EdgeLevel the laser with a LaserOff Delay after delay clock cycles at the latest and thus terminates the...
User-defined “Variable Polygon Delays” Table 1: Possible table types in the ASCII text file. Each type can occur more than once. • For the scale() scaling function, load_varpolydelay loads a table from an ASCII [VarPolyTable<No>] User-defined “Variable text file. See also Section ”Variable Polygon Delays”,...
Page 154
• Spaces and tabs in a line (for example, between After initialization by load_program_file, the ’=’ and <Value>) are ignored. RTC6 PCIe Board uses the internal (default) table for • Empty lines are ignored. the “Variable Polygon Delay” (1–cos(), see •...
7.2.3 Notes on Optimizing the Laser-On and Laser-Off Overlap Delays The RTC6 PCIe Board corrects the faulty laser delay so that: The delays are set by set_scanner_delays • the Laser-On occurs 1/64 µs after the currently set_laser_delays. effective LaserOff Delay They should be appropriate for: •...
Page 156
If the LaserOn Delay is switched from a long delay to • In contrast to the RTC6 PCIe Board, the RTC5 can a short delay between two markings, the short only process one delay of the same type at a time.
Potential Errors when Optimizing the Delays The following figures show the various effects of unsuitable delays on the marking result, in this example on the lettering “RTC“. LaserOn Delay too short Mark Mark Mark At the beginning of a mark vector the laser is switched on, even though the mirrors have Mark...
Page 158
Jump Delay too short Mark Mark Mark The mark vector that follows a Jump Command has already started although the scanners Mark have not yet settled. A running-in oscillation or overshoot is visible. Mark Jump Delay too long There are no visible effects if the Jump Delay is too long.
Page 159
Polygon Delay too short Mark Mark Mark The subsequent mark command in a Polyline is already executing, although the mirrors have not Mark yet reached the end position of the preceding mark vector. The corners of the Polyline rounded off. Mark Polygon Delay too long...
• the synchronization between scan motion and laser control Mark Commands with Sky Writing enabled, the RTC6 PCIe Board automatically performs Sky Writing is available in the following modes: non-marking Sky Writing scan motions before and •...
Sky Writing Mode 2-capable” list command (for example, a [*]para[*] Command, ellipse command or cos(ϕ) ≥ Limit any short list command), then the RTC6 PCIe Board suspends Sky Writing Mode 2 and complete the preceding command in Sky Writing Mode 1...
Sky Writing Mode 3 Synchronization The time cost of Sky Writing motions for vectors and The timing diagram for scan-head and laser control in arcs having only small directional changes within a Sky Writing Mode 1 is shown in Figure 46.
Page 163
For LaserOnShift = 0, the Signals for “Laser Active” Operation are switched on (off) with a delay of Timelag relative to the set starting position (set ending position). By setting the parameter Timelag to the actual (and the parameters Nprev and Npost to Tracking Error sufficiently large values), it is ensured that: •...
Page 165
Notes • With set_sky_writing_para set_sky_writing_para_list, you can also specify • By set_sky_writing other run-in and run-out phases, for example, set_sky_writing_mode_list, you can switch back shorter ones to reduce marking times (but this and forth between Sky Writing Mode 1 may be at the expense of accuracy). Sky Writing Mode 2 Sky Writing Mode Shorter run-in and run-out phases are particularly...
Page 166
• Time-based [*]mark[*] Commands and • Pulse lengths and frequencies (in YAG modes additionally the Q-Switch delay and the “Arc” Commands can also be performed in FirstPulseKiller signal parameters) previously Sky Writing mode, see Chapter 8.9 defined for the Signals for “Laser Active” ”Timed Commands”, page 274.
Image Field which is objective or the working distance (that is, the used by the RTC6 PCIe Board is shown in Figure distance between the input laser beam axis and the The y axis points in the reverse direction of the input Image Field).
7.3.3 Virtual Image Field They let you define matrix coefficients and 2D offsets (with set_offset_xyz, ZOffset is ignored). With In particular for Processing-on-the-fly applications, a at_once = 1, they become effective immediately, if no virtual Image Field of size 29-bit is available.
For this, a test pattern is to be marked in the determine suitable coefficients A, B and C. These can middle of the z = 0 working plane. The optimum be transferred to the RTC6 PCIe Board by laser focus position for processing results can be load_z_table.
Page 171
(11)Query the focus length value l (in RTC6-20-bit range [–524,288…+524,287]) set by the • As of RTC6 Software Package V1.12.0, you can RTC6 PCIe Board for this point leave the focus length value l in RTC6 20-bit get_z_distance. range [–524,288…+524,287], if you use...
To solve this problem, measure the size (x and y) of both squares and report these values to SCANLAB. You will then receive a new 3D correction file. • See also Section ”Enhanced 3D Correction”,...
7.3.5 Image Field Correction and By focusing the deflected laser beam with an F-Theta objective, effect and effect can be avoided. Correction Tables However, this causes a barrel-shaped distortion of the Field Distortion Image Field, see Figure The deflection of a laser beam with a two-mirror system results in three effects: Pillow-shaped (1) The arrangement of the mirrors leads to a certain...
Image Field Correction Algorithm Activating Image Field Correction For these field distortions, the RTC6 PCIe Board board To activate Image Field correction, at the beginning of internally uses a algorithm to compensate for it. The a user program the required correction tables must: algorithm is based on a correction table.
Loaded correction tables are assigned to the two can be loaded from their corresponding scan head connectors by select_cor_table correction file into the RTC6 PCIe Board memory, see select_cor_table_list. also Chapter 8.5 ”Controlling 2D Scan Systems and If neither the Option “Second Scan Head Control”...
Page 176
RTC6 PCIe Board memory, then the board immediately after switching on the outputs unforeseen values to the scan system. RTC6 PCIe Board. It is recommended to explicitly Therefore, at least a 1to1 correction table must call select_cor_table. Before returning, be loaded (as 2D or 3D correction table), see...
1to1 Correction Tables 1to1 correction files • Are not assigned to a particular scan system • In general, serve test purposes only • Alternatively, can be loaded by load_correction_file with parameter Name = NULL. – According to the further parameter a 2D or 3D 1to1 correction table is being generated internally.
170: square part, ±4 Bit. Number of the correction file. With correction files supplied by SCANLAB, the parameter corresponds to the number in the file name (for example, 145 for D2_145.ct5 or D3_145.ct5). RTC6 boards Doc. Rev. 1.0.21 en-US...
Page 179
= 20000: converted from ctb file Orig = 30000: reconstructed from txt file Orig By manipulating a correction file using correction programs available from SCANLAB, is increased by 1 in each case. Orig – P = Version number of the program used to create the correction file Information about the inverse table.
Converting Correction Files The RTC6 Software Package includes the program CorrectionFileConverter.exe for converting ctb correction files to ct5 correction files and vice versa. The corresponding manual is supplied in English and German. When converting a ctb-correction file into a ct5-correction file, the ct5-correction file header receives a corresponding origin indicator (parameter 10, page...
RTC6 PCIe Board, see also: (5) A 2D coordinate transformation for aligning the • Section ”RTC4 Compatibility Mode”, page 168 scan system relative to the...
Clock Overruns The 10 µs clock cycle might not always suffice for calculating all data required by the computation- intensive Jump Commands, Mark Commands Arc Commands if several of the available command options are utilized simultaneously – for example, simultaneous control of two scan systems, wobbel motion, coordinate transformation in the virtual Image Field, Processing-on-the-fly for two axes...
Status Information Returned from the Scan System Diagnostics The scan system transmits the following signals to For status monitoring and diagnostic purposes, the RTC6 PCIe Board every 10 µs via the get_value get_values can be used to read out a SL2-100 protocol: variety of signals: •...
7.4 Laser Control 7.4.1 Enabling, Activating and Switching Laser Control Signals At certain output ports, the RTC6 PCIe Board outputs signals which can be used for controlling various laser Laser Control Signals are suppressed: types (“Laser Control Signals“ LASERON, LASER1, LASER2).
Page 185
set_laser_pulses( HalfPeriod, PulseLength ) RTC6-FPGA (chip) Specify output period and pulse length of generates internally LASER1 and LASER2 signals for “Laser active” operation & in “Laser active” operation Transfer to the signals for “Laser standby“ operation pin for LASERON as specified (Example: CO ² Mode) pin for LASER1 pin for LASER2 LASERON...
Signals for “Laser Active” Operation Signals for “Laser Standby” Operation By set_laser_pulses, set_laser_pulses_ctrl set_standby or set_standby_list, the Signals for set_laser_timing, the Signals for “Laser Active” “Laser Standby” Operation can be Operation can be • activated: HalfPeriod 0 and PulseLength ...
7.4.2 Configuring the Automatic Suppression of Laser Control Signals LASER Connector Case: Scan System Status Errors LASER Connector pin (01), (02) and (09) can be set_laser_control (Bit #16…Bit #27), it can set configured by config_laser_signals that the Laser Control Signals are to be automatically config_laser_signals_list, see Figure...
7.4.3 CO Mode For “laser active” operation: • The LASERON signal is switched on set_laser_mode(0) sets the Mode • 2 alternating modulation signals are outputted at (“Laser Mode 0”). the LASER1 and LASER2 output port. Their The timing diagram, see Figure 52, shows the pulse length and period duration can be defined...
Page 189
Notes • LASER1 signals and LASER2 signals are – activated by: HalfPeriod 0 and PulseLength – deactivated by: HalfPeriod = 0 and/or PulseLength = 0 (default setting after load_program_file) • The LASER2 signal is phase-shifted by half a signal period in relation to the LASER1 signal.
7.4.4 YAG Modes 1, 2, 3, 5 Q-Switch Signal The Q-Switch signal serves to control the quality set_laser_mode( [1, 2, 3 or 5] ) sets one of the switch of the laser. The Q-Switch period duration and YAG modes. pulse length are set by set_laser_pulses, The timing diagram, see Figure 53, shows the...
Lamp Current (Laser Power) To control the lamp current of a YAG laser, the 12-bit analog output ports, ANALOG OUT1 ANALOG OUT2 can be used. They are available at the LASER Connector, see Figure ANALOG OUT2 also available at the MARKING ON THE FLY socket connector, see Figure To define the analog output signal, the control...
Page 192
YAG Modes End of mark command Start of mark command Mark Command Output LaserOn LaserOff Delay Delay LASERON Standby Standby Q-Switch Q-Switch Period Pulse Length Period Pulse Length LASER1 (Q-Switch) FirstPulseKiller YAG 1 Length LASER2 (FirstPulseKiller) Q-Switch Standby Standby Q-Switch Pulse Length Period Pulse Length...
7.4.5 Laser Mode 4 Notes • LASER1 signals are set_laser_mode(4) sets the Laser Mode – activated by: HalfPeriod 0 and The timing diagram, see Figure 54, shows the PulseLength corresponding signals using the example of an – deactivated by: HalfPeriod = 0 and/or isolated mark command.
7.4.6 Laser Mode 6 Notes • No LASER2 signal is outputted. set_laser_mode(6) sets the Laser Mode • The delay of the switching time when a standby Laser Mode 6 is like Laser Mode 4 and is provided for pulse is still active is also valid for switching the those free-running lasers whose gate signals output values at the 2-bit digital output port (LASERON) must not be changed during the duration...
7.4.7 Softstart Mode (not yet implemented) Not implemented yet. RTC6 boards Doc. Rev. 1.0.21 en-US 7 Basic Functions for Scan Head Control and Laser Control...
7.4.8 Pulse Picking Laser Mode Notes • With set_laser_control( Bit #7 = 1 ) the set_pulse_picking or set_pulse_picking_list, the Pulse Picking signal at LASER2 can be set to a Pulse Picking Laser Mode can be set. The laser control constant length independent of the timing diagram in Figure 56 shows the...
7.4.9 “Automatic Laser Control“ • Speed-dependent laser control and encoder speed-dependent laser control can also By set_auto_laser_control, automatic readjustment be combined with each another, if of the Signals for “Laser Active” Operation – even galvanometer scanner and workpiece move dynamically during execution of Mark Commands simultaneously.
Page 198
Notes General Notes • “Automatic Laser Control“ does not compensate • Each individual contribution as well as the total for an explicit change in mark speed between two correction cannot exceed a factor of 4.0 Mark Commands caused by a set_mark_speed (clipping call.
Position-Dependent Laser Control For the scaling function tables, the following rules apply: To activate the position-dependent laser control for • Each table must begin with the line: the output port specified by [PositionCtrlTable<No>] set_auto_laser_control, a user-defined scaling <No> represents the table number. function must be loaded by load_position_control, Section ”Notes on Loading a Scaling Function”, •...
Page 200
• For <Value>, the following ranges apply: 0.0 Position 150.0 and 0.0 Scale(Position) 4.0. • Each instruction must be in a separate line. • Spaces and tabs in a line (for example, between ’=’ and <Value>) are ignored. •...
= 1 is intended (for consistency reasons) returns an actual speed corrected by the signal especially for analog scan systems. The current runtimes between the RTC6 PCIe Board and the Microstep length per 10 µs is used as input. It scan head.
Page 202
“Spot Distance Control” Notes “Spot Distance Control” functionality is only Ctrl • set_auto_laser_control( = 7 ) available for scan systems equipped with (“Spot Distance Control”) cannot be combined SCANahead servo control (for example, excelliSCAN with: series). – “Vector-controlled laser control” by set_vector_control (Ctrl = 5) (HalfPeriod) Ctrl...
Page 203
Legend Ctrl 1. With set_auto_laser_control with = 7 and with equidistant geometric pulse spacing specified at spot_distance/spot_distance_ctrl. 2. No “Automatic Laser Control“ is active (spot spacing may vary). Example marking result: “sharp” corner. With Automatic Laser Control set_auto_laser_control with Ctrl = 7 &...
Encoder-Speed-Dependent Laser Control Loading and Determining the Nonlinearity Curve Mode set_auto_laser_control( = 5 ) is intended for a pure encoder speed-dependent correction, if only the • For the Scale(Percent) nonlinearity curve, workpiece moves and the galvanometer scanners load_auto_laser_control loads a table from an (ideally) are idle.
Page 205
• The percent value is relative to the 100% value The example diagram in Figure 59 illustrates how the from set_auto_laser_control (Parameter Value) nonlinearity curve can be determined. or dynamically from a ““vector-controlled laser control””, see Section ”Vector-Defined Laser Laser Ideal power Control”, page...
Vector-Defined Laser Control The “vector-controlled laser control” allows a a signal parameter to be varied linearly along a mark vector or jump vector. To initialize the ““vector-controlled laser control””, set_vector_control must be used to specify which signal parameter is to be varied with which initial Ctrl and Value).
Free-running laser and RTC6 PCIe Board – example of marked lines. RTC6 boards Doc. Rev. 1.0.21 en-US 7 Basic Functions for Scan Head Control and Laser Control...
7.4.11 Pulse Synchronization Mode Notes • The supplied clock signal must be a TTL signal. Pulse Synchronization Mode: The minimum pulse length or pulse pause of the • Delays the output of a LASER1 pulse until a new clock signal should be 80 ns. See also clock signal pulse of the laser at Chapter 4.6.1 ”LASER Connector”, page DIGITAL IN1 pin...
Page 209
Delay set_laser_pulse_sync from t [µs] Legend 1. Clock signal of the laser@DIGITAL IN1 pin. Pulse Synchronization Mode disabled: LASER1 pulses@LASER1 pin, not synchronized with 1. Pulse Synchronization Mode enabled: LASER1 pulses@LASER1 pin, synchronized with 1. set_laser_pulses 4. Change of HalfPeriod, for example, due to a call.
0 and all increment sizes are set to 1. time_update the PC time/date is transferred to the RTC6 PCIe Board. This is necessary after every PC mark_serial mark_serial_abs Each call of causes restart.
Page 211
number-set currently being marked). The control commands set_serial_step set_serial always apply to the serial-number-set most recently selected by select_serial_set. • get_serial returns the current serial number of the serial-number-set selected by select_serial_set (if multiple serial-number-sets exist, then the returned serial number is not necessarily the most recently marked serial number).
Advanced Functions for Scan Head Control and Laser Control 8.1 iDRIVE Functions 8.1.1 Transfer Protocol Data transfer between RTC6 PCIe Board and SCANLAB iDRIVE scan systems utilize the iDRIVE scan system is carried out according technology. This servo and control approach exploits SL2-100 protocol.
8.1.2 Configuring the Data Signal Reading Out Data Transmission Behavior of the At any time, data received by the RTC6 PCIe Board Scan System can be: • Read out asynchronously by get_value, Setting Data Types get_values get_head_status The digital servo architecture of iDRIVE •...
For runtime reasons, the backward transformation needs to subsequently be performed by the PC rather Coordinate transformations than on the RTC6 PCIe Board itself. For this, all (total matrix and offset) to the correction and transformation settings currently x and y coordinates...
Page 215
– the actual z axis position pattern. But you can check if the scan system StatusBX correctly processed the RTC6 PCIe Board output – an additional desired signal, values. This is particularly useful if backward for example, LaserOn...
8.1.4 Selecting the Tuning (Dynamics Setting) SCANLAB can optimize the dynamics setting of scan systems (tuning) to accommodate differing requirements of diverse applications regarding the laser positioning dynamics, for example: • Vector tuning to execute vectors or circular arcs at a constant processing speed •...
Vector tuning jump to the tuning specified by set_jump_mode. used that has been most recently set at the end of • At the end of the 2D jump, the RTC6 PCIe Board Jump Mode, unless deactivation has been automatically switches to a...
• At least one of the two scan head connectors The RTC6 PCIe Board takes this delay (also called step must have been assigned a correction table. response) into account by appending a Jump Delay the end of the jump.
Determining Jump Delay Values Notes on Loading Determined Jump Delay Experimentally Values The user manual of the scan system typically specifies • For jump length values and Jump Delay values, the step response times for each Jump tuning load_jump_table_offset loads a table from an selected jump lengths.
Page 220
• For <Value> the following ranges apply: 0.0 Length 1048576.0 0.0 Delay(Length) 65535.0 Delay values are supplied in units of 10 µs, jump lengths in bits. • Each instruction must be in a separate line. • Space characters and tabs within a line (for example, between ’=’...
Automatic Determination of the Jump Delay • For automatic determination, the longest jump is Table performed first, followed by increasingly shorter jumps (with a maximum of up to 16 different If previously Jump Mode has been successfully jump lengths). For the first (longest) jump length enabled and activated by (jump across the entire image diagonal), the set_jump_mode(...
= 12nn ) to down scale deviations. the position values received from the load_jump_table RTC6 PCIe Board by a specific factor (1, 1/2, 1/4 or Offset load_jump_table_offset( = 0 ) are 1/8). The position signals (optionally) returned by the identical.
2 bit), see also Chapter 8.1.6 ”Configuring the PosAck Limit To verify that data transfer capability between the Value”, page 222 RTC6 PCIe Board and a scan system is intact, by Data control_command( = 21nn ) an 8-bit value •...
– The (2 x 2) total matrix M is thereby automatically calculated by the RTC6 PCIe Board as a product of a scaling matrix M , a rotation matrix M and a general The coefficients m …m...
Page 225
• Each matrix or offset definition overwrites prior definitions. • Mirroring around the first dimension diagonal • The RTC6 PCIe Board calculates the total matrix M (exchanging the x and y coordinates): independently of the order in which the individual transformation matrices were defined.
Page 226
(0, 0) to (0, 500). new settings for the coordinate transformations jump_abs( 0, 0 ); are only stored on the RTC6 PCIe Board. They take set_offset_list( 1000, 500, at_once effect when a correction table is assigned.
Page 227
Notes for RTC4 Users • Coordinate transformations are applied to all to-be-outputted coordinates from all • With RTC6 PCIe Boards, coordinate Vector Commands ([*]jump[*] or [*]mark[*] transformations can no longer be set upon list commands, but also goto_xy or goto_xyz) loading a correction file by load_correction_file.
However, it is not easy to achieve well-controlled timing (referenced to the 10 µs clock of the 8.3.1 “Local Online Positioning“ RTC6 PCIe Board) while positioning a workpiece and aligning the scan system by the control commands Reading in data for “Local Online Positioning“...
1 and 2. McBSP interface are internally stored in memory The RTC6 PCIe Board identifies the data type by location 1 or 2 (see below). Transferred values can examining the coding Bit #31 (Bit #31 = 0 for...
Page 230
• x and y and rot Notes If you activate all three options together, then the • You can use “Local Online Positioning“ two offset correction values must be combined conjunction with an encoder-controlled and supplied as one 32-bit value alternatingly Processing-on-the-fly application, but not in supplied with the rotation correction value as a conjunction with a Processing-on-the-fly...
8.3.2 “Global Online Positioning“ During a Processing-on-the-fly application, new data can only be sent and stored, but not applied, see also: “Global Online Positioning“ (available as of • set_matrix( HeadNo = 4 ) RTC6 Software Package V1.6.1) needs to be •...
8.4 Wobbel Mode A broadening of the original line is obtained by choosing suitable values for the transverse and longitudinal amplitudes and the frequency of the Wobbel Mode allows varying the line width for wobbel movement. With figure-of-8s, broader mid- laser marking.
Example Code (C++) For optimum marking results, the wobbel frequency and mark speed must complement each other, see The following example C++ source code shows Chapter 8.4.1 ”Wobbel Shapes – Important Notes on a zigzag pattern, see Figure Choosing Appropriate Parameter Values”, page 234.
8.4.1 Wobbel Shapes – Important Notes Notes on Choosing • Also take the path velocity on the wobbel shape Appropriate Parameter Values itself into account. For circular wobbel shapes it is calculated as follows: “Classic” Wobbel Shapes ...
“Freely Definable Wobbel Shapes” Wobbel Parameters • The maximum frequency estimated with When defining “freely definable wobbel shapes” (see rule of thumb 1: set_wobbel_vector) take the dynamics of the F = 1/(10 0.33 300 Hz. scan head into account. •...
• The RTC6 PCIe Board returns to this setting after two correction tables are assigned to the respective every load_program_file. If a different setting is scan head connector, see also Section ”2.
8.5.2 3D Scan Systems Connection and Initialization In order to control a 3-axis scan system by an An RTC6 PCIe Board can also be used to control a 3- RTC6 PCIe Board: axis scan system . This requires the Option “3D”, •...
3D Commands Notes • After “vector-controlled laser control” has been These are, for example, the following activated by set_vector_control (Ctrl = 7), the RTC6 commands: para-Mark Command para-Jump Commands • [*]3d[*] can be used to set a dynamic focus shift linearly •...
set_offset_xyz or set_offset_xyz_list, an Adjusting Tracking Errors • By offset can be defined for the z coordinate. In If the xy scan head and the Dynamic Focusing Unit addition, set_defocus set_defocus_list can be unit of a 3D scan system have different used for defining an offset to the calculated focal Tracking Errors,...
Enhanced 3D correction is not active by default after load_program_file. It becomes active upon loading a valid table onto the RTC6 PCIe Board. It can be deactivated by calling load_stretch_table using a NULL pointer instead of the filename.
8.5.3 Using Several Correction Tables The RTC6 PCIe Board memory can store 8 different correction tables at the same time. It can be useful to work with several different correction tables even if only a single scan system (2D or 3D) is used. Example: a pilot laser and a working laser with different wavelengths are used.
Option Processing-on-the-fly enabled, the required for activation may have to be determined RTC6 PCIe Board allows processing of parts in motion beforehand by a calibration process (see below). (for example, parts on a conveyor belt, rotating plate If both scan head connectors each have a...
8.6.2 Compensating Linear The following McBSP-based Processing-on-the-fly corrections of motions are available: Movements • set_fly_x_pos, set_fly_y_pos even in Processing-on-the-fly correction for linear combination movements (translations) can be activated To compensate 1D or 2D motions of the • set_fly_x and/or set_fly_y scan system (for example, robot arms), see Chapter 8.6.2 ”Compensating Linear •...
Page 244
(1) The encoder counters are signed 32-bit counters with (2) Alternatively, the counter start and end values can be overflow (= after reaching the maximum (minimum) stored in a cache on the RTC6 PCIe Board by the store_encoder counter value, counting continues at the minimum...
Correction via McBSP Interface • In contrast, activation of Processing-on-the-fly correction by set_mcbsp_in To be able to pass position values via the set_mcbsp_in_list also result in McBSP input McBSP interface, the Processing-on-the-fly correction values being copied to internal memory locations must be activated by: 1, 2 and/or 3, see Section ”Correction via...
Correction via McBSP Interface with Correction via McBSP Interface with Additional McBSP Input Enhanced McBSP Input To activate Processing-on-the-fly correction for linear As an alternative to the previous chapter’s methods, motions using McBSP input values (as an alternative you can also activate Processing-on-the-fly correction set_fly_x_pos or set_fly_y_pos), you can also call set_multi_mcbsp_in...
(4) Alternatively, the counter start and end values can be (2) By set_control_mode Bit #9 it can be set beforehand stored in a cache on the RTC6 PCIe Board by the store_encoder whether the counter is reset at the respective list command and then retrieved from Processing-on-the-fly command or at the start trigger.
Correction via McBSP Interface Correction via McBSP Interface with Additional McBSP Input If angle-position values for Processing-on-the-fly correction of rotary movement are forwarded by the A Processing-on-the-fly correction for rotary McBSP interface, then Processing-on-the-fly movements with McBSP input values can be activated correction must be activated by set_fly_rot_pos.
2D encoder Encoder Compensation for compensation (and to store it on the xy Positioning Stages”, page 249 RTC6 PCIe Board) and to select simultaneously one of • Even during an interruption of a set_fly_2d the both correction tables.
Page 250
It becomes active as soon as a valid 2D compensation treated as comments and ignored. table from an ASCII text file gets loaded onto the • The order of data points is up to you. RTC6 PCIe Board. You can subsequently deactivate it by calling load_fly_2d_table using a...
8.6.5 Deactivating • Processing-on-the-fly correction activated by set_mcbsp_in set_mcbsp_in_list also gets Processing-on-the-fly deactivated if you call set_mcbsp_in with Correction Mode Mode = 0 or set_mcbsp_in_list with = 0. All Processing-on-the-fly corrections can be This could lead to a “Hard Jump” to an deactivated (simultaneously for both spatial uncorrected output position directions) by fly_return.
8.6.6 Virtual Image Field with 8.6.7 Synchronizing Processing-on-the-fly Processing-on-the-fly Applications With Processing-on-the-fly applications, the full value range (29-bit) of the virtual Image Field can be used, Processing of command lists can be started by either Chapter 7.3.3 ”Virtual Image Field”, page 169 a RTC6 command or an external start signal, see load and process command lists with objects that are Chapter 6.4.4 ”Starting and Stopping Lists”,...
Page 253
External Starts triggered by an external start The behavior of the galvanometer scanners during signal (or by simulate_ext_start such a forwarding motion depends on the simulate_ext_start_ctrl) that do not execute Processing-on-the-fly correction used: immediately because of the track delay setting •...
8.6.8 Encoder Resets If, during list processing, it is necessary to immediately respond to this error, then the Many encoder-based Processing-on-the-fly list command if_not_activated can be called to applications (for example, a conveyor belt possibly jump to an error-handling routine. continuously traveling in the same direction) need to •...
Processing-on-the-fly operation the last call of get_marking_info. Subsequent transformations of type 5…9, see Chapter 7.3.6 Because the RTC6 PCIe Board clips coordinate values ”Output Values to the Scan System”, page 181, at the boundaries to prevent unallowed values, this are not taken into account here.
• Boundary exceedance of a customer-defined For Processing-on-the-fly applications, the monitoring area does not necessarily result in RTC6 PCIe Board also checks for exceedance of a clipping of the output coordinate values. Clipping second value range. Its boundaries can be specified (and setting error bits Bit #0…Bit...
Image Field is small enough and the rotation center is sufficiently far away. Users are responsible for appropriate testing. SCANLAB provides no additional functionality for this. A virtual Image Field for the z coordinate does not exist.
Page 258
Notes on Usage • If correction for all three spatial directions is activated by set_fly_x, set_fly_y and set_fly_z, • For general information on Processing-on-the-fly then a subsequent set_fly_x( ScaleX=0 ) only correction and determining scaling factors, see deactivates X correction without affecting Y and Chapter 8.6 ”Processing-on-the-fly”, page 242.
8.6.12 “Fly Extension” Commands • Important: “Fly Extension” Commands are in no case compatible with the “Classic” • In order to be able to use the Processing-on-the-fly commands Processing-on-the-fly functionality flexibly and • A Processing-on-the-fly application with “Classic” generically, the “Fly Extension”...
Notes on How to Use • The galvanometer scanner movement (stand still “Fly Extension” Commands ore move along) can be specified with wait_for_1_axis (wait_for_2_axes) by set_fly_1_axis( Axis, Mode, Scale ) • r eplaces WaitMode parameter (WaitMode). Thus, it is no one of the “Classic“...
Page 261
Table 4: Supported Modes and Encoders with “Fly Extension” Commands. Mode Encoder Effect (parameter (“source”) value Mode) return code RTC6_PARAM_ERROR. Reserved. Generates get_last_error Encoder0. Only for Processing-on-the-fly-correction. Encoder counter “Encoder0”-scaled. PreviewTime-corrected. Encoder1. Only for Processing-on-the-fly-correction. Encoder counter “Encoder1”-scaled. PreviewTime-corrected. Encoder2. Only for Processing-on-the-fly-correction.
Page 262
Notes on Table • Each of these sources can be recorded by set_trigger/set_trigger4/set_trigger8. • Mode 1…4 as well as 17…18 are also suitable for scan systems with SCANahead control. • With wait_for_1_axis and wait_for_2_axes, Mode 17…20 must be specified but not 1…4. •...
”Marking Dots, Lines and Arcs”, page 136 – The temporal distance between the individual intended for scanning vector based images. pixels with the parameter HalfPeriod Furthermore, the RTC6 PCIe Board allows marking Channel – The parameter is extended compared pixel images (bitmaps). With suitably adjusted lasers,...
Page 264
(split-up into Microsteps) motion. Very low pixel Then only one command is stored on the output frequencies result in multiple RTC6 PCIe Board, but during list processing the galvanometer scanner steps per pixel, higher set_pixel is executed n times.
8.7.3 Laser Control Notes • Pixel output frequencies > 800 kHz (“Fast Mode” Depending on the type of laser employed, the laser “Ultra Fast Mode”) require the Option energy outputted at each pixel position can be varied “UFPM“. Otherwise, the pixel output frequency is clipped to 800 kHz.
Page 266
Table 5: Mode Max. fre- No. of parameter of set_pixel/set_n_pixel parameter of set_pixel/set_n_pixel (name: PortOutValue1 (name: PortOutValue2 quency pixels set_pix set_n_ pixel 400 kHz Pixel 1 (defined by the pulse length). Port output (but not port 5) for Pixel 1 The output is done as signal LASER1.
Page 267
Table 6: Output Port Where at the RTC6 PCIe Board 12-bit analog output port LASER Connector, page ANALOG OUT1 Figure 12-bit analog output port LASER Connector, page ANALOG OUT2 Figure MARKING ON THE FLY Socket Connector, page ANALOG OUT2 Figure...
8.7.4 Synchronization The default pixel should be defined appropriately prior to set_pixel_line/set_pixel_line_3d in order to The pixel output timing diagram for one image line achieve a non-visible laser marking (= “idle pixels”) in with 3 pixels is shown in Figure the run out, see set_port_default set_default_pixel.
Page 269
Notes • With HalfPeriod < PulseLength / 2 the laser does not switch off between the pixels. • When specifying HalfPeriod and pixel distance, observe the dynamics of the scan system (mark speed) and the properties of the laser system (power modulation). Actual position Set position (microsteps)
Page 270
Example Code The example code must be included in a user program. UINT = uint32_t LONG = int32_t // laser parameters UINT LaserMode = 0; UINT LaserControl = 0x0; LONG LaserOnDelay = (LONG)round(100.0*64.0); // LaserOnDelay = 100 µs UINT LaserOffDelay = (UINT)round(100.0*64.0); // LaserOffDelay = 100 µs UINT HalfPeriod = (UINT)round(5.0 * 32.0);...
Page 271
switch (Mode) case STANDARD: case STANDARD_MOVE: // standard Pixel Output Mode up to 400 kHz (Mode = 0, 256) // 2 values of 32 bit per pixel // 1 pixel per set_pixel command //-------------------------------- // | pixel1 // | 32 Bit 32 Bit // | PulseLength || PortOutValue | //--------------------------------...
Page 272
case FAST: // fast Pixel Output Mode up to 1.6 MHz (Mode = 32) - needs UFPM-Option // 1 value of 16 bit per pixel // 4 pixel per set_pixel command //------------------------------------------------------- // | pixel2 pixel1 pixel4 pixel3 // | 16 Bit 16 Bit 16 Bit...
8.8 micro_vector[*] Commands Notes • micro_vector[*] Commands wait for a preceding micro_vector[*] Commands move the scanner delay. They never trigger new galvanometer scanners directly to the specified Scanner Delays. position by a “Hard Jump” • Users themselves are responsible for •...
8.9 Timed Commands The following timed commands are available: • Vectors and arcs “Normal” Vector Commands and “Arc” Commands – timed_jump_abs are executed in such a way that the laser focus moves – timed_jump_rel with a defined speed . This is fine for most laser timed_mark_abs –...
Values to the Scan System”, page 181, #9. For higher long-term repeatability requirements, SCANLAB scan systems can be equipped with an The setting can also be made manually with set_hi, if additional internal sensor system for automatic self- customer-specific measuring procedures are to be calibration (ASC sensor system, Home-In sensors).
Page 276
This ASC hardware check also occurs • For iDRIVE scan systems , the following applies automatically by auto_cal( Command = 0 ) and if in addition: Command required, for auto_cal( = 1 and 3 ), see – At the beginning of a measurement routine, also auto_cal command description and...
8.10.3 Determining Reference Values 8.10.4 Calibration During the Application The reference values are determined by auto_cal (Command = 0). This starts the measurement routine Automatic Self-Calibration for determining the current Home-In positions. These Automatic self-calibration of the scan system during are then the reference values for later calibrations an application can be executed with Command...
Customer-Specific Calibration Command stored for the affected axis ( = 0 ) and the gain and offset factors remain unchanged Automatic self-calibration is midpoint centered, that Command with ( = 1 ) . Then get_hi_pos returns 0 is, the Image Field center remains stable.
8.11 Camming camming produces a marking that simulates the classic camshaft action of moving a valve tappet – or more generally a cam disk moving a lever. An example for a Camming process is shown in Figure The galvanometer scanner motion here is a lever movement defined as a 2D curve.
Page 280
Notes for Testing At any time, the curve can be restarted at the address defined by set_extstartpos set_extstartpos_list • If a curve point list is finished by set_end_of_list (typically but not necessarily FirstPos) by an external and does not cross the boundary between List 1 /START (independently of the current index, possibly and List 2 (see Chapter 6.4 ”List Handling”,...
8.12 Time Measurements wait_for_timestamp_counter Subsequently, wait_for_timestamp_counter_mode can be used to wait in a list for a fixed time difference to the 8.12.1 RTC6 Timer stored 32-bit “Timestamp Counter”. Overflows of 32-bit “Timestamp Counter” are detected and RTC6 PCIe Boards are equipped with an integrated corrected.
For this purpose, the RTC6 PCIe Board provides a variety of peripheral interfaces, see Chapter 4.6 The output values can be changed at any time by ”Interfaces for the Laser and Peripheral Equipment”,...
9.1.2 8-Bit Digital Output Port 9.1.4 12-Bit Analog Output Port 1 and 2 The EXTENSION 2 socket connector provides a (jumper-configurable) buffered 8-bit digital LASER Connector provides the two 12-bit analog output port (DATA0…DATA7), see Section ”8-Bit output ports, ANALOG OUT1 ANALOG OUT2, see Digital Output Port”, page...
• The RTC6 PCIe Board generates periodic CLOCK • For changes of direction or pulse period, the new signal pulses (during reference runs by values do not become active until an already-...
Querying Signals and Status Values WaitTime Parameter The WaitTime parameter of the control commands can The current status of stepper motor signals (ENABLE, DIRECTION, CLOCK and SWITCH), the currently be used to set them to return to the calling program defined CLOCK pulse period and the current values of after the specified time (in seconds) has elapsed, internal position variables for both stepper motors...
9.1.6 RS-232 Interface 9.1.7 McBSP Interface The RS232 socket connector provides an RS-232 At the McBSP interface, see Chapter 4.6.6 interface, see Chapter 4.6.5 ”RS232 Socket ”McBSP/ANALOG Socket Connector”, page 84, a Connector”, page 32-bit data word every 10 µs at DX0 pin (07) is permanently outputted.
9.2 Signal Input 9.2.4 McBSP Interface At the McBSP interface, see Chapter 4.6.6 Signals of peripherals (for example, signals of a ”McBSP/ANALOG Socket Connector”, page 84, the transport system, workpiece recognition system or 32-bit data word most recently fully transmitted to process monitoring camera) can be queried by the the specified memory location can be queried with interfaces described below through control...
• the 8-bit digital output port (DATA0 to DATA7) of the EXTENSION 2 socket connector Moreover, the RTC6 PCIe Board provides interfaces to control and synchronize list execution directly with • the 2-bit digital output port external signals.
LOW (that is, to 0 V or ground) for at least 10 µs. with goto_xy) nor the PAUSED list execution status If an RTC6 PCIe Board is connected to other boards by (after pause_list, stop_list or set_wait) is set at the...
Page 291
execute_list Internal starts triggered by execute_at_pointer are not passed on. External Starts triggered by simulate_ext_start simulate_ext_start_ctrl are passed on, see also Chapter 6.6.3 ”Master/Slave Operation”, page 124. get_startstop_info queries the current start status (that is, whether one of the input ports is set to LOW) (2) and whether a list has successfully started since the last query.
External Start with Track Delay Notes • The /START, /START2 and /Slave-START input ports For many applications (for example, if a workpiece are edge sensitive (HIGH to LOW level transition). must be initially transported from the light barrier to the scan system), the start must be delayed with •...
// otherwise in mode Bit #10 = 1 synchronized to the 10 µs clock of the set_control_mode_list(Mode|Bit #10); RTC6 PCIe Board. // set Bit #10 = 1 If desired, set Bit #10 = 1 (Mode|Bit #10) to // afterward: further commands configure the internal encoder-counter’s processing...
Page 294
If a further External Start is missed within the track delay, then you should delete the wait loop (otherwise the encoder counter needs to run through a full 31-bit sequence before a start can again be successfully triggered). Deletion can be accomplished by resetting the track delay with set_ext_start_delay.
9.3.2 Conditional Command • Conditional execution of any desired list commands: Execution if_cond if_not_cond have no effect if the The so-called conditional commands allow the condition for the queried value is fulfilled or not. execution of individual list commands to be made Otherwise, they result in skipping the next dependent on external control signals.
Example Code (Pascal) (1) Confirm a signal: set_start_list(1); … // set Bit #0 of the 16-bit digital output port set_io_cond_list(0, 0, 1); // loop until the signal is confirmed (that is, Bit #0 of the digital input turns HIGH) list_jump_rel_cond(0, 1, 0); // clear Bit #0 of the 16-bit output clear_io_cond_list(0, 0, 1);...
Page 297
(3) Choose between 15 small subroutines at defined memory addresses: … for i := 1 to 15 do // call subroutine at address i*100, if [Bit #3…Bit #0] (binary) = i list_call_cond(i, 15-i, i*100); … (4) Choose between 15 indexed subroutines: …...
10 µs interval) of an encoder counter to control a laser control signal parameter. (1) The actual workpiece position can also be forwarded by the McBSP interface to the RTC6 PCIe Board (see Chapter 9.3.4 ”Synchronization and Online Positioning by McBSP Signals”, page 300). (2) See Notice!, page (3) The encoder counters are signed 32-bit counters.
(deactivated) by simulate_encoder. The can be connected to these input ports. RTC6 PCIe Board provides a 1 MHz clock signal For rotational movements only one incremental (counter pulses), which replaces the signals of an encoder is necessary.
McBSP interface can be queried by read_mcbsp. In set_ext_start_delay_list). addition, the RTC6 PCIe Board automatically evaluates the current input value if execution of the laser scan processes is controlled as follows: • For Processing-on-the-fly-applications (see Chapter 8.6 ”Processing-on-the-fly”, page...
9.4 Periodical I/O Signals Notes • At a set_end_of_list, stop_execution or external periodic_toggle and periodic_toggle_list, /STOP the periodical signals continue, even if they periodically repeated signals can be outputted at a have been activated by the list command selectable IO port: periodic_toggle_list.
10 RTC6 Commands 10.1 Overview The quicker execution of short list commands reduces total list processing time. In addition, during a Polyline, the laser power can, for The following pages describe the complete RTC6 instance, be varied or the IO ports can be command set (control commands and addressed (see write_da_x_list) between the list commands).
Undelayed Short List Commands, Delayed The maximum number of up to 8 short list commands may change in the future. For fully Short List Commands future-safe applications, only one short Most short list commands (for example, list command should precede a normal list_jump_pos, list_call, sub_call or list_return)
10.1.2 Compatibility With several “delayed short list commands” in a sequence of short list commands, only the last For RTC6 customers who previously used the RTC4 “delayed” command can actually be executed (RTC5), the command descriptions (in Chapter 10.2 delayed. All others before that are executed ”RTC6 Command Set”, page 315) note in each immediately (yet before a scanner delay).
10.1.3 Version Information 10.1.4 Optional Functions Descriptions for a number of commands include If an option is not present on the RTC6 PCIe Board, version information, listed under “Version info”: Chapter 2.6 ”Options”, page 38, then the associated commands have only partial or non- •...
10.1.7 Data Types The following table defines the formats and ranges of the different data types used by the RTC6 commands: Data Format Range Pascal C, C++ unsigned 32-bit value [0; (2 –1)] longword unsigned long uint signed 32-bit value [–2 ;...
10.2 RTC6 Command Set The commands are in alphabetical order. The general structure of the command tables is as follows (1) A program language-neutral form is used. Each real programming language has its own individual naming. Category of example_command_name_one the command Function Short description describing the purpose of the command.
Ctrl Command acquire_rtc Function Acquires the specified RTC6 board for a user program. NoOfAcquiredCard = acquire_rtc( CardNo ) Call CardNo Parameters RTC6 DLL-internal number (RTC6 board management index) of the desired board. As an unsigned 32-bit value. Result The return value is: •...
Page 317
Ctrl Command acquire_rtc • acquire_rtc is available even without explicit access rights to a particular RTC6 board. Comments (cont’d) • acquire_rtc is not available as a multi-board command. • See also Chapter 6.7.1 ”Notes on Board Acquisition by a User Program”, page 128.
Variable activate_fly_1_axis List Command Function “Fly Extension” Command: Activates a 1 Axisn-Processing-on-the-fly application. Restriction If the Option Processing-on-the-fly is not enabled, then activate_fly_1_axis terminates the Processing-on-the-fly process (even though it could not have been activated). activate_fly_1_axis( Axis, Mode, Scale, Offset ) Call Axis Parameters...
Variable activate_fly_2_axes List Command Function “Fly Extension” Command: Activates a 2-Axes-Processing-on-the-fly application. Restriction If the Option Processing-on-the-fly is not enabled, then activate_fly_2_axes terminates the Processing-on-the-fly process (even though it could not have been activated). activate_fly_2_axes( ModeX, ScaleX, OffsetX, ModeY, ScaleY, OffsetY) Call ModeX Parameters...
Page 320
Variable activate_fly_2_axes List Command Comments • The following command calls are executed in the same way: (cont’d) – activate_fly_2_axes( 1, ScaleX, 0, 2, ScaleY, 0 ) = activate_fly_2d( ScaleX, ScaleY ) activate_fly_xy( ScaleX, ScaleY ) – activate_fly_2_axes( 1, ScaleX, EncX, 2, ScaleY, EncY ) = activate_fly_xy_encoder( ScaleX, ScaleY, EncX, EncY ) wait_for_1_axis and wait_for_2_axes!
Variable activate_fly_2d List Command Function Activates a set_fly_2d Processing-on-the-fly application without encoder resets. Restriction If the Option Processing-on-the-fly is not enabled, then activate_fly_2d terminates the Processing-on-the-fly process (even though it could not have been activated). activate_fly_2d( ScaleX, ScaleY ) Call ScaleX Parameters Scaling factor as for activate_fly_2d_encoder.
Multiple List activate_fly_2d_encoder Command Function Activates a set_fly_2d Processing-on-the-fly application with encoder reset and encoder offsets. is not enabled, then activate_fly_2d_encoder Restriction If the Option Processing-on-the-fly terminates the Processing-on-the-fly process (even though it could not have been activated). activate_fly_2d_encoder( ScaleX, ScaleY, EncX, EncY ) Call Parameters ScaleX...
Page 323
Multiple List activate_fly_2d_encoder Command RTC4RTC6 New command. RTC4 Compatibility Mode: see set_fly_2d. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 610, OUT 610, RBF 615. References set_fly_2d, activate_fly_2d RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Variable activate_fly_xy List Command Function Activates a set_fly_x/set_fly_y Processing-on-the-fly application without encoder resets. Restriction If the Option Processing-on-the-fly is not enabled, then activate_fly_xy terminates the Processing-on-the-fly process (even though it could not have been activated). activate_fly_xy( ScaleX, ScaleY ) Call ScaleX Parameters Scaling factor as for set_fly_x.
Ctrl Command activate_scanahead_autodelays Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Switches on or off the automatic (dynamic) calculation of the Scanner Delays and Laser Delays. Returns the current mode after activate_scanahead_autodelays has been executed. Call CurrentMode = activate_scanahead_autodelays( Mode ) Parameters Mode...
McBSP interface. • The McBSP interface ignores the first FrameSync signal after a load_program_file mcbsp_init. That is, data provided is not transmitted, see Section ”RTC6 PCIe Board as Receiver”, page RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Ctrl Command apply_mcbsp RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. apply_mcbsp_list, set_mcbsp_x, set_mcbsp_y, set_mcbsp_rot, set_mcbsp_matrix References Normal List apply_mcbsp_list Command Function Like apply_mcbsp, but a list command. apply_mcbsp_list( HeadNo, at_once ) Call HeadNo Parameters...
Normal List arc_abs Command Function Moves the laser focus from the current position at mark speed along an arc with the specified angle and center point (absolute coordinate values) within a 2D Image Field. arc_abs( X, Y, Angle ) Call Parameters Absolute x coordinate of the arc center.
Normal List arc_abs_3d Command Function Moves the laser focus at mark speed from the current position helical around an axis parallel to the z axis. The x and y components thereby characterize an arc with the specified angle around the specified axis, while the z component characterizes a linear motion from the current position to the specified end point.
Normal List arc_rel Command Function Moves the laser focus from the current position at mark speed along an arc with the specified angle and center point (relative coordinate values) within a 2D Image Field. arc_rel( dX, dY Angle ) Call Parameters Relative x coordinate of the arc center.
Page 331
Normal List arc_rel_3d Command Function Moves the laser focus at mark speed from the current position helical around an axis parallel to the z axis. The x and y components thereby characterize an arc with the specified angle around the specified axis, while the z component characterizes a linear motion from the current position to the specified end point.
Ctrl Command auto_cal Function Controls the functions for (automatic self-) calibration of the scan system attached to the specified scan head connector. ErrorCode = auto_cal( HeadNo, Command ) Call HeadNo Parameters Number of the scan head connector. As an unsigned 32-bit value. Allowed values: = 1: First scan head connector.
Page 333
Ctrl Command auto_cal Result 5, 50, 55 Calibration error (Error during calibration or error in reference data). (cont’d) 5: for x axis / 50: for y axis / 55: for both axes. 9, 90 Sensor for x axis or y axis is defective. Only returned after Command = 0, 1 or 3.
Page 334
Ctrl Command auto_cal Comments • After initialization of the RTC6, drift compensation is turned off (gain = 1.0, (cont’d) offset = 0). However, previously determined reference values are still available. • If no appropriate Home-In reference values were stored or the scan system is not equipped with Home-In sensors, then the measurement routine for auto_cal(Command = 1) (axis-specific) automatically aborts and restores the prior state.
Ctrl Command auto_cal RTC4RTC6 The functions for automatic self-calibration (Command = 0…2) are (largely) unchanged. New: Command = 3 and Command = 4. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References set_hi, get_hi_pos, get_auto_cal, write_hi_pos Ctrl Command auto_change Function...
Ctrl Command auto_change_pos Function Activates a one-time automatic list change and simultaneously defines the list position at which execution continues. auto_change_pos( Pos ) Call Parameters Start position (RTC6 List Memory address) as an offset referenced to the beginning of the list to be started by the automatic list change. As an unsigned 32-bit value.
Ctrl Command auto_change_pos values can be queried by read_status. Comments • The current List Status (cont’d) values can be queried by get_status. • The current List Execution Status • auto_change_pos triggers a flush of the buffered list input, see Chapter 6.4.1 ”Loading Lists”, page 105.
Normal List camming Command Function Enables Camming functionality. camming ( FirstPos, NPos, EncoderNo, Ctrl, Scale, Code ) Call FirstPos Parameters Starting address of the Camming command list (absolute address in RTC6 List Memory). As an unsigned 32-bit value. Allowed values: [0…(2 –1)].
Page 339
Normal List camming Command Comments • Each time camming is called, the current encoder-counter value is ascertained for use (cont’d) as the new reference value. At a later time point, the corresponding command index of the Camming command list is calculated for the then-current encoder-counter value (using the reference value and the Scale parameter).
Undelayed clear_fly_overflow Short List Command Resets the specified error bits (from get_marking_info) for customer-defined monitoring Function of Processing-on-the-fly applications. Call clear_fly_overflow( Mode ) Parameters Mode The error bits to be reset. As an unsigned 32-bit value. Bit #0 = 1: error bit Bit #4 (underflow X).
Undelayed clear_io_cond_list Short List Command Function Clears the bits of the 16-bit digital output port on the EXTENSION 1 socket connector that are set in the parameter MaskClear, if the current IOvalue at the 16-bit digital input port on the EXTENSION 1 socket connector meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Ctrl Command config_laser_signals Function Configures the laser output signal types to be outputted on pin (01) (LASER1), pin (02) (LASERON) and pin (09) (LASER2) of the LASER Connector. config_laser_signals( Config ) Call Config Parameters Desired signal configuration. As an unsigned 32-bit value. The following bits configure: Bit #0…Bit #1: Pin (02) (LASERON channel) Bit #2…Bit #3: Pin (01) (LASER1 channel)
Page 343
Delayed Short config_laser_signals_list List Command Function Like config_laser_signals, but a list command. config_laser_signals_list( Config ) Call Config Parameters Like config_laser_signals. Comments • See config_laser_signals. RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References config_laser_signals RTC6 boards...
Ctrl Command config_list Function Configures the RTC6 List Memory, that is, assigns specific memory locations to the RTC6 List Memory areas. config_list( Mem1, Mem2 ) Call Mem1 Parameters Storage positions for RTC6 List Memory area “List 1”. As an unsigned 32-bit value. Mem2 Storage positions for RTC6 List Memory...
Page 345
Ctrl Command config_list • Configuration by config_list does not alter the contents of Comments RTC6 List Memory. (cont’d) Repeating the call with differing parameters is therefore nondestructive. However, after a configuration change, previously loaded list commands are processed in accordance with the new configuration. Moreover, a configuration change could in some circumstances affect the input pointer (if, prior to the reconfiguration, it pointed to a memory position which has been assigned to “List 3”...
Ctrl Command control_command Function Sends a control command. Whether and how the addressed scan system reacts depends on its properties (among other things, the scan system firmware). See also Comments, page 347. control_command( Head, Axis, Data ) Call Head Parameters Scan head connector number of the RTC board.
Page 347
Ctrl Command control_command • control_command can only be used in conjunction with iDRIVE scan systems (see Comments Glossary entry on page 27). • control_command is not evaluated by conventional scan systems (without iDRIVE technology). • control_command is not executed with unallowed values of Head and/or Axis return code RTC6_PARAM_ERROR).
Ctrl Command copy_dst_src Function Creates entries in the internal management table for an indexed character, text string or subroutine with the specified index (Dst) by copying the table entries of another index (Src). copy_dst_src( Dst, Src, Mode ) Call Parameters Index of the indexed character, text string or subroutine whose entries should be copied from Src.
Ctrl Command create_dat_file RTC6DAT.dat Function Generates a new file of the current version. Version = create_dat_file ( Flag ) Call Flag Parameters As a signed 32-bit value. RTC6DAT.dat Generates a new file and returns the current version. –1: Only returns the current version. Version Result As an unsigned 32-bit value.
Page 350
Ctrl Command create_dat_file RTC4RTC6 New command. RTC5RTC6 New command. Version info Available as of DLL 610, OUT 610, RBF 615. Last change DAT 603. References load_program_file RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Ctrl Command disable_laser Function Disables the Signals for “Laser Active” Operation. disable_laser() Call Comments • disable_laser disables the Signals for “Laser Active” Operation at the output ports LASER1, LASER2 and LASERON (the signals are set to their respective “Off” level). Pin (02) of the LASER Connector is then at a fixed level.
Ctrl Command enable_laser Function Enables the Signals for “Laser Active” Operation. enable_laser() Call Comments • After a hardware reset (and after load_program_file), set_laser_control must be called to activate the LASER1, LASER2 and LASERON output ports and define the signal level, see Chapter 7.4 ”Laser Control”, page 184.
See also Chapter 16.5.2 ”About Searching RTC6 Ethernet Boards”, page 904. • No RTC6 Ethernet Board or RTC6 PCIe Board must already be entered at the specified index CardNo. An RTC6 Ethernet Board must be explicitly removed by eth_remove_card in advance.
Success: the entry has been made. Comments • eth_assign_card_ip is not available as a multi-board command. • No RTC6 Ethernet Board or RTC6 PCIe Board must already be entered at the specified index CardNo. An RTC6 Ethernet Board must be explicitly removed by eth_remove_card in advance.
Ctrl Command eth_boot_dcmd Function Standalone Functionality: Defines the next following control command as a boot command for Standalone Operation Mode. RTC6 Software Package 26. Prerequisite V1.7.0 BIOS-ETH eth_boot_dcmd() Call Parameters None. Result None. Comments • The definition refers to the subsequent control command, that is, list commands in between do not matter.
Ctrl Command eth_check_connection Function Checks whether the RTC6 Ethernet Board responds. CheckOK = eth_check_connection() Call Parameters None. Result Response behavior. As an unsigned 32-bit value. Not OK. The RTC6 Ethernet Board does not have an Ethernet connection, it does not respond or it is not an RTC6 Ethernet Board. OK.
Ctrl Command eth_configure_link_loss Function Sets the behavior of the RTC6 Ethernet Board in case of an Ethernet Link Loss. RTC6 Software Package 28. Prerequisite V1.7.6 BIOS-ETH eth_configure_link_loss( Mode ) Call Mode Parameters Action to take. As an unsigned 32-bit value. Signals for “Laser Active”...
Ctrl Command eth_convert_ip_to_string Function Converts an IP address in big-endian byte order to the usual dotted decimal notation (for example, “192.168.250.1”). eth_convert_ip_to_string( Ip, IpString ) Call Parameters To-be converted IP address in big-endian byte order. As an unsigned 32-bit value. IpString Converted IP address.
Ctrl Command eth_convert_string_to_ip Function Converts an IP address in usual dotted decimal notation (for example, “192.168.250.1”) to the big-endian byte order. ResultIp = eth_convert_string_to_ip( &IpString ) Call IpString Parameters To-be converted IP address in usual dotted decimal notation. As a string (char array). As a pointer to a \0-terminated ANSI string. 16 bytes max.
CardNo = 0, see also eth_max_card). • It is only ensured that each RTC6 Ethernet Board number is greater than the highest RTC6 PCIe Board number, see rtc6_count_cards. • Certainly eth_count_cards can be greater than eth_found_cards. This is the case, if RTC6 Ethernet Boards have been entered explicitly by its IP addresses into the RTC6 board management, see eth_assign_card_ip.
Ctrl Command eth_found_cards Function Returns the number of RTC6 Ethernet Boards in the search result list. Result = eth_found_cards() Call Parameters None. Result Number of RTC6 Ethernet Boards in the search result list. As an unsigned 32-bit value. There are no RTC6 Ethernet Boards in the search result list. Possibly the search has not been carried-out yet.
Ctrl Command eth_get_card_info Function Returns information about a particular RTC6 Ethernet Board enlisted in the RTC6 board management and has been previously acquired once or is currently acquired. eth_get_card_info( CardNo, Ptr ) Call CardNo Parameters Index of the RTC6 Ethernet Board in the RTC6 board management. As an unsigned 32-bit value.
Ctrl Command eth_get_card_info_search Function Returns information about a particular RTC6 Ethernet Board in the search result list. eth_get_card_info_search( SearchNo, Ptr ) Call SearchNo Parameters Index of the search result list. As an unsigned 32-bit value. Card information. As a pointer (in C and C++ data type ULONG_PTR, an unsigned 32-bit value or unsigned 64-bit value) to an array of 16 unsigned 32-bit values.
Chapter 16.5.3 ”About the RTC6 Board Management”, page 905. • By eth_set_com_timeouts, the settings can be changed (usually only in the context of a problem clarification and only on request by SCANLAB). • The parameters AcquireTimeout, AcquireMaxRetries, SendRecvTimeout and SendRecvMaxRetries refer only to the RTC6 DLL.
Ctrl Command eth_get_com_timeouts_auto Function Returns timing information (for an automatic mechanism) for an RTC6 Ethernet Board that is entered in the RTC6 board management. eth_get_com_timeouts_auto( &InitialTimeout, &MaxTimeout, &Multiplier, &Mode ) Call Result None. InitialTimeout Returned The timeout to start with. In ms. parameter As a pointer to a 64-bit IEEE floating point value.
Ctrl Command eth_get_error Function Returns an accumulated error code. It contains all errors which occurred with the most recently executed RTC6 Ethernet Board commands. EthAccError = eth_get_error() Call Parameters None. Result Error code. Identical to eth_get_last_error. As an unsigned 32-bit value. If multiple errors occurred simultaneously, then multiple bits are set.
Ctrl Command eth_get_ip Function Returns the pertaining IP address for a specified RTC6 board management index. IP = eth_get_ip( CardNo ) Call CardNo Parameters Index of the RTC6 Ethernet Board in the RTC6 board management. As an unsigned 32-bit value. Result IP address.
Ctrl Command eth_get_last_error Function Returns an error code which contains only the errors that have occurred during execution of the most recent RTC6 Ethernet Board command. EthLastError = eth_get_last_error() Call Parameters None. Result Error code. Identical to eth_get_error. As an unsigned 32-bit value. If several errors occurred at the same time, several bits are set.
Page 369
Ctrl Command eth_get_last_error Comments • For error handling, Chapter 6.8 ”Error Handling”, page 130. • eth_get_last_error and n_eth_get_last_error are available even without explicit access rights to a specific RTC6 Ethernet Board. • The board-specific error variables LastError AccError (Chapter 6.8 ”Error Handling”, page 130) are neither generated nor altered by eth_get_last_error.
Ctrl Command eth_get_port_numbers Function Returns the UDP ports for board searches (UDPsearch) and exclusive connections (UDPexcl) as well as the TCP port of an RTC6 Ethernet Board. Result = eth_get_port_numbers( &UDPsearch, &UDPexcl, &TCP ) Call Result Error code. As an unsigned 32-bit value. Success: OK.
Ctrl Command eth_get_standalone_status Function Returns Standalone Operation Moderelated information about the RTC6 Ethernet Board. RTC6 Software Package 30. Prerequisite V1.9.0 BIOS-ETH eth_get_standalone_status( &Status, &Error, &Mode ) Call Result None. Parameters None. Status Returned Status of automatic booting, see also Chapter 16.7.6 ”Automatic Booting parameter –...
Ctrl Command eth_get_static_ip Function Returns static IP address, subnet mask and gateway address which are saved on the RTC6 Ethernet Board. Result = eth_get_static_ip( &Ip, &NetMask, &Gateway ) Call Result Error code. As an unsigned 32-bit value. Success: OK. Error. Not an RTC6 Ethernet Board. Parameters None.
Ctrl Command eth_max_card Function Returns the highest index in the RTC6 board management, where an RTC6 Ethernet Board is entered. Result = eth_max_card() Call Parameters None. Result Highest index of an RTC6 Ethernet Board in the RTC6 board management. As an unsigned 32-bit value. No RTC6 Ethernet Board recorded in the RTC6 board management.
At this index an RTC6 Ethernet Board is entered which is still acquired yet. –1 Error: the entry cannot be deleted. At this index an RTC6 PCIe Board is entered. Error: the entry cannot be deleted. At this index “No card“ is entered or CardNo is invalid (> 255).
Ctrl Command eth_search_cards Function Executes a board search in form of a broadcast and returns the number of RTC6 Ethernet Boards which have answered in the specified address range. Result = eth_search_cards( Ip, Netmask ) Call Parameters IP address in Big Endian byte order. As an unsigned 32-bit value.
Ctrl Command eth_search_cards_range Function Executes a search within a precisely specified IP address range and returns the number of RTC6 Ethernet Boards which have answered. Result = eth_search_cards_range( StartIP, EndIp ) Call StartIP Parameters Start IP address in Big Endian byte order. As an unsigned 32-bit value.
• All time specifications in µs. • As a rule, it is not required to change these parameter values. In case of timing problems contact SCANLAB in order to clarify your special local characteristics. • AcquireTimeout, AcquireMaxRetries, SendRecvTimeout and SendRecvMaxRetries refer only...
Ctrl Command eth_set_com_timeouts_auto Function Sets timing information (for Ethernet communication) for an RTC6 Ethernet Board that is entered in the RTC6 board management. eth_set_com_timeouts_auto( InitialTimeout, MaxTimeout, Multiplier, Mode ) Call InitialTimeout Parameters The timeout to start with. In ms. As a 64-bit IEEE floating point value. MaxTimeout Maximum timeout (= sum of the timeouts of the individual attempts).
Ctrl Command eth_set_port_numbers Function Saves the UDP ports for board searches (UDPsearch) and exclusive connections (UDPexcl) as well as the TCP port into the Flash Memory of the RTC6 Ethernet Board. Result = eth_set_port_numbers( UDPsearch, UDPexcl, TCP ) Call UDPsearch Parameters UDP port for board searches.
Ctrl Command eth_set_remote_tgm_format Function Activates Remote Interface Mode and sets the telegram format. Prerequisite Minimum requirement: RTC6 Software Package V1.16.0 BIOS-ETH eth_set_remote_tgm_format( Format ) Call Format Parameters Telegram format. As an unsigned 32-bit value. = 0: Remote Interface Mode is not enabled. = 1: Remote Interface Mode is enabled.
Ctrl Command eth_set_search_cards_timeout Function Sets a timeout value. eth_set_search_cards_timeout( TimeOut ) Call TimeOut Parameters The timeout value. In µs. As an unsigned 32-bit value. Result None. Comments • eth_set_search_cards_timeout is not available as a multi-board command (n_). • The default timeout value is 5 ms. •...
Ctrl Command eth_set_static_ip Function Writes a static IP address, a subnet mask and also a gateway address onto the RTC6 Ethernet Board. Result = eth_set_static_ip( Ip, NetMask, Gateway ) Call Parameters Static IP address in Big Endian byte order. As an unsigned 32-bit value. NetMask Subnet mask in Big Endian byte order.
Ctrl Command execute_at_pointer Function Starts list execution (“List 1” or “List 2”) at the specified address in the RTC6 List Memory. execute_at_pointer( Pos ) Call Parameters Absolute address of the first list command to be executed. As an unsigned 32-bit value. Allowed value range: [0…(2 –1)].
Ctrl Command execute_list Function Starts execution at the beginning of the specified list (“List 1” or “List 2”). execute_list( ListNo ) Call ListNo Parameters Number of the list to be executed. As an unsigned 32-bit value. Allowed values: [uneven: “List 1“, even: “List 2“]. with Pos = 0.
Ctrl Command execute_list_pos Function Starts list execution (“List 1” or “List 2”) at the specified position. execute_list_pos( ListNo, Pos ) Call ListNo Parameters Number of the list to be executed. As an unsigned 32-bit value. Allowed values: [uneven: “List 1“, even: “List 2“]. Address of the first list command to be executed (offset relative to the start of the respective list).
Page 387
Ctrl Command execute_list_pos home_position or home_position_xyz) has been Comments • If a home jump (defined with (cont’d) executed by set_end_of_list, then execute_list_pos leads to a corresponding home return (the INTERNAL-BUSY list execution status is set while the home return is executed).
Variable fly_return_1_axis List Command Function “Fly Extension” Command: Deactivates 1 Axis of a Processing-on-the-fly application and subsequently carries-out a jump to the specified new output position. is not enabled, then fly_return_1_axis only carries-out Restriction If the Option Processing-on-the-fly the jump to the specified new output position. Call fly_return_1_axis( Axis, RetPos1 ) Parameters...
Variable fly_return_2_axes List Command Function “Fly Extension” Command: Deactivates 2 Axes of a Processing-on-the-fly application and subsequently carries-out a jump to the specified new output position. is not enabled, then fly_return_2_axes only carries-out Restriction If the Option Processing-on-the-fly the jump to the specified new output position. Call fly_return_2_axes( Axis1, RetPos1, Axis2, RetPos2) Parameters...
Variable fly_return_3_axes List Command Function “Fly Extension” Command: Deactivates all 3 Axes of a Processing-on-the-fly application and subsequently carries-out a jump to the specified new output position. is not enabled, then fly_return_3_axes terminates the Restriction If the Option Processing-on-the-fly Processing-on-the-fly process (even though it could not have been activated). Call fly_return_3_axes( RetPosX, RetPosY, RetPosZ ) Parameters...
Page 391
Normal List fly_return_z Command Function Deactivates the previously set Processing-on-the-fly correction. Subsequently executes a jump to the defined position. is not enabled, fly_return_z only executes the jump to Restriction If the Option Processing-on-the-fly the defined new output position. Call fly_return_z( X, Y, Z ) Parameters Absolute x coordinate of the new output position.
Ctrl Command free_rtc6_dll Function Frees up all resources allocated by the RTC6 DLL for a user program. free_rtc6_dll() Call Comments • RTC6 DLL-allocated resources particularly include memory area in the RTC6 DLL allocated for the RTC6 board management (which is created by init_rtc6_dll). free_rtc6_dll deletes the RTC6 board management of the RTC6 DLL.
Ctrl Command get_auto_cal Function Returns the type of ASC hardware integrated in the attached scan system previously detected by auto_cal. ASCtype = get_auto_cal( HeadNo ) Call HeadNo Parameters Number of the scan head connector. As an unsigned 32-bit value. Allowed values: = 1: First scan head connector.
Returns the RTC6 board type. Call Result = get_card_type() Result Board type. As an unsigned 32-bit value. “No card“. RTC6 PCIe Board. RTC6 Ethernet Board. Parameters None. Comments • See also Chapter 16.5.3 ”About the RTC6 Board Management”, page 905.
Ctrl Command get_char_pointer Function Returns the absolute start address of an indexed character. CharPointer = get_char_pointer( Char ) Call Char Parameters Index of the indexed character. As an unsigned 32-bit value. Allowed value range: [0…1023]. Result Absolute start address. As an unsigned 32-bit value. •...
Ctrl Command get_config_list configuration (Mem1, Mem2) to the Function Passes the parameters of the current RTC6 List Memory RTC6 board management of the RTC6 DLL and initializes it as if config_list would have been called. get_config_list() Call Result – Comments •...
Ctrl Command get_dll_version Function Returns the version number of the RTC6 DLL. DLLVersion = get_dll_version() Call Result Version number. As an unsigned 32-bit value. Comments • The RTC6 DLL version numbers are in the range 600…699. • get_dll_version is available even without explicit access rights to a specific RTC6 board.
Page 398
For the specific errors the error constants should be predefined as mentioned below. Error type Error constant RTC6_NO_ERROR – No error. RTC6_NO_PCIE_CARD_FOUND Bit #0 = 1: No RTC6 PCIe Board found. This error can only occur with (LSB) init_rtc6_dll. RTC6_ACCESS_DENIED Bit #1 = 1: Access denied. This error can occur by...
Page 399
Chapter 6.8.1 ”Download Verification”, page 131. RTC6_TYPE_REJECTED = 1024 Bit #10 = 1: For example, an [*]eth[*] command has been sent to an RTC6 PCIe Board. Bit #11 = 1: A RTC6 DLL-internal Windows RTC6_OUT_OF_MEMORY = 2048 memory request failed. RTC6_FLASH_ERROR...
Chapter 6.8 ”Error Handling”, page 130) are neither generated nor altered by get_error. • Bit #0 = 1 (error constant: RTC6_NO_PCIE_CARD_FOUND = 1 ) means that no RTC6 PCIe Board has been found (init_rtc6_dll does not search for RTC6 Ethernet Boards).
Page 401
Ctrl Command get_error Example Creates an array for specifying which board has no existing access rights and resets the (C/C++) cumulative error code. UINT NoAccess[MaxCount+1]; // MaxCount is a user-defined constant UINT Error = init_rtc6_dll();// Searches for all installed RTC6 boards if (Error &...
Ctrl Command get_fly_2d_offset Function Returns the current reference values (offset values) for 2D encoder compensation. get_fly_2d_offset( &OffsetX, &OffsetY ) Call OffsetX Returned x reference value. parameter As a pointer to a signed 32-bit value. values OffsetY y reference value. As a pointer to a signed 32-bit value. Comments •...
Ctrl Command get_galvo_controls Function Returns the corresponding control values for given input values. Restriction get_galvo_controls can only be executed, if no list is currently being processed return code RTC6_BUSY). (get_last_error get_galvo_controls( InPtr, OutPtr ) Call InPtr Parameters Pointer (data type ULONG_PTR in C and C++, an unsigned 32-bit or unsigned 64-bit value) to an array of five unsigned 32-bit values, where the to-be-outputted settings are specified: X, Y, Z, Defocus, Zoom.
Page 404
Ctrl Command get_galvo_controls RTC4RTC6 New command. RTC4 Compatibility Mode, the RTC6 multiplies the specified values for x, y, z and Defocus by 16. The allowed value range decreases accordingly. Even in RTC4 Compatibility Mode, all returned values are in the RTC6 20-bit range. RTC5RTC6 Unchanged functionality.
Ctrl Command get_head_para Function Returns the value of the requested parameter in the correction table assigned to the specified scan head. HeadPara = get_head_para( HeadNo, ParaNo ) Call HeadNo Parameters Number of the scan head connector. As an unsigned 32-bit value. Allowed values: = 1: First scan head connector.
Ctrl Command get_head_status Function Returns the XY2-100 status word from the specified scan head connector. get_head_status( Head ) Call Head Parameters = 1: Returns the status of the first scan head connector (Byte #1 = Byte #0). = 2: Returns the status of the second scan head connector (Byte #1 = Byte #0).
Page 407
Ctrl Command get_head_status Comments • The Power Status and Temperature Status signals deliver combined status information (cont’d) of both axes. • In any case also obey the status signal information described in the manual of your scan system. • With iDRIVE scan systems (see Glossary entry on page –...
Ctrl Command get_hex_version program file RTC6OUT.out, which is currently loaded Function Returns the version number of the on the RTC6. HexVersion = get_hex_version() Call Result Version number. As an unsigned 32-bit value. Comments • The version numbers of program files are in the range 600…699. get_hex_version returns the following values: –...
Ctrl Command get_hi_pos Function Returns the Home-In positions, last determined (by auto_cal) of the scan system attached to the specified scan head connector. get_hi_pos( HeadNo, &X1, &X2, &Y1, &Y2 ) Call HeadNo Parameters Number of the scan head connector. As an unsigned 32-bit value. Allowed values.
Ctrl Command get_input_pointer Function Returns the present absolute position of the input pointer. InputPointer = get_input_pointer() Call Result Position of the input pointer [0…(2 –1)]. As an unsigned 32-bit value. Comments • The position of the input pointer corresponds to the position in RTC6 List Memory (also in the protected “List 3”...
Ctrl Command get_jump_table Function Reads out the Jump Delay table which is currently stored on the board. Then copies the 1024 corresponding unsigned 16-bit values to the specified PC address. ErrorCode = get_jump_table( Addr ) Call Addr Parameters PC address for the 2048 byte memory area. Result Error code.
Ctrl Command get_laser_pin_in Function Returns the current status of the 2-Bit-Digital digital input port at the LASER Connector, see also Section ”2-Bit Digital Input Port”, page LaserPinIn = get_laser_pin_in() Call Result As an unsigned 32-bit value. Bit #0 DIGITAL IN1. (LSB) Bit #1 DIGITAL IN2.
Ctrl Command get_list_pointer Function Returns the current relative position of the input pointer as well as the list number. get_list_pointer( &ListNo, &Pos ) Call ListNo Returned Number of the list in which the input pointer is currently located. parameter As a pointer to an unsigned 32-bit value. [1…3]. values Current position of the input pointer (offset relative to the start of the respective list).
Ctrl Command get_list_serial Function Returns the number of the serial-number-set most recently selected by select_serial_set_list (or of serial-number-set 0 after load_program_file) and the current serial number of this serial-number-set. LastMarkedSerialNo = get_list_serial( &Set ) Call Result Serial number. As a 64-bit IEEE floating point value. Returned Number of the selected serial-number-set.
Ctrl Command get_marking_info Function Returns information about any boundary exceedances during Processing-on-the-fly correction as well as improper encoder signals. get_marking_info also returns the error bits of automatic suppression of Laser Control Signals. Call MarkingInfo = get_marking_info() Result Error code. As an unsigned 32-bit value. Bit #0 = 1: Processing-on-the-fly underflow in x direction (X <...
Page 416
Ctrl Command get_marking_info Result Bit #26 PosAck error bit of scan system B, x axis. (cont’d) Bit #27 TempOK error bit of scan system B, x axis. Bit #28 PowerOK error bit of scan system B, x axis. Bit #29 PosAck error bit of scan system B, y axis.
Ctrl Command get_master_slave Function Returns the master/slave status of the addressed RTC6 board. MasterSlaveStatus = get_master_slave() Call Result Master/slave status. As an unsigned 32-bit value. Information whether a further RTC6 board is connected to the Master or Slave connector of the addressed RTC6 board: Bit #0 = 1: A RTC6 board is connected to the Slave connector.
Ctrl Command get_mcbsp Function Returns the most recent input value that has been fully transferred by the McBSP interface to the memory location for Processing-on-the-fly applications. mcbsp_value = get_mcbsp() Call Result Input value. As a signed 32-bit value. Comments • get_mcbsp is equivalent to read_mcbsp(0) (see notes there). RTC4RTC6 New command.
Ctrl Command get_overrun Function Returns the number of overruns of the 10 µs clock cycle since the last call and resets the overrun counter. NumberOfOverruns = get_overrun() Call Result Number of overruns of the 10 µs clock cycle since the last call of get_overrun. As an unsigned 32-bit value.
Ctrl Command get_rtc_mode Function Returns the currently set operation mode of the RTC6 DLL. DLLMode = get_rtc_mode() Call Result DLL operation mode as a 32-bit value. = 4: RTC4 Compatibility Mode. = 5: RTC5 Compatibility Mode. = 6: RTC6 Standard Mode (default setting).
Ctrl Command get_rtc_version Function Returns the version number of the FPGA firmware (RTC6RBF.rbf) and information about enabled options of the RTC6 board. RTCVersion = get_rtc_version() Call Result Version number of the FPGA firmware and additional information. As an unsigned 32-bit value. Bit #0 (LSB) Version number of the FPGA...
Ctrl Command get_scanahead_params Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Queries certain parameters from the specified iDRIVE scan system. Restriction get_scanahead_params can be executed only, if no list is currently being processed. get_last_error RTC6_BUSY Otherwise, the return code gets set to and error code 5 is returned.
Page 423
Ctrl Command get_scanahead_params • The returned parameter values are also used by set_scanahead_params. Comments • Vmax is the maximum angular velocity of the galvanometers. Vmax is not the mark speed in the image plane. For this reason, the unit is “In bits/10 µs.” and not “In Bits/ms.”. Distortion by the correction file is not yet taken into account in the returned parameter value (see set_scanahead_params).
Ctrl Command get_serial Function Returns the current serial number of the serial-number-set selected by select_serial_set (or of serial-number-set 0 after load_program_file). CurrentSerialNo = get_serial() Call Result Serial number. As a 64-bit IEEE floating point value. Comments • For usage of get_serial, see Chapter 7.5.2 ”Marking Serial Numbers”, page 210.
Ctrl Command get_standby Function Returns the currently set standby parameters. get_standby( &HalfPeriod, &PulseLength ) Call HalfPeriod Returned Half of the currently set standby output period of the standby pulses. parameter As a pointer to an unsigned 32-bit value. values 1 bit equals 1/64 µs. PulseLength Currently set pulse length of the standby pulses.
Ctrl Command get_startstop_info Function Provides information about internal and External Starts and External Stops since the last call of get_startstop_info. Also provided are the current External Start External Stop levels, the status and signal level of the Laser Control Signals, and possible transmission errors to and from the attached scan system.
Page 427
Ctrl Command get_startstop_info Result Bit #14 = 1: Laser Control Signals are enabled (enable_laser). (cont’d) = 0: Laser Control Signals are disabled (disable_laser). Bit #15 = 1: If previously activated by eth_configure_link_loss: Ethernet Link Loss has been detected since the last call of get_startstop_info.
Ctrl Command get_status Function Returns the current List Execution Status values and the current (or most recent) position of the output pointer. get_status( &Status, &Pos ) Call Status Returned Status value. parameter As a pointer to an unsigned 32-bit value. values Bit #0 = 1:...
Page 429
Ctrl Command get_status Comments • The output pointer points to the command (in “List 1” or “List 2”) currently being (cont’d) executed or most recently executed. If, during processing of a subroutine in the area “List 3”, the output pointer’s position Pos is queried, protected RTC6 List Memory then the position is returned of the list command in the...
Ctrl Command get_stepper_status Function Returns the following status information for both stepper motor output ports: the current statuses of the stepper motor signals, the currently defined CLOCK pulse period, status “Busy” and status “Init”, and the current values of the internal position variables. get_stepper_status( &Status1, &Pos1, &Status2, &Pos2 ) Call Status1...
Ctrl Command get_sub_pointer Function Returns the absolute start address of an indexed subroutine. SubPointer = get_sub_pointer( Index ) Call Index Parameters Index of the indexed subroutine. As an unsigned 32-bit value. Allowed value range: [0…1023]. Result Absolute start address. As an unsigned 32-bit value. Comments •...
Ctrl Command get_sync_status Function Returns the master/slave synchronization information on the addressed RTC6 board. MasterSlaveSyncStatus = get_sync_status() Call Result Master/slave synchronization information. As an unsigned 32-bit value. Bit #0 Master/slave synchronization status [0…640]. As unsigned 10 bit value. … < 4: The addressed board is synchronous to the master board (or to its Bit #9 preceding board in the master/slave chain).
Page 433
Ctrl Command get_sync_status • For usage of get_sync_status, see Comments Chapter 6.6.3 ”Master/Slave Operation”, page 124. • If the addressed board has not been initialized previously by load_program_file, the get_sync_status returns 0. • As of RBF 619: – Synchronization is automatic. sync_slaves is no longer required.
Ctrl Command get_table_para Function Returns the value of the specified parameter from a currently loaded correction table. TablePara = get_table_para( TableNo, ParaNo ) Call TableNo Parameters Number of the currently loaded correction table. As an unsigned 32-bit value. Allowed values: [1…8]. See also number_of_correction_tables. ParaNo Number of the parameter.
Ctrl Command get_text_table_pointer Function Returns the absolute start address of an indexed text string. TextTablePointer = get_text_table_pointer( Index ) Call Index Parameters Index of the indexed text string. As an unsigned 32-bit value. Allowed value range: [0…41]. Result Absolute start address. As an unsigned 32-bit value.
Ctrl Command get_timestamp_long Function Returns the current value of the 64-bit “Timestamp Counter”. get_timestamp_long( &TimeStampL, &TimeStampH ) Call TimeStampL Returned Lower 64-bit “Timestamp Counter” value. parameter As an unsigned 32-bit value. values TimeStampH Upper 64-bit “Timestamp Counter” value. As an unsigned 32-bit value. TimeStampCounterLong is: Comments •...
Ctrl Command get_transform Like get_transform_offset, but without parameter Channel1, Channel2, Offset. Function get_transform( Number, Ptr1, Ptr2, Ptr, Code ) Call Number Parameters Number of to-be-backward-transformed position values. As an unsigned 32-bit value. Allowed value range: [1…2 The measured values with indices 0 to (Number–1) are backward transformed. Ptr1 Like get_transform_offset.
Ctrl Command get_transform_offset Function Transfers to the PC the position values that were recorded by set_trigger/set_trigger4/set_trigger8 and stored on the RTC6, and applies backward transformation to them. get_transform_offset( Channel1, Channel2, Offset, Number, Ptr1, Ptr2, Ptr, Code ) Call Channel1 Parameters Measurement channel.
Page 439
Ctrl Command get_transform_offset Code Parameters For Bit #0 = 0, the measurement value pairs recorded by (cont’d) (cont’d) set_trigger/set_trigger4/set_trigger8 are backward transformed as xy coordinates: Bit #1 = 0: Values recorded by measurement channel 1 (Signal1) are transferred to the PC using Ptr1 and then backward transformed as x coordinates.
Page 440
Ctrl Command get_transform_offset Code Parameters If Bit #0 = 1, then (only) the values recorded by (cont’d) (cont’d) set_trigger/set_trigger4/set_trigger8 by one of the two measurement channels (either channel 1 or 2) are backward transformed as z coordinates: Bit #1 = 0: Values recorded by measurement channel 1 (Signal1) are transferred to the PC using Ptr1 and then backward transformed as z coordinates.
Page 441
Ctrl Command get_transform_offset • get_transform_offset( Channel1, Channel2, Offset, Number, Ptr1, Ptr2, Ptr, Code ) Comments – Transfers the data pairs recorded with set_trigger/set_trigger4/set_trigger8 to the PC with • get_waveform_offset(Channel1, Offset, Number, Ptr1) and • get_waveform_offset(Channel2, Offset, Number, Ptr2) – Overwrites the data pairwise with transform( Sig1, Sig2, Ptr, Code •...
Page 442
Ctrl Command get_transform_offset set_trigger Comments • If needed, the values recorded with and backward-transformed (cont’d) transferred to the PC by get_transform_offset can additionally be untransformed transferred to the PC by get_waveform. • If backward transformation of z position values is requested (Code Bit #0 = 1), but only a 2D correction table has been assigned at the timepoint of the prior successful call to upload_transform, then the offsets to the focal length and z coordinates are initialized with 0 and the values A, B, C with are initialized 0, 1, 0 (1-to-1 backward...
Page 443
Ctrl Command get_value Function Returns the current value of the specified signal. Value = get_value( Signal ) Call Signal Parameters Desired signal type. As an unsigned 32-bit value. Result Current value of the specified signal. As a signed 32-bit value. Comments •...
Page 444
Ctrl Command get_value Example Querying diverse data types (first scan head connector, x axis): (C/C++) XY2-100 status word, PowerOK status UINT statusword, powerOK; control_command (1, 1, 0x0500); // only applicable for iDRIVE systems statusword = (get_value(1) & 0x000FFFF0) >> 4; powerOK = (statusword &...
Ctrl Command get_values Function Returns the current values of up to 4 specified signals. get_values( SignalPtr, ResultPtr ) Call SignalPtr Parameters Pointer (in C and C++ data type ULONG_PTR, an unsigned 32-bit value or unsigned 64-bit value) to an array of 4 unsigned 32-bit values, where the to- be-outputted signal types are specified.
Ctrl Command get_wait_status Function Returns the wait state of the RTC6 board. WaitStatus = get_wait_status() Call Result Wait state. As an unsigned 32-bit value. Comments • If list processing has been stopped at a break point (”wait marker”), then get_wait_status returns the corresponding number. See set_wait. •...
Ctrl Command get_waveform Like get_waveform_offset, but without parameter Offset. Function get_waveform( Channel, Number, Ptr ) Call Channel Parameters Like get_waveform_offset. Number Number of measured values to be transferred. Allowed value range: [0…max. channel size, see set_trigger/set_trigger4/set_trigger8]. The measured values from position 0 to (Number–1) are transferred. As an unsigned 32-bit value.
Ctrl Command get_waveform_offset Function Transfers to the PC the data that has been measured and stored onto the RTC6 by set_trigger/set_trigger4/set_trigger8. get_waveform_offset( Channel, Offset, Number, Ptr ) Call Channel Parameters Measurement channel. Allowed values: 1…2 with recordings started by set_trigger. 1…4 with recordings started by set_trigger4.
Ctrl Command get_z_distance Function Returns the focus length value l for the specified point within the 3D Image Field. Restriction If the Option “3D” has not been enabled or if no 3D correction table has been assigned (see select_cor_table), then get_z_distance returns 0 and otherwise has no effect. ZDistance = get_z_distance( X, Y, Z ) Call Parameters...
Ctrl Command goto_xy Function Moves the output point (of the laser focus) along a 2D vector at jump speed from the current position to the specified position (absolute coordinate values) within a 2D Image Field. goto_xy( X, Y ) Call Parameters Absolute x coordinate of the jump vector end point.
Ctrl Command goto_xyz Function Moves the output point (of the laser focus) along a 3D vector at jump speed from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then goto_xyz has the same effect as goto_xy.
Ctrl Command home_position Function Activates the home jump mode (for the x axis and y axis) and defines the home position. home_position( XHome, YHome ) Call XHome Parameters Absolute x coordinate of the home position. In bits. As a signed 32-bit value. Allowed value range: [–524,288…+524,287].
Ctrl Command home_position_xyz Function Activates the home jump mode (for the x, y and z axis) and defines the home position. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then home_position_xyz has the same effect as home_position. However, split-up into Microsteps is calculated like a 3D command and hence influences...
Undelayed if_cond Short List Command Function Conditional command execution: if_cond immediately executes the directly following list command, if the current IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Undelayed if_fly_y_overflow Short List Command Function Conditional command execution for Processing-on-the-fly applications: if_fly_y_overflow immediately executes the directly subsequent list command, if the condition in accordance with Mode for the y axis has been fulfilled. Otherwise, this list command is skipped. if_fly_y_overflow( Mode ) Call Mode...
Undelayed if_fly_z_overflow Short List Command Function Conditional command execution for Processing-on-the-fly applications: if_fly_z_overflow immediately executes the directly subsequent list command, if the condition in accordance with Mode for the z axis has been fulfilled. Otherwise, this list command is skipped. if_fly_z_overflow( Mode ) Call Mode...
Undelayed if_not_activated Short List Command Function Conditional command execution due to an error bit from activate_fly_xy/activate_fly_xy_encoder or activate_fly_2d/activate_fly_2d_encoder: If the error bit is set, then the next list command is executed immediately, otherwise it is skipped. if_not_activated() Call Comments • See also comments at activate_fly_2d/activate_fly_2d_encoder activate_fly_xy/activate_fly_xy_encoder.
Undelayed if_not_cond Short List Command Function Conditional command execution: if_not_cond immediately executes the directly following list command, if the current IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port does not meet the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are not 1 or the bits specified in Mask0 are not 0).
Undelayed if_not_fly_x_overflow Short List Command Function Conditional command execution for Processing-on-the-fly applications: if_not_fly_x_overflow immediately executes the directly subsequent list command, if the condition in accordance with Mode for the x axis is not fulfilled. Otherwise, this list command is skipped. if_not_fly_x_overflow( Mode ) Call Mode...
Undelayed if_not_fly_y_overflow Short List Command Function Conditional command execution for Processing-on-the-fly applications: if_not_fly_y_overflow immediately executes the directly subsequent list command, if the condition in accordance with Mode for the y axis is not fulfilled. Otherwise, this list command is skipped. if_not_fly_y_overflow( Mode ) Call Mode...
Undelayed if_not_fly_z_overflow Short List Command Function Conditional command execution for Processing-on-the-fly applications: if_not_fly_z_overflow immediately executes the directly subsequent list command, if the condition in accordance with Mode for the z axis has not been fulfilled. Otherwise, this list command is skipped. if_not_fly_z_overflow( Mode ) Call Mode...
Undelayed if_pin_cond Short List Command Function Conditional command execution: if_pin_cond immediately executes the directly following list command, if the current IOvalue at the LASER Connector’s 2-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Ctrl Command init_fly_2d Function Initializes the encoder reference values for 2D encoder compensation of a subsequent set_fly_2d Processing-on-the-fly application and resets both encoder values. init_fly_2d( OffsetX, OffsetY, No ) Call OffsetX Parameters Reference value of the x axis encoder. As a signed 32-bit value. Allowed value range: depends on the compensation table loaded with load_fly_2d_table.
Ctrl Command init_rtc6_dll Function Initializes control of the installed RTC6 boards for a user program. InitErrorNo = init_rtc6_dll() Call Result Error code. As an unsigned 32-bit value. If multiple errors occurred simultaneously, then multiple bits are set. The assignment between bit numbers, error types and error constants is identical to those for get_error.
Page 465
Ctrl Command init_rtc6_dll • If a user program calls init_rtc6_dll multiple times, then the RTC6 board management Comments (cont’d) created by the prior call is deleted for this user program and the originally-assigned access rights canceled. The RTC6 board management is then newly created and access rights are newly granted again.
Normal List jump_abs Command Function Moves the output point (for the laser focus) along a 2D vector at jump speed from the current position to the specified position (absolute coordinate values) within a 2D Image Field. Call jump_abs( X, Y ) Parameters Absolute x coordinate of the jump vector end point.
Normal List jump_abs_3d Command Function Moves the output point (of the laser focus) along a 3D vector at jump speed from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then jump_abs_3d has the same effect as jump_abs.
Normal List jump_rel Command Function Moves the output point (of the laser focus) along a 2D vector at jump speed from the current position to the specified position (relative coordinate values) within a 2D Image Field. Call jump_rel( dX, dY ) Parameters Relative x coordinate of the jump vector end point.
Normal List jump_rel_3d Command Function Moves the output point (of the laser focus) along a 3D vector at jump speed from the current position to the specified position (relative coordinate values) within the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then jump_rel_3d has the same effect as jump_rel.
Variable laser_on_list List Command Function Turns on the Signals for “Laser Active” Operation for a specified time interval. laser_on_list( Period ) Call Period Parameters Time interval. In bits. As an unsigned 32-bit value. 1 bit equals 10 µs. Allowed value range: 0 Period (2 –1).
Variable laser_on_pulses_list List Command Function Turns on the LASERON laser control signal for the specified number of external signal pulses, but for no longer than the specified time interval. For Pulses > 65,535 the function of laser_on_pulses_list is identical to laser_on_list. Call laser_on_pulses_list( Period, Pulses ) Parameters...
Page 472
Variable laser_on_pulses_list List Command Comments • If Pulses = 0, then laser_on_pulses_list has no effect (the LASERON signal is not (cont’d) switched on). Then laser_on_pulses_list becomes a short list command. • The LASERON signal must first be defined and enabled by set_laser_control enable_laser before it can be switched on with laser_on_pulses_list, see...
Ctrl Command laser_signal_off Function Turns off the Signals for “Laser Active” Operation immediately. laser_signal_off() Call Comments • laser_signal_off is intended for direct laser control in combination with laser_signal_on. return code RTC6_BUSY), if: • laser_signal_off is not executed (get_last_error – the BUSY list execution status is set •...
Ctrl Command laser_signal_on Function Turns on the Signals for “Laser Active” Operation immediately. laser_signal_on() Call Comments • Caution! Check the beam path before turning on the laser! • The Signals for “Laser Active” Operation must first be selected by set_laser_mode, defined by further commands, and enabled by set_laser_control enable_laser...
Page 475
Undelayed list_call Short List Command Function Causes an unconditional jump to a subroutine that starts at the specified absolute address (in any desired location within RTC6 List Memory). Call list_call( Pos ) Parameters Absolute jump address [0…(2 –1)]. As an unsigned 32-bit value. Comments •...
Undelayed list_call Short List Command Comments • The BUSY list status readable by read_status is altered by list_call if the called address (cont’d) is in the RTC6 List Memory area (“List 1” or “List 2”). If this address is instead in protected RTC6 List Memory area “List 3”, then the calling location’s list status is...
Undelayed list_call_abs Short List Command Function Causes an unconditional jump to a subroutine that starts at the specified absolute address (in any desired area of RTC6 List Memory). In the called subroutine, any absolute Vector Commands and “Arc” Commands receive an offset (based on the current coordinates at the time of the call).
Undelayed list_call_abs_cond Short List Command Conditional subroutine call (AbsCall): list_call_abs_cond executes list_call_abs( Pos ), if Function the current IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Undelayed list_call_cond Short List Command Conditional subroutine call: list_call_abs_cond executes list_call( Pos ), if the current Function IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Undelayed list_call_repeat Short List Command Function Causes an unconditional jump to a subroutine that starts at the specified absolute address (in any desired area of RTC6 List Memory) and executes its body several times. Call list_call_repeat( Pos, Number ) Parameters Absolute jump address [0…(2 –1)].
Normal List list_continue Command Function Inserts a null operation (no operation) into the RTC6 List Memory. list_continue() Call Comments • Execution of list_continue (as does list_nop) requires 10 µs. • When list_continue immediately follows a short list command, it ensures (as does list_nop) that the subsequent list command only executes in the next 10 µs clock cycle (the short list command’s “effective“...
Undelayed list_jump_cond Short List Command Conditional absolute list jump: list_jump_cond executes list_jump_pos( Function ), if the current IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Undelayed list_jump_pos Short List Command Function Execution produces an unconditional jump to the specified list-memory address. The next command there is executed immediately without delay. Call list_jump_pos( Pos ) Parameters Absolute jump address [0…(2 –1)]. As an unsigned 32-bit value. Comments •...
Undelayed list_jump_pos_cond Short List Command Conditional absolute list jump: list_jump_pos_cond executes list_jump_pos( Function ), if the current IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Undelayed list_jump_rel Short List Command Function Execution produces an unconditional jump to the specified address within the current list. The next command there is executed immediately without delay. Call list_jump_rel( Pos ) Parameters Jump distance [(–2 +1)…(2 –1)]. As a signed 32-bit value. Comments •...
Undelayed list_jump_rel_cond Short List Command Conditional relative list jump: list_jump_rel_cond executes list_jump_rel( Pos ), if the Function current IOvalue at the EXTENSION 1 socket connector’s 16-bit digital input port meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Undelayed list_next Short List Command Function Executes the next list command. list_next() Call Comments • list_next reads the next list command and executes it immediately, as long as the maximum allowed number of short list commands has not been exceeded. Otherwise, it is executed within the next 10 µs clock cycle.
Undelayed list_repeat Short List Command Function Initiates repetition of a group of list commands. list_repeat() Call Comments • See Chapter 6.5.5 ”Loops”, page 122. • Any still-pending delayed short list command executes first. • All list commands between list_repeat and the next list_until call is possibly repeated multiple times.
Undelayed list_return Short List Command Function Terminates a previously called subroutine, jumps to the calling location and executes the immediately following list command (possibly after a list_continue) immediately and without delay. list_return() Call Comments • While loading an indexed subroutine, character or text string in the protected RTC6 List Memory area “List 3”, the list_return command additionally triggers entries into the...
Page 490
Undelayed list_until Short List Command Function Terminates repetition of a group of list commands. list_until( Number ) Call Number Parameters Number of repetitions. As an unsigned 32-bit value. Number = 0 is treated like Number = 1. Comments • See Chapter 6.5.5 ”Loops”, page 122.
Ctrl Command load_auto_laser_control Function Loads a table with data points from an ASCII text file. Determines – by linear interpolation – the nonlinearity curve (see Section ”Loading and Determining the Nonlinearity Curve”, page 204) for “Automatic Laser Control“ (except Vector-Defined Laser Control), see Chapter 7.4.9 ”“Automatic Laser Control“”, page 197.
Page 492
Ctrl Command load_auto_laser_control • load_auto_laser_control is not executed return code RTC6_BUSY), if: Comments (get_last_error (cont’d) – the BUSY list execution status is set – the INTERNAL-BUSY list execution status is set • load_auto_laser_control is even executed, if: – a list has been paused by set_wait (PAUSED list execution status set) •...
Ctrl Command load_char Function Assigns a desired index to a character defined by subsequent list commands, and loads the character into the protected RTC6 List Memory area “List 3”. load_char( Char ) Call Char Parameters Index of the indexed character. As an unsigned 32-bit value. Allowed value range: [0…1023].
Ctrl Command load_correction_file Function Loads the specified correction file into RTC6 memory. Then calls automatically select_cor_table with the most recently used parameter values (or the default parameter values). ErrorNo = load_correction_file( Name, No, Dim ) Call Name Parameters Name of the correction file. As a pointer to a \0-terminated ANSI string.
Page 495
Ctrl Command load_correction_file Result Access error: board reserved for another user program (get_last_error (cont’d) return code RTC6_ACCESS_DENIED) or version check has detected an error (OUT or RTC version not compatible to the current RTC6 DLL version, get_last_error RTC6_ACCESS_DENIED | RTC6_VERSION_MISMATCH). return code Warning: 3D correction table or Dim = 3 selected, but the Option “3D”...
Page 496
Ctrl Command load_correction_file On assigning correction tables by select_cor_table: Comments (cont’d) • Use the select_cor_table select_cor_table_list command to assign one (or two) correction table(s) stored on the RTC6 to the scan head (or to both scan head connectors). • load_correction_file automatically calls select_cor_table after loading of a correction table.
Page 497
Ctrl Command load_correction_file Except its basic function and the parameters Name and No, the functionality of RTC4RTC6 load_correction_file has substantially changed: • load_correction_file now uses the new parameter Dim. This allows, for instance, storage of 3D correction files as 2D correction tables and storage of 2D correction files as 3D correction tables.
Ctrl Command load_disk Function Loads into the protected RTC6 List Memory area “List 3” the indexed characters, text strings and subroutines previously stored in a binary file by save_disk and returns the number of actually loaded list commands. NoOfLoadedCommands = load_disk( Name, Mode ) Call Name Parameters...
Page 499
Ctrl Command load_disk • Together with save_disk, load_disk can be used, for example, to defragment the Comments (cont’d) protected RTC6 List Memory area “List 3” and to subsequently protect subroutines, see Section ”Subsequent Protection and Conversion of Non-Indexed Subroutines”, page 116 Section ”Index Management and Defragmentation”, page 115.
Page 500
Ctrl Command load_disk RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. Last change DLL 615: version check. References save_disk RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Ctrl Command load_fly_2d_table Function Loads a 2D table from an ASCII text file for a set_fly_2d-Processing-on-the-fly application with 2D encoder compensation for xy positioning stages, see Section ”2D Encoder Compensation for xy Positioning Stages”, page 249. NoOfDataPoints = load_fly_2d_table( Name, No ) Call Name Parameters...
Ctrl Command load_fly_2d_table • load_fly_2d_table is not executed return code RTC6_BUSY), if: Comments (get_last_error (cont’d) – the BUSY list execution status is set – the INTERNAL-BUSY list execution status is set • load_fly_2d_table is even executed, if: – a list has been paused by set_wait (PAUSED list execution status set) •...
Ctrl Command load_jump_table_offset Function Loads a value table with Jump Delay data points from an ASCII text file (or alternatively performs automatic determination on the attached scan system) and uses linear interpolation to create the internal Jump Delay table for 2D jumps executable in Jump Mode.
Page 504
Ctrl Command load_jump_table_offset Only if Name = NULL: Param error: HeadNo or ListPos invalid. Result (cont’d) return code RTC6_SEND_ERROR). PCI error during download (get_last_error The specified table number could not be found in the file. Comments • For information on command usage, see Section ”Jump-Length-Dependent Jump Delays”, page 218.
Ctrl Command load_list Function Opens the RTC6 List Memory for writing with list commands and sets the input pointer to the specified relative position within the desired list (“List 1” or “List 2”), but only if the list is not currently being processed (BUSY list status is not set) or has already been processed (USED list status...
Page 506
Ctrl Command load_list • load_list (ListNo = 3) is useful in scenarios such as alternating list changes, where you Comments (cont’d) want to wait specifically for a list to be processed (see Section ”Alternating List Changes”, page 111) without needing to separately query the list status. Unintentional overwriting of not-yet-executed commands is thereby automatically avoided.
Ctrl Command load_position_control Function Loads a table with data points from an ASCII text file and determines – by linear interpolation – the scaling function for position-dependent laser control (radial correction, see Section ”Position-Dependent Laser Control”, page 199). NoOfDataPoints = load_position_control( Name, No ) Call Name Parameters...
Page 508
Ctrl Command load_position_control • load_position_control is not executed return code RTC6_BUSY), if: Comments (get_last_error (cont’d) – the BUSY list execution status is set – the INTERNAL-BUSY list execution status is set • load_position_control is even executed, if: – a list has been paused by set_wait (PAUSED list execution status set) •...
Ctrl Command load_program_file Function • Resets the RTC6 (Software Reset) • Initializes the RTC6 List Memory • Performs a memory check RTC6RBF.rbf • Loads RTC6OUT.out RTC6ETH.out • Loads (with RTC6 Ethernet Boards, is loaded instead RTC6DAT.dat • Loads • Starts the ErrorNo = load_program_file( Path ) Call Path...
Page 510
Ctrl Command load_program_file • If Path = NULL, then the path of the user program’s current working directory is used. Comments Caution: It is not always the folder from which the user program has been launched. The current working directory can change, for example, when a file from another folder is selected by the Windows Explorer (unless the “NoChangeDir”...
Page 511
Ctrl Command load_program_file • load_program_file automatically executes stop_execution, if: Comments (cont’d) – the BUSY list execution status is set – the INTERNAL-BUSY list execution status is set • The files RTC6OUT.out, RTC6ETH.out, RTC6RBF.rbf RTC6DAT.dat are included in the RTC6 software package. For easy identifying and archiving of different software versions, the files are also delivered zipped (the zip file names RTC6<…>_<Version>.zip include the version numbers).
Ctrl Command load_stretch_table Function Loads a table with data pairs from an ASCII text file for enhanced 3D correction, see Section ”Enhanced 3D Correction”, page 240. NoOfDataPairs = load_stretch_table( Name, No, TableNo ) Call Name Parameters Name of the text file or NULL. The text file may contain one or more tables. As a pointer to a \0-terminated ANSI string.
Page 513
Ctrl Command load_stretch_table • If Name is NULL, then load_stretch_table disables any enhanced 3D correction enabled Comments (cont’d) by a previous load_stretch_table. • load_stretch_table is not executed (get_last_error return code RTC6_BUSY), if: – the BUSY list execution status is set –...
Ctrl Command load_sub Function Assigns the specified index to a subroutine defined by subsequent list commands and loads the subroutine into the protected RTC6 List Memory area “List 3”. load_sub( Index ) Call Index Parameters Index of the indexed subroutine. As an unsigned 32-bit value.
Ctrl Command load_text_table Function Assigns the specified index to a text string defined by subsequent list commands and loads the text string into the protected RTC6 List Memory area “List 3”. load_text_table( Index ) Call Index Parameters Index of the indexed text string. As an unsigned 32-bit value.
Ctrl Command load_varpolydelay Function Loads a table with data points from an ASCII text file for the scaling function of the user- defined “Variable Mark Delay”, see Section ”User-defined “Variable Polygon Delays””, page 153. NoOfDataPoints = load_varpolydelay( Name, No ) Call Name Parameters...
Page 517
Ctrl Command load_varpolydelay • load_varpolydelay is not executed return code RTC6_BUSY), if: Comments (get_last_error (cont’d) – the BUSY list execution status is set (a list is being processed or has been halted by pause_list) – the INTERNAL-BUSY list execution status is set •...
Ctrl Command load_z_table Function Like load_z_table_20b. However, for a focus length value l in RTC4 compatibility range [–32,768…+32,767]. Restriction Like load_z_table_no_20b. ErrorNo = load_z_table( A, B, C ) Call Parameters Like load_z_table_no. Like load_z_table_no. Like load_z_table_no. Result Like load_z_table_no_20b. Comments •...
Ctrl Command load_z_table_20b Function Loads coefficients A, B and C into the currently assigned 3D correction table. For a focus length value l in the RTC6 20-bit range [–524,288…+524,287]. Restriction Like load_z_table_no_20b. ErrorNo = load_z_table_20b( A, B, C ) Call Parameters Coefficient A of the parabolic function z = A + Bl +Cl...
Ctrl Command load_z_table_no Function Like load_z_table_no_20b. However, for a focus length value l in RTC4 compatibility range [–32,768…+32,767]. Restriction Like load_z_table_no_20b. ErrorNo = load_z_table_no( A, B, C, No ) Call Parameters Coefficient A of the parabolic function z = A + Bl +Cl which is used for calculating the Z output values (focus length value l in the RTC4 compatibility range [–32,768…+32,767]).
Page 521
Ctrl Command load_z_table_no_20b Loads coefficients A, B and C and then assigns them to the 3D correction table No. Function For a focus length value l in the RTC6 20-bit range [–524,288…+524,287]. Restriction If the Option “3D” has not been enabled or a 3D correction table has not been assigned (see select_cor_table), then load_z_table_no_20b returns the error code otherwise has no effect.
Ctrl Command load_z_table_no_20b • load_z_table_no_20b is only needed for re-calibrating the z axis in a 3-axis Comments scan system. For adjusting corresponding coefficients see Section ”Checking the z axis Calibration”, page 170. Both positive and negative coefficients can be specified. The coefficients should preferably be chosen so that all z output values z = A + Bl +Cl lie within RTC6 20-bit range [–524,288…+524,287].
Normal List long_delay Command Function Pauses further processing of the list for the specified time. long_delay( Delay ) Call Delay Parameters Delay time. In bits. As an unsigned 32-bit value. 1 bit equals 10 µs. Allowed value range: 0 delay (2 –1).
Normal List mark_abs Command Function Moves the laser focus at mark speed along a 2D vector from the current position to the specified position (absolute coordinate values) within a 2D Image Field. mark_abs( X, Y ) Call Parameters Absolute x coordinate of the mark vector end point. In bits. As a signed 32-bit value.
Normal List mark_abs_3d Command Function Moves the laser focus at mark speed along a 3D vector from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then mark_abs_3d has the same effect as mark_abs.
Undelayed mark_char Short List Command Function Marks an indexed character. mark_char( Char ) Call Char Parameters Index of the indexed character to be marked. As an unsigned 32-bit value. Allowed value range: [0…1023]). The following applies: Char = character set number × 256 + ASCII number of the character (character sets are numbered 0…3).
Undelayed mark_char_abs Short List Command Function Marks an indexed character. In the called command list (see below), any absolute Vector Commands and “Arc” Commands receive an offset (based on the current coordinates at the time of the call). mark_char_abs( Char ) Call Char Parameters...
Page 528
Normal List mark_date Command Function Marks a part of the date previously stored by time_fix, time_fix_f time_fix_f_off in the selected format at the current position. mark_date( Part, Mode ) Call Part Parameters Specifies which part of the date should be marked. = 0: Year (only the last two digits).
Normal List mark_date Command Comments • Before marking dates (after every boot-up), the RTC6 and PC times should be synchronized (see time_update) and the current (to be marked) date value should be stored with time_fix, time_fix_f time_fix_f_off (see Chapter 7.5 ”Marking Dates, Times and Serial Numbers”, page 210).
Normal List mark_date_abs Command Function Marks a part of the date previously stored by time_fix, time_fix_f time_fix_f_off in the selected format at the current position. In the called indexed text strings or characters (see below), any absolute Vector Commands and “Arc”...
Normal List mark_ellipse_abs Command Function Moves the laser focus at mark speed along an elliptical arc around the specified midpoint (absolute coordinate values) within a 2D Image Field. mark_ellipse_abs( X, Y, Alpha ) Call Parameters Absolute x coordinate of the ellipse midpoint. In bits. As a signed 32-bit value.
Normal List mark_ellipse_rel Command Function Moves the laser focus at mark speed along an elliptical arc around the specified midpoint (relative coordinate values) within a 2D Image Field. mark_ellipse_rel( dX, dY, Alpha ) Call Parameters Relative x coordinate of the ellipse midpoint. In bits. As a signed 32-bit value.
Normal List mark_rel Command Function Moves the laser focus at mark speed along a 2D vector from the current position to the specified position (relative coordinate values) within a 2D Image Field. mark_rel( dX, dY ) Call Parameters Relative x coordinate of the mark vector end point. In bits. As a signed 32-bit value.
Normal List mark_rel_3d Command Function Moves the laser focus at mark speed along a 3D vector from the current position to the specified position (relative coordinate values) in the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then mark_rel_3d has the same effect as mark_rel.
Normal List mark_serial Command Function Marks the current serial number of the serial-number-set most recently selected by select_serial_set_list (or of serial-number-set 0 after load_program_file) in the selected format at the current position. Afterward the serial number is (optionally) automatically incremented. mark_serial( Mode, Digits ) Call Mode...
Page 536
Normal List mark_serial Command Comments • If Digits = 0, then a “markless” marking is executed. If M = 0, then the serial number (cont’d) is incremented by 1 (any increment size defined by set_serial_step set_serial_step_list are not used in this case!). This can be useful, if a single serial number is to be omitted (repeat n times if necessary;...
Normal List mark_serial_abs Command Function Marks the current serial number of the serial-number-set most recently selected by select_serial_set_list (or of serial-number-set 0 after load_program_file) in the selected format at the current position. In the called indexed text strings or characters (see below), any absolute Vector Commands and...
Variable mark_text List Command Function Marks a \0-terminated string. mark_text( Text ) Call Text Parameters PC memory address of the first character (byte) of the to-be-marked text string. As a pointer to a \0-terminated string. Comments • The to-be-marked text (character sequence, byte array, \0-terminated string) must be terminated with a \0 character (0 byte, NULL).
Variable mark_text_abs List Command Function Marks a \0-terminated string. In the called indexed characters (see below), any absolute Vector Commands and “Arc” Commands receive an offset (based on the current coordinates at the time of the call). Call mark_text_abs( Text ) Parameters Text PC memory address of the first character (byte) of the to-be-marked text...
Normal List mark_time Command Function Marks a part of the time previously stored by time_fix, time_fix_f time_fix_f_off in the specified format at the current position. mark_time( Part, Mode ) Call Part Parameters Specifies which part of the time to mark. = 0: Hours (24-h time, no a.m./p.m.) = 1:...
Page 541
Normal List mark_time Command Comments • mark_time reads (according to the stored time and according to the selected time (cont’d) part) the starting address of the corresponding indexed text string (or – for Part = 0…3 and Mode = 2 or 3 – of the corresponding indexed character) from the internal management table and then calls list_call (see also the comments there) an...
Normal List mark_time_abs Command Function Marks a part of the time previously stored by time_fix, time_fix_f time_fix_f_off in the specified format at the current position. In the called indexed text strings or characters (see below), any absolute Vector Commands and “Arc”...
Ctrl Command master_slave_config Function Sets settings for the master-slave interface of an RTC6 board. master_slave_config( Config ) Call Config Parameters As an unsigned 32-bit value. Bit #0 Suppression of /Slave-START signals and /Slave-STOP signals. = 0: /Slave-START and /Slave-STOP signals via the master-slave interface are received and processed.
Ctrl Command mcbsp_init Function Defines the data delays for transmitting and receiving data by the McBSP interface, see also Section ”McBSP Interface”, page mcbsp_init( XDelay, RDelay ) Call XDelay Parameters Transmission delay. As an unsigned 32-bit value. Allowed value range: [0…2]. RDelay Receiving delay.
Ctrl Command mcbsp_init_spi Function No function. mcbsp_init_spi( ClockLevel, ClockDelay ) Call ClockLevel Parameters = 0: inactive low. > 0: inactive high. As an unsigned 32-bit value. ClockDelay = 0: Clock signal and data bits at the same time. > 0: Clock signal is delayed a half period. As an unsigned 32-bit value.
Ctrl Command measurement_status Function Returns: • Status of a measurement started by set_trigger/set_trigger4/set_trigger8 • Current position of the measurement counter measurement_status( &Busy, &Pos ) Call Busy Returned Measurement status. parameter As a pointer to an unsigned 32-bit value. values > 0: A measurement session is currently in progress.
Normal List micro_vector_abs Command Function Moves the output point (of the laser focus) by a “Hard Jump” (without split-up into Microsteps) directly from the current position to the specified position (absolute coordinate values) within the 2D Image Field. Call micro_vector_abs( X, Y, LasOn, LasOff ) Parameters Absolute x coordinate of the micro vector end point.
Normal List micro_vector_abs_3d Command Function Moves the output point (of the laser focus) by a “Hard Jump” (without split-up into Microsteps) directly from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Restriction If the Option “3D”...
Normal List micro_vector_rel Command Function Moves the output point (of the laser focus) by a “Hard Jump” (without split-up into Microsteps) directly from the current position to the specified position (relative coordinate values) within the 2D Image Field. Call micro_vector_rel( dX, dY, LasOn, LasOff ) Parameters Relative x coordinate of the micro vector end point.
Normal List micro_vector_rel_3d Command Function Moves the output point (of the laser focus) by a “Hard Jump” (without split-up into Microsteps) directly from the current position to the specified position (relative coordinate values) within the 3D Image Field. Restriction If the Option “3D”...
Ctrl Command number_of_correction_tables Function Defines the maximum number of allowed correction tables. number_of_correction_tables( Number ) Call Number Parameters Maximum number of allowed correction tables. As an unsigned 32-bit value. Allowed value range: [1…8]. Default after load_program_file: 8. See also Chapter 8.5.3 ”Using Several Correction Tables”, page 241.
Page 552
Normal List para_jump_abs Command Function Moves the output point for the laser focus along a 2D vector at jump speed from the current position to the specified position (absolute coordinate values) within a 2D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Normal List para_jump_abs_3d Command Function Moves the output point (of the laser focus) along a 3D vector at jump speed from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Normal List para_jump_rel Command Function Moves the output point (of the laser focus) along a 2D vector at jump speed from the current position to the specified position (relative coordinate values) within a 2D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Normal List para_jump_rel_3d Command Function Moves the output point (of the laser focus) along a 3D vector at jump speed from the current position to the specified position (relative coordinate values) within the 3D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Variable para_laser_on_pulses_list List Command Function Turns on the LASERON signal for the specified number of external signal pulses (but for no longer than the specified time interval). Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value. Call para_laser_on_pulses_list( Period, Pulses, P ) Parameters...
Page 557
Variable para_laser_on_pulses_list List Command RTC4RTC6 New command. For the parameter P, see para_jump_abs. RTC5RTC6 Unchanged functionality. For the parameter P, see para_jump_abs. Version info Available as of DLL 600, OUT 600, RBF 600. References laser_on_pulses_list, laser_on_list RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Normal List para_mark_abs Command Function Moves the laser focus at mark speed along a 2D vector from the current position to the specified position (absolute coordinate values) within a 2D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Page 559
Normal List para_mark_abs Command RTC4RTC6 New command. Mode, the RTC6 multiplies the specified values for X and Y by 16. RTC4 Compatibility The allowed value range decreases accordingly. For the parameter P, see para_jump_abs. RTC5RTC6 Unchanged functionality. For the parameter P, see para_jump_abs. Version info Available as of DLL 600, OUT 600, RBF 600.
Normal List para_mark_abs_3d Command Function Moves the laser focus at mark speed along a 3D vector from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Normal List para_mark_rel Command Function Moves the laser focus at mark speed along a 2D vector from the current position to the specified position (relative coordinate values) within a 2D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Normal List para_mark_rel_3d Command Function Moves the laser focus at mark speed along a 3D vector from the current position to the specified position (relative coordinate values) within the 3D Image Field. Simultaneously varies the signal parameter selected by set_vector_control linearly to the specified value.
Variable park_position List Command Function For temporary parking, this command moves the output point (of the laser focus) along a 2D vector at jump speed from the current position to the specified position (absolute coordinate values) within the 2D Image Field.
Page 564
Variable park_position List Command Comments • If the laser focus has been already previously moved to a safe park position, then (cont’d) park_position is a short list command with no effect. • park_position switches off the Signals for “Laser Active” Operation after a LaserOff Delay, but does not activate a scanner delay afterward.
Variable park_position_1_axis List Command Function “Fly Extension” Command: Moves the output position for 1 Axis for intermediate parking with jump speed from the current to the specified absolute position in the 2D Image Field. is not enabled, then park_position_1_axis only Restriction If the Option Processing-on-the-fly...
Variable park_position_2_axes List Command Function “Fly Extension” Command: Moves the output positions for 2 Axes for intermediate parking with jump speed from the current to the specified absolute position in the 2D Image Field. is not enabled, then park_position_2_axes only Restriction If the Option Processing-on-the-fly...
Variable park_return List Command Function Moves the output point (of the laser focus) away from a park position along a 2D vector at jump speed to the specified position (absolute coordinate values) within the 2D Image Field. Restriction If the Option Processing-on-the-fly is not enabled, then park_return functions as a normal Jump...
Page 568
Variable park_return List Command Comments • If the laser focus has not been previously moved to a safe area by park_position, then (cont’d) park_return is a short list command with no further effect. • If no Processing-on-the-fly mode has been previously active or if any Processing-on-the-fly mode is currently active, then park_return performs a normal jump to the specified location.
Variable park_return_1_axis List Command Function “Fly Extension” Command: Moves the output position for 1 Axis with jump speed from the intermediate parking position to the specified absolute position in the 2D Image Field. is not enabled, then park_return_1_axis only Restriction If the Option Processing-on-the-fly carries-out the jump to the specified new output position.
Variable park_return_2_axes List Command Function “Fly Extension” Command: Moves the output position for 2 Axes with jump speed from the intermediate parking position to the specified absolute position in the 2D Image Field. is not enabled, then park_return_2_axes only Restriction If the Option Processing-on-the-fly carries-out the jump to the specified new output positions.
Ctrl Command pause_list Function Pauses execution of the list and disables the Signals for “Laser Active” Operation. pause_list() Call Parameters – Comments • pause_list is synonymous with stop_list. stop_list is often confused with stop_execution. Therefore, it is preferable to use pause_list.
Ctrl Command periodic_toggle Function Like periodic_toggle_list, but a control command. periodic_toggle( Port, Mask, P1, P2, Count, Start ) Call Port Parameters Like periodic_toggle_list. Mask Like periodic_toggle_list. Like periodic_toggle_list. Like periodic_toggle_list. Count Like periodic_toggle_list. Start Like periodic_toggle_list. Comments • See periodic_toggle_list. •...
Undelayed periodic_toggle_list Short List Command Function Generates and periodically toggles a signal at an adjustable output port. Call periodic_toggle_list( Port, Mask, P1, P2, Count, Start ) Parameters Port Output port (0…4, as with set_port_default). As an unsigned 32-bit value. Mask Defines the bits to be toggled, (the maximum value depends on the port).
Undelayed periodic_toggle_list Short List Command RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. Last change DLL 605, OUT 605: endless toggling with Count = 2 –1. References periodic_toggle, set_port_default Ctrl Command quit_loop Stops the repeating automatic list change started with start_loop.
Page 575
Undelayed range_checking Short List Command Function Defines an emergency action, if a galvanometer scanner exceeds its position limit. range_checking( HeadNo, Mode, Data ) Call HeadNo Parameters The scan system to be monitored. As an unsigned 32-bit value. No monitoring (default after load_program_file). First scan head is monitored.
Undelayed range_checking Short List Command Comments • The used position limits (that is, if exceeded the emergency action is executed) are the (cont’d) parameters of a customer-specific Processing-on-the-fly application monitoring (see set_fly_limits, set_fly_limits_z). Exceeding these limits only cause error messages in case of Processing-on-the-fly applications.
Ctrl Command read_abc_from_file Function Like read_abc_from_file_20b. However, for a focus length value l in RTC4 compatibility range [–32,768…+32,767]. ErrorNo = read_abc_from_file( Name, &A, &B, &C ) Call ErrorNo Result Like read_abc_from_file_20b. Name Parameters Like read_abc_from_file_20b. Returned Coefficients of the parabolic function z = A + Bl +Cl which is used for parameter...
Ctrl Command read_abc_from_file_20b Function Reads the ABC values directly from a specified correction file on the PC. For a focus length value l in the RTC6 20-bit range [–524,288…+524,287]. ErrorNo = read_abc_from_file_20b( Name, &A, &B, &C ) Call ErrorNo Result Error code.
Ctrl Command read_analog_in Function Reads in the analog input values: • ANALOG IN0 ANALOG IN1 at the “McBSP/ANALOG” socket connector of the RTC6 PCIe Board • ANALOG IN0, and ANALOG IN1 at the SPI/ANA/UART Socket Connector of the RTC6 Ethernet Board Returns them as 12-bit digital values.
Ctrl Command read_encoder Function Returns the counts of the two RTC6 encoder counters that were stored by store_encoder. read_encoder( &Encoder0_0, &Encoder1_0, &Encoder0_1, &Encoder1_1 ) Call Encoder0_0 Returned Count. parameter As a pointer to a signed 32-bit value. values For parameter “Encodern_m”: •...
Ctrl Command read_image_eth Function Standalone Functionality: Reads out data for automatic booting from the NAND Memory and saves it as a binary file on the PC. RTC6 Software Package 26. Prerequisite V1.7.0 BIOS-ETH Result = read_image_eth( Name ) Call Name Parameters...
Ctrl Command read_io_port Function Returns the current state of the 16-bit digital input port on the EXTENSION 1 socket connector. IOPort = read_io_port() Call Result 16-bit value (DIGITAL IN0…DIGITAL IN15). As an unsigned 32-bit value. Comments • See Chapter 9.2.1 ”16-Bit Digital Input Port”, page 288.
Ctrl Command read_io_port_buffer Function Returns the data previously stored in the IOPort buffer by read_io_port_list (input value read at the EXTENSION 1 socket connector’s 16-bit digital input port; the galvanometer scanner set position and time value that has been current at the time of reading).
Undelayed read_io_port_list Short List Command Function Writes into the internal IOPort buffer the current state (DIGITAL IN0…DIGITAL IN15) of the EXTENSION 1 socket connector’s 16-bit digital input port. At the same time, the current xy set positions and relative time in seconds are stored. read_io_port_list() Call Comments...
Ctrl Command read_mcbsp Function Returns the most recent input value that has been fully copied to an internal memory location by the McBSP interface. mcbsp_value = read_mcbsp( No ) Call Parameters Number of the internal memory location whose input value should be queried. As an unsigned 32-bit value.
Ctrl Command read_mcbsp RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. set_mcbsp_out, mcbsp_init, set_fly_x_pos, set_fly_y_pos, set_fly_rot_pos, References set_mcbsp_x, set_mcbsp_y, set_mcbsp_rot, set_mcbsp_matrix, apply_mcbsp, set_mcbsp_global_x, set_mcbsp_global_y, set_mcbsp_global_rot, set_mcbsp_global_matrix Ctrl Command read_multi_mcbsp Function Queries the McBSP multi transmission input value that has been most recently type-sorted and stored.
Ctrl Command read_status Function Returns the RTC6 list status, see Chapter 6.4.2 ”List Status”, page 107. Status = read_status() Call Result List status. As an unsigned 32-bit value. Bit # Name Description Bit #0 (LSB) LOAD1 = 1: Indicates that the input pointer is currently in “List 1”, that is, that all following list commands are stored in “List 1”.
Page 588
Ctrl Command read_status Result Bit #5 BUSY2 = 1: Indicates that “List 2” is executing at the moment (or (cont’d) more precisely: that the output pointer currently resides in “List 2” after execution of “List 1“ or “List 2“ has been started).
Ctrl Command read_status Comments • If the list status is queried during processing of a subroutine in the protected RTC6 List (cont’d) Memory area “List 3”, then the status is returned of the list (“List 1” or “List 2”) in which the output pointer most recently resided (typically from where the subroutine has been originally called).
Normal List regulation3 Command Function Category: List Commands for a Restricted User Group only. Varies laser frequency and pulse length depending on encoder frequency. regulation3( Fmax, Fmin ) Call Fmax Parameters Max. encoder frequency. In Hz. Allowed value range: 10,000…1,000,000. As an unsigned 32-bit value.
Ctrl Command release_rtc Function Releases the specified RTC6 for use by other user programs. NoOfReleasedCard = release_rtc( CardNo ) Call CardNo Parameters RTC6 DLL-internal number of the RTC6 board. As an unsigned 32-bit value. The returned value is CardNo if the user program has been still in possession of access rights Result for this board.
Ctrl Command release_wait Function Resumes processing of a list that has been interrupted by set_wait. release_wait() Call Comments • release_wait is only executed if the RTC6 is actually in a wait state (hence if a break point has been previously reached and list processing has been interrupted; the PAUSED list execution status is then set but not the BUSY list execution...
Ctrl Command reset_error Function Resets the cumulative error code. reset_error( Code ) Call Bitnumber Code Parameters OR connection of the error codes = sum by means of 2 of all bits to be reset. As an unsigned 32-bit value. Comments •...
Ctrl Command restart_list Function Reenables Signals for “Laser Active” Operation and resumes execution of a list that has been interrupted by pause_list or stop_list. restart_list() Call Comments • restart_list is only executed, if a list has been previously halted by pause_list stop_list and if the...
Ctrl Command rs232_read_data Function Reads a value from the input buffer of the RS-232 interface, see Chapter 9.2.3 ”RS-232 Interface”, page 288. RS232Data = rs232_read_data() Call Result As an unsigned 32-bit value. Bit #0 Next (not yet read by the user program) value of the input buffer. (LSB) …...
Ctrl Command rs232_read_data RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. rs232_write_data, uart_config References Ctrl Command rs232_write_data Function Sends a data word (byte) to the RS-232 interface. rs232_write_data( Data ) Call Parameters Data Data word.
Variable rs232_write_text_list List Command Function Sends a text string (character-by-character) to the RS-232 interface. rs232_write_text_list( pData ) Call pData Parameters PC memory address of the first character (byte) of the to-be-sent text string. As a pointer to a \0-terminated string. Comments •...
• Initialization of the installed RTC6 PCIe Boards is to be made separately for each user program by calling init_rtc6_dll. • rtc6_count_cards is available even without explicit access rights to a specific RTC6 PCIe Board. • rtc6_count_cards is not available as a multi-board command. LastError AccError •...
Delayed Short save_and_restart_timer List Command Function Stores the current value of the RTC6 Timer and resets it to zero. save_and_restart_timer() Call Comments • The stored RTC6 Timer value can be read by get_time. • save_and_restart_timer is useful for measuring the execution time of a marking process, see Chapter 8.12 ”Time Measurements”, page 281.
Ctrl Command save_disk Function Stores all indexed characters, text strings and/or subroutines to a binary file on a PC data medium, ordered by index, and returns the number of thereby stored list commands. NoOfSavedCommands = save_disk( Name, Mode ) Call Name Parameters File name.
Page 601
Ctrl Command save_disk • save_disk always stores all characters, text strings and/or subroutines from the Comments (cont’d) referenced address to the next possible list_return. Jump Commands (also branches to various list_return commands) are thereby neither evaluated nor executed. • save_disk automatically replaces unallowed commands (for example, set_end_of_list) with list_nop commands;...
Undelayed select_char_set Short List Command Function Selects one of the available character sets (exclusively) for the execution of subsequent mark_text and mark_text_abs. Call select_char_set( No ) Parameters Number of the desired character set. As an unsigned 32-bit value. Allowed value range: [0…3]. Comments •...
Ctrl Command select_cor_table Function Assigns the previously loaded correction tables to the scan head connector and activates Image Field correction. select_cor_table( HeadA, HeadB ) Call HeadA Parameters = 0: Turns off the signals for scan head A (first scan head connector). Assigns correction table number HeadA to scan head A.
Page 604
Ctrl Command select_cor_table Comments • The INTERNAL-BUSY list execution status is set while the jump to the corrected (cont’d) galvanometer scanner position is executed. • If the values for parameters HeadA or HeadB are invalid (values > number_of_correction_tables) or 0, then select_cor_table turns off the corresponding scan head signals.
Page 605
Ctrl Command select_cor_table Comments • Provided the Option “3D” and the Option “Second Scan Head Control” are enabled, (cont’d) users specify which signals (xy or z) are to be outputted by which connector when assigning the correction table (see also Chapter 4.5.1 ”Scan Head Connectors and Transfer Protocol”, page 67 Section ”2D and 3D Correction Files”, page...
Variable select_cor_table_list List Command Function Like select_cor_table, but a list command. select_cor_table_list( HeadA, HeadB ) Call HeadA Parameters Like select_cor_table. HeadB Like select_cor_table. Comments • See select_cor_table. • Even though select_cor_table_list is a short list command, execution of the directly following list command is delayed by a few clock cycles due to the intermediate jump to the corrected galvanometer scanner position.
Ctrl Command select_rtc Function Defines, in a multi-board system, the active RTC6 board for a user program. Chapter 6.6 ”Using Several RTC6 PCIe Boards in One PC”, page 123. NoOfSelectedCard = select_rtc( CardNo ) Call CardNo Parameters RTC6 DLL-internal number of the RTC6 board. As an unsigned 32-bit value.
Page 608
Ctrl Command select_rtc With the RTC4, select_rtc only activates the specified board (unconditionally). RTC4RTC6 With the RTC6, select_rtc additionally delivers a return value and tries to get access to the specified board granted (as with acquire_rtc) or remains ineffective. RTC5RTC6 Unchanged functionality.
Ctrl Command select_serial_set Function Selects a serial-number-set for serial number control commands. select_serial_set( No ) Call Parameters Number of the desired serial-number-set. As an unsigned 32-bit value. Allowed value range: [0…3]. Only the two least significant bits are evaluated. Comments •...
Ctrl Command send_user_data Function No function. Comments • To date, send_user_data has no effect. RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References read_user_data RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Ctrl Command set_angle Function Uses a specified rotation angle to define the rotation matrix M for all subsequent coordinate transformations, see Chapter 8.2 ”Coordinate Transformations”, page 224. set_angle( HeadNo, Angle, at_once ) Call HeadNo Parameters Number of the scan head connector. As an unsigned 32-bit value. = 1: The definition only affects the first scan head connector.
Variable set_angle_list List Command Function Like set_angle, but a list command. set_angle_list( HeadNo, Angle, at_once ) Call HeadNo Like set_angle. However, HeadNo = 4 is not available. Parameters Angle Like set_angle. at_once Determines when the defined transformation becomes effective. As an unsigned 32-bit value. = 0: The transformation settings are only accumulated and intermediately stored, but the transformation is not processed as long as this is not...
Ctrl Command set_auto_laser_control Function Initializes or deactivates “Automatic Laser Control“, see Chapter 7.4.9 ”“Automatic Laser Control“”, page 197. ErrorCode = set_auto_laser_control( Ctrl, Value, Mode, MinValue, MaxValue ) Call Ctrl Parameters Control parameter. As an unsigned 32-bit value. = 1…7: Defines which signal parameter is corrected by “Automatic Laser Control“.
Page 614
Ctrl Command set_auto_laser_control Mode For Mode = 2 above, the following extensions are available in any combination: Parameters (cont’d) (cont’d) • M = +4 encoder speed-dependent correction • M = +16 for SCANahead scan systems (instead of intelliSCAN) • M = +32 The angle-synchronous galvanometer scanner speed is converted into an Image Field synchronous speed with the help of the assigned...
Page 615
Ctrl Command set_auto_laser_control • For Mode = 2, a functioning iDRIVE scan system must be attached to the first scan head Comments (cont’d) connector. As a result, control_command is unavailable for the first scan head connector as long as this Mode selection is in effect. For Mode = 0 or 1, control_command is available without any restriction.
Page 616
Ctrl Command set_auto_laser_control RTC4RTC6 New command. for Ctrl = 1/2, the specified values for Value, MinValue and RTC4 Compatibility Mode MaxValue are internally multiplied by 4. For Ctrl = 4/5, the parameter values for Value, MinValue and MaxValue are multiplied by 8. The allowed value ranges decrease accordingly. RTC5RTC6 Changed functionality.
Ctrl Command set_auto_laser_params Function Specifies the to-be-controlled signal parameter of the “Automatic Laser Control“, the 100% value and its corresponding limit values. set_auto_laser_params( Ctrl, Value, MinValue, MaxValue ) Call Ctrl Parameters The to-be-controlled signal parameter (see set_auto_laser_control). Allowed value range: [1…7]. Value 100% value.
Ctrl Command set_char_pointer Function Stores the absolute start address of a command list in the internal management table for indexed characters. set_char_pointer( Char, Pos ) Call Char Index of the indexed character whose starting address Pos should be entered Parameters in the management table.
Ctrl Command set_char_table Function Stores the absolute start address of a command list in the internal management table for indexed text strings. set_char_table( Index, Pos ) Call Index Index of the indexed text string whose starting address Pos should be entered Parameters in the management table.
Page 620
Ctrl Command set_control_mode Function Enables or disables the external control input and resets the counter for External Starts to zero. set_control_mode( Mode ) Call Mode Parameters As an unsigned 32-bit value. Bit # Value Description Bit #0 = 1: The external start input (by /START, /START2 or /Slave-START) is enabled.
Page 621
Ctrl Command set_control_mode Track delay configured by simulate_ext_start, Parameters Bit #10 = 1: (cont’d) set_ext_start_delay set_ext_start_delay_list is counted beginning with the most recent externally (but not with execute_list_pos etc.) triggered or simulated External Start. The interval between subsequent External Starts (in encoder pulses) is thus constant, see also Section ”Regular (Periodic) External Starts”, page...
Normal List set_control_mode_list Command Function Like set_control_mode, but a list command. set_control_mode_list( Mode ) Call Mode Parameters Like set_control_mode. Comments • The counter for External Starts is not reset by set_control_mode_list. RTC4RTC6 Unchanged functionality for the bits that are also used on the RTC4. RTC5RTC6 Unchanged functionality.
Ctrl Command set_default_pixel Function Defines the pulse length default value for the default pixel that terminates Pixel Output Mode. set_default_pixel( PulseLength ) Call PulseLength Parameters Default pixel pulse length. As an unsigned 32-bit value. 1 bit equals 1/64 µs. Allowed value range: [0…(2 –1)].
Ctrl Command set_defocus Function Determines a focus shift for 3D outputs. Restriction If the Option “3D” has not been enabled or if no 3D correction table has been assigned (see select_cor_table), then set_defocus has no effect. Nevertheless, the supplied focus shift value is stored internally and takes effect as soon as a 3D correction table is assigned.
Variable set_defocus_list List Command Function Like set_defocus, but a list command. Restriction Like set_defocus. set_defocus_list( Shift ) Call Shift Parameters Like set_defocus. Comments • See set_defocus. • Even though set_defocus_list is a short list command, execution of the directly following list command is delayed by a few clock cycles due to the intermediate jump to the changed z output.
Ctrl Command set_defocus_offset Function Defines an offset in addition to the focus shift (see set_defocus) for all 3D outputs. Restriction Like set_defocus. set_defocus_offset( Shift ) Call Shift Parameters Like set_defocus. Comments • set_defocus_offset has the same effect as set_defocus. • set_defocus_offset enables setting a global defocus shift that is not overwritten by parameterized commands such as para_mark_abs, see set_vector_control(Ctrl = 7).
Variable set_defocus_offset_list List Command Function Like set_defocus_offset, but a list command. Restriction Like set_defocus. set_defocus_offset_list( Shift ) Call Shift Parameters Like set_defocus. Comments • See set_defocus_offset. • See set_defocus_list. • Even though set_defocus_offset_list is a short list command, execution of the directly following list command is delayed by a few clock cycles due to the intermediate jump to the changed z position.
Ctrl Command set_delay_mode Function Turns the “Variable Polygon Delays” mode and the “Variable Jump Delays“ mode on or off and sets some special scanner delay-related parameters as well as the 3D Z-Move mode. set_delay_mode( VarPoly, DirectMove3D, EdgeLevel, MinJumpDelay, JumpLengthLimit ) Call Parameters Name...
Ctrl Command set_delay_mode JumpLengthLimit 0…(2 –1) Jump length limit. In bits. JumpLengthLimit > 0 enables “Variable Jump Delays“ mode. If the jump vector is longer than this value, then the fixed Jump Delay (see set_scanner_delays) is inserted. For all shorter jump lengths, a linearly interpolated “Variable Jump Delay”...
Normal List set_duty_cycle_table Command Function Category: List Commands for a Restricted User Group only. Sets a value in the lookup table for the pulse length. set_duty_cycle_table( Index, DutyCycle ) Call Index Parameters Index in the lookup table for the pulse length. Allowed value range: 0…10.
Undelayed set_ellipse Short List Command Function Defines the shape of an elliptical arc that can subsequently be marked by mark_ellipse_abs or mark_ellipse_rel. Call set_ellipse( a, b, Phi0, Phi ) Parameters Length of the elliptical half-axis. In bits. As an unsigned 32-bit value. Allowed value range: [1…+8,388,607].
Delayed Short set_encoder_speed List Command Function Defines the target encoder speed and further parameters for encoder-speed-dependent “Automatic Laser Control“. set_encoder_speed( EncoderNo, Speed, Smooth ) Call EncoderNo Parameters Number of the encoder counter to be used for speed measurement. As an unsigned 32-bit value. Allowed values: = 0: Encoder counter “Encoder0”.
Delayed Short set_encoder_speed List Command RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References set_encoder_speed_ctrl, set_auto_laser_control Ctrl Command set_encoder_speed_ctrl Function Like set_encoder_speed, but a control command. set_encoder_speed_ctrl( EncoderNo, Speed, Smooth ) Call EncoderNo Parameters...
Normal List set_end_of_list Command Function Ends execution of a list. set_end_of_list() Call Comments • If, during processing of a list, the set_end_of_list is encountered and no automatic list change has been previously activated, see Chapter 6.4.6 ”Changing Lists Automatically”, page 110, then list execution ends.
Ctrl Command set_extstartpos Function Defines the start address (within the RTC6 List Memory area of “List 1” or “List 2”) where execution should continue upon External Starts. set_extstartpos( Pos ) Call Parameters Absolute address of the first list command to be executed. As an unsigned 32-bit value.
Ctrl Command set_ext_start_delay Function Sets a track delay for External Starts, so that the lists are started with a delay relative to the triggering input signal or simulate_ext_start simulate_ext_start_ctrl command. set_ext_start_delay( Delay, EncoderNo ) Call Delay Track delay (counter steps of the selected encoder counter EncoderNo). Parameters As a signed 32-bit value.
Ctrl Command set_ext_start_delay RTC4RTC6 Unchanged functionality. In addition: increased value range. The RTC5 allows this command to be used not only together with an external encoder, but also with an encoder simulation (see Section ”Encoder Simulation”, page 299) started by simulate_encoder.
Ctrl Command set_firstpulse_killer Function Sets the length of the FirstPulseKiller signal for a YAG laser. set_firstpulse_killer( Length ) Call Length Parameters Length of the FirstPulseKiller signal. As an unsigned 32-bit value. 1 bit equals 1/64 µs. Allowed value range: [0…+(2 –1)].
Normal List set_fly_1_axis Command Function “Fly Extension” Command: Activates a 1 Axis-Processing-on-the-fly application. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_1_axis terminates the Processing-on-the-fly process (even though it could not have been activated). set_fly_1_axis( Axis, Mode, Scale ) Call Axis Parameters...
Normal List set_fly_2_axes Command Function “Fly Extension” Command: Activates a 2-Axes-Processing-on-the-fly application. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_2_axes terminates the Processing-on-the-fly process (even though it could not have been activated). set_fly_2_axes( Axis1, Mode1, Scale1, Axis2, Mode2, Scale2 ) Call Axis1 Parameters...
Page 643
Normal List set_fly_2_axes Command Comments • The following command calls are executed in the same way: (cont’d) – set_fly_2_axes( 1, 1, ScaleX, 2, 2, ScaleY ) = set_fly_2d( ScaleX, ScaleY ) – set_fly_2_axes( 1, 1, ScaleX, 2, 2, ScaleY ) = set_fly_1_axis( 1, 1, ScaleX );...
Normal List set_fly_2d Command Function Activates Processing-on-the-fly correction for compensation of a linear workpiece- movement in 2 dimensions (based on the encoder values transferred to the RTC6 by encoder counters “Encoder0” and “Encoder1”). Sets the corresponding scaling factors. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_2d terminates the Processing-on-the-fly process (even though it could not have been activated).
Page 645
Normal List set_fly_2d Command Comments • If no correction table for 2D encoder compensation has yet been loaded onto the (cont’d) board (see load_fly_2d_table), then the encoder values are used without correction. • You can also use activate_fly_2d/activate_fly_2d_encoder to switch on set_fly_2d Processing-on-the-fly correction.
Multiple List set_fly_3_axes Command Function “Fly Extension” Command: Activates a 3-Axes-Processing-on-the-fly application. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_3_axes terminates the Processing-on-the-fly process (even though it could not have been activated). set_fly_3_axes( ModeX, ScaleX, ModeY, ScaleY, ModeZ, ScaleZ ) Call ModeX Parameters...
Page 647
Multiple List set_fly_3_axes Command Comments • The following command calls are executed in the same way: (cont’d) – set_fly_3_axes( 1, ScaleX, 2, ScaleY, 3 or 4, ScaleZ ) = set_fly_1_axis( 1, 1, Scale X ); set_fly_1_axis( 2, 2, Scale Y ); set_fly_1_axis( 3, 3 or 4, Scale Z );...
Undelayed set_fly_limits Short List Command Function Defines the boundaries of the customer-defined monitoring area for Processing-on-the-fly applications. Call set_fly_limits( Xmin, Xmax, Ymin, Ymax ) Parameters Xmin Range boundary. As a signed 32-bit value. Allowed value range: [–524,288…+524,287]. Out-of-range values are clipped to the boundary values. Xmax Like Xmin (analogously).
Undelayed set_fly_limits_z Short List Command Function Defines the boundaries of the customer-defined monitoring range for z axis Processing-on-the-fly applications. Call set_fly_limits_z( Zmin, Zmax ) Parameters Zmin Range boundary. As a signed 32-bit value. Allowed value range: [–524,288…+524,287]. Out-of-range values are clipped to the boundary values. Zmax Like Zmin (analogously).
Normal List set_fly_rot Command Function Activates Processing-on-the-fly correction for compensation of workpiece rotary movement (based on angular position values transferred to the RTC6 by encoder counter “Encoder0”) and sets the corresponding Resolution parameter. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_rot terminates the Processing-on-the-fly process (even though it could not have been activated).
Normal List set_fly_rot_pos Command Function Activates Processing-on-the-fly correction for compensation of workpiece or scan system rotary movement (based on angular position values transferred to the RTC6 by the McBSP interface). It thereby sets the corresponding Resolution parameter. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_rot_pos terminates the Processing-on-the-fly process (even though it could not have been activated).
Ctrl Command set_fly_tracking_error Function No function. set_fly_tracking_error( TrackingErrorX, TrackingErrorY ) Call TrackingErrorX Parameters Tracking Error for the x axis. In units of 10 µs. As a signed 32-bit value. Allowed value range: [0…65,535]. Excessive bits are ignored. TrackingErrorY Tracking Error for the y axis.
Normal List set_fly_x Command Function Activates Processing-on-the-fly correction for compensation of a linear workpiece- movement in the x direction (based on position values transferred to the RTC6 by encoder counter “Encoder0”) and sets the corresponding scaling factor. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_x terminates the Processing-on-the-fly process (even though it could not have been activated).
Normal List set_fly_x_pos Command Function Activates Processing-on-the-fly correction for compensation of a linear workpiece or scan system movement in the x direction (based on position values transferred to the RTC6 by the McBSP interface); thereby sets the corresponding scaling factor. Restriction If the Option Processing-on-the-fly...
Normal List set_fly_y Command Function Activates Processing-on-the-fly correction for compensation of a linear workpiece- movement in the Y direction (based on position values transferred to the RTC6 by encoder counter “Encoder1”) and sets the corresponding scaling factor. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_y terminates the Processing-on-the-fly process (even though it could not have been activated).
Normal List set_fly_y_pos Command Function Activates Processing-on-the-fly correction for compensation of a linear workpiece or scan system movement in the Y direction (based on position values transferred to the RTC6 by the McBSP interface); thereby sets the corresponding scaling factor. Restriction If the Option Processing-on-the-fly...
Normal List set_fly_z Command Function Activates Processing-on-the-fly correction for compensation of a linear workpiece- movement in the z direction (based on position values transferred to the RTC6 by the specified encoder counter) and sets the corresponding scaling factor. Restriction If the Option Processing-on-the-fly is not enabled, then set_fly_z terminates the Processing-on-the-fly process (even though it could not have been activated).
Ctrl Command set_free_variable Function Sets a free variable to the desired value. set_free_variable( No, Value ) Call Parameters Number of the free variable to be set. As an unsigned 32-bit value. Allowed value range: [0…7]. Only the 3 least significant bits are evaluated. Value Desired variable value.
Ctrl Command set_hi Function Defines gain and offset values for the galvanometer scanners of the scan system attached to the specified scan head connector. set_hi( HeadNo, GalvoGainX, GalvoGainY, GalvoOffsetX, GalvoOffsetY ) Call HeadNo Parameters Number of the scan head connector. As an unsigned 32-bit value.
Ctrl Command set_input_pointer Function Opens the RTC6 List Memory for writing with list commands and sets the input pointer to the specified absolute address in RTC6 List Memory (“List 1” or “List 2”). set_input_pointer( Pos ) Call Parameters Position (absolute memory address) of the input pointer. [0…(2 –1)].
Undelayed set_io_cond_list Short List Command Function Sets the bits of the 16-bit digital output port on the EXTENSION 1 socket connector that are set in the parameter MaskSet, if the current IOvalue at the 16-bit digital input port on the EXTENSION 1 socket connector meets the following condition: ((IOvalue AND Mask1) = Mask1) AND (((not IOvalue) AND Mask0) = Mask0) (= if the bits specified in Mask1 are 1 and the bits specified in Mask0 are 0).
Ctrl Command set_jump_mode Function Enables and activates or disables and deactivates Jump Mode for 2D jumps and sets the related parameters. Prerequisite Enabling is only possible if a jump-tuning-equipped intelliSCAN (with scan system firmware version 2078) is attached to at least one of the two scan head connectors.
Page 663
Ctrl Command set_jump_mode Result Error code. As a signed 32-bit value. No error: Flag successfully switched to 0 (Jump Mode deactivated, vector mode activated). No error: Flag successfully switched to 1 (Jump Mode activated, vector mode deactivated). –1 Flag successfully switched to –1 (Jump Mode deactivated and disabled).
Page 664
Ctrl Command set_jump_mode • For usage of set_jump_mode, see Comments Chapter 8.1.5 ”Jump Mode”, page 217. • A check (see also Section ”Requirements and Activation”, page 218) is only performed if Flag = –1 (the initialization state) prior to the set_jump_mode call and/or if the supplied tuning numbers do not match those stored on the board.
Normal List set_jump_mode_list Command Function Activates or deactivates and disables Jump Mode for 2D jumps. Prerequisite See set_jump_mode. set_jump_mode_list( Flag ) Call Flag Parameters See set_jump_mode. Comments • For usage of set_jump_mode_list, see Chapter 8.1.5 ”Jump Mode”, page 217. • set_jump_mode_list functions like the control command set_jump_mode (see notes there) but, as a list command, has the following differences:...
Undelayed set_jump_speed Short List Command Function Defines the jump speed for Vector Commands. set_jump_speed( Speed ) Call Speed Parameters Jump speed. In Bits/ms. As a 64-bit IEEE floating point value. Allowed value range: [1.6…800000.0]. Out-of-range values are clipped to the boundary values. Comments •...
Ctrl Command set_jump_table Function Reads the Jump Delay table with 1024 unsigned 16-bit values stored at the supplied PC address and loads them onto the board as the Jump Delay table (see notes for get_jump_table). ErrorCode = set_jump_table( Addr ) Call Addr Parameters...
Ctrl Command set_laser_control Function Defines and enables or disables the Laser Control Signals. set_laser_control( Ctrl ) Call Ctrl Parameters As an unsigned 32-bit value. Bit #0 Pulse Switch Setting (does not concern Laser Mode 4 Laser Mode The setting only affects those LASER1 or LASER2 “laser active” modulation (LSB) pulses in Mode...
Page 669
Ctrl Command set_laser_control Parameters Bit #7 = 0: The “constant pulse length” mode is switched off (cont’d) (default setting). = 1: The “constant pulse length” mode is switched on. Chapter 7.4.8 ”Pulse Picking Laser Mode”, page 196 and set_pulse_picking_length. Bit #8 Reserved.
Page 670
Ctrl Command set_laser_control Comments • For the RTC5/RTC6 predecessors, the laser control signal levels are defined by solder (cont’d) jumpers. The RTC5/RTC6 lets users control them completely by software. get_startstop_info queries the current status of the Laser Control Signals (Bit #9) and whether the signals are set to active-HIGH or active-LOW (Bit...
Undelayed set_laser_delays Short List Command Function Sets the LaserOn Delay and the LaserOff Delay. set_laser_delays( LaserOnDelay, LaserOffDelay ) Call LaserOnDelay Parameters LaserOn Delay. As a signed 32-bit value. 1 bit equals 1/64 µs. Allowed value range: [–2 …+(2 –1)]. Values over (2 –1) are clipped.
Ctrl Command set_laser_pin_out Function Sends a value to the two digital outputs of the LASER Connector. set_laser_pin_out( Pins ) Call Pins Parameters Output value (DIGITAL OUT1 and DIGITAL OUT2). As an unsigned 32-bit value. Bit # 0: DIGITAL OUT1. Bit # 1: DIGITAL OUT2. Bit # 2: Reserved.
Undelayed set_laser_power Short List Command Function Synchronizes laser power outputs at the output ports (ANALOG OUT1, ANALOG OUT2, 8-bit digital output port, 16-bit digital output port) and Laser Delays. Call set_laser_power( Port, Power ) Parameters Port Output port for which a laser power value Power is to be defined. As an unsigned 32-bit value.
Delayed Short set_laser_pulses List Command Function Defines the output period and the pulse lengths of the Laser Control Signals LASER1 and LASER2 for “laser active” operation. set_laser_pulses( HalfPeriod, PulseLength ) Call HalfPeriod Parameters Half of the output period. In bits. As an unsigned 32-bit value.
Ctrl Command set_laser_pulses_ctrl Function Like set_laser_pulses, but a control command. set_laser_pulses_ctrl( HalfPeriod, PulseLength ) Call HalfPeriod Parameters Like set_laser_pulses. PulseLength Like set_laser_pulses. Comments • See set_laser_pulses. RTC4RTC6 New command. RTC4 Compatibility Mode: like set_laser_pulses. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References set_laser_pulses, set_laser_timing...
Delayed Short set_laser_timing List Command Function Defines the output period and the pulse lengths for the Laser Control Signals LASER1 and LASER2 for “laser active” operation. set_laser_timing( HalfPeriod, PulseLength1, (PulseLength2), TimeBase ) Call HalfPeriod Parameters Half of the output period. In bits. As an unsigned 32-bit value.
• The clock frequency settings apply only for the parameters of set_laser_timing. • In RTC4 Compatibility Mode, SCANLAB generally recommends setting the clock frequency to 8 MHz. A clock frequency of 1 MHz should only be set, if absolutely necessary.
Undelayed set_list_jump Short List Command Function Produces an unconditional jump to the specified address within the RTC6 List Memory upon execution. The next command there is executed immediately without delay. Call set_list_jump( Pos ) Parameters Absolute jump address [0…(2 –1)]. As an unsigned 32-bit value.
Delayed Short set_mark_speed List Command Function Sets the mark speed for the Vector Commands and “Arc” Commands. set_mark_speed( Speed ) Call Speed Parameters Marking speed. In Bits/ms. As a 64-bit IEEE floating point value. Allowed value range: [1.6…800000.0]. Out-of-range values are clipped to the boundary values. Comments •...
Ctrl Command set_matrix Function Defines the coefficients of the • General transformation matrix M for coordinate transformations, see Chapter 8.2 ”Coordinate Transformations”, page 224 • Global transformation matrix in virtual Image Field, see Section ”Coordinate Transformations in the Virtual Image Field”, page 169 Call set_matrix( HeadNo, M11, M12, M21, M22, at_once ) Parameters...
Page 683
Ctrl Command set_matrix • Up to DLL 613, OUT 613 the following applies for HeadNo = 4: Comments – The global coordinate transformations are only available during a Processing-on-the-fly Session that has been started by set_fly_2d. – at_once is ignored •...
Variable set_matrix_list List Command Function Sets one of the 4 coefficients of the general transformation matrix M during execution of a list, see Chapter 8.2 ”Coordinate Transformations”, page 224. set_matrix_list( HeadNo, Ind1, Ind2, Mij, at_once ) Call HeadNo Parameters Like set_matrix. Ind1 Row index and column index of the matrix coefficient to be changed.
Ctrl Command set_max_counts Function Defines the maximum number of External Starts. set_max_counts( Counts ) Call Counts Parameters Maximum number of External Starts. As an unsigned 32-bit value. Allowed value range: [0…(2 –1)]. Comments • When the specified number of External Starts has been reached, the external start input is disabled (see set_control_mode, Bit #0 = 0).
Ctrl Command set_mcbsp_global_matrix Function Activates matrix correction for “Global Online Positioning“ by the McBSP interface. set_mcbsp_global_matrix() Call Comments • See also Chapter 8.3.2 ”“Global Online Positioning“”, page 231. • A matrix correction cannot be used in conjunction with offset and/or rotation corrections.
Ctrl Command set_mcbsp_global_rot Function Activates or deactivates rotation correction for “Global Online Positioning“ by the McBSP interface. set_mcbsp_global_rot( Resolution ) Call Resolution Parameters As a 64-bit IEEE floating point value. –26 < Resolution < 2 : scaling factor (correction is activated), otherwise: correction is deactivated.
Ctrl Command set_mcbsp_global_x Function Activates or deactivates x offset correction for “Global Online Positioning“ by the McBSP interface. set_mcbsp_global_x( Scale ) Call Scale Parameters As a 64-bit IEEE floating point value. –26 < Scale < 2 : scaling factor (correction is activated), otherwise: correction is deactivated.
Ctrl Command set_mcbsp_global_y Function Activates or deactivates y offset correction for “Global Online Positioning“ by the McBSP interface. set_mcbsp_global_y( Scale ) Call Scale Parameters As a 64-bit IEEE floating point value. –26 < Scale < 2 : scaling factor (correction is activated), otherwise: correction is deactivated.
Page 690
Ctrl Command set_mcbsp_in Function Activates Processing-on-the-fly correction for compensation of a workpiece or scan system movement (based on position values transferred to the RTC6 via the McBSP interface). The McBSP interface can also be used for inputting other desired signals. is not enabled, then set_mcbsp_in terminates the Restriction If the...
Page 691
Ctrl Command set_mcbsp_in Comments • For deactivating Processing-on-the-fly correction, see Chapter 8.6.5 ”Deactivating (cont’d) Processing-on-the-fly Correction”, page 251. • 15 bits per axis (with sign) are effectively available for 2D correction (Mode = 3), whereby the x value is in the lower 16 bits of the “Bit #31 = 0”-coded McBSP input value and the y value in the upper 16 bits.
Normal List set_mcbsp_in_list Command Function Like set_mcbsp_in, but a list command. Restriction If the Option Processing-on-the-fly is not enabled, then set_mcbsp_in_list terminates the Processing-on-the-fly process (even though it could not have been activated). set_mcbsp_in_list( Mode, Scale ) Call Mode Parameters Like set_mcbsp_in.
Ctrl Command set_mcbsp_matrix Function Activates matrix correction for “Local Online Positioning“ by the McBSP interface. set_mcbsp_matrix() Call Comments • For “Local Online Positioning“, see Chapter 8.3.1 ”“Local Online Positioning“”, page 228. • Matrix corrections cannot be used in conjunction with offset and/or rotation corrections.
Undelayed set_mcbsp_matrix_list Short List Command Like set_mcbsp_matrix, but a list command. Function set_mcbsp_matrix_list() Call Comments • See set_mcbsp_matrix. RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References set_mcbsp_matrix RTC6 boards Doc. Rev. 1.0.21 en-US 10 RTC6 Commands...
Undelayed set_mcbsp_out Short List Command Function Defines two signal types for output at the McBSP interface, see also Chapter 4.6.6 ”McBSP/ANALOG Socket Connector”, page Call set_mcbsp_out( Signal1, Signal2 ) Parameters Signal1 To-be-outputted signal type. As an unsigned 32-bit value. Signal2 To-be-outputted signal type.
Ctrl Command set_mcbsp_out_oie_ctrl Function Switches on the OIE Output Mode at the McBSP interface. set_mcbsp_out_oie_ctrl( Signal1, Signal2 ) Call Signal1 Parameters To-be-outputted signal type. As an unsigned 32-bit value. Signal2 To-be-outputted signal type. As an unsigned 32-bit value. Comments • Output Mode At the McBSP...
Ctrl Command set_mcbsp_out_ptr Function Defines a list of up to 8 signal types for output at the McBSP interface, see Chapter 4.6.6 ”McBSP/ANALOG Socket Connector”, page set_mcbsp_out_ptr( Number, SignalPtr ) Call Number Parameters As an unsigned 32-bit value. Allowed value range: [0…8]. = 1…8: Number of signal types to be outputted.
Multiple List set_mcbsp_out_ptr_list Command Function Like set_mcbsp_out_ptr, but a list command. set_mcbsp_out_ptr_list( Number, SignalPtr ) Call Number Parameters Like set_mcbsp_out_ptr. SignalPtr Like set_mcbsp_out_ptr. positions for Number 1. Comments • set_mcbsp_out_ptr_list requires two RTC6 List Memory Sequence of execution: 1. Pending delayed short list commands 2.
Ctrl Command set_mcbsp_rot Function Activates or deactivates rotation correction for “Local Online Positioning“ by the McBSP interface. set_mcbsp_rot( Resolution ) Call Resolution Parameters As a 64-bit IEEE floating point value. –26 < Resolution < 2 : scaling factor (correction is activated), otherwise: correction is deactivated.
Ctrl Command set_mcbsp_x Function Activates or deactivates X offset correction for “Local Online Positioning“ by the McBSP interface. set_mcbsp_x( Scale ) Call Scale Parameters As a 64-bit IEEE floating point value. –26 < Scale < 2 : scaling factor (correction is activated). Otherwise: correction is deactivated.
Ctrl Command set_mcbsp_y Function Activates or deactivates y offset correction for “Local Online Positioning“ by the McBSP interface. set_mcbsp_y( Scale ) Call Scale Parameters As a 64-bit IEEE floating point value. –26 < Scale < 2 : scaling factor (correction is activated). Otherwise: correction is deactivated.
Ctrl Command set_multi_mcbsp_in Function Activates a Processing-on-the-fly application and McBSP interface multi transmission with up to 8 different data types. Restriction If the Option Processing-on-the-fly is not enabled, then set_multi_mcbsp_in switches off the Processing-on-the-fly process (even if it has been never switched on). set_multi_mcbsp_in( Ctrl, P, Mode ) Call Ctrl...
Page 703
Ctrl Command set_multi_mcbsp_in Comments • For the transmission, the type assignment must be coded into the 3 least significant (cont’d) bits of the data word according to: – McBSPValue = ( Value << 3 ) | Type The RTC6 board stores the data word according to: –...
Ctrl Command set_multi_mcbsp_in RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. Last change DLL 617, OUT 617: compatibility with “Fly Extension” Commands. Comments set_multi_mcbsp_in_list, read_multi_mcbsp, set_wobbel_control, set_wobbel_vector Normal List set_multi_mcbsp_in_list Command Function Like set_multi_mcbsp_in, but a list command.
Variable set_n_pixel List Command Mode, executes PortOutValue1 and PortOutValue2 assigned to the Function Pixel Output set_pixel command Number times in immediate succession. set_n_pixel( PortOutValue1, PortOutValue2, Number ) Call PortOutValue1 Parameters Like set_pixel. PortOutValue2 Like set_pixel. Number Number of pixels. As an unsigned 32-bit value. Allowed value range: [1…(2 –1)].
Ctrl Command set_offset Function Defines: • The offset for coordinate transformations, see Chapter 8.2 ”Coordinate Transformations”, page 224. • The global offset in virtual Image Field, see Section ”Coordinate Transformations in the Virtual Image Field”, page 169 Call set_offset( HeadNo, XOffset, YOffset, at_once ) Parameters HeadNo See set_offset_xyz.
Ctrl Command set_offset_xyz Function Defines: • The offset for coordinate transformations, see Chapter 8.2 ”Coordinate Transformations”, page 224. • The global offset in virtual Image Field, see Section ”Coordinate Transformations in the Virtual Image Field”, page 169 Call set_offset_xyz( HeadNo, XOffset, YOffset, ZOffset, at_once ) Parameters HeadNo Number of the scan head connector.
Variable set_offset_xyz_list List Command Function Like set_offset_xyz, but a list command. set_offset_xyz_list( HeadNo, XOffset, YOffset, ZOffset, at_once ) Call HeadNo Like set_offset_xyz. However, HeadNo = 4 is not available. Parameters XOffset Like set_offset_xyz. YOffset Like set_offset_xyz. ZOffset Like set_offset_xyz. at_once Like set_matrix_list.
Ctrl Command set_pause_list_cond Function Defines the condition at the 16-bit digital input port of the EXTENSION 1 socket connector under which a pause_list automatically is executed. set_pause_list_cond( Mask1, Mask0 ) Call Mask1 Parameters 16-bit mask. As an unsigned 32-bit value. Only the least 16 bits are evaluated.
Page 710
Ctrl Command set_pause_list_not_cond Function Defines the “NOT” condition at the 16-bit digital input port of the EXTENSION 1 socket connector under which a pause_list automatically is executed. set_pause_list_not_cond( Mask1, Mask0 ) Call Mask1 Parameters 16-bit mask. As an unsigned 32-bit value. Only the least 16 bits are evaluated.
Variable set_pixel List Command Function In the Pixel Output Mode, defines the laser control parameters (in “Classic Mode” pulse length and analog voltage level) for one pixel in an image line. set_pixel( PortOutValue1, PortOutValue2 ) Call PortOutValue1 Parameters For the meaning, see Chapter 8.7.3 ”Laser Control”, page 265.
713. Port = 2: 12-bit analog output port 2 (LASER Connector. With the RTC6 PCIe Board also the MARKING ON THE FLY socket connector). See comment, page 713. Port = 3: 8-bit digital output port (EXTENSION 2 socket connector).
Page 713
Normal List set_pixel_line Command Parameters HalfPeriod Half pixel output period. In bits. (cont’d) 1 bit equals 1/64 µs. As an unsigned 32-bit value. Allowed value range: [Min…(2 –1)] with: Min = 80 for Mode = 0 and 256. Maximum frequency: 0.4 MHz. Min = 40 for Mode = 16.
Page 714
Normal List set_pixel_line Command Comments • The Pixel Output Mode can be combined with Processing-on-the-fly. (cont’d) See also Chapter 8.6 ”Processing-on-the-fly”, page 242. • The Pixel Output Mode should not be used in conjunction with “Automatic Laser Control“ (see Chapter 7.4.9 ”“Automatic Laser Control“”, page 197), if there is a readjustment of the port output, pulse length (PulseLength) or output period (HalfPeriod) of the...
Multiple List set_pixel_line_3d Command Function Activates the Pixel Output Mode and defines various pixel output parameters. set_pixel_line_3d( Channel, HalfPeriod, dX, dY, dZ ) Call Channel Parameters Like set_pixel_line. HalfPeriod Like set_pixel_line. Like set_pixel_line. Like set_pixel_line. Distance in the z direction between adjacent pixels. In bits. As a 64-bit IEEE floating point value.
Ctrl Command set_port_default Function Defines the default output value for the selected output port. set_port_default( Port, Value ) Call Port Output port for which a default Value is to be defined. Parameters As an unsigned 32-bit value. Allowed values: = 0: ANALOG OUT1 output port.
Ctrl Command set_port_default • If the value for Port is invalid, then set_port_default is not executed Comments (cont’d) (get_last_error return code RTC6_PARAM_ERROR). • The default values for the output ports 0…2 can also be defined by set_laser_off_default. RTC4RTC6 New command. Mode, the RTC6 multiplies Value for Port = 0/1 by 4.
Ctrl Command set_pulse_picking Function Switches on Pulse Picking Laser Mode. set_pulse_picking( No ) Call Parameters As an unsigned 32-bit value. Allowed value range: [0…63]. = 0: LASER2 puts out the LASERON signal. = 1…63: LASER2 puts out each No LASER1 pulse. No >...
Undelayed set_pulse_picking_list Short List Command Like set_pulse_picking, but a list command. Function set_pulse_picking_list( No ) Call Parameters Like set_pulse_picking. RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References set_pulse_picking Ctrl Command set_qswitch_delay Function In the YAG modes, defines the delay length of the first Q-Switch pulse with reference to the FirstPulseKiller signal, see also...
Ctrl Command set_rot_center Function Sets the rotation center of a Processing-on-the-fly rotation correction (see set_fly_rot set_fly_rot_pos). set_rot_center( X, Y ) Call Parameters Position of the rotation center referenced to the zero point (0|0) of the Image Field. As a signed 32-bit value. Allowed value range: [–2 …(2 –1)].
Ctrl Command set_rtc4_mode Function Sets RTC4 Compatibility Mode as the current RTC6 DLL operation mode. set_rtc4_mode() Call Comments • RTC4 Compatibility Mode is an optional operation mode of the RTC6 DLL. It has been made available so that user programs written for the RTC4 can also be processed by the RTC6 (to a large extent) without needing to modify the programming code.
Ctrl Command set_rtc5_mode Function Sets RTC5 Compatibility Mode as the current RTC6 DLL operation mode. set_rtc5_mode() Call Comments • RTC5 Compatibility Mode is an optional operation mode of the RTC6 DLL. It has been made available so that user programs written for the RTC5 can also be processed by the RTC6 (to a large extent) without needing to modify the programming code.
Ctrl Command set_rtc6_mode Function Sets RTC6 Standard Mode as the current RTC6 DLL operation mode (default setting). set_rtc6_mode() Call Comments • In RTC6 Standard Mode RTC6 DLL operation mode, Z coordinate values and defocus values must be specified with a parameter resolution of 20 bits. •...
Ctrl Command set_scale Function Uses a specified scaling factor common to the x axis and y axis to define the scaling matrix for all subsequent coordinate transformations, see Chapter 8.2 ”Coordinate Transformations”, page 224. set_scale( HeadNo, Scale, at_once ) Call HeadNo Parameters Number of the scan head connector.
Ctrl Command set_scanahead_laser_shifts Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Shifts the LASERON signals and LaserOff temporally forward or back. set_scanahead_laser_shifts( dLasOn, dLasOff ) Call dLasOn Parameters Time shift of LASERON signal in [1/64 µs]. As a signed 32-bit value.
Ctrl Command set_scanahead_line_params Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Influences the quality of marking results at runtime. Smaller percent values increase throughput at the expense of quality. set_scanahead_line_params( CornerScale, EndScale, AccScale ) Call CornerScale Parameters Corner sharpness with mark/mark sequences in percent.
Undelayed set_scanahead_line_params_list Short List Command Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Like set_scanahead_line_params, but an undelayed short list command. Call set_scanahead_line_params_list( CornerScale, EndScale, AccScale ) Parameters CornerScale Like set_scanahead_line_params. EndScale Like set_scanahead_line_params. AccScale Like set_scanahead_line_params. Comment •...
Ctrl Command set_scanahead_params Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Activates the SCANahead functionality suitable to control an SCANahead system on the RTC6 board. The laser control and digital inputs/outputs for the peripherals are prepared for a SCANahead system, that is, delayed by PreviewTime.
Page 729
Ctrl Command set_scanahead_params PreviewTime Parameters Precalculation time for galvanometer scanner control. (cont’d) In 10 µs. PreviewTime is ignored in Mode = 0 and Mode = 1 . As an unsigned 32-bit value. Vmax Velocity limit as control bits (galvanometer scanner rotation angle). In bits/10 µs.
Page 730
Ctrl Command set_scanahead_params • For error return information, see get_scanahead_params. Comments (cont’d) • Mode = 1 results in aborted set_scanahead_params execution (Error = 3) if no SCANahead system is attached or it is not active. All SCANahead functionalities are deactivated. Parameters specified for Mode = 2 are not applied! •...
Ctrl Command set_scanahead_speed_control Function Only for scan systems with SCANahead technology, for example, the excelliSCAN. Controls the Scanner Delays either depending on the target speed or actual achievable speed. set_scanahead_speed_control( Mode ) Call Mode Parameters Modus. As an unsigned 32-bit value. Comments •...
Delayed Short set_scanner_delays List Command Function Sets the Scanner Delays. set_scanner_delays( Jump, Mark, Polygon ) Call Jump Parameters Scanner delay of type: Jump Delay. As an unsigned 32-bit value. 1 bit equals 10 µs. Allowed value range: [0…(2 –1)]. Mark Scanner delay of type: Mark Delay.
Ctrl Command set_serial_step Function Sets the starting serial number and the increment size for the serial-number-set most recently selected by select_serial_set (= 0 after load_program_file). set_serial_step( No, Step ) Call Parameters Serial number. As an unsigned 32-bit value. Allowed value range: [0…(2 –1)].
Ctrl Command set_sky_writing Function Activates Sky Writing Mode 1 and sets the corresponding parameters or switches off Writing. set_sky_writing( Timelag, LaserOnShift ) Call Timelag Parameters Like set_sky_writing_para. LaserOnShift Like set_sky_writing_para. Comments • set_sky_writing is identical to set_sky_writing_para( Timelag, LaserOnShift, Nprev, Npost Nprev = approx.
Ctrl Command set_sky_writing_limit Function Defines the limit for Sky Writing switching in Sky Writing Mode set_sky_writing_limit( Limit ) Call Limit Parameters Limit value. As a 64-bit IEEE floating point value. Allowed value range: [–1.0…+1.0]. Out-of-range values are clipped to the boundary values. Comments •...
Normal List set_sky_writing_list Command Function Like set_sky_writing, but a list command. set_sky_writing_list( Timelag, LaserOnShift ) Call Timelag Parameters Like set_sky_writing_para. LaserOnShift Like set_sky_writing_para. Comments • See set_sky_writing, set_sky_writing_para and set_sky_writing_para_list. RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Mode, the RTC6 multiplies the value specified for LaserOnShift by RTC5 Compatibility 32.
Normal List set_sky_writing_mode_list Command Function Like set_sky_writing_mode, but a list command. set_sky_writing_mode_list( Mode ) Call Mode Parameters Like set_sky_writing_mode. Comments • By set_sky_writing_mode_list, Sky Writing Mode 2 Sky Writing Mode 3 can be activated or deactivated even within a list (switching to or from Mode = 2 or 3). Here, an already-begun Mark Command is finished with...
Ctrl Command set_sky_writing_para Function Activates Sky Writing Mode 1 and sets the corresponding parameters or switches Sky Writing off. set_sky_writing_para( Timelag, LaserOnShift, Nprev, Npost ) Call Timelag Parameters Sky Writing parameter. 1.0 equals 1 µs. The Timelag value is used with an accuracy of 1/64 µs. As a 64-bit IEEE floating point value.
Page 740
Ctrl Command set_sky_writing_para • When set_sky_writing_para is called and no list is running or a list has been halted by Comments (cont’d) set_wait, the following applies: – With Timelag 1/8, Sky Writing Mode 1 is activated, if Sky Writing has not been active before.
Normal List set_sky_writing_para_list Command Function Like set_sky_writing_para, but a list command. set_sky_writing_para_list( Timelag, LaserOnShift, Nprev, Npost ) Call Timelag Parameters Like set_sky_writing_para. LaserOnShift Like set_sky_writing_para. Nprev Like set_sky_writing_para. Npost Like set_sky_writing_para. Comments • set_sky_writing_para_list can be executed within a list, even if Sky Writing Mode 2 Sky Writing Mode 3 is active.
Ctrl Command set_softstart_level Function No function. set_softstart_level( Index, Level ) Call Index Parameters As an unsigned 32-bit value. Level As an unsigned 32-bit value. Comments • set_softstart_level has no effect on the user program. RTC4RTC6 Unchanged functionality. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600.
Ctrl Command set_softstart_mode Function No function. set_softstart_mode( Mode, Number, Delay ) Call Mode Parameters As an unsigned 32-bit value. Number As an unsigned 32-bit value. Delay As an unsigned 32-bit value. Comments • set_softstart_mode has no effect on the user program. RTC4RTC6 Unchanged functionality.
Ctrl Command set_standby Function Defines the output period and the pulse length of the standby pulses for “laser standby” operation or – in Laser Mode 4 Laser Mode 6 – the continuously-running laser signals Signals for “Laser Active” Operation and “laser standby” operation. set_standby( HalfPeriod, PulseLength ) Call HalfPeriod...
Delayed Short set_standby_list List Command Function Like set_standby, but a list command. set_standby_list( HalfPeriod, PulseLength ) Call HalfPeriod Parameters Like set_standby. PulseLength Like set_standby. RTC4RTC6 See set_standby. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References set_standby RTC6 boards...
Ctrl Command set_start_list Function Opens the RTC6 List Memory for writing of list commands and sets the input pointer to the start of the specified list (“List 1” or “List 2”). set_start_list( ListNo ) Call ListNo Parameters Number of the list in which the input pointer should be set. As an unsigned 32-bit value.
Ctrl Command set_start_list_pos Function Opens the RTC6 List Memory for writing of list commands and sets the input pointer to the specified relative position in the specified list (“List 1” or “List 2”). set_start_list_pos( ListNo, Pos ) Call ListNo Parameters Number of the list for which the input pointer should be set.
Ctrl Command set_sub_pointer Function Stores the absolute start address of a command list in the internal management table for indexed subroutines. set_sub_pointer( Index, Pos ) Call Index Index of the indexed subroutine whose starting address Pos should be entered Parameters in the management table.
Ctrl Command set_text_table_pointer Function Stores the absolute start address of a command list in the internal management table for indexed text strings. set_text_table_pointer( Index, Pos ) Call Index Index of the indexed text string whose starting address Pos should be entered Parameters in the management table.
Ctrl Command set_timelag_compensation Function Compensates the various Tracking Errors of the xy axes and z axis. set_timelag_compensation( HeadNoXY, TimelagXY, TimelagZ ) Call HeadNoXY Parameters Number of the xy scan head connector. As an unsigned 32-bit value. Allowed value range: [1…2]. TimelagXY Tracking Error of the xy axis in [10 µs].
Delayed Short set_trigger List Command Function Starts measurement value recording of the specified signals. set_trigger( Period, Signal1, Signal2 ) Call Period Parameters Measurement period (time interval between 2 data pair recordings). 1 bit equals 10 µs. Allowed value range: [0…(2 –1)].
Page 752
Delayed Short set_trigger List Command Parameters Signal1 SampleAX_Corr (cont’d) (cont’d) Corrected x axis control value for the first scan head connector (= up to 7.3.6, page 181). SampleAY_Corr Corrected y axis control value for the first scan head connector (= up to 7.3.6, page 181).
Page 753
Delayed Short set_trigger List Command Parameters Signal1 SampleAX_Out (cont’d) (cont’d) Actual output value for the x axis, first scan head connector (= up to 7.3.6, page 181). Not usable for z axis output values. SampleAY_Out Actual output value for the y axis, first scan head connector (= up to 7.3.6, page 181).
Page 754
Delayed Short set_trigger List Command Parameters Signal1 Laser control parameter of “vector-controlled laser control” (cont’d) (cont’d) See set_vector_control. Focus shift See set_vector_control, set_defocus, set_defocus_list. 12-bit output value at the ANALOG OUT1 output port set_vector_control Chapter 9.1.4 ”12-Bit Analog Output Port 1 and 2”, page 283.
Page 755
Delayed Short set_trigger List Command Parameters Signal1 Counter value of encoder counter “Encoder0” (cont’d) (cont’d) Counter value of encoder counter “Encoder1” Marking speed From set_mark_speed, set_mark_speed_ctrl. 16-bit digital input port (EXTENSION 1) Only for intelliWELD II: Zoom value FreeVariable4 FreeVariable5 FreeVariable6 FreeVariable7 32-bit “Timestamp Counter”...
Page 756
Delayed Short set_trigger List Command Parameters Signal1 Wobbel amplitude (cont’d) (cont’d) See set_wobbel, set_wobbel_mode Parameters Chapter 8.4 ”Wobbel Mode”, page 232. (cont’d) ReadAnalogIn See read_analog_in. Scaled encoder value for x Scaled encoder value for y Scaled encoder value for z RS-232 read_mcbsp( read_multi_mcbsp(...
Page 757
Delayed Short set_trigger List Command Comments General Comments • If Signal1 and Signal2 are not from the above list, then set_trigger (except for Period = 0) is replaced with a return code RTC6_PARAM_ERROR). list_nop (get_last_error • After a set_trigger with Period > 0, a data pair (data couple) is recorded immediately and subsequently at intervals defined by the specified measurement period.
Page 758
Delayed Short set_trigger List Command Comments General Comments (cont’d) (cont’d) • An active measured value recording is terminated by (no matter which of the following started it): – set_trigger(Period = 0) – set_trigger4(Period = 0) – set_trigger8(Period = 0) • If you abort a measurement session with set_trigger ( Period = 0 ) or Period set_trigger4( = 0 ), then previously recorded measurement values are not lost...
Page 759
Delayed Short set_trigger List Command Comments Comments on the Data (cont’d) (cont’d) • Note when evaluating data recorded with active Tracking Error compensation (set_timelag_compensation): – A call of set_timelag_compensation( TimelagXY < TimelagZ ) delays the xy axis as – TimelagXY] well as the Laser Control Signals [TimelagZ...
Delayed Short set_trigger4 List Command Function Starts the measurement value recording of the specified measurement signals (has the same effect as set_trigger, but with up to 4 simultaneous measurement signals). set_trigger4( Period, Signal1, Signal2, Signal3, Signal4 ) Call Period Parameters Like set_trigger.
Delayed Short set_trigger8 List Command Function Starts the measurement value recording of the specified measurement signals (has the same effect as set_trigger, but with up to 8 simultaneous measurement signals). set_trigger8( Period, Signal1, Signal2, Signal3, Signal4, Call Signal5, Signal6, Signal7, Signal8 ) Period Parameters Like set_trigger.
Undelayed set_vector_control Short List Command Function Initializes or deactivates “vector-controlled laser control”. See Section ”Vector-Defined Laser Control”, page 206. Call set_vector_control( Ctrl, Value ) Parameters Ctrl Control parameter for initializing or deactivating “vector-controlled laser control” (for Ctrl = 1…6: identical with set_auto_laser_control). As an unsigned 32-bit value.
Page 763
Undelayed set_vector_control Short List Command • For Ctrl = 7, the focus shift is linearly varied as with Comments set_defocus (cont’d) set_defocus_list, see comments there) with [*]para[*] Commands (in order for the z outputs to be outputted, the Option “3D” must be enabled and a 3D correction file must be loaded and assigned as well) up to the specified end value (this requires enabling the...
Ctrl Command set_verify Function Activates or deactivates a download verification. Chapter 6.8.1 ”Download Verification”, page 131. OldVerify = set_verify( Verify ) Call Verify Parameters Setting parameter. As an unsigned 32-bit value. = 0: Verification is deactivated. > 0: Verification is activated. The Verify setting parameter that has been active before calling set_verify.
Normal List set_wait Command Function Inserts a numbered break point (“wait marker”) into the list. set_wait( WaitWord ) Call WaitWord Parameters Number of the break point. As an unsigned 32-bit value. Allowed value range: [1…(2 –1)]. 0 is corrected to 1. Comments •...
Delayed Short set_wobbel List Command Function Defines the parameters for an ellipse-shaped wobbel motion. “Wobbel” is a motion of the output position which is added to the regular marking movement. Chapter 8.4 ”Wobbel Mode”, page 232. Call set_wobbel( Transversal, Longitudinal, Freq ) Parameters Transversal Amplitude of the elliptical perpendicular to the momentary direction of...
Page 767
Delayed Short set_wobbel List Command Comments • For identical amplitudes (Longitudinal = Transversal), the wobbel startpoint is (cont’d) permanently referenced to the coordinate system, that is, independent of the current direction of motion. By set_wobbel_direction, a fixed reference direction can be set which differs from it.
Undelayed set_wobbel_control Short List Command Function Specifies laser control parameters for laser power variation with “freely definable wobbel shapes”. Call set_wobbel_control( Ctrl, Value, MinValue, MaxValue ) Parameters Ctrl Control parameter for initializing or deactivating laser power variation. As an unsigned 32-bit value. = 0: Deactivates laser power variation.
Page 769
Undelayed set_wobbel_control Short List Command • The conditions for Value, MinValue, MaxValue are the same as for “Automatic Laser Comments (cont’d) Control“ (see set_auto_laser_control), but with a maximum of [0…65,535]. Initialized values are MinValue = 0 and MaxValue = 0xFFFFFFFF, that is, no restrictions. •...
Undelayed set_wobbel_direction Short List Command Function Defines a direction vector for wobbel motions. set_wobbel_direction( dX, dY ) Call Parameters x component of the direction vector. In bits. As a signed 32-bit value. y component of the direction vector. In bits. As a signed 32-bit value.
Delayed Short set_wobbel_mode List Command Function Switches the Wobbel Mode on and off and defines the parameters for an ellipse-shaped or figure-of-8 wobbel motion, see Chapter 8.4 ”Wobbel Mode”, page 232. set_wobbel_mode( Transversal, Longitudinal, Freq, Mode ) Call Transversal Parameters Amplitude of the wobbel movement perpendicular to the momentary direction of motion or to the one defined by set_wobbel_direction.
Page 772
Delayed Short set_wobbel_mode List Command Comments • The Wobbel Mode is terminated by setting both amplitudes and/or the frequency to zero (more accurate for –n Freq n with n = 50000/65536 = 0.7629…). (cont’d) • The frequency is signed. During the figure-of-8’s first loop, the wobbel vector rotates clockwise for positive values and counterclockwise for negative values.
Page 773
Delayed Short set_wobbel_mode List Command Comments • The present wobbel amplitude can be recorded by (cont’d) set_trigger/set_trigger4/set_trigger8 (signal 53). The format of the data is ((transversal << 16) + longitudinal). • The Wobbel Mode cannot be combined with: – Sky Writing –...
Delayed Short set_wobbel_mode_phase List Command Function Switches a classical Wobbel Mode on and off as with set_wobbel_mode. In addition, defines a start phase. set_wobbel_mode_phase( Transversal, Longitudinal, Freq, Mode, Phase ) Call Transversal Parameters As with set_wobbel_mode. Longitudinal As with set_wobbel_mode. Freq As with set_wobbel_mode.
Delayed Short set_wobbel_offset List Command Function Defines a wobbel shape shift in the direction of motion or perpendicular to the direction of motion. set_wobbel_offset( OffsetTrans, OffsetLong ) Call OffsetTrans Parameters Transversal offset. As a signed 32-bit value. Allowed value range: ±32,767. Larger values are clipped. Initialization values after load_program_file: (0,0).
Undelayed set_wobbel_vector Short List Command Function Defines a linear section of a wobbel shape. set_wobbel_vector( dTrans, dLong, Period, dPower ) Call dTrans Parameters Microstep of a linear wobbel shape section. In bits. As a 64-bit IEEE floating point value. dLong Allowed value range: [–256.0…+255.0].
Page 777
Undelayed set_wobbel_vector Short List Command and set_wobbel_mode( Mode Comments • If activated by set_wobbel_control = 2 ), the following (cont’d) applies: – The RTC6 varies the current laser power P within the wobbel shape section according i−1 Σ P(i, n) = P nom × (1 + ( dPower j ×...
Page 778
Undelayed set_wobbel_vector Short List Command and set_wobbel_mode( Mode • If activated by set_wobbel_control = 3 ), the following applies: – The RTC6 varies the current laser power P within the wobbel shape section according i−1 Σ P(i, n) = P 100 × (Factor + ( dPower j ×...
Page 779
Undelayed set_wobbel_vector Short List Command Comments • If the wobbel shape gets switched off while the Wobbel Mode remains active, then the Mode = 1 (horizontal figure-8). (cont’d) shape automatically switches to • The Wobbel Mode with “freely definable wobbel shapes” also needs to be switched on by set_wobbel_mode.
Undelayed set_wobbel_vector_2 Short List Command Like set_wobbel_vector. However, only for set_wobbel_control( Ctrl Function = 8 ). Call set_wobbel_vector_2( dTrans, dLong, Period, dPower, dPower2, Ctrl ) Parameters dTrans Like set_wobbel_vector. dLong Like set_wobbel_vector. Period Like set_wobbel_vector. dPower Microstep of the relative laser power. Refers to ANALOG OUT1.
Ctrl Command simulate_encoder Function Activates or deactivates encoder simulation for the specified encoder. simulate_encoder( EncoderNo ) Call EncoderNo Parameters Encoder number as an unsigned 32-bit value. Allowed values: = 1: ENCODER X pulses are simulated and encoder counter “Encoder0” thereby incremented. = 2: ENCODER Y pulses are simulated and encoder counter...
Normal List simulate_ext_start Command Function After the specified track delay, causes a simulated External Start. simulate_ext_start( Delay, EncoderNo ) Call Delay Track delay (in counter steps of the selected EncoderNo encoder counter). Parameters As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)].
Normal List simulate_ext_start Command RTC4RTC6 Unchanged functionality. In addition: increased value range. Mode, the RTC6 multiplies the specified value for Delay by 16. RTC4 Compatibility The allowed value range decreases accordingly. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References simulate_ext_start_ctrl, set_ext_start_delay, set_ext_start_delay_list...
Ctrl Command simulate_ext_stop Function Causes a simulated External Stop. simulate_ext_stop() Call Comments • For external stops, see Section ”External Stop”, page 289. • simulate_ext_stop simultaneously halts the master board and all slave boards. • In contrast, stop_execution only halts the master board. RTC4RTC6 New command.
Undelayed spot_distance Short List Command As spot_distance_ctrl, but an undelayed short list command. Function spot_distance( Dist ) Call Dist Parameters See spot_distance_ctrl. Comments • See spot_distance_ctrl. RTC4RTC6 New command. RTC5RTC6 New command. Version info Available as of DLL 609, OUT 609, RBF 613. References spot_distance_ctrl, set_auto_laser_control, set_auto_laser_params, set_auto_laser_params_list...
Ctrl Command start_loop Function Starts a repeating automatic list change. start_loop() Call Comments • A list change or execution restart activated with start_loop repeats until execution is ended by calling quit_loop. • start_loop can be called at any time but only has effect upon the next set_end_of_list. •...
Ctrl Command stepper_abs Function Triggers set-position movements to the specified absolute set positions by both stepper motor output ports. stepper_abs( Pos1, Pos2, WaitTime ) Call Pos1 Parameters Absolute set position in CLOCK pulse units for stepper motor output ports 1. As signed 32-bit values.
Undelayed stepper_abs_list Short List Command Like stepper_abs, but a list command and without WaitTime parameter. Function stepper_abs_list( Pos1, Pos2 ) Call Pos1 Parameters Like stepper_abs. Pos2 Like stepper_abs. Comments • See stepper_abs. • During performance of a reference run (see stepper_init), execution of stepper_abs_list is delayed until the reference run completes.
Undelayed stepper_abs_no_list Short List Command Like stepper_abs_no, but a list command and without WaitTime parameter. Function stepper_abs_no_list( No, Pos ) Call Parameters Number of the stepper motor output. As an unsigned 32-bit value. Allowed values: = 1: Stepper motor output 1. = 2: Stepper motor output 2.
Ctrl Command stepper_control Function Sets the CLOCK signal pulse periods for stepper motor control. stepper_control( Period1, Period2 ) Call Period1 Parameters Pulse period of the CLOCK signals for stepper motor output ports 1. 1 bit equals 10 µs. As a signed 32-bit value. Allowed values: [0…+(2 -1)] or <...
Ctrl Command stepper_disable_switch Function Controls the usage of the stepper motor control SWITCH signals. stepper_disable_switch( Disable1, Disable2 ) Call Disable1 Parameters Instruction how the SWITCH signals from stepper motor input port 1 are to be used. As a signed 32-bit value.. Allowed value range: [–2 …+(2 –1)].
Ctrl Command stepper_enable Function Sets the ENABLE signals of the stepper motor control. stepper_enable( Enable1, Enable2 ) Call Enable1 Parameters ENABLE signal for stepper motor output 1. As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)]. > 0: The ENABLE signal at the stepper motor output gets set.
Page 793
Ctrl Command stepper_init Function Performs a stepper motor initialization. stepper_init( No, Period, Dir, Pos, Tol, Enable, WaitTime ) Call Parameters Number of the stepper motor output. As an unsigned 32-bit value. Allowed values: = 1: Stepper motor output 1. = 2: Stepper motor output 2.
Page 794
Ctrl Command stepper_init Comment • For programming the stepper motor signals, see Chapter 9.1.5 ”Controlling Stepper Motors”, page 284. • stepper_init immediately stops all previously started movements of the stepper motor specified by the No parameter. • The ENABLE signal Enable is merely forwarded and always correspondingly set, but has no effect on internal operations.
Page 795
Ctrl Command stepper_init RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. References – Ctrl Command stepper_rel Function Triggers set-position movements to the specified relative positions by both stepper motor output ports. stepper_rel( dPos1, dPos2, WaitTime ) Call dPos1...
Page 796
Ctrl Command stepper_rel_no Function Triggers a set-position movement to the specified relative position at one stepper motor output port. stepper_rel_no( No, dPos, WaitTime ) Call Parameters Like stepper_abs_no. dPos Relative position. In CLOCK pulse units. As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)].
Page 797
Normal List stepper_wait Command Function Interrupts further execution of a list until a previously started (at the specified stepper motor output) stepper motor movement completes. stepper_wait( No ) Call Parameters Number of the stepper motor output. As an unsigned 32-bit value. Allowed values: = 1: Stepper motor output port 1.
Page 798
Ctrl Command stop_execution Function Stops execution of the list and deactivates the “laser active” Laser Control Signals immediately. stop_execution() Call Comments • stop_execution deactivates the Signals for “Laser Active” Operation even if no list is active (here stop_execution has no other effects; here too: get_last_error return code RTC6_BUSY).
Page 799
Ctrl Command stop_trigger Resets (to Busy= 0) the measurement session status that can be queried by Function measurement_status. stop_trigger() Call Comments • stop_trigger is only needed if a measurement session has been started by set_trigger/set_trigger4/set_trigger8, but not subsequently terminated by: –...
Page 800
Ctrl Command store_program Function Standalone Functionality: Saves (deletes) data for automatic booting to (from) the NAND Memory. RTC6 Software Package 26. Prerequisite V1.7.0 BIOS-ETH Error = store_program( Mode ) Call Mode Parameters = 0: Saves data for “Standalone Basic State“ (see below).
Page 801
Ctrl Command store_timestamp_counter Function Saves the current 32-bit “Timestamp Counter” value. store_timestamp_counter() Call Parameters None. Comments • See Chapter 8.12 ”Time Measurements”, page 281. • The current 32-bit “Timestamp Counter” value is stored as time reference TimeStampStorage for wait_for_timestamp_counter. RTC4RTC6 New command.
Page 802
Undelayed sub_call Short List Command Function Causes an unconditional jump to an indexed subroutine. sub_call( Index ) Call Index Parameters Index of the called indexed subroutine. As an unsigned 32-bit value. Allowed value range: [0…1023]. Comments • sub_call reads the indexed subroutine’s starting address from the internal management table based on the supplied index and then calls list_call (see also the...
Page 803
Undelayed sub_call_abs Short List Command Function Causes an unconditional jump to an indexed subroutine. In the called subroutine, any absolute Vector Commands and “Arc” Commands receive an offset (corresponding to the current coordinates at the time of the call). sub_call_abs( Index ) Call Index Parameters...
Page 804
Undelayed sub_call_abs_repeat Short List Command Function Causes an unconditional jump to an indexed subroutine and executes its body several times. Call sub_call_abs_repeat( Index, Number ) Parameters Index Index of the to be called indexed subroutine (as with sub_call_abs). Number Number of repetitions. 0 is treated as 1.
Page 805
Undelayed sub_call_repeat Short List Command Function Causes an unconditional jump to an indexed subroutine and executes its body several times. Call sub_call_repeat( Index, Number ) Parameters Index Index of the to be called indexed subroutine (as with sub_call). Number Number of repetitions. As an unsigned 32-bit value.
Page 806
Undelayed switch_ioport Short List Command list_jump_rel ( Pos ) whose jump distance Pos (>1) is Function Executes a relative list jump determined at runtime by the current value (IOvalue) at the 16-bit digital input port of the EXTENSION 1 socket connector. You can specify which of the 16-bit digital input port’s bits should be evaluated for this purpose.
Page 807
• RTC6 Software Packages <V1.5.0 (< RBF 619): – SCANLAB recommends executing synchronization immediately after all boards have been initialized by load_program_file and load_correction_file. Otherwise, all involved boards (that is, the master board and the downstream slave boards allocated to the user program) should already have been halted prior to the call of sync_slaves.
Page 808
Ctrl Command sync_slaves • sync_slaves is not executed return code RTC6_BUSY), if: Comments (get_last_error (cont’d) – the BUSY list execution status of the addressed board is currently set – the INTERNAL-BUSY list execution status of the addressed board is set •...
Page 809
Ctrl Command time_control_eth Function Sets a parameter to fine-tune the accuracy of the real-time clock. time_control_eth( PPM ) Call Parameters Deviation. As a 64-bit IEEE floating point value. Allowed value range: PPM / 4.34 = [–64…+63] Comments • The execution of time_control_eth can take several 100 µs, see time_update. •...
Page 810
Normal List time_fix Command Function Stores the current time and date of the RTC clock/calender in a cache for use with mark_date and mark_time. time_fix() Call FirstDay Offset Comments • time_fix is synonymous with time_fix_f_off with = 0 and (see comments there). RTC4RTC6 New command.
Page 811
Normal List time_fix_f_off Command Function Stores the current time and date of the RTC clock/calender or a forward-dated date and mark_date mark_time time for use with in a cache. time_fix_f_off( FirstDay, Offset ) Call FirstDay Parameters Defines the starting number for determining the Julian calendar day from the current date of the RTC calendar: Counting proceeds from FirstDay to FirstDay + 364 (+1 for leap years).
Page 812
Ctrl Command time_update Function Sets the 24-hour clock and calendar of the RTC6 board to the current PC time. time_update() Call Comments • time_update must be called after each load_program_file, if 24-hour clock and calendar of the board are to be synchronized with the PC time. •...
Page 813
Normal List timed_arc_abs Command Function Moves the laser focus for the specified marking duration from the current position along an arc with the specified angle and center point (absolute coordinate values) within a Image Field. Call timed_arc_abs( X, Y, Angle, T ) Parameters Like arc_abs.
Page 814
Normal List timed_arc_rel Command Function Moves the laser focus for the specified marking duration from the current position along an arc with the specified angle and center point (relative coordinate values) within a Image Field. Call timed_arc_rel( dX, dY, Angle, T ) Parameters Like arc_rel.
Page 815
Normal List timed_jump_abs Command Function Moves the output point (of the laser focus) for the specified jump duration along a 2D vector from the current position to the specified position (absolute coordinate values) within a 2D Image Field. Call timed_jump_abs( X, Y, T ) Parameters Like jump_abs.
Page 816
Normal List timed_jump_abs_3d Command Function Moves the output point (of the laser focus) for the specified jump duration along a 3D vector from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Restriction If the Option “3D”...
Page 817
Normal List timed_jump_rel Command Function Moves the output point (of the laser focus) for the specified jump duration along a 2D vector from the current position to the specified position (relative coordinate values) within a 2D Image Field. Call timed_jump_rel( dX, dY, T ) Parameters Like jump_rel.
Page 818
Normal List timed_jump_rel_3d Command Function Moves the output point (of the laser focus) for the specified jump duration along a 3D vector from the current position to the specified position (relative coordinate values) within the 3D Image Field. Restriction If the Option “3D”...
Page 819
Normal List timed_mark_abs Command Function Moves the laser focus for the specified marking duration along a 2D vector from the current position to the specified position (absolute coordinate values) within a 2D Image Field. Call timed_mark_abs( X, Y, T ) Parameters Like mark_abs.
Page 820
Normal List timed_mark_abs_3d Command Function Moves the laser focus for the specified marking duration along a 3D vector from the current position to the specified position (absolute coordinate values) within the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then timed_mark_abs_3d has the same effect as timed_mark_abs.
Page 821
Normal List timed_mark_rel Command Function Moves the laser focus for the specified marking duration along a 2D vector from the current position to the specified position (relative coordinate values) within a 2D Image Field. Call timed_mark_rel( dX, dY, T ) Parameters Like mark_rel.
Page 822
Normal List timed_mark_rel_3d Command Function Moves the laser focus for the specified marking duration along a 3D vector from the current position to the specified position (relative coordinate values) within the 3D Image Field. Restriction If the Option “3D” is not enabled or no 3D correction table has been assigned (see select_cor_table), then timed_mark_rel_3d has the same effect as timed_mark_rel.
Page 823
Normal List timed_para_jump_abs Command Function Moves the output point (of the laser focus) for the specified jump duration along a 2D vector from the current position to the specified position (absolute coordinate values) within a 2D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 824
Multiple List timed_para_jump_abs_3d Command Function Moves the output point (of the laser focus) for the specified jump duration along a 3D vector from the current position to the specified position (absolute coordinate values) within the 3D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 825
Normal List timed_para_jump_rel Command Function Moves the output point (of the laser focus) for the specified jump duration along a 2D vector from the current position to the specified position (relative coordinate values) within a 2D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 826
Multiple List timed_para_jump_rel_3d Command Function Moves the output point (of the laser focus) for the specified jump duration along a 3D vector from the current position to the specified position (relative coordinate values) within the 3D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 827
Normal List timed_para_mark_abs Command Function Moves the laser focus for the specified marking duration along a 2D vector from the current position to the specified position (absolute coordinate values) within a 2D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 828
Multiple List timed_para_mark_abs_3d Command Function Moves the laser focus for the specified marking duration along a 3D vector from the current position to the specified position (absolute coordinate values) within the 3D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 829
Normal List timed_para_mark_rel Command Function Moves the laser focus for the specified marking duration along a 2D vector from the current position to the specified position (relative coordinate values) within a 2D Image Field and, simultaneously as well as linearly, changes the signal parameter selected by set_vector_control to the specified value.
Page 830
Multiple List timed_para_mark_rel_3d Command Function Moves the laser focus for the specified marking duration along a 3D vector from the current position to the specified position (relative coordinate values) within the 3D Image Field. Simultaneously varies the signal parameter selected by set_vector_control to the specified value.
Page 831
Ctrl Command transform Function Performs a backward transformation of individual position values. TransformErrorCode = transform( &Sig1, &Sig2, Ptr, Code ) Call Sig1 Parameters Parameter: to-be-transformed position value. As a pointer to a signed 32-bit value. Returned Returned parameter value: transformed position value. parameter As a signed 32-bit value.
Page 832
Ctrl Command transform Code Parameters If Bit #0 = 1, then only one of the two supplied position values is backward (cont’d) (cont’d) transformed as the z coordinate: Bit #1 = 0: The value supplied by Sig1 is backward transformed as the z coordinate.
Page 833
Ctrl Command transform • Because transform does not access any RTC6 board, calling it does not require explicit Comments (cont’d) access rights to a specific board. If both the upload_transform data and the queried data recorded by get_values get_waveform have been binarily stored on the PC, then offline operation of transform is also possible (then transform does not require the presence of an RTC6 board on the PCIe bus).
Page 834
Ctrl Command uart_config Function Configures the internal UART interface for the specified baud rate. RealBaudRate = uart_config( BaudRate ) Call BaudRate Parameters Baud rate. As an unsigned 32-bit value. Allowed value range: [160 Bd…12.8 MBd]. RealBaudRate Result Comments • uart_config extends rs232_config with a higher value range for the baud rate.
Page 835
Ctrl Command upload_transform Function Transfers from the RTC6 board to the PC all correction and transformation settings currently assigned to the scan system. UploadErrorCode = upload_transform( HeadNo, Ptr ) Call HeadNo Parameters Number of the scan head connector whose settings should be queried. As an unsigned 32-bit value.
Page 836
Ctrl Command upload_transform • In case of error (except for Bit #6 = 1), an error indication is stored at Ptr to indicate Comments (cont’d) that the data are erroneous. transform get_transform/get_transform_offset recognize this error information and ensure that the backward transformation is not executed (transform then generates a corresponding error code,...
Page 837
Ctrl Command verify_checksum Function Checks or creates the checksum of a correction file. verify_checksum( Name ) Call Name Parameters Name of the correction file. As a pointer to a \0-terminated ANSI string. Result Result of the test. As an unsigned 32-bit value. = 0: No error (the tested checksum is OK.).
Page 838
Normal List wait_for_1_axis Command Function “Fly Extension” Command: Waits until the value for the specified Mode has been exceeded or underrun. wait_for_1_axis( Value, Mode, WaitMode, LaserMode ) Call Value Parameters Value to be waited for. As a signed 32-bit value. Mode Mode from...
Page 839
Normal List wait_for_1_axis Command Comments • The following command calls are executed in the same way: (cont’d) – wait_for_1_axis( Value, EncoderNo + 19, Mode, 0 ) = wait_for_encoder_mode( Value, EncoderNo, Mode ) set_fly_2d session – wait_for_1_axis( Value, EncoderNo + 19, Mode+16, 0 ) = wait_for_encoder_mode( Value, EncoderNo, Mode ) set_fly_x/set_fly_y session...
Page 840
Multiple List wait_for_2_axes Command Function “Fly Extension” Command: Waits until the values for both modes (see Mode) are within or outside the specified range. wait_for_2_axes( ModeX, MinValueX, MaxValueX, ModeY, MinValueY, MaxValueY, Call WaitMode, LaserMode ) ModeX Parameters Mode from Table 4, page 261.
Page 841
Multiple List wait_for_2_axes Command Comments • LaserMode = 0: like before. (cont’d) • LaserMode > 0: The laser is switched off after a LaserOff Delay. • WaitMode is like Mode of wait_for_encoder_mode. • WaitMode and WaitMode+16 differentiate the galvanometer scanner movement set_fly_2d and set_fly_x/set_fly_y.
Page 842
Normal List wait_for_encoder Command Function Waits until the selected encoder counter has overstepped or understepped the specified count for the first time. wait_for_encoder( Value, EncoderNo ) Call Value Parameters Count. As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)].
Page 843
Multiple List wait_for_encoder_in_range Command Function Waits until both encoder counters simultaneously lie within the specified range (including limits). wait_for_encoder_in_range( EncXmin, EncXmax, EncYmin, EncYmax ) Call EncXmin Parameters Limit value. As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)]. EncXmax Like EncXmin (analogously).
Page 844
Multiple List wait_for_encoder_in_range_mode Command Function Waits until both encoder counters simultaneously lie within the specified range (including limits). wait_for_encoder_in_range_mode( EncXmin, EncXmax, EncYmin, EncYmax, Mode ) Call EncXmin Parameters Limit value. As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)].
Page 845
Normal List wait_for_encoder_mode Command Function Waits until the selected encoder counter has overstepped or understepped the specified count for the first time. wait_for_encoder_mode( Value, EncoderNo, Mode ) Call Value Parameters Count. As a signed 32-bit value. Allowed value range: [–2 …+(2 –1)].
Page 846
Normal List wait_for_encoder_mode Command Comments • The active Processing-on-the-fly mode determines whether the galvanometer scanners (cont’d) remain stationary during the wait or move in accordance with encoder changes, see Chapter 8.6.7 ”Synchronizing Processing-on-the-fly Applications”, page 252: They move with set_fly_2d, but otherwise remain stationary. ±...
Page 847
Normal List wait_for_mcbsp Command Function Waits until the input value at the McBSP interface has reached, overstepped or understepped the specified value for the first time. wait_for_mcbsp( Axis, Value, Mode ) Call Axis Parameters Selects which half-word of the input value is used for evaluation (see below). As an unsigned 32-bit value.
Page 848
Normal List wait_for_timestamp_counter Command Function Waits for a 32-bit “Timestamp Counter” value. wait_for_timestamp_counter( TimeStampCounter ) Call TimeStampCounter 32-bit offset to wait for. Parameters As an unsigned 32-bit value. Comments • wait_for_timestamp_counter waits until the current 32-bit “Timestamp Counter” has reached the value TimeStampStorage (from store_timestamp_counter...
Page 849
Normal List wait_for_timestamp_counter_long Command Function Waits for an absolute 64-bit “Timestamp Counter” value. wait_for_timestamp_counter_long( WaitCounterL, WaitCounterH, MaxWaitTime, Mode ) Call WaitCounterL Parameters Lower part of the 64-bit “Timestamp Counter” value to wait for. As an unsigned 32-bit value. WaitCounterH Upper part of the 64-bit “Timestamp Counter”...
Page 850
Normal List wait_for_timestamp_counter_mode Command Function Like wait_for_timestamp_counter. In addition, it can be defined what should happen after a timeout. wait_for_timestamp_counter_mode( TimeStampCounter, Mode ) Call TimeStampCounter 32-Bit offset to wait for. Parameters As an unsigned 32-bit value. Mode Routines after a timeout. As an unsigned 32-bit value.
Page 851
Ctrl Command write_8bit_port Function Writes a value to the 8-bit digital output port on the EXTENSION 2 socket connector. write_8bit_port( Value ) Call Value Parameters 8-bit output value (DATA0…DATA7). As an unsigned 32-bit value. Only the least significant 8 bits are evaluated. Comments •...
Page 852
Ctrl Command write_abc_to_file Function Like write_abc_to_file_20b. However, for a focus length value l in RTC4 compatibility range [–32,768…+32,767]. ErrorNo = write_abc_to_file( Name, A, B, C ) Call Name Parameters Like write_abc_to_file_20b. Coefficient A of the parabolic function z = A + Bl +Cl which is used for calculating the Z output values (focus length value l in the RTC4 compatibility range [–32,768…+32,767]).
Page 853
Ctrl Command write_abc_to_file_20b Function Writes the ABC values directly into a specified correction file on the PC. For a focus length value l in the RTC6 20-bit range [–524,288…+524,287]. ErrorNo = write_abc_to_file_20b( Name, A, B, C ) Call Name Parameters Name of the correction file.
Page 854
Ctrl Command write_da_1 Function See write_da_x. write_da_1( Value ) Call Value Parameters 12-bit output value for the ANALOG OUT1 analog output port. As an unsigned 32-bit value. Higher bits are ignored. Value = 0 corresponds to an output value of 0 V. Value = 2 –1 corresponds to an output value of 10 V.
Page 855
Ctrl Command write_da_2 Function See write_da_x. write_da_2( Value ) Call Value Parameters 12-bit output value for the ANALOG OUT2 analog output port. As an unsigned 32-bit value. Higher bits are ignored. Value = 0 corresponds to an output value of 0 V. Value = 2 –1 corresponds to an output value of 10 V.
Page 856
Ctrl Command write_da_x Function Writes an output value to one of the analog output ports of the RTC6. write_da_x( x, Value ) Call Parameters Number of the analog output port. As an unsigned 32-bit value. Allowed values: [1, 2] (1: ANALOG OUT1, 2: ANALOG...
Page 857
Delayed Short write_da_x_list List Command Function Like write_da_x, but a list command. write_da_x_list( x, Value ) Call Parameters Like write_da_x. Value Like write_da_x. • For x < 1 or x > 2, write_da_x_list is replaced with a Comments list_nop return code RTC6_PARAM_ERROR). (get_last_error •...
Page 858
Ctrl Command write_hi_pos Function Writes the specified values to the Flash Memory of the RTC6 board to be used as ASC reference values (= Home-In reference positions, not to confuse with Home-In positions). Result = write_hi_pos ( HeadNo, X1, X2, Y1, Y2 ) Call HeadNo Parameters...
Page 859
Ctrl Command write_hi_pos RTC4RTC6 New command. RTC5RTC6 Unchanged functionality. Version info Available as of DLL 600, OUT 600, RBF 600. get_hi_pos, get_auto_cal, auto_cal References Ctrl Command write_image_eth Function Standalone Functionality: Reads out data for automatic booting from a binary file on the PC and saves it to the NAND Memory.
Page 860
Ctrl Command write_io_port Function Writes a value to the 16-bit digital output port on the EXTENSION 1 socket connector. write_io_port( Value ) Call Value Parameters 16-bit output value (DIGITAL OUT0…DIGITAL OUT15). As an unsigned 32-bit value. Only the least significant 16 bits are evaluated. Comments •...
Page 861
Ctrl Command write_io_port_mask Writes those bits of Value specified by the Mask parameter to the 16-bit digital output port Function on the EXTENSION 1 socket connector. write_io_port_mask( Value, Mask ) Call Value Parameters 16-bit output value (DIGITAL OUT0…DIGITAL OUT15). As an unsigned 32-bit value.
Page 862
Undelayed write_port_list Short List Command Function Writes a value to a digital or analog output port. Call write_port_list( Port, Value, NoDelay ) Parameters Port Output port. As an unsigned 32-bit value. Allowed values: = 0: ANALOG OUT1 output port. See also Section ”12-Bit Analog Output Port 1 and 2”, page = 1: ANALOG OUT2...
Page 863
Undelayed write_port_list Short List Command • NoDelay is only relevant, if the SCANahead control mode on the RTC6 board has been Comments activated by set_scanahead_params. • write_port_list( NoDelay = 0 ) behaves (depending on Port) similar to: write_da_x_list – – write_8bit_port_list –...
Page 864
10.3 Unsupported RTC4/RTC5 Commands Some RTC4/RTC5 commands are not supported by the RTC6. Most of them can be replaced by RTC6 commands, see following tables. Ctrl Command dsp_start Support status This RTC4 command is not supported by the RTC6. RTC4RTC6 This command is not needed for normal operation.
Page 865
Ctrl Command select_list Support status This RTC4 command is not supported by the RTC6. RTC4RTC6 select_list(0) can be replaced by set_extstartpos(0), select_list(1) by Mem1 set_extstartpos(Mem1). Thereby, is the memory size of “List 1” (and the absolute start address of “List 2”). After initialization (with load_program_file), Mem1 is 4000, otherwise as set by config_list.
Page 866
11 Demo Programs • Currently the RTC6 Software Package does not contain demo programs. RTC6 boards Doc. Rev. 1.0.21 en-US 11 Demo Programs...
Page 867
12 Troubleshooting Problem Remedy PC does not boot Switch off the PC and check the following: • Check if the RTC6 board is correctly seated in the PCIe slot. Refer to the instructions in your PC manual. • Check for metal parts that may have fallen into the PC housing during installation.
Page 868
LaserOff, see Section ”Automatic Delay executed as intended. Adjustments”, page 155. • By get_overrun, you can check if overruns of the If the problems persist, contact SCANLAB. 10 µs clock cycle occurred, see Section ”Clock Overruns”, page 182. • By...
Page 869
13.4 Product Disposal SCANLAB is not held responsible: • when the product has been damaged through The RTC6 board can be returned to SCANLAB for a fee misuse or improper operation to be properly disposed of. • for RTC6 board repairs not performed by SCANLAB •...
Page 870
This declaration of conformity is issued under the sole responsibility of the manufacturer. This document, used for customer information, was issued electronically and is therefore valid without a signature. A signed version is part of the SCANLAB internal technical documentation. SCANLAB GmbH...
Page 871
14.2 Compliance with FCC Rules The RTC6 PCIe Board has been tested and found to comply with the limits for a Class A digital device, pursuant to part 15 of the FCC rules. These limits are designed to provide reasonable...
Page 872
15 Technical Specifications – RTC6 PCIe Board System Requirements Interfaces Windows PC with free PCI-Express slot Operating system With RTC6 Software SCANHEAD Connector Package V1.3.0: Connector 9-pin D-SUB connector Microsoft Windows 10, 8, (female) 7 as 32-bit or 64-bit version.
Page 873
2 bits, buffered • LOW level < 0.55 V • HIGH level > 3.8 V • Max. current load 20 mA • Reference (a) See footnote on page RTC6 boards Doc. Rev. 1.0.21 en-US 15 Technical Specifications – RTC6 PCIe Board...
Page 874
(see /START, /STOP of the • Reference LASER Connector) Other signals • BUSY OUT 5 V, TTL active-HIGH, max. 10 mA • +5 V max. 100 mA • Reference RTC6 boards Doc. Rev. 1.0.21 en-US 15 Technical Specifications – RTC6 PCIe Board...
Page 875
Analog input ports ANALOG IN0, ANALOG IN1 • Input voltage range 0 V…10 V • Input resistance > 5 k • ADC resolution 12 bit • Reference RTC6 boards Doc. Rev. 1.0.21 en-US 15 Technical Specifications – RTC6 PCIe Board...
Page 876
PCIe bus – Communication with the computer is by TCP/IP 16.1.1 RTC6 Ethernet Board vs. and UDP. RTC6 PCIe Board – Usage and – RTC6 Ethernet Boards work without Comparison RTC6 board driver. – The board does not need to be plugged into a...
Page 877
16.1.2 System Requirements Hardware • Shielded housing with: – Provisions for mechanical mounting, incl. Caution! mounting hardware – appropriate thermal coupling (cooling) of the • To avoid interference coupling and emissions, board never operate the RTC6 Ethernet Board without – Power outlet shielding (e.g.
Page 878
RTC6 PCIe Board”, page 44 Allows Standalone Functionality-related features RTC6 PCIe Board is (without suiting adapters) not to be used in laserDESK. suitable for RTC6 Ethernet Boards (because of Example: Booting an RTC6 Ethernet Board with a different connector plugs and pitch of the pins).
Page 879
16.2 Layout, Interfaces, Jumper Settings 16.2.1 Layout – Upper Side LASER SCANHEADs POWER Mounting hole EXTENSION 1 EXT.2 STEPPER SPI/ANA/UART Legend 1. LASER ....16-pin socket connector. To connect the laser. With digital and analog outputs. For details, see “LASER Socket Connector”, page 882.
Page 880
16.2.2 Layout – Lower Side Latch GND+5V Data7 Legend 12. Solder jumper field A ..To configure the level of the output signals at the EXTENSION 1 socket connector. For details, see “Solder Jumper Field A – Configuring Output Signal Level at EXTENSION 1 Socket Connector”, page 13.
Page 881
16.2.3 Dimensions and Connector Positions 17.2 17.2 28.2 28.2 Air circulation direction 72.3 89.7 102.9 114.6 Overall height: approx. 28 mm depending on the installed cooling element). RTC6 Ethernet Board V1.2. Dimensions and connector positions. All dimensions in mm. RTC6 boards Doc.
Page 882
”POWER Socket Connector”, page 887. With the Board, see Figure 72, number 1. RTC6 PCIe Board, GND is the PC ground. The pin-out is shown in Figure • A suitable 0.2 m cable (#116048) is available from SCANLAB, see also...
Page 883
08->12 07->04 ANALOG OUT2 Pin (14) Pin (15) 06->11 05->03 04->10 (a) With the RTC6 PCIe Board the ANALOG OUT2 signal is 03->02 02->09 additionally available at the MARKING ON THE FLY 01->01 socket connector. Pin 1 Pin 2 Input and Output Wiring Corresponds functionally to cable #116048 (l=0.2 m).
Page 884
SN74LVC1G126 SN74LVC1G126 LASER1 (01) (02) LASER2 On RTC6 boards without “DC/DC” option the signals are not galvanically decoupled and GND2 = GND. LASERON (03) (04) GND2 SN74LVC1G126 +3.3V +3.3V +3.3V +3.3V /START (05) (06) /STOP 74HC14 74HC14 SN74LVC3G34 SN74LVC3G34 BUSY OUT (07) (08) DIGITAL OUT1 +3.3V +3.3V...
Page 885
SCANHEAD and 2. SCANHEAD For further information, see Chapter 4.5 ”Interfaces socket connector of the RTC6 PCIe Board for the first to Scan System”, page scan head connector (pin (01)…pin (10)) and the second scan head-connector (pin (11)…pin (20)).
Page 886
Pin 20 20-> x 19->05 Wire 18->09 17->04 Scan head 2 16->08 or Z axis 15->03 / varioSCAN 14->07 13->02 12->06 11->01 10-> x 09->05 08->09 07->04 06->08 Scan head 1 05->03 04->07 03->02 02->06 01->01 Pin 1 Pin 2 Corresponds functionally to Y cable #116050 (l=0.2 m).
Page 887
16.2.6 POWER Socket Connector 16.2.7 ETH Connector The POWER socket connector has 2 pins. It is located The ETH connector is an 8P8C type RJ connector on the upper side of the RTC6 Ethernet Board, see (colloquially: RJ-45). It is located on the upper side of Figure 72, number 3.
Page 888
RTC6 PCIe Boards The relevant pin-outs are shown in Figure RS-232 Interface With RTC6 Ethernet Boards, the RS232 socket connector pins of the RTC6 PCIe Board are ANALOG IN0 (01) (02) ANALOG IN1 integrated to the SPI/ANA/UART socket connector.
Page 889
All signals are referenced to GND, see Notes, page 882. Notes Specifications and further information as with the RTC6 PCIe Board, Chapter 4.6.7 ”STEPPER MOTOR • Required parts for the mating connector are Socket Connector”, page not included in the scope of delivery: Manufacturer: Amphenol FCI ®...
Page 890
16.2.11EXTENSION 1 Socket Encoder Input Ports Connector As with RTC6 PCIe Board, see Section ”Encoder Input Ports”, page The EXTENSION 1 socket connector has 40 pins. It is located on the upper side of the RTC6 Ethernet External Control Signals...
Page 891
With the solder jumper field A on the lower side of The EXT. 2 socket connector has 10 pins. It is located the RTC6 Ethernet Board, the level of all output on the upper side of the RTC6 PCIe Board, see signals at the EXTENSION 1 socket connector Figure 72, number 8.
Page 892
Pin (06), (18), (25) LASER1 – Pin (22) 8-Bit Digital Output Port LASER2 – Pin (19) As with RTC6 PCIe Board, see Section ”8-Bit Digital Output Port”, page GND2 – Pin (23) Notes • Required parts for the mating connector are...
Page 893
The both socket connectors serve to synchronize the clock cycles of several RTC6 boards. (1) Make sure that the power supply is switched off. Connection cables are available from SCANLAB, see (2) First connect one RTC6 Ethernet Board to Figure page 66.
Page 894
16.2.14Jumper Settings Solder Jumper Field A – Configuring Output Signal Level at EXTENSION 1 Socket SCANLAB ships RTC6 Ethernet Boards in various Connector jumper configurations. The jumpers can be • Position on the board: lower side, see Figure reconfigured at a later time. See Chapter 2.7 ”Jumper...
Page 895
Solder Jumper Field B – Configuring pin (09) Allowed Output at the EXT. 2 of EXT. 2 Socket Connector jumper setting socket connector (cont’d) pin (09) • Position on the board: lower side, see Figure (cont’d) number 13. • Purpose: to configure the signal at +5 V Latch GND+5V Data7 pin (09) of the EXT.
Page 896
Solder Jumper Field C – Configuring pin (08) Allowed Output at the EXT. 2 of EXT. 2 Socket Connector jumper setting socket connector • Position on the board: lower side, see Figure pin (08) number 14. No signal. • Purpose: to configure the signal at pin (08) of the Latch GND+5V Data7 EXT.
Page 897
16.2.15Real-Time Clock Jumper Field ’Force DHCP’ • Position on the board: lower side, see Figure The RTC6 Ethernet Board features a real-time clock. number 11. If the board is without power, the clock continues to • Purpose: see the following table. run for about >...
Page 898
16.3 Installation and Operation Voltage RTC6 Ethernet supply RTC6 EtherBox 16.3.1 Hardware Installation – – RTC6 Ethernet RTC6 EtherBox – Notice! RTC6 Ethernet RTC6 EtherBox • Store the board in an electrostatically neutral – environment using the supplied anti-static bag. •...
Page 899
16.3.2 Software Installation For installing and starting-up an RTC6 Ethernet Board and its software proceed analogously as with RTC6 PCIe Boards, Chapter 5 ”Installation and Start- Up”, page 88. However, step 3, page 88 does not apply: RTC6 Ethernet Boards do not require the RTC6 board driver.
Page 900
16.4 Notes on Migrating Existing and Programming New RTC6 User Programs RTC6 Ethernet Boards must be registered manually to the RTC6 board management, see Chapter 16.5.3 ”About the RTC6 Board Management”, page 905 (init_rtc6_dll only searches RTC6 PCIe Boards). After that, RTC6 Ethernet Boards can used generally in the same way as RTC6 PCIe Boards.
Page 901
16.4.2 Example Code (C++): Initialization Covering RTC6 Ethernet Boards Abstract A console application to demonstrate how to initialize RTC6 boards Comment This application demonstrates how to properly intialize RTC6 boards. It will enumerate all available PCIe boards as well as search for Ethernet boards in a given subnet. Platform Win32 - 32 -bit Windows - 64 -bit Windows...
Page 902
// Load 2D correction file as table 1 const auto loadCorrection = n_load_correction_file(card, CORRECTION_FILE_PATH, 1, 2); if (loadCorrection != ERROR_NO_ERROR) cout << for card " << card << " failed with error code: " << loadCorrection << endl; "n_load_correction_file return false; // select_cor_table( 1, 0 );...
Page 903
// Search for and initialize Ethernet boards const auto ethSearchIP = eth_convert_string_to_ip(ETH_SEARCH_IP); const auto ethSearchNetmask = eth_convert_string_to_ip(ETH_SEARCH_NETMASK); const auto foundEthCards = eth_search_cards(ethSearchIP, ethSearchNetmask); if (foundEthCards > 0) for (auto searchCard = 1; searchCard <= foundEthCards; searchCard++) array<UINT, 16> cardInfo; eth_get_card_info_search(searchCard, (UINT)cardInfo.data()); const auto serialNumber = cardInfo[1];...
Page 904
16.5 RTC6 Ethernet Board 16.5.2 About Searching RTC6 Ethernet Boards Commands and Functions To search for all RTC6 Ethernet Boards available in the 16.5.1 Notes on Working with network, eth_search_cards can be used. If the IP Addresses search is to be limited to a certain address range only, then eth_search_cards_range is to be used.
Page 905
RTC6 Ethernet Boards”, page 904, can be entered RTC6 PCIe Board 3 at an arbitrary index. However, neither an RTC6 PCIe Board nor an RTC6 Ethernet Board “No card“ must be registered at this index Information on RTC6 Ethernet Board...
Page 906
16.5.4 Checking the Connection to 16.5.5 Command Set for the the RTC6 Ethernet Board RTC6 Ethernet Board In general, communication via Ethernet is more • See Chapter ”Control Commands for unreliable than PCIe bus connections within PCs RTC6 Ethernet Boards”, page 309.
Page 907
16.6 Safe Startup and Shutdown Sequences Caution! To assure safety during startup, switch on the • When the PC switches on or off, the components of the laser system in the following RTC6 Ethernet Board board output ports levels order: might briefly fluctuate, resulting in unintended changes to Laser Control...
Page 908
16.7 Standalone Functionality • The “Standalone Basic State“ is achieved by: – BIOS BIOS-ETH 26, store_program( 0 ) and set_eth_boot_control( 1 ) • In contrast to PC operation, the aim of the load_program_file call is not required. See also Standalone Operation Mode is that the Chapter 16.7.4 ”Boot Image”, page...
Page 909
16.7.1 Upgrading BIOS-ETH 16.7.2 Preparing the “Standalone Basic State“ Proceed as follows to upgrade the BIOS of an RTC6 Ethernet Board with BIOS-ETH 26 Proceed as follows to put the board to BIOS-ETH 38 only (no subsequent “Standalone Basic State“: Standalone Operation Mode):...
Page 910
16.7.3 Preparing the (7) Emergency provision in case an error occurs during saving: call set_eth_boot_control( 0 ). “Standalone Full State“ This prevents automatic booting. Proceed as follows to put the board to (8) Do one of the following: “Standalone Full State“: –...
Page 911
16.7.4 Boot Image Copying Boot Image to Board(s) • Prerequisites: see page 908. • Prerequisites: see page 908. Name write_image_eth( ) reads the file “Name“ and The data in the NAND Memory can be written to the writes its content to the NAND Memory.
Page 912
16.7.5 Control Commands Allowed for Automatic Booting • Only certain control commands are allowed in each boot phase, see table Chapter 16.7.6 ”Automatic Booting – Process in Detail”, page 914: – Boot Phase 1 – Boot Phase 2 • They meet one or more of the following criteria: –...
Page 914
16.7.6 Automatic Booting – Process in (3) In Boot Phase 1 (duration: some seconds): – The correction file(s) are read out Detail – Boot Phase 1-control commands are executed (1) After a Hardware Reset, the RTC6 Ethernet Board (in the order in which they have been saved). tries to read data for automatic booting from the If such commands are stored more than once, NAND...
Page 915
(5) In Boot Phase – The BUSY Pin is switched on – The RTC6 List Memory is read out (duration: approx. 1 minute) – Boot Phase 2-control commands are executed. – Initialization ceases – The BUSY Pin is switched off (6) After Boot Phase –...
Page 916
16.8 “High Performance Mode” With RTC6 Ethernet Boards, eth_set_high_performance_mode switches on (off) • “High Performance Mode” “High Performance Mode” is only effective with list commands. If it is switched on (Mode = 1), the RTC6 DLL no longer waits for a response from the RTC6 Ethernet Board after each telegram.
Page 917
16.9 Remote Interface Mode 16.9.1 Prerequisites for Remote Interface Mode Remote Interface Mode serves to control • RTC6 Software Package V1.16.0 RTC6 Ethernet Boards without RTC6 DLL • The RTC6 Ethernet Board is equipped with For this purpose Command Telegrams are sent via the ...
Page 918
16.9.3 Enabling 16.9.4 Disabling Remote Interface Mode Remote Interface Mode Temporarily (1) Configure the RTC6 Ethernet Board for Standalone Operation Mode Remote Interface Mode can be disabled “Standalone Full State“, see Chapter 16.7.3 temporarily – until the next Hardware Reset. ”Preparing the “Standalone Full State“”, In this state, the RTC6 Ethernet Board can be 910.
Page 919
16.9.5 Disabling 16.9.6 Error Codes for Remote Interface Mode get_error/get_last_error Permanently Occurring in Remote Interface Mode Only The RTC6 Ethernet Board is reset to “Standalone Full State“ when the Bit #31 (invalid Command Telegram) is set in Remote Interface Mode is permanently disabled.
Page 920
16.9.7 About C++ Remote Interface C++ Remote Interface Wrapper provides a similar interface to RTC6impl.h and RTC6impl.hpp. Wrapper Signatures of the wrapper functions (in The total functionality from rtc6_rif_wrapper.h) and RTC6 DLL are largely the rtc6_rif_wrapper.cpp • same. (Source file for C++ Remote Interface Wrapper) Only in the C++ Remote Interface Wrapper...
Page 921
To Use C++ Remote Interface Wrapper: (1) Create a derived class of NetworkAdapter. (2) Create a datagram socket (UDP) with the IP address of the desired RTC6 Ethernet Board and port 63750 (3) Implement the platform specific socket send recv functionality in the virtual functions / select.
Page 922
This declaration of conformity is issued under the sole responsibility of the manufacturer. This document, used for customer information, was issued electronically and is therefore valid without a signature. A signed version is part of the SCANLAB internal technical documentation. SCANLAB GmbH...
Page 923
16.10.2Compliance with FCC Rules 16.10.3TI-RTOS The RTC6 Ethernet Board has been tested and found TI-RTOS is used in the RTC6 Ethernet Board. to comply with the limits for a Class A digital device, TI-RTOS is licenced under the BSD licence: pursuant to part 15 of the FCC rules.
Page 924
16.11Technical Specifications – RTC6 Ethernet Board Interface to the Network Ethernet Gigabit Ethernet (preferred), 10/100 Mbit/s System Requirements Ethernet Windows PC with Ethernet interface IP address obtaining • By a DHCP server (Gigabit Ethernet (preferred), 10/100 Mbit/s • Link-local address Ethernet) (as of BIOS...
Page 925
Digital input ports 2 Bits (Accessory): • LOW level < 0.6 V XY2-100 protocol • HIGH level > 2.3 V RTC6 PCIe Board. (a) Not as with • Max. input voltage –0.5 V…+5.5 V range • Input resistance > 4.7 k (pull-up) •...
Page 926
LASER Socket Connector (cont’d) EXTENSION 1 Socket Connector Input ports for external TTL active-LOW, internally Connector 40 pin socket connector start and stop signals connected to +3.3 V by with 2.00 mm pitch of the pull-up resistors (4.7 k) pins Output signal level is •...
Page 927
(b) pin (08) of RTC6 Ethernet Boards = pin (15) of RTC6 PCIe Boards. (a) With RTC6 PCIe Boards: 16 pin socket connector with RTC6 PCIe Board. (c) Not as with 2.54 mm pitch of the pins. Furthermore, the printed (d) With RTC6 PCIe Boards: LASER1 and LASER2.
Page 928
Connector 10 pin socket connector socket connector pins and McBSP/ANALOG with 2.00 mm pitch of the socket connector pins of the RTC6 PCIe Board are pins. integrated into the SPI/ANA/UART socket connector. Signals for controlling up to two stepper motors:...
Page 929
SCANLAB V1.2 STEPPER MOTOR LASER RS232 McBSP/ANALOG SCANHEAD RTC6 PCIe Board UFPM Extension Board: Assembly with the Note: The Second Scan Head Slot Cover (Accessory) (#115132) cannot be used. RTC6 boards Doc. Rev. 1.0.21 en-US 17 Appendix B: The UFPM Extension Board...
Page 930
1 ..J1. 30-pin socket for connecting to the 26-pin EXTENSION 2 socket connector of the RTC6 PCIe Board. The outer 4 pins of connector J1 are unconnected and only serve to prevent misaligned insertion of the board.
Page 931
UFPM Extension Board are shown in values at the 8-bit digital output of the Figure 92. Potentiometer P3 lets you fine-tune the RTC6 PCIe Board, EXTENSION 2 socket connector. exact voltage amplitude, see Figure To enable outputting of (complete) pixel values as...
Page 932
18 Appendix C: The RTC6 EtherBox Do not obstruct air circulation! Do not obstruct air circulation! Suitable for top hat rail complying to EN 60715 221.5 mm RTC6 EtherBox. Dimensions. For example, #148520. RTC6 boards Doc. Rev. 1.0.21 en-US 18 Appendix C: The RTC6 EtherBox...
Page 934
119.6 107.92 95.5 94.6 POWER Air circulation direction 33.2 22.19 11.2 Legend 1. Force DHCP..Jumper field Jumper field to ignore or not to ignore the saved static IP address. Details like “Jumper Field ’Force DHCP’”, page 897.
Page 935
RTC6 EtherBox are never closed or the built-in RTC6 Ethernet Board (see Figure covered. that are not connected by SCANLAB to connectors on the housing of the RTC6 EtherBox. • Use the top-hat rail bracket on the backside, see Figure 93, to hang the RTC6 EtherBox in a top hat •...
Page 936
18.3 Installation and Operation • When installing the RTC6 Ethernet Board, a static IP address must be obtained. For that, you have to set the jumper field Force DHCP on the RTC Ethernet board. (1) Make sure that the RTC6 EtherBox is disconnected from the power supply.
Page 937
This declaration of conformity is issued under the sole responsibility of the manufacturer. This document, used for customer information, was issued electronically and is therefore valid without a signature. A signed version is part of the SCANLAB internal technical documentation. SCANLAB GmbH...
Page 938
18.4.2 Compliance with FCC Rules 18.5 Technical Specifications – RTC6 EtherBox The RTC6 EtherBox has been tested and found to comply with the limits for a Class A digital device, pursuant to part 15 of the FCC rules. Dimensions These limits are designed to provide reasonable Figure protection against harmful interference when the RTC6 EtherBox is operated in a commercial...
Page 940
RTC6 Software BIOS BIOS-ETH Date Package Version 1.13.0 2022-02-18 1.14.1 2022-07-22 1.15.0 2022-09-16 1.15.2 2022-11-24 1.15.3 2022-12-22 1.15.4 2023-01-20 1.15.5 2023-02-15 1.16.0 2023-03-01 (a) See Table page (b) RTC6BIOSOUT_*.out, see page (c) RTC6BIOSETH_*.out, see page (d) Cannot be updated by users or version cannot be read out. RTC6 boards Doc.
Page 941
20 Appendix E: iDRIVE Scan Systems – Control Commands and Signals Transmitted to RTC Boards • For usage, see control_command. • Example: control_command( Data 0501 that is, Code (SetMode) and HIGH Code requests that the iDRIVE scan system should change the data type to be transmitted to “actual position”.
Page 942
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. XY2-100 status word 16-bit 20-bit protocol protocol Bit #15 Bit #19 Like [Bit #7|Bit #11]. (MSB) (MSB) = 1: The scan system servo control is ready for input data (“PowerOK”, actually corresponds to a “ServoOK”).
Page 943
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Actual position (angular position of galvanometer scanners) 16-bit 20-bit protocol protocol Bit #0 Bit #0 Unit with 16-bit protocol: In bits. Value range with 16-bit protocol: [–32.768…+32.767].
Page 944
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Position error (= set position 0502 – actual position 0501 As of scan system firmware 5050. With excelliSCAN scan heads: Trajectory Error.
Page 945
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Relative galvanometer scanner control Not intellicube. 16-bit 20-bit protocol protocol Bit #0 Bit #0 Unit with 16-bit protocol: In per mille. Value range with 16-bit protocol: [–1,000…+1,000].
Page 946
Code Code Data type transmitted by the scan system HIGH (hex) (hex) Reserved. 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information. May be incomplete or even incorrect for your scan system. Always consult the dedicated scan system manual! Module Rev.1.0.4 en-US Code...
Page 947
Code Code Data type transmitted by the scan system HIGH (hex) (hex) Reserved. 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information. May be incomplete or even incorrect for your scan system. Always consult the dedicated scan system manual! Module Rev.1.0.4 en-US Code...
Page 948
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Only intelliWELD with varioSCAN FCi. Not: intelliWELD with varioSCAN FC: Actual z axis position Can only be read out from the channel of the scan head connector to which the z axis is connected.
Page 949
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Servo board temperature As of scan system firmware 5050. Axis 1 (X-axis): Temperature of the servo board Axis 2 (Y-axis): Temperature of the servo add-on board for evaluating the encoder signals 16-bit 20-bit...
Page 950
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. core supply voltage 16-bit 20-bit protocol protocol Bit #0 Bit #0 Unit with 16-bit protocol: In 10 Value range with 16-bit protocol: [–32.768…+32.767]. …...
Page 951
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Analog section voltage 16-bit 20-bit protocol protocol Bit #0 Bit #0 Unit with 16-bit protocol: In 10 Value range with 16-bit protocol: [–32.768…+32.767]. …...
Page 952
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. AGC current (PD supply current) 16-bit 20-bit protocol protocol Bit #0 Bit #0 Unit with 16-bit protocol: In mA. Value range with 16-bit protocol: [–32.768…+32.767]. …...
Page 953
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Relevant for scan systems with galvanometer scanner heating. Relative heating output of the corresponding galvanometer scanner heater Not relevant for intellicube. Not relevant for dynAXIS XS.
Page 954
Module Rev.1.0.4 en-US Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. SCANLAB article number, lower 16 bits 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: None.
Page 955
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. SCANLAB article number, upper 16 bits 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: None. Value range with 16-bit protocol: [0…65,535].
Page 956
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Calibration angle Mechanical scan angle (±) for 96% of the maximum or minimum control value. With 16-bit protocol ±31457 bit. With 20-bit protocol ±503316 bit. 16-bit 20-bit protocol...
Page 957
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Wavelength 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: In nm. Value range with 16-bit protocol: [0…65,535]. …...
Page 958
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2078. Only after control_command(Data = 17FF ): number of the temporarily stored data type 16-bit 20-bit protocol protocol Bit #8 Bit #12 = 0.
Page 959
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan-system firmware 2060. Diagnostic flags, lower 16 bits 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information. May be incomplete or even incorrect for your scan system. Always consult the dedicated scan system manual! Module Rev.1.0.4 en-US Code...
Page 960
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 2001. Stop event code Value range with 16-bit protocol: [0…65,535]. Value range with 20-bit protocol: [0…65,535]. 16-bit 20-bit protocol protocol (hex) (hex) 0001 00010 The galvanometer scanner has reached a critical edge...
Page 961
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan-system firmware 2060. Flags from last stop event, lower 16 bits 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information.
Page 962
Code Code Data type transmitted by the scan system HIGH (hex) (hex) Reserved. 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information. May be incomplete or even incorrect for your scan system. Always consult the dedicated scan system manual! Module Rev.1.0.4 en-US Code...
Page 963
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan-system firmware 2061. Running time (seconds) 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: In s. Value range with 16-bit protocol: [0…59]. …...
Page 964
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan-system firmware 2061. Running time (hours) 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: In h. Value range with 16-bit protocol: [0…23]. …...
Page 965
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 206x. Only intelliWELD: 3.3 V sensor board operating voltage 16-bit 20-bit protocol protocol –3 Bit #0 Bit #4 Unit with 16-bit protocol: In 10 Value range with 16-bit protocol: [0…7,000].
Page 966
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 206x. Only intelliWELD: Purge gas flow rate 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: [(purge gas flow rate – 4 l/min) * 109,89 min/l].
Page 967
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 206x. Only intelliWELD: [Temperature of mirror 1 + 26.6 °C] 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: In 0.05 °C. Value range with 16-bit protocol: [0…1,992].
Page 968
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 206x. Only intelliWELD: Collimator temperature 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: In 0.05 °C. Value range with 16-bit protocol: [0…2,250]. …...
Page 969
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 206x. Only intelliWELD: [Coolant-flow rate + 0.93 l × min 16-bit 20-bit protocol protocol Bit #0 Bit #4 Unit with 16-bit protocol: In 0,00525 l × min-1. Value range with 16-bit protocol: [0…2,250].
Page 970
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 206x. Only intelliWELD: Flags sensor board Value range with 16-bit protocol: [0…65,535]. Value range with 20-bit protocol: [0…65,535]. 16-bit 20-bit protocol protocol Bit #15 Bit #19 = 1:...
Page 971
Code Code Data type transmitted by the scan system HIGH (hex) (hex) Reserved. 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information. May be incomplete or even incorrect for your scan system. Always consult the dedicated scan system manual! Module Rev.1.0.4 en-US Code...
Page 972
Code Code Data type transmitted by the scan system HIGH (hex) (hex) As of scan system firmware 5000. Supply voltage (usually 30 V or 48 V) 16-bit 20-bit – protocol protocol Bit #0 Bit #0 – … … Bit #15 Bit #19 Notice! Generic information.
Page 973
“excelliSCAN Scan Heads – Functional Principle of SCANahead Servo Control and Operation by RTC6 Boards” Manual, Chapter 3.4 ”Advanced Settings 25: TimeShift relative to the SCANLAB default for “Spot Distance Control””, page offset. Notice! Generic information. May be incomplete or even incorrect for your scan system.
Page 974
Code HIGH (hex) As of scan system firmware 2078. UpdatePermanentMemory UpdatePermanentMemory causes the scan system to set the current servo behavior as the startup behavior for subsequent restarts or resets. See also Chapter 8.1.8 ”Configuring the Start Behavior”, page 223.
Page 975
Code HIGH (hex) As of scan system firmware 206x. SetControlDefinitionMode SetControlDefinitionMode causes the scan system to transmit information about a specific tuning (or the corresponding control algorithm) over the selected status channel. See also “On SetMode, SetControlDefinitionMode and SetEchoMode”, Seite 982.
Page 976
Code HIGH (hex) As of scan system firmware 2078. SelectControlDefinition Only scan systems equipped with several tunings (or corresponding servo algorithms). SelectControlDefinition causes the scan systems to switch to a certain tuning. See also Chapter 8.1.4 ”Selecting the Tuning (Dynamics Setting)”, page 216.
Page 977
Code HIGH (hex) As of scan system firmware 2072. SetPositionScale SetPositionScale causes the scan system to switch to a certain scaling factor. The scan system servo electronics multiplies the position values received from the RTC board by this scaling factor. See also Chapter 8.1.7 ”Configuring the Effective Calibration”, page 222.
Page 978
Code HIGH (hex) As of scan system firmware 2066. SetPosAcknowledgeLevel SetPosAcknowledgeLevel causes the scan system to switch to a certain PosAck limit value. See also Chapter 8.1.6 ”Configuring the PosAck Limit Value”, page 222. See also “On SetPosAcknowledgeLevel”, Seite 983.
Page 979
Code HIGH (hex) As of scan system firmware 2078. SetEchoMode SetEchoMode verifies whether data transfer is intact. See also Chapter 8.1.9 ”Fault Diagnosis and Functional Test”, page 223. SetEchoMode passes an 8-bit value to the scan system with Code .
Page 980
Code HIGH (hex) As of scan system firmware 5102 + 5112. Only excelliSCAN: ResetTrAck ResetTrAck causes the scan system to reset the TrAck Signal bits. Refer to “excelliSCAN Scan Heads – Functional Principle of SCANahead Servo Control and Operation by RTC6 Boards”...
Page 981
Code HIGH (hex) As of scan system firmware 51*7 + < 5090. High-Bandwidth Return Channel Multiplexing. For use in conjunction with Code HIGH (hex) 0574 . See corresponding Chapter incl. example code. Code (hex) Sets Return Channel Multiplexing block length to N+1 that is, highest Return Channel Multiplexing index = N.
Page 982
Comments (RTC6) XY2-100 status word only if this signal has been previously selected to be returned from • The scan system firmware a.bb.c is read as abbc, the scan system by control_command, see for example, 5100 corresponds to version 5.10.0, also Section ”Reading Out Data”, page 213.
Page 983
If other limit values are desired, they must be separately set for each axis (Code HIGH SCANLAB recommends setting only limit values (Code ) > 14 (that is, 0.03% of the full position range). Lower values can lead to...
Page 984
21 Appendix F: Change Index The following are changes in this manual due to the technical evolution of the product as well as significant editorial changes. In this Chapter: • Changes to Document Revision 1.0.0 en-US from Document Revision 0.0, Seite 985 •...
Page 985
Changes to Document Revision 1.0.0 en-US from Document Revision 0.0 Where What Global Initial Document-Revision. Document Revision • 1.0.0 en-US applies to RTC6 Software Package • V1.5.0 Appendix F: Change Index, page 984 (a) See also RTC6_Software_RevisionHistory_<Date>_<Rev>.pdf. Changes to Document Revision 1.0.1 en-US from Document Revision 1.0.0 en-US...
Page 986
Changes to Document Revision 1.0.2 en-US from Document Revision 1.0.1 en-US Where What Global Document Revision • 1.0.2 en-US applies to RTC6 Software Package • V1.6.0 iSCANcfg6.exe is replaced in the Section ”Folder iSCANCfg”, page 32 Software change. RTC6 Software Package by the generic iSCANcfg.exe. Chapter 7.4.1 ”Enabling, Activating and Editorial change.
Page 987
Changes to Document Revision 1.0.3 en-US from Document Revision 1.0.2 en-US Where What Global Document Revision • 1.0.3 en-US applies to RTC6 Software Package • V1.6.1 Global Editorial change. The previously used term “Online Positioning“ (due to the introduction of “Global Online Positioning“) now reads - where applicable - “Local Online...
Page 988
Where What (cont’d.) (cont’d.) set_mcbsp_global_x_list, page 688 Software change. New command. set_mcbsp_global_y, page 689 Software change. New command. set_mcbsp_global_y_list, page 689 Software change. New command. store_timestamp_counter, page 801 Software change. New command. store_timestamp_counter_list, page 801 Software change. New command. wait_for_1_axis, page 838 Software change.
Page 989
Changes to Document Revision 1.0.4 en-US from Document Revision 1.0.3 en-US Where What Global Document Revision • 1.0.4 en-US applies to RTC6 Software Package • V1.7.0 New file. Section ”Folder RTC6 Tools”, page 34 Software change. BIOS-ETH 26 is a prerequisite for using the Standalone Functionality.
Page 990
Changes to Document Revision 1.0.5 en-US from Document Revision 1.0.4 en-US Where What Global Document Revision • 1.0.5 en-US applies to RTC6 Software Package • V1.7.5 Chapter 4.6.1 ”LASER Connector”, page 73 Editorial enhancement. Note for laserDESK users on external documents.
Page 991
Changes to Document Revision 1.0.6 en-US from Document Revision 1.0.5 en-US Where What Global Document Revision • 1.0.6 en-US applies to RTC6 Software Package • V1.7.6 Section ”Folder RTC6 Files”, page 33 Software change. Other internal structure of the RTC6 Software Package as well as more files. get_startstop_info, page 426 Software change.
Page 992
Changes to Document Revision 1.0.8 en-US from Document Revision 1.0.7 en-US Where What Global Document Revision • 1.0.8 en-US applies to RTC6 Software Package • V1.7.8 Chapter 8.12 ”Time Measurements”, Editorial enhancement. 64-bit “Timestamp Counter”. page 281 get_timestamp_long, page 436 Software change.
Page 993
Changes to Document Revision 1.0.10 en-US from Document Revision 1.0.9 en-US Where What Global Document Revision • 1.0.10 en-US applies to RTC6 Software Package • V1.7.11 Chapter 7.4.11 ”Pulse Synchronization Software change. Mode”, page 208 Chapter 8.2 ”Coordinate Transformations”, Editorial enhancement. Notes on data recording, page 226.
Page 994
Chapter 14.1 ”EU Declaration of Conformity Editorial change. Replaces Chapter “Compliance with EC – RTC6 PCIe Board”, page 870 Directive for Electromagnetic Compatibility (EMC)”. Chapter 16.10.1 Editorial change. Replaces Chapter “Compliance with EC ”EU Declaration of Conformity Directive for Electromagnetic Compatibility (EMC)”.
Page 995
Changes to Document Revision 1.0.14 en-US from Document Revision 1.0.13 en-US Where What Global Document Revision • 1.0.14 en-US applies to RTC6 Software Package • V1.9.0 Section ”Subfolder Linux”, page 33 Software change. New subfolder. Section ”Folder RTC6 Tools”, page 34 Software change.
Page 996
Changes to Document Revision 1.0.15 en-US from Document Revision 1.0.14 en-US Where What Global Document Revision • 1.0.15 en-US applies to RTC6 Software Package • V1.9.0 Chapter 2.10 ”Notes for RTC4 Users”, page 48 Editorial enhancement. Encoder counter direction of RTC4 boards, see Notice!, page control_command, page 346...
Page 997
Changes to Document Revision 1.0.16 en-US from Document Revision 1.0.15 en-US Where What Global Document Revision • 1.0.16 en-US applies to RTC6 Software Package • V1.11.0 Chapter 1 ”About this Manual”, page 24 Editorial change. Section ”Folder RTC6 Tools”, page 34 Software change.
Page 998
Changes to Document Revision 1.0.17 en-US from Document Revision 1.0.16 en-US Where What Global Document Revision • 1.0.17 en-US applies to RTC6 Software Package • V1.11.0 Chapter 2.8.6 ”Slot Cover with 15-pin D-SUB Editorial enhancement. #130209. Connector and 9-pin D-SUB Connector”, page 46 Chapter 16.3.1 ”Hardware Installation”, Editorial change.
Page 999
Changes to Document Revision 1.0.18 en-US from Document Revision 1.0.17 en-US Where What Global Document Revision • 1.0.18 en-US applies to RTC6 Software Package • V1.12.0 Chapter 1 ”About this Manual”, page 24 Editorial change. Section ”Folder RTC6 Tools”, page 34 Software change.
Page 1000
Changes to Document Revision 1.0.19 en-US from Document Revision 1.0.18 en-US Where What Global Document Revision • 1.0.19 en-US applies to RTC6 Software Package • V1.13.0 Chapter 1 ”About this Manual”, page 24 Editorial change. Section ”Folder RTC6 Tools”, page 34 Software change.
Need help?
Do you have a question about the RTC6 PCIe Board and is the answer not in the manual?
Questions and answers