Skip to main content

the Autonomous Bariloche Central DAQ, a centralized DAQ system for scientific experiments

Project description

Autonomous Bariloche Central DAQ

concept

The main concept for the DAQ is that it orbits around a central server. Control and information run through this server allowing a permanent follow-up of what is happening. The raw data is handled by the clients themselves and is not seen by the DAQ. The central server is a MQTT broker. We recommend using mosquitto.

code

All the code is in the libABCD directory. Example applications are in the examples directory. They include:

  • S.py, a "spy" application that requests all messages being exchanged in the system and logs them
  • exec-client.py, an example application that runs commands sent to it (warning, this is a huge security risk, do not run in unprotected environment)
  • run.py, a run controller app that looks at an experiment description in a JSON file and runs the programs in screens and restarts them in case they die (includes the experiment.json example of JSON file)
  • send.py, a simple message sender

Running the examples can be done by launching run.py experiment, and using send.py to see what happens, for example with ./send.py '{"to":"client1","cmd":"exec","py":"print(1)"}' which should have client1 print 1. Running S.py manually can also be interesting to see all messages going through. Mosquitto should be run at a system level.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libABCD-0.2.0.tar.gz (9.8 kB view hashes)

Uploaded Source

Built Distribution

libABCD-0.2.0-py3-none-any.whl (7.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page