Git Product home page Git Product logo

simpledaq's Introduction

SimpleDAQ

Really basic DAQ for CAEN D5720 desktop digitizer and linux systems

Dependencies:

  • Linux driver
  • CAENVME
  • CAENComm
  • CAENDigitizer

Available here and here

Get it with a download or a clone (remember the git submodule).

To compile: make

You then need to write a configuration file with fields that match those in config.example.ini

Then to run: bin/simpledaq <path_to_configuration_file>

This will produce two things with paths specified in the configuration file

  1. A header file containing a list of entries, each containing a selection of the header info produced by the CAEN digitizer
  2. A directory with a file for each event containing the digitized samples

<eventDir>/event_0.dat <eventDir>/event_1.dat ...

SimpleDAQ is about the simplest use of the (C) CAENDigitizer library imaginable: it internally triggers off one of its channels and reads out that same channel. The hardware and CAENDigitizer are by no means limited to this, documentation available here.

Over USB, the digitizer is unable to annouce to its driver that it's time to readout events. Instead, it gradually fills up its internal buffer and the driver polls it triggering a readout of the events in the buffer up to a maximum number.

Note:

  • the clock is 250MHz, so the samples are 4 ns apart
  • the precision is 12bit, so the sample range is from 0 -> 4096
Field Name Description
maxEventsRead Maximum number of events on each readout
recordLength # samples read at each trigger
postTriggerSize Position of trigger in event (%) 0 -> end, 100 -> beginning
channel To trigger on and to read
triggerPolarity 0 -> upward going, 1 -> downward going
dcOffset To add to the input signal to match the digitizers dynamic range (see below)
triggerTreshold You guessed it/ adc counts
polFrequency the frequency the computer asks the CAEN for available events
nReadouts the number of times to ask the CAEN for data
headerFile path - to create and dump header info into (will overwrite)
eventDir path to put the event files
DC Offset Dynamic Range
0x7FFF -V/2 -> V/2
0x0000 -V -> 0
0xFFFF 0 -> V

simpledaq's People

Contributors

jackdunger avatar

Watchers

James Cloos avatar  avatar

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.