57 lines
1.0 KiB
Tcl
Executable File
57 lines
1.0 KiB
Tcl
Executable File
#!/usr/bin/env tclsh
|
|
source streamtestlib.tcl
|
|
|
|
# Define records, protocol and startup (text goes to files)
|
|
# The asynPort "device" is connected to a network TCP socket
|
|
# Talk to the socket with send/receive/assure
|
|
# Send commands to the ioc shell with ioccmd
|
|
|
|
set records {
|
|
|
|
record (bi, "DZ:sign")
|
|
{
|
|
field (DTYP, "stream")
|
|
field (INP, "@test.proto m(DZ:weight.A) device")
|
|
}
|
|
|
|
record (calc, "DZ:weight")
|
|
{
|
|
field (INPB, "DZ:sign")
|
|
field (CALC, "B?A:-A")
|
|
field (FLNK, "DZ:out")
|
|
}
|
|
|
|
record (ao, "DZ:out")
|
|
{
|
|
field (DTYP, "stream")
|
|
field (DOL, "DZ:weight")
|
|
field (OMSL, "closed_loop")
|
|
field (OUT, "@test.proto out device")
|
|
}
|
|
}
|
|
|
|
set protocol {
|
|
Terminator = LF;
|
|
m {out "w"; in "%*/ */%{-|}%(\$1)f Kg";}
|
|
out {out "%.2f";}
|
|
}
|
|
|
|
set startup {
|
|
}
|
|
|
|
set debug 0
|
|
|
|
startioc
|
|
|
|
process DZ:sign
|
|
assure "w\n"
|
|
send " - 15.20 Kg\n"
|
|
assure "-15.20\n"
|
|
|
|
process DZ:sign
|
|
assure "w\n"
|
|
send " 15.00 Kg\n"
|
|
assure "15.00\n"
|
|
|
|
finish
|