GithubHelp home page GithubHelp logo

anc300's Introduction

ANC300 EPICS Driver

StreamDevice-based EPICS support for the attocube ANC300 piezo controller.

Requirements

Though it may work on other versions, the driver was tested on these:

  1. EPICS base 3.14.12.3 http://www.aps.anl.gov/epics/
  2. asyn 4-21 http://www.aps.anl.gov/epics/modules/soft/asyn/
  3. StreamDevice 2.6 http://epics.web.psi.ch/software/streamdevice/

A newer StreamDevice may be required than the NSLS-II Debian package has (as of early 2013). If included in $(TOP)/StreamDevice, it will be built automatically. The newer StreamDevice also requires a newer asyn (>= 4-18).

Optional

  1. EDM http://ics-web.sns.ornl.gov/edm/log/getLatest.php Screens are provided in $TOP/opi for EDM.
  2. Autosave http://www.aps.anl.gov/bcda/synApps/autosave/autosave.html

Installation

  1. Install EPICS
    1. If using a Debian-based system (e.g., Ubuntu), use the packages here http://epics.nsls2.bnl.gov/debian/
    2. If no packages are available for your distribution, build from source
  2. Edit configure/RELEASE
    1. Point the directories listed in there to the appropriate places
    2. If using the Debian packages, everything can be pointed to /usr/lib/epics
  3. Edit iocBoot/iocanc300/st.cmd
    1. Change the shebang on the top of the script if your architecture is different than linux-x86: #!../../bin/linux-x86/anc300 (check if the environment variable EPICS_HOST_ARCH is set, or perhaps uname -a, or ask someone if you don't know)
    2. The following line sets the prefix to all of your ANC300 PVs: epicsEnvSet("DEV", "E1:ANC300") Set the second quoted string appropriately.
    3. The following line sets the IP address of the serial device server communicating with the ANC300: drvAsynIPPortConfigure("$(PORT)", "10.0.2.5:7230") The IP address should be changed, but the port should remain the same.
    4. The ANC300 has a configurable number of axes (up to 6), add these lines for each axis, replacing the 1 with the axis number (1-6): epicsEnvSet "AXIS", 1 < anc300_axis.cmd
  4. Go to the top directory and make
  5. If all goes well:
    cd iocBoot/iocanc300
    chmod +x st.cmd
    ./st.cmd`
    
  6. Run EDM:
    export EDMDATAFILES=$TOP/opi:$EDMDATAFILES
    (general configuration)
    edm -x -m "DEV=E1:ANC300" anc300_axes
    
    (axis 1)
    edm -x -m "DEV=E1:ANC300,A=1" anc300_axis
    

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.