Skip to main content

Python Finite State Machines for EPICS

Project description

pysmlib

Python Finite State Machines for EPICS

Developers: Damiano Bortolato - Davide Marcato @ Laboratori Nazionali di Legnaro - INFN

Main Repository: https://github.com/darcato/pysmlib

Full documentation: https://darcato.github.io/pysmlib/docs/html/

Main features

  • Easy to use and fast development of complex event based fsm - just code the states!
  • Full EPICS Channel Access integration via PyEpics.
  • High expandability as provided by all the libraries of Python.
  • Integrated configurable logging systems.
  • Convenient methods to access all the information on I/O.
  • Timers can be used to execute actions after a time delay.
  • Integrated watchdog logic.
  • Multi-threading: each fsm is executed on a different thread, sharing I/O.
  • Convenient loader to launch a daemon with multiple fsm.
  • Possibility to apply a configurable naming convention on I/O.

Installation

To install simply run:

pip install pysmlib

or download the latest release/sources from github, unpack it and run:

cd pysmlib
pip install .

Dependencies

Requires Python 3.6+. Pyepics is required and automatically installed by pip. Sphinx and its theme "Read the Docs" are required to build the documentation.

Example

Examples can be found on the examples folder.

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

pysmlib-3.4.2.tar.gz (52.2 kB view details)

Uploaded Source

Built Distribution

pysmlib-3.4.2-py3-none-any.whl (36.6 kB view details)

Uploaded Python 3

File details

Details for the file pysmlib-3.4.2.tar.gz.

File metadata

  • Download URL: pysmlib-3.4.2.tar.gz
  • Upload date:
  • Size: 52.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.19

File hashes

Hashes for pysmlib-3.4.2.tar.gz
Algorithm Hash digest
SHA256 cc3fba9e3f53d796fb1d526626fc2fa6a816d541fc706de372ac459e36dde740
MD5 47910697601c64fa0d2a90f3e2938f6e
BLAKE2b-256 d75c679661d8166c0030f4ec44ca1f3bfbfd17731b46bdcd8db884bdb7c0865e

See more details on using hashes here.

File details

Details for the file pysmlib-3.4.2-py3-none-any.whl.

File metadata

  • Download URL: pysmlib-3.4.2-py3-none-any.whl
  • Upload date:
  • Size: 36.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.19

File hashes

Hashes for pysmlib-3.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2ef405b3c9a826af9b2a70dc56c2a7f28e1630ad5ce05af0aaaecbd35ee424f8
MD5 a6cb6298980a30d9d6062cfd40e1de46
BLAKE2b-256 a2e92603d00fe24f4d6680d71f0edf21367cb7ae3a76e60e4d90e1de3b71a3eb

See more details on using hashes here.

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