Tuesday, 11 July 2017

Thor Burn In Program

Version 1.18.00 of Thor has a new program, Burn In, which will try to remove any moisture from the dual sensing probe. It does this by heating to various set point temperatures and waiting until the difference between the safety and block temperatures (drift) is below a certain threshold.

Starting Up


To access the burn in program, scroll the side bar to the bottom and select Burn In


Setting Up



Minimum Drift is the allowed temperature difference between the safety and block temperatures for the burn in program to continue to the next setpoint.

Time Out is the time allowed at one particular set point before the burn in program will give up waiting for the drift to come below the Minimum Drift.

Settling Time when the set point has been reached the program will wait a further amount of time before monitoring the drift

Set Points  Select which temperatures to test, 150, 200, 250, 300, 350, 400°C

Press start to start the program, once started you will not be able to change the settings.


Screen Shot


First ensure you have a USB memory stick inserted into the SMP50.

Press the menu key and press Screen Shot, this will capture an image of the screen and save it to the USB stick

This is useful for sending error reports or anomalous behaviour.


Report and Logs


The report screen shows the temperatures before and after the drift monitoring stage, and the time taken to complete the stage.

More useful is the log file, here temperatures and state are recorded every second. Insert a USB stick, and from the menu press Copy log file to USB.

Example of log output

14:25:00 250.0,250,25.0,Settling,Plateau
14:25:01 250.0,250,25.0,MonitorDrift,Plateau
14:25:02 250.0,250,25.0,Next,Plateau

Format for each row
Time block temperature °C, safety temperature °C, ambient temperature °C, burn in program state, heater state


Advanced

The block temperature is accurate to 0.1°C, the safety 1°C, so expect the drift to flit about by 1°C.

The SMP50 firmware will go into an error state if the drift becomes greater than 15°C for several seconds. The burn in program will detect this error, cool for 10 seconds, clear the error and go back to the previous set point to try again.

The burn in program moves thru the following states

Ready
           (Press start)
Heat
           (Heater reaches Plateau)
Settling
           (Settling time is up)
MonitorDrift
           (drift is below the specified minimum)
Next
           (Go to next setpoint and back to the Heat stage or Finished)
Finished

TimedOut state will occur if the time taken for the MonitorDrift stage goes over the specified Time Out setting

Error state will occur if the SMP50 reports an error, the Burn in program will cool and go back to the previous set point and resume the program from there.


Trouble Shooting

Stuck at a setpoint

The SMP50 may be stuck at at set point with a drift that does not decrease and will eventually Time Out.
1)Try a larger minimum drift value to allow the MonitorDrift stage to pass
2)Uncheck the set point

The idea here is to force the SMP50 to heat to a higher temperature, if the drift becomes too large the SMP50 will go into a error state which the Burn In program will detect, clear and return to the previous set point.

Alternatively,
3) increase (at least double) the Settling and Time Out times to see if probe just needs more time



Drift is getting worse

The SMP40 kit I tested the program is nearly 10 years old. The Burn In program just made the drift worse, I suspect this is due to a faulty probe. However if the drift is becoming worse on new SMP50 units, stop using the burn in program. The solution to the problem will have to be rethought.


















Wednesday, 5 July 2017

Guide to WindChime v1.3

This post is a guide to the features in WindChime v1.3.0

Home




When you launch WindChime you will see the home screen which shows a title and version number. There is nothing much to do here, conveniently the nav bar  on the left will be open for you to select a more useful screen. If the nav bar is not open, press the hamburger icon in the top left corner.



Connection




Before you can use WindChime you will need to connect to a Spectrophotometer. WindChime can connect over TCP/IP or Serial Port. If you are connecting to Breezy (a simulator) enter the IP address shown in Breezy's connection screen, eg 192.168.0.5:11000

For USB serial connectrion ,try /dev/ttyUSB0 or /dev/ttyUSB1
For direct serial connection, try /dev/ttyO0 or /dev/ttyO1 depending on which UART you are connected


Status



Shows the status of the WindChime service and details about the connected Spectrophotometer

Logs




