Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
medusa multi-device controller
operating manual
2
Contents 1 Introduction .......................................................................................... 3
1.1 Medusa ........................................................................................ 3
1.2 Medusa highlights ....................................................................... 3
1.3 Standards .................................................................................... 3
2 Interfaces device input [device side] .................................................. 4
2.1 USB host connection interface with trigger in/out ....................... 4
3 Interfaces device output [system side] ............................................... 5
3.1 Power connections ...................................................................... 5
3.2 USB host connection interface .................................................... 5
3.3 Ethernet interface ........................................................................ 5
3.4 RS232 interface .......................................................................... 5
3.5 Trigger in/out ............................................................................... 6
4 Communications protocol .................................................................... 7
4.1 USB ............................................................................................. 7
4.2 RS232 ......................................................................................... 7
5 Device drivers ...................................................................................... 8
5.1 USB ............................................................................................. 8
5.2 RS232 ......................................................................................... 8
6 Command set description ................................................................... 9
6.1 Commands .................................................................................. 9
6.2 Sending commands to attached devices .................................... 9
6.3 Command structure ..................................................................... 9
6.4 System commands ...................................................................... 9
6.5 Device selection commands ..................................................... 10
6.6 User EEPROM commands ....................................................... 11
6.7 Returned results ........................................................................ 11
7 Measurement example ...................................................................... 12
3
1 Introduction
1.1 Medusa The Medusa smart device controller platform is designed to operate
multiple Admesy devices. It allows our customers to control up to 16
multiple units at once vastly increasing measurement options. All Admesy
products are supported and can be used together with the Medusa
controller series.
Connected devices can be divided into groups and controlled via their
unique device ID which allows for both single device measurements and
multiple device measurements. Besides these benefits the Medusa is
particularly interesting for use in difficult environments such as vacuum
chambers where a reduced number of outgoing connections is desired.
1.2 Medusa highlights
Simultaneous measurement up to 4, 8, 12 or 16 devices
USB ports 500mA compliant as required by USB specifications
Trigger in- & out connectors
Combine different types of measurement in an instance
Build in operating system taking care of handling all device actions
Medusa runs an operating system inside that takes care of
handling all device actions. End-users operate all connected
devices acting as a single device. This simplifies production line
or machine integration more convenient. Also unit replacement
becomes much easier.
1.3 Standards The Medusa is compliant to the USBTMC standard and can be used in
combination with external provided USBTMC compliant drivers. Currently
it has been tested on Windows, Linux and Apple OSX using NI VISA
(www.ni.com/visa). On Linux our USBTMC devices work now directly with
a kernel >=2.6.28. This is Admesy's preferred driver structure for Linux.
Alternatively there's an open-source driver provided by Agilent
(www.home.agilent.com/upload/cmc_upload/All/usbtmc.html) on Linux
(i686, x86_64 and ARM).
4
2 Interfaces device input [device side]
2.1 USB host connection interface with trigger
in/out The USB host connections are the ports to connect the Admesy devices to
(e.g. MSE, Asteria, Hyperion, etc.). These ports are full speed ports and
each port is also equipped with trigger in and outputs for synchronised
operation and even faster measurement. The USB Host connections can
be used to attached any USB device. At the moment, the Medusa only
supports USBTMC devices.
Manufacturer Part number Description Type
Tyco electronics 1051638-1 Straight cable plug
Solder
Tyco electronics 1052063-1 Right angle cable plug
Solder
Tyco electronics 1050721-1 Straight cable plug
Clamp
Tyco electronics 1051140-1 Right angle cable plug
Clamp
Table 1 Trigger connector manufacturer information.
Fig 1 Medusa connections on input side, either 4, 8, 12 or 16 ports. Picture shows 8 port Medusa.
5
3 Interfaces device output [system side]
3.1 Power connections The Medusa should be connected to the supplied power supply. Admesy
can only guarantee stable measurement results and CE compliance when
using the supplied adapter.
3.2 USB host connection interface The USB-B connector is used to connect the Medusa to a PC/Laptop. The
Medusa complies to the USBTMC class protocol and can therefore be
used directly with third party provided VISA compliant libraries like
NI-VISA.
3.3 Ethernet interface Ethernet on Medusa uses port 10001 for communication. The commands
send to this socket are equal to the USB commands. The Ethernet
connector is used to connect the Medusa to any device that supports
Ethernet. The Medusa complies to the IEEE 802.3 standard and can
therefore be used directly with every system that supports the TCP/IP
protocol. The following table shows the Ethernet port configuration.
IP Address Port number
Termination character transmit
Termination character receive
Default = 192.168.0.50
10001 LF = '\n' CR+LF = '\r\n'
Table 2 Ethernet port configuration.
3.4 RS232 interface RS232 is provided to connect the Medusa to any host that doesn't provide
USB/Ethernet or for which no drivers exist. The following table shows the
RS232 port configuration.
Baud rate
Data bits Parity Stop bits Flow control
Termination character
115200 8 None 1 None LF=’\n’ Table 3 RS 232 port configuration.
Fig 2 Medusa connections on output side showing Ethernet, USB, RS 232, trigger in- & out and DC power connections.
6
3.5 Trigger in/out The Steropes LED light source can be triggered when operating in USB,
RS232 or stand-alone mode. In stand-alone mode, the configured
measurement will be carried out once a trigger arrives. When triggering is
enabled, the trigger output line will be set to a high level once the light
source is stable. Trigger signals are edge triggered and should comply to
the following diagram.
Fig 3 Trigger-in timing.
Trigger pulses arriving faster than the Medusa can measure will be
ignored, but it may slowdown overall performance. Trigger pulses should
not arrive faster than the measurement takes to complete. The best way is
to use the trigger output to make sure measurement was finished.
The trigger out port provides a continuous high signal when the device is in use. Its signal turns low when the device is not executing any commands.
Manufacturer Part number Description Type
Tyco electronics 1051638-1 Straight cable plug
Solder
Tyco electronics 1052063-1 Right angle cable plug
Solder
Tyco electronics 1050721-1 Straight cable plug
Clamp
Tyco electronics 1051140-1 Right angle cable plug
Clamp
Table 4 Trigger connector manufacturer information.
𝑡 > 5𝜇𝑠
7
4 Communications protocol
4.1 USB Medusa can be connected to any USB host that runs Windows, Linux or
Apple OSX. Medusa is a USBTMC compliant device. This makes the
Medusa directly usable in programming languages like NI's Labview and
Labwindows or any other language (Visual studio) that supports USBTMC.
Medusa announces itself to the host via USB vendor, device ID and serial
number.
Medusa (USBTMC device driver , Vendor ID : 0x23CF, Product ID 0x0E9D)
When the Medusa is connected to the host, it will start the Medusa
firmware. As soon as the firmware is idle to receive commands, the Power
LED goes to the on state (red led is on). The Medusa is a USB 2.0 High
and Full speed device. When connected to a high speed host, it will
operate in high speed. When connected to a full speed host, it will operate
at full speed.
4.2 RS232 Medusa commands are equal for all interfaces, so RS232 and Ethernet
use the same command set as USB.
8
5 Device drivers
5.1 USB The following table shows an overview of USB support on various
operating systems.
OS NI-VISA Libusb Native kernel
Agilent USBTMC
Windows XP 2 · · Not available
Not tested¹
Windows VISTA · ·
Not available
Not tested¹
Windows 7 · · Not available
Not tested¹
Windows 8(.1) · Not tested¹ Not
available Not tested¹
Windows 10 · Not tested¹ Not available
Not tested¹
Windows CE · Not tested¹ Not
available Not tested¹
Apple OSX PPC ·
Not tested¹ Not available
Unknown
Apple OSX Intel ·
Not tested¹ Not available
Unknown
Linux i386 (32bit) · · · ·
Linux i386 (64bit) · · · ·
Linux ARM Not available · · ·
Linux other Not available · · ·
Table 3 Supported operating systems.
1 Not tested: Available, but not tested by Admesy, 2 Native Kernel: Driver included with OS. 2 Windows XP SP3 is supported: Windows official support has ended as of April 8 2014
Table 5 shows an overview of USB support on various operating systems.
Admesy supports all tested platforms but does not provide standard
applications on all platforms. The matrix is provided to show the possible
platforms for software development.
5.2 RS232 When no USB driver is available or the host system does not provide
USB/Ethernet, RS232 can be used as it does not require additional drivers
for the Medusa.
9
6 Command set description
6.1 Commands The functions of the Medusa can be best described via the following
categories:
System commands
Device selection commands
User EEPROM commands
The Medusa uses SCPI like commands for control and measurement.
These are ASCII based commands and follow specific rules regarding
syntax. Although the Medusa uses SCPI like commands, they deviate from
the SCPI standard.
6.2 Sending commands to attached devices Commands that are send to devices that are attached to the Medusa may
not be equal to Medusa commands. This means that the System
commands only work on Medusa itself and not on the attached devices.
6.3 Command structure Every command starts with a colon “:”, which identifies the root of the
command tree. Each further keyword is also separated by a colon. In case
parameters need to be specified, the last keyword and parameters are
separated by a single space character. In case more than one parameter
needs to be specified, the parameters need to be separated by a comma.
The command tables show commands in long and short format. The short
format is specified by upper case characters. It is allowed to use long and
short format or a mixed format. Optional keywords are shown between
brackets [...]. Commands are case insensitive, so it is allowed to use both
or a mix of upper and lower case. The command structure is valid for all
communication interfaces of the Medusa.
6.4 System commands The following command can be used to control the Steropes LED light
source system or read information about the system.
Command syntax Parameters Purpose
:*CLS None Clear status
:*IDN? None Identification Query
:*RST None Reset Command (normally never needed)
:*STB? None Read Status Byte Query (only USB)
:*TST None Self-Test Query
:*FWD? None Firmware date Query
:*FWT? None Firmware time Query
:SYSTem:VERSion? None Get system version information
:SYSTem:ERRor? None Retrieve the last occurred error
:SYSTem:ERRor:NEXT? None Retrieve previous errors Table 7 System commands. Note, the Status byte can be used to retrieve information about the status of a command or
the system.
Code Description
0 System is idle
1 Data is available
2 Command processed
4 Data in buffer (should not occur)
8 An error occurred. Use “:SYSTem:ERRor?” to get the exact error that occurred
Table 8 Return values of the status command.
10
6.5 Device selection commands Table 9 shows the preferred device selection commands. Table 10 shows
a command set that can be used when only one type of device is
connected to Medusa. Commands of table 6 and 7 should not be mixed in
a single program, except for the “:GET:DEVICES” command, which the
first command to call always.
Command syntax Parameters Range Purpose
:GET:DEVICES None Detects all connected devices
:GET:DEVTYPES All / only connected
0 – 1 Returns the known devices by Medusa
:SELECT: DEVTYPE
Type Use :get:devtypes 0 to see all possible device groups
Selects a single type of device. For example only Brontes colorimeters or only Steropes light sources can be selected
:SELECT:DEVICE 1 : Group 2 : Devices ID
Selects a single device in a group.
:DESELECT: DEVICES
None Deselects all devices Usable with :SELECT:DEVICE in case not all devices in a group need to be selected. :SELECT:DEVICE can be called multiple times to select all devices that should respond
Table 9 Measurement commands for multiple device operation.
Command syntax Parameters Range Purpose
:DEVICE:SELECT Device number
0 – 255
Selects one device. Numbering is in the order as returned by the :GET:DEVICES command :DEVICE:SELECT 255 means that all devices are selected
:DEVICE:SELECT? None Returns the selected device
Table 10: Measurement commands for single device operation.
11
6.6 User EEPROM commands The following commands can be used to store values in the user
EEPROM space. Note that they are not stored until a :EEPROM:WRITE
command is given. It is advised to reboot the Vates after writing new
values to the EEPROM.
Command syntax Parameters Range Purpose
:MEDusa: STARTUP:READ
None Copies start up conditions from EEPROM to internal variables
:MEDusa: STARTUP:WRITE
Medusa mode
0 – 4 Copies internal variables to EEPROM and sets mode
:MEDusa: CONFigure: MODE
Enum (0,1,2,3)
USB RS232 Ethernet
Configure the Medusa mode
:MEDusa: CONFigure: MODE?
None Retrieves the default operating mode
:MEDusa: CONFigure: BAUDRATE
Baud rate 0 – 5 (9600 – 230400)
Set the default RS232 baud rate of the device
:MEDusa: CONFigure: BAUDRATE?
None Retrieves the default value for RS232 baud rate
:MEDusa: CONFigure:TRIG
Trigger 0 – 1 Set the external trigger mode (on/off)
:MEDusa: CONFigure:TRIG?
None Retrieves the set values for the external trigger mode
:MEDusa: CONFigure:IP
String x.x.x.x Set the IP x.x.x.x or “DHCP” for dhcp mode.
:MEDusa: CONFigure:IP?
None Query the IP
:MEDusa: CONFigure:GW
String x.x.x.x Set gateway
Command syntax Parameters Range Purpose
:MEDusa: CONFigure:GW?
None Query gateway
:MEDusa: CONFigure:MASK
String x.x.x.x Set network Mask
:MEDusa: CONFigure: MASK?
None Query network Mask
:MEDusa:READ: SN
None Reads serial number
Table 11: User EEPROM commands.
6.7 Returned results Returned results depend on the used commands. All Medusa native
commands are terminated by \n. In case the result is read from multiple
connected devices, each device result is separated by a semi-colon “;”, for
example the returned results of two Admesy Brontes colorimeters:
0.648,0.430,1.117,0,1;0.149,0.095,0.634,0,1\n
12
7 Measurement example The following shows a typical example to measure using all Brontes-LL
devices that are attached to the Medusa. It is also possible to use the
“:DEVICE:SELECT 255” command in case only one type of devices is
attached to Medusa. In that case, replace “:SELECT:DEVTYPE 6” by the
previous command.
Fig 4 Measurement example.
Action may be performed in a loop
Open device (VISA open, RS232 port init)
Check connected devices
Select all Brontes LL colorimeters
Set averaging of all devices to 1
Set integration time for all devices to 50ms
Measures CIE X, Y and Z
open device
read result
:get:devices
:get:devtypes 1
:select:devtype 6
:sens:aver 1
:sens:int 50000
:meas:xyz
Read the result back from device
(VISA/USBTMC read command or RS232 read)
Get devices command must always be executed
at least once. This will update the list of
connected devices in Medusa.
Close the device close device
13
Admesy B.V. Sleestraat 3 6014 CA Ittervoort The Netherlands T +31 (0)475 600 232 F +31 (0)475 600 316 www.admesy.com [email protected]
The material in this document is subject to change. No rights can be derived from the content of this document. All rights reserved. No part of this document may be reproduced, stored in a database or retrieval system, or published in any form or way, electronically, mechanically, by print, photo print, microfilm or any other means without prior written permission from the publisher.
Version 1.0.8 04/2017