IOCINFRAApp/Db/devKeithley6487.proto
author Heinz Junkes <junkes@fhi-berlin.mpg.de>
Wed, 15 Jul 2020 08:12:22 +0200
changeset 2 320de4b4c9ee
parent 1 f6e1a4c75073
permissions -rw-r--r--
Add 2nd moxa XGS600 and TPG256
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     1
##########################################################################
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     2
# Copyright (c) 2011 Lawrence Berkeley National Laboratory, Accelerator
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     3
# Technology Group, Engineering Division
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     4
# This code is distributed subject to a Software License Agreement found
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     5
# in file LICENSE that is included with this distribution.
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     6
##########################################################################
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
     7
1
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
     8
#@writetimeout { disconnect; }
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
     9
#replytimeout { disconnect; }
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    10
#readtimeout  { disconnect; }
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    11
#mismatch     { disconnect; }
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    12
1
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    13
ReplyTimeout = 600;
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    14
ReadTimeout = 100;
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    15
InTerminator = "\n";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    16
OutTerminator = "\n";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    17
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    18
getIDN {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    19
    out "*IDN?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    20
    in "%\$1[^\r\n]";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    21
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    22
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    23
cmd {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    24
    out "\$1";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    25
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    26
1
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    27
setArmCount {
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    28
    out "\$1 %d";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    29
#    @init { out "\$1?"; in "%d"; }
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    30
}
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    31
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    32
getArmCount {
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    33
    out "\$1?";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    34
    in "%d";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    35
    ExtraInput = Ignore;
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    36
}
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    37
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    38
setD {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    39
    out "\$1 %d";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    40
    @init { out "\$1?"; in "%d"; }
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    41
}
1
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    42
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    43
getD {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    44
    out "\$1?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    45
    in "%d";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    46
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    47
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    48
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    49
setF {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    50
    out "\$1 %f";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    51
    @init { out "\$1?"; in "%f"; }
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    52
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    53
getF {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    54
    out "\$1?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    55
    in "%f";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    56
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    57
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    58
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    59
setRange {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    60
    out "RANG 2E-%d";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    61
    @init { out "RANG?"; in "%*[^E]E-%d"; }
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    62
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    63
getRange {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    64
    out "RANG?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    65
    in "%*[^E]E-%d";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    66
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    67
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    68
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    69
setArmSource {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    70
    out "ARM:SOUR %{IMM|BUS|TIM|MAN|TLIN|NST|PST|BST}";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    71
    @init { out "ARM:SOUR?"; in "%{IMM|BUS|TIM|MAN|TLIN|NST|PST|BST}"; }
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    72
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    73
getArmSource {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    74
    out "ARM:SOUR?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    75
    in "%{IMM|BUS|TIM|MAN|TLIN|NST|PST|BST}";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    76
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    77
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    78
setTriggerSource {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    79
    out "TRIG:SOUR %{IMM|TLIN}";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    80
    @init { out "TRIG:SOUR?"; in "%{IMM|TLIN}"; }
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    81
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    82
getTriggerSource {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    83
    out "TRIG:SOUR?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    84
    in "%{IMM|TLIN}";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    85
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    86
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    87
cancel {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    88
    out "\030ABOR\r";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    89
    in "%*s";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    90
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    91
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    92
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    93
#
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    94
# Measure current
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    95
#
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    96
measureCurrent {
1
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
    97
    ReplyTimeout = 800;
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    98
    out "READ?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
    99
    in "%f";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   100
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   101
    @init { out "FORM:ELEM READ;CONF:CURR:DC"; }
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   102
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   103
fetchBuffered {
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   104
    ReplyTimeout = 10000;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   105
    Separator = ",";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   106
    out "FETC?";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   107
    in "%f";
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   108
    ExtraInput = Ignore;
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   109
}
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   110
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   111
#
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   112
# Source
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   113
#
1
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   114
#not on 6485
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   115
#setIlimit {
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   116
#    out "SOUR:VOLT:ILIM 2.5E-%d";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   117
#    @init { out "SOUR:VOLT:ILIM?"; in "2.5%*[^E]E-%d"; }
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   118
#}
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   119
#getIlimit {
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   120
#    out "SOUR:VOLT:ILIM?";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   121
#    in "2.5%*[^E]E-%d";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   122
#    ExtraInput = Ignore;
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   123
#}
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   124
#setSourceRange {
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   125
#    out "SOUR:VOLT:RANGE %d";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   126
#    @init { out "SOUR:VOLT:RANGE?"; in "%{1.000000E+01|5.000000E+01|5.000000E+02}"; }
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   127
#}
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   128
#getSourceRange {
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   129
#    out "SOUR:VOLT:RANGE?";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   130
#    in "%{1.000000E+01|5.000000E+01|5.000000E+02}";
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   131
#    ExtraInput = Ignore;
f6e1a4c75073 add reccaster
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents: 0
diff changeset
   132
#}
0
77d8eafe2a07 Initial repo
Heinz Junkes <junkes@fhi-berlin.mpg.de>
parents:
diff changeset
   133