The WindChime service will log all communications to the Spectrophotometer. A new log file will be created each day. Select the log file on the left, WindChime will load the last 30 or so lines of the log file, as log files can be huge and display the text on the right.

Logs are sorted by latest date first, so the current log will be the first in the list.

Insert a USB stick and press COPY to copy the selected log file to the USB. Press DELETE to delete the selected log file. Press the menu button and select DELETE ALL to delete all log files.


Settings



The WindChime service will start automatically on boot up, check the boxes here to automatically connect and find home on start up, otherwise you will have to do it manually.

Update



This screen allows you to conveniently update the WindChime app and service

Copy the latest version of WindChime to a USB stick and name the file windchime.apk, plug in the USB stick and press Update and then follow the on screen instructions.


Wavelength



This screen allows you to set the wavelength of the instrument. If the spectrophotometer has not been initialized, you will need to press the FIND HOME button first.


Lamp Output




This program will scan from 198nm to 1000nm and take a ADC reading at each wavelength and plot it in the chart. Press the menu button for options to copy the data to a USB stick, or send a screen shot to the USB stick.

This screen is useful for checking the accuracy of a unit with a Xenon lamp fitted, as the peaks in a Xenon lamp will be at well defined positions*. Pinch zoom the chart to zoom into a peak to see if it is at the expected wavelength.

*The lamp manufacturer may provide you with the necessary data, if the lamp is the same one as used in the UV Diode Array, you will have this data already.

Continuous Readout




This program will repeatedly take a light ADC reading every 500ms, its similar to a kinetics run.
The chart plots ADC value against time and will roll after 120 readings have been taken.

This screen is useful when adjusting the optics to maximize brightness.



Sipper Pump



If a Sipper Pump accessory is fitted use this screen to test out the motor.


Peltier




If a Peltier accessory is fitted use this screen to set the temperature (20 to 50°C). The current temperature will be updated every 500ms.

Turret



If a turret / Eight cell accessory has been fitted use this screen to select its position. Note if the accessory has not been initialized, press FIND VANE first.


MicroVolume



If a MicroVolume accessory has been fitted use this screen to set up and move the position of MicroVolume.

Monday, 5 June 2017

Wind Chime and Breezy Setup

Breezy is a PC application that simulates a spectrophotometer. Wind Chime is a library, service and tools app that provides the communications to a spectrophotometer.

The Wind Chime Service runs in its own process, the Breeze app will bind to the service and send commands to the service, the service will sends these commands on to the spectrophotometer and will send back any responses to the client.

The Wind Chime library, is a shared library used by the service and your app. The library is already included in BreezeUI, see /breeze/libs/windchimelibrary.jar. Perform a SVN update if you do not see it.

The Wind Chime Tools app, is used to configure the service's connection to the spectro and perform any initialization on the spectro, eg the 73 Series of spectros do the following when you first power them on:


  • Power On Start Test 
  • Find the zero order light
  • Find the gratings home position
  • Initialize any connected accessories



Getting Started

Here we will connect Breezy to Wind Chime via a TCP/IP socket.

First run breezy and connect to a socket:


Second, install the WindChime APK and open the Wind Chime tools app. The app uses a navigation drawer.


Go to connection, enter the IP address and Port, press connect




Go to Status, here you can check on the service's status, notice that the spectro is not yet initialized



Go to Wavelength screen and press find home. to initialize the spectro. Eventually POST and accessory initialization will be added.



On Breezy go to the Log tab and check you are seeing the comms messages


Back to Wind Chime, you can set the tools app to automatically connect and find home, via the settings screen. The app will automatically run on boot up.



Setting up BreezeUI

The various measurements, such as Photometrics, can be done either with a dummy class or one that binds to the Wind Chime service. To hook up the Breeze app to the service, edit bibby.jenway.breeze.MainModel


Comment out the line
this.spectrophotometer = new DummySpectro(2000L);

and uncomment this line
this.spectrophotometer = new ServiceSpectro(appContext);


Run Breeze and perform a photometrics measurement



Keep an eye on the Breezy log screen to see the messages that are been sent back and forth.



That's it. Note that the current version of Wind Chime is 1.2.0, Breezy 1.1.0.0 were used for this post.