Hi every body
I need Torque2.mac for measuring the torque value of Theta axis of my G1313A autosampler.
Any help where can I find this macro please?
Find maintenance, best practice, and troubleshooting articles.
Hi every body
I need Torque2.mac for measuring the torque value of Theta axis of my G1313A autosampler.
Any help where can I find this macro please?
I´m not a sampler person, but to my knowledge macros could be found in the user contributed library (UCL) directory of the Chemstation CD.
I will check if I can find the file on one of my old HDDs, but the file is really old and, if I remember correctly, was only meant to be used with Chemstation A.X.X, which is fully out of support for many years.
Thank you dear Sir
Actually I had searched UCL directory before but I could not find this macro. So I have no idea where can I find this file
Really appreciate dear friend
You are exactly right and the software version which control the whole system is A.01.10
Thank you again for your kind response
Found the torque2.mac on an old HDD. The file is almost 22 years old, so I cannot provide any support for it.
Just copy everything below the line to a text editor and save as torque2.mac
----------------------------------------------------------------------------------------------------------
!*****************************************************************************
! Torque measurement for the HP1100 Series Autosampler
!
! This file contains macros to perform torque measurements for all four
! axes of the sample transport. In addition there is a macro GTorque that
! allows torque measurement only for the gripper (if a vial number is given
! the measurement is done at that position).
! To start the measurement type Torque or Gtorque [<vial>] on the
! ChemStation's command line.
!
! Torque limits:
! X-Axis 50..90
! Z-Axis 90..130
! Theta 30..50 A value < 30 can lead to jerky movement
! Gripper open 30..65
! Gripper close max. 30
! Peter Stemer WAD R&D
! 01-Oct-98
!*****************************************************************************
name WaitEvent
parameter Timeout
seconds=0
while MyEvent=0
sleep 1
seconds=seconds+1
if (seconds > Timeout)
print "timeout for instruction !!!!"
stop
endif
endwhile
ReadEventLALS "MyEvent","EI4016"
endmacro
name ThetaZero
ReadEventLALS "MyEvent","EI4016"
a$=sendmodule$(lals,"tray:move 1"); WaitEvent(15)
!a$=sendmodule$(lals,"tray:movr 0,3"); WaitEvent(15)
enc$=sendmodule$(lals,"tray:enc? 2")
i=1
while (enc$[i:i]<>",")
i=i+1
endwhile
i=i+1
while (enc$[i:i]<>",")
i=i+1
endwhile
i=i+1
encoder=val(enc$[i:len(enc$)])
while (encoder > 6144)
encoder=encoder-6144
a$=sendmodule$(lals,"tray:move 95"); WaitEvent(20)
a$=sendmodule$(lals,"tray:move 10"); WaitEvent(20)
a$=sendmodule$(lals,"tray:move 1"); WaitEvent(20)
endwhile
while (encoder < 0)
encoder=encoder+6144
a$=sendmodule$(lals,"tray:move 10"); WaitEvent(20)
a$=sendmodule$(lals,"tray:move 95"); WaitEvent(20)
a$=sendmodule$(lals,"tray:move 1"); WaitEvent(20)
endwhile
a$=sendmodule$(lals,"tray:movt 0"); WaitEvent(20)
! a$=sendmodule$(lals,"tray:movx 8500"); WaitEvent(20)
endmacro
name GetMaxAndAverage
parameter torque$
local i, j
torque$=torque$[instr(torque$,"TRQ")+3:len(torque$)]
i=1
while (torque$[i:i]<>",")
i=i+1
endwhile
mintrq = abs(val(torque$[1:i-1]))
j=i+1
while (torque$[j:j]<>",")
j=j+1
endwhile
maxtrq = abs(val(torque$[i+1:j-1]))
if (mintrq > maxtrq) then
maxtrq = mintrq
endif
average= abs(val(torque$[j+1:len(torque$)]))
endmacro
name Torque
ThetaZero
! torque measurement for Z-axis down
a$=sendmodule$(lals,"mona:trq 1,1")
a$=sendmodule$(lals,"tray:movz 29000"); WaitEvent(20)
trq_z_down$ = sendmodule$(lals,"mona:trq?")
! torque measurement for Z-axis up
a$=sendmodule$(lals,"mona:trq 1,1")
a$=sendmodule$(lals,"tray:movz 0"); WaitEvent(20)
trq_z_up$ = sendmodule$(lals,"mona:trq?")
! torque measurement for Theta clockwise
a$=sendmodule$(lals,"tray:movx 12000"); WaitEvent(20)
a$=sendmodule$(lals,"mona:trq 2,1")
a$=sendmodule$(lals,"tray:movt 4650"); WaitEvent(20)
trq_theta_cw$ = sendmodule$(lals,"mona:trq?")
! torque measurement for Theta counter-clockwise
a$=sendmodule$(lals,"mona:trq 2,1")
a$=sendmodule$(lals,"tray:movt 0"); WaitEvent(20)
trq_theta_ccw$ = sendmodule$(lals,"mona:trq?")
! torque measurement for Gripper opening
a$=sendmodule$(lals,"mona:trq 3,1")
a$=sendmodule$(lals,"tray:movg 3100"); WaitEvent(20)
trq_gripper_o$ = sendmodule$(lals,"mona:trq?")
! torque measurement for Gripper closing
a$=sendmodule$(lals,"mona:trq 3,1")
a$=sendmodule$(lals,"tray:movg 2"); WaitEvent(20)
trq_gripper_c$ = sendmodule$(lals,"mona:trq?")
a$=sendmodule$(lals,"tray:movt 3072"); WaitEvent(20)
a$=sendmodule$(lals,"tray:movx 100"); WaitEvent(20)
! torque measurement for X-axis (right)
a$=sendmodule$(lals,"mona:trq 0,1")
a$=sendmodule$(lals,"tray:movx 28000"); WaitEvent(20)
trq_x_right$ = sendmodule$(lals,"mona:trq?")
! torque measurement for X-axis (left)
a$=sendmodule$(lals,"mona:trq 0,1")
a$=sendmodule$(lals,"tray:movx 100"); WaitEvent(20)
trq_x_left$ = sendmodule$(lals,"mona:trq?")
a$=sendmodule$(lals,"tray:movx 12000"); WaitEvent(20)
ThetaZero
a$=sendmodule$(lals,"idn?")
open _TEMPPATH$+"torque.txt" for append as #33
print #33, "============================================="
print #33, " Checking Torque Values"
print #33, time$()
print #33, a$[13:len(a$)]
print #33,"============================================="
GetMaxAndAverage(trq_theta_cw$)
if (maxtrq < 20) then
print #33, "Theta Torque (clockwise) : invalid torque value!"
else
print #33, "Theta Torque (clockwise)[30..50]:" , average
endif
GetMaxAndAverage(trq_theta_ccw$)
if (maxtrq < 20) then
print #33, "Theta Torque (counter-clockwise): invalid torque value!"
else
print #33, "Theta Torque (counter-clockwise)[30..50]:" , average
endif
GetMaxAndAverage(trq_Z_down$)
if (maxtrq < 20) then
print #33, "Z-axis Torque (down): invalid torque value!"
else
print #33, "Z-axis Torque (down)[90..130]:", average
endif
GetMaxAndAverage(trq_Z_up$)
if (maxtrq < 20) then
print #33, "Z-axis Torque (up): invalid torque value!"
else
print #33, "Z-axis Torque (up)[90..130]:", average
endif
GetMaxAndAverage(trq_x_right$)
if (maxtrq < 20) then
print #33, "X-axis Torque (right): invalid torque value!"
else
print #33, "X-axis Torque (right)[50..90]:", average
endif
GetMaxAndAverage(trq_x_left$)
if (maxtrq < 20) then
print #33, "X-axis Torque (left): invalid torque value!"
else
print #33, "X-axis Torque (left)[50..90]:", average
endif
GetMaxAndAverage(trq_gripper_o$)
print #33, "Gripper-open Torque [30..65]:", average
GetMaxAndAverage(trq_gripper_c$)
print #33, "Gripper-close Torque [max 30]:", average
print #33, "============================================="
close #33
ExecNoWait "NotePad "+_TEMPPATH$+"torque.txt", 1
endmacro
name GTorque
parameter VialPos
ReadEventLALS "MyEvent","EI4016"
ThetaZero
if ((VialPos < 1) or (VialPos > 220)) then
VialPos = 0
else
a$=sendmodule$(lals,"tray:move "+val$(VialPos)); WaitEvent(20)
endif
! torque measurement for Gripper opening
a$=sendmodule$(lals,"mona:trq 3,1")
a$=sendmodule$(lals,"tray:movg 3100"); WaitEvent(20)
trq_gripper_o$ = sendmodule$(lals,"mona:trq?")
! torque measurement for Gripper closing
a$=sendmodule$(lals,"mona:trq 3,1")
a$=sendmodule$(lals,"tray:movg 2"); WaitEvent(20)
trq_gripper_c$ = sendmodule$(lals,"mona:trq?")
a$=sendmodule$(lals,"idn?")
open _TEMPPATH$+"gtorque.txt" for append as #33
print #33, "============================================="
print #33, "Gripper Torque at Vial Position",VialPos
print #33, time$()
print #33, a$[13:len(a$)]
print #33,"============================================="
GetMaxAndAverage(trq_gripper_o$)
if (maxtrq < 20) then
print #33, "Gripper Torque: invalid torque value! (<20)"
else
print #33, "Gripper-open Torque:", average
endif
GetMaxAndAverage(trq_gripper_c$)
print #33, "Gripper-close Torque:", average
print #33, "============================================="
close #33
ExecNoWait "NotePad "+_TEMPPATH$+"gtorque.txt", 1
endmacro
!*****************************************************************************
!*****************************************************************************
Really appreciate dear friend
I will do it and let you know the result
Thank you