Introduction To Xps Programming - Newport XPS-Q8 Users Manual, Software Tools And Tutorial

Universal high-performance motion controller/driver
Hide thumbs Also See for XPS-Q8:
Table of Contents

Advertisement

XPS-Q8 Controller
18.0

Introduction to XPS Programming

For advanced applications and repeating tasks, it is usually better to sequence different
functions in a program rather than executing them manually via the web site interface.
Motion process programs can be written in different ways, but essentially are
distinguished between host-managed and XPS-managed processes. A host-managed
uses the Ethernet TCP/IP interface from a PC to control the XPS. The XPS-managed
process is controlled directly by the XPS controller via a TCL script.
The chapter provides a brief introduction of the different ways of programming the
XPS. This section, however, cannot address all details. For further information, refer to
the TCL and the software drivers manual of the XPS controller which are accessible via
the XPS web site.
Host-managed processes
Host-managed processes are recommended for applications that require a lot of data
management or a lot of digital communication with other devices other than the XPS
controller. In this case, it is more efficient to control the process from a dedicated
program that runs on a PC and which sends (and receives) information to (and from) the
XPS controller via the Ethernet TCP/IP communication interface. Communication to
the XPS controller can be established from almost any PC and is independent of the
PC's operating system (Windows, Linux, Unix, Mac OS, etc.) and programming
language (LabVIEW, C++, C, Python, Matlab, VisualBasic, Delphi, etc.). The XPS
controller supports the development of host-managed processes with a Windows
communication DLL, a complete set of LabVIEW drivers and a number of example
programs in C++, VisualBasic and LabVIEW. A few basic examples are provided in
this section. For more details, please refer to the Software Drivers Manual.
XPS-managed processes (TCL)
The XPS controller is also capable of controlling processes directly using TCL scripts.
TCL stands for Tool Command Language and is an open-sourced, object oriented,
command language. With only a few fundamental constructs, it is very easy to learn and
it is almost as powerful as C. Users of the XPS can use TCL to write a complete
application code with any function. The TCL script can be executed in real time but in
the background, utilizing time that the controller does not need for servo or
communication. Multiple TCL programs run in a time sharing mode. To learn more
about implementing TCL, refer to the TCL Manual which is accessible from the web
site of the XPS controller.
The advantages of XPS-managed processes compared to host-managed processes are
faster execution and better synchronization in many cases without any time taken from
the communication link. XPS-managed processes or sub-processes are particularly
valuable for repeating tasks, tasks that run in a continuous loop, and tasks that require a
lot of data from the XPS controller. Examples include: anti-collision processes
(processes that utilize security switches to stop motion when stages are in danger of
collision); tracking, auto-focusing or alignment processes (processes that use external
data inputs to control the motion); or custom initialization routines (processes that must
constantly be executed during a system's use).
The XPS controller has real-time multi-tasking functionality, and with most applications
there is not only a choice between a host-managed or an XPS-managed process, but also
a recognition of splitting the application into the right number of sub-tasks, and defining
the most efficient process for each sub-task. An efficient process design is one of the
main challenges with today's most complex and critical applications in terms of time
and precision. It is recommended to spend time thinking about the proper process
definition and the best approach to control the XPS using a program.
However, not all details can be addressed in this chapter.
197
XPSDocumentation V1.4.x (EDH0301En1060 — 10/17)
Motion Tutorial

Advertisement

Table of Contents
loading

Table of Contents