Technical Issues - Pike Accessories

The following MEASURE BASIC code was tested with a PIKE Technologies autosampler mounted in a PE Lambda 1050.  Interestingly, the instrument was 3500 miles from Princeton and accessed via FlexiHub. After installing PIKE USB drivers on our computer (OPTIPLEX390) and connecting to the remote USB port the autosampler acted as if attached locally.

Pike Technologies

PIKE autosamplers are available for FilmStar-supported PerkinElmer Lambda and Agilent Cary. In this case autosampler position is specified by radius (mm) and angle theta (deg). Other PIKE autosamplers are treated similarly via EXE files (in this case MoveToPoint.exe and Position.exe), easily tested in a Command window. Simple handshaking via position.txt ensures that the autosampler has arrived at the correct position.

Option Explicit
Const Path$ = "C:\PIKE Technologies\AutoPro6\"
Const Devc$ = "UMA_AUTOSAMPLER"

Sub Main
    MoveTo 3 ' Test case
    ' Scan
    ' Save data in Excel or wherever
End Sub

Sub MoveTo(ByVal PartID%)
    Select Case PartID  ' Coordinates supplied by PIKE
    Case 1
        MoveIt 0, 0
    Case 2 
        MoveIt 40, 90
    Case 3
        MoveIt 40, 180
    ' ... ETC ...
    End Select
End Sub

Sub MoveIt(ByVal Radius!, ByVal Theta!)
    Dim c$, s$, k&, iTry%
    c$ = " " & CStr(Radius) & ", " & CStr(Theta)
    k = Shell(Path$ & "CommandLine\MOVETOPOINT " & Devc$ & c$)' Move
    Do
        Wait .5 ' Delay
        k = Shell(Path$ & "CommandLine\POSITION " & Devc$) ' Interrogate
        Open Path$ & "PositionOutput\position.txt" For Input As #1
        Line Input #1, s$ ' Coordinates
        Close #1
        iTry = iTry + 1
        If iTry > 20 Then ' Allowing 10 seconds for operation
            MsgBox "Uh oh...problem", vbCritical, "PIKE Accessory"
            End
        End If
    Loop Until InStr(Replace(c$, " ",""), s$) > 0
    Debug.Print "Got there!"  ' Bravo
End Sub

Note added Mar 2018: FilmStar saves multiple spectra in Excel .xls/.xlsx files (Excel not required). This is a major benefit not offered by PerkinElmer UV Winlab or Agilent (Cary) WinUV.

Need help implementing automation? Contact FTG Software for assistance. The code shown above will also work in Excel. European users should set "." as decimal point and "," as separator.

Back to Technical Issues

Copyright © 2023 FTG Software Associates
Last updated on January 31, 2023