FSM-based control software for Virtual Burrow Assay
© 2017 The Trustees of Columbia University in the City of New York. All Rights Reserved.
For help, email Carl Schoonover [ces2001 AT columbia DOT edu] or Andrew Fink [af2243 AT columbia DOT edu]
We are not software engineers. This is likely to be buggy, inefficient and recalcitrant to distribution across different platforms--and so welcome any assistance.
VBAcmd is known to run on:
- Windows 7 Professional, WinPython 2.7 distribution
- Windows 10, Anaconda 2.7 distribution
Anaconda is strongly recommended over WinPython
Instructions (detailed step-by-step instructions to come):
- Rename VBAconfig.py.template to VBAconfig.py
- If necessary correct DAQ and scaling parameters in the new VBAconfig.py file (git pull will not overwrite your local VBAconfig.py file)
- Select one of the two rangeForce scaling options depending on amplifier
- Run VBAcmd3.pyw
Requires:
- Virtual Burrow Assay (see preprint on biorXiv for description, and CAD folder for frictionless rail design; requisite electronics parts listed below)
- National Instruments card with analog and digital in/out (e.g. USB-6008). Default configuration in VBAconfig.py.template:
- dev5:ai0 laser sensor (scaling for MICRO-EPSILON ILD1302-50)
- dev5:ai1 force sensor (scaling for FUTEK FSH02664 load cell with FUTEK QSH00602 signal conditioner, +/-5 VDC output range)
- dev5:ai2 servo position (scaling for FIRGELLI L12-50-50-12-I)
- dev5:ai3 optional analog in (no scaling)
- dev5:ao0 servo control (scaling for FIRGELLI L12-50-50-12-I)
- dev5/port0/line0 logical in to disable closed loop mode during trial / enable closed loop mode during ITI
- dev5/port1/line0 logical out to indicate conditions satisfied for trial initiation
- NumPy
- NI-DAQmx available at http://www.ni.com/getting-started/install-software/data-acquisition
- PyDAQmx available at https://pythonhosted.org/PyDAQmx/
- PyQt4 available at https://www.riverbankcomputing.com/software/pyqt/download
- PyQwt5 Windows binaries available at https://www.lfd.uci.edu/~gohlke/pythonlibs/, also copied in this repository (PyQwt-5.2.1-cp27-cp27m-win_amd64.whl); if you prefer to build yourself, see http://pyqwt.sourceforge.net/doc5/installation.html
- transitions available at https://github.com/pytransitions/transitions
- ParamLoad and Scaling available at https://github.com/goatsofnaxos/lib