Technical Support Document 058 - 12/97
INTERFACING THE STARLITE 55 COLORHEAD TO AN EXTERNAL
SYSTEM USING RS232
When considering using the ZBE Starlite 55 Colorhead
as part of a larger photographic system, one must consider
the Starlite colorhead does not directly support control
by an external RS-232 host. However, it is possible
to work around the resulting limitations.
There are two major aspects to getting a setup like
this going: Hardware and Software. The Hardware aspect
of the system deals primarily with the hookup between
the Starlite and the host system. The Software aspect
is a matter of just how you wish to issue commands to
the colorhead, and how your host will keep track of
the Starlites status.
I: Hardware
Since the Starlite has only one RS-232 port, which
it uses for the keypad, the system engineer must decide
whether to replace the Starlites keypad with the
PC host system, or simply wire it so that the host system
can issue commands to the Starlite, but otherwise have
the Starlite operate from its Keypad in the normal
manner. Wiring diagrams for both setups are shown below,
along with the pros and cons of each configuration:
| A. Host Replaces
Starlite Keypay |
B: Host Controls
Starlite in Addition to Keypad |
 |
Advantages:
- This method offers complete control of Starlite
without the possibility of unexpected user intervention.
- Simple Cable.
Disadvantages:
- Host software must trap any and all error
conditions that could arise during operation.
- No user monitoring or calibration operations
possible from normal keypad.
|
Advantages:
- Allows normal operation of Starlite via Keypad.
Disadvantages:
- More complex cable.
- Possibility of operator and computer system
sending commands to the Starlite at the same
time, resulting in unpredictable outcome.
|
II: Software
The protocol for the information to and from the Starlite
is a simple ASCII-based command set, usually consisting
of one-character commands that result in a desired action
at the colorhead, or some form of return status code.
For the most part, the host computer will simply emulate
a Keypad connected to the Starlites serial port.
The data format for the Starlite is 7 DATA, 2 STOP,
NO Parity, 9600 BAUD
The instructions for the Starlite appear in the Starlite
Users Manual, and are repeated below for convenience
Basic Commands:
| |
^E |
|
Select PC control mode. This stops
continuous screen updating. ^E = $05. |
| |
C |
|
Cyan filtration entry. Send up to
3 digits then <cr>. |
| |
M |
|
Magenta filtration entry. Send up
to 3 digits then <cr>. |
| |
Y |
|
Yellow filtration entry. Send up
to 3 digits then <cr>. |
| |
T |
|
Exposure time entry. Send up to 4
digits then <cr>. Don't use a period. |
| |
X |
|
Initiate an exposure command. |
| |
l |
|
Lamp on. |
| |
d |
|
Lamp off (immediate).Lamp
off (immediate). |
| |
D |
|
Lamp off (after reaching color). |
| |
W |
|
Lamp on in White Light mode. |
| |
? |
|
Request status. 3 bytes are returned from Starlite.
"LIY" for lamp on, filters in,
on color. "DON" is sent for lamp off,
filters out, not on color. Each byte is independent
and has two possible states. |
Other Commands:
| |
L |
|
Toggle lamp on/off. |
| |
F |
|
Toggle filtered light/white light. |
| |
P |
|
Request to update display data. (Print data). |
| |
r |
|
Request current filtration targets. (Data packet
output see next section). |
| |
s |
|
Input new filtration targets. Send out 27 bytes.
(Data packet input-- see next section). |
| |
@ |
|
Job recall. Send up to 5 digits then <cr>.
Recalls internal job. |
| |
! |
|
Job store. Send up to 5 digits then <cr>.
Store new job. |
| |
| |
|
Demo mode, cycles through internal jobs. |
| |
a |
|
Go into menu. |
| |
M |
|
Go into menu. |
| |
+ - |
|
Move up and down through menus. |
| |
t |
|
Rest automatic lamp turn-off timer. |
Data packet format for s and r
operations: 27 bytes total.
For a setup of D64,C0,M50,Y60, Time 5.0 seconds, Emulsion
2, Color mode.
The data packet would be:
+000,+050,+060,+064,005020<cr>
The values are coded as follows:
| |
cyan |
mag |
yel |
dens |
time |
end of packet character |
| |
| |
| |
| |
| |
/ || \ |
| |
| |
+000, |
+050, |
+060, |
+064, |
005002<cr> |
|
| |
|
|
|
|
| | |
|
| |
|
|
|
display mode emulsion number |
If you want the Starlite to go to this filtration pack
you would send the following string:
s+000,+050,+060,+064,005020<cr>
The first s character tells the
Starlite the data is following.
If you sent the r character thereafter
the same data packet would come back verifying the data
was received.
The Time is expressed in four numerals, such that the
first three are seconds (0 - 999) and the last is the
first decimal place (1/10 seconds). Display Mode is
"0" for Color.
Other Considerations and Errata:
Some idiosyncrasies with the interfacing of a host
computer to the Starlite are:
Allow time for the Starlite to respond to commands.
If you do not, the Starlite may miss characters in your
data output since there is no hardware flow-control.
In all cases, allow at least 1/2 second (500ms) between
the first character you send, and the remainder of your
command string. Also, allow at least 1 or 2 ms between
all characters in a data stream.
Commands that "ask" the Starlite to return
status information may need several (3-5) seconds after
the previous command, before the information they return
is valid. The best way to get accurate status information
from the Starlite is to parse the data stream that normally
updates the Keypad "main screen" display.
This is best for the current filtration/density settings
and exposure time (and any other information given on
the Starlite main-screen).
Also, in relation to status-return commands, avoid
polling the Starlite at a periodic rate exceeding "once
every two seconds." The Starlites computer
must process these commands as well as everything else,
and the added processor load may cause invalid data
to be returned, or lock up the system. Again, the main-screen
data stream is the best source of current-status information.
|