Difference between revisions of "Low Voltage Vontrol Applications"
(→SNMP Driver from NCSL) |
(→SNMP Driver from NCSL) |
||
Line 16: | Line 16: | ||
The MPOD controller has an Ethernet interface that provides an SNMP-based service. We will use it to control the low and bias voltages on the MPOD boards. | The MPOD controller has an Ethernet interface that provides an SNMP-based service. We will use it to control the low and bias voltages on the MPOD boards. | ||
− | == SNMP Driver from NCSL == | + | == SNMP Driver/Device Support from NCSL == |
− | I got a generic EPICS SNMP driver/device support from John A. Priler (priller@nscl.msu.edu) called <b>snmp-nscl-0.9.8</b>. It was their version of the SNMP driver which apparently they originally obtain from DESY. | + | I got a generic EPICS SNMP driver/device support from John A. Priler (priller@nscl.msu.edu) called <b>snmp-nscl-0.9.8</b>. It was their version of the SNMP driver which apparently they originally obtain from DESY. We probabhly could have used the one from DESY. But NCSL actually used this package for MPOD crate control, so I decided to use that instead. John also sent me an example of an EPICS database file which utilizes their SNMP device support. |
I went ahead and un-tared the tar-ball in <i>/group/halld/Online/controls/epics/support/</i> directory. Then I had | I went ahead and un-tared the tar-ball in <i>/group/halld/Online/controls/epics/support/</i> directory. Then I had |
Revision as of 10:54, 21 September 2011
MPOD Low Voltage Crate Control
Wiener MPOD Hardware Configuration
Fernando got a Wiener MPOD crate with a controller and one MPV.8008L card and one EHS F205p-F card. I obtained a IP address for this controller on 36 subnet:
harpo:snmp> sudo /sbin/arping halldmpod1 ARPING 129.57.36.152 from 129.57.36.96 eth0 Unicast reply from 129.57.36.152 [00:50:C2:2D:CC:01] 1.862ms Unicast reply from 129.57.36.152 [00:50:C2:2D:CC:01] 1.850ms Sent 2 probes (1 broadcast(s)) Received 2 response(s)
There was some problem getting it on the network. When it boots, it seems to obtain the correct address via DHCP, which is evident from the IP number shown on the front-panel display. But does not respond to pings. When I manually put static IP address through the front panel, then it responds to pings. The MPOD controller has an Ethernet interface that provides an SNMP-based service. We will use it to control the low and bias voltages on the MPOD boards.
SNMP Driver/Device Support from NCSL
I got a generic EPICS SNMP driver/device support from John A. Priler (priller@nscl.msu.edu) called snmp-nscl-0.9.8. It was their version of the SNMP driver which apparently they originally obtain from DESY. We probabhly could have used the one from DESY. But NCSL actually used this package for MPOD crate control, so I decided to use that instead. John also sent me an example of an EPICS database file which utilizes their SNMP device support.
I went ahead and un-tared the tar-ball in /group/halld/Online/controls/epics/support/ directory. Then I had to modify the configure/RELEASE file adding the following two lines to it:
EPICS_BASE=$(EPICS)/base EPICS_EXTENSIONS=$(EPICS)/extensions
I was able to compile the snmp-nscl-0.9.8 for 32-bit RHEL5 Linux. But compilation of 64-bit Ubuntu 10.04 failed because of some syntax error:
make[3]: Entering directory `/group/halld/Online/controls/epics/support/snmp-nscl-0.9.8/snmpApp/src/O.linux-x86_64' perl /group/halld/Online/controls/epics/base/bin/linux-x86_64/makeIncludeDbd.pl base.dbd devSnmp.dbd ../O.Common/snmpInclude.dbd Expanding dbd /group/halld/Online/controls/epics/base/bin/linux-x86_64/dbExpand -I . -I .. -I ../../../dbd -I/group/halld/Online/controls/epics/base/dbd -o ../O.Common/snmp.dbd ../O.Common/snmpInclude.dbd Installing created dbd file ../../../dbd/snmp.dbd /usr/bin/g++ -c -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS -D_XOPEN_SOURCE=500 -D_X86_64_ -DUNIX -D_BSD_SOURCE -Dlinux -D_REENTRANT -O3 -Wall -m64 -g -fPIC -I. -I../O.Common -I. -I.. -I../../../include/os/Linux -I../../../include -I/group/halld/Online/controls/epics/base/include/os/Linux -I/group/halld/Online/controls/epics/base/include -I/group/halld/Online/controls/epics/extensions/include ../devSnmp.cpp ../devSnmp.cpp: In constructor ‘devSnmp_device::devSnmp_device(devSnmp_manager*, devSnmp_group*, dbCommon*, link*, char*, bool*)’: ../devSnmp.cpp:2659: error: cannot convert ‘unsigned int*’ to ‘size_t*’ for argument ‘3’ to ‘int get_node(const char*, oid*, size_t*)’ ../devSnmp.cpp:2660: error: cannot convert ‘unsigned int*’ to ‘size_t*’ for argument ‘3’ to ‘int read_objid(const char*, oid*, size_t*)’ make[3]: *** [devSnmp.o] Error 1 make[3]: Leaving directory `/group/halld/Online/controls/epics/support/snmp-nscl-0.9.8/snmpApp/src/O.linux-x86_64' make[2]: *** [install.linux-x86_64] Error 2 make[2]: Leaving directory `/group/halld/Online/controls/epics/support/snmp-nscl-0.9.8/snmpApp/src' make[1]: *** [src.install] Error 2 make[1]: Leaving directory `/group/halld/Online/controls/epics/support/snmp-nscl-0.9.8/snmpApp' make: *** [snmpApp.install] Error 2
Note, that this package was not pure "support", but it also contains an IOC and an example database file for some router control. The library gets installed in nmp-nscl-0.9.8/lib/$EPICS_HOST_ARCH directory, similar to ether_ip support.