Skip to main content

Command and Real-time Acquisition Parallelized in Python

Project description

CRAPPY is an acronym and stands for Command and Real-time Acquisition in Parallelized PYthon.

Crappy is developped at the “Laboratoire de Mécanique de Lille”, a mechanical research laboratory based in Lille, France to provide a powerful and easy-to-use framework for materials testing.

In order to understand the mechanical behaviour of materials, we tend to setup tests with more and more sensors, leading to an increasing complexity and requiring a higher precision. As we are one step ahead of industrials the commercially available testing machines may not be adapted to our objectives, we thus have to develop our own softwares to further improve our tests.

This is the original reason why we created Crappy : to provide a framework for controlling our tests and all of our hardware.

To this end, we made some choice that are now the keys of the framework:

  • open-source : it is important for us that everyone can use our work, and bring its own code to the world.

  • modular : the hardware has to be, as much as possible, separated from the software, to provide re-usable code for different setups.

  • simple : Python has been chosen for its high level. We are not developpers, and neither are our users, so we cannot afford to use a low level programming language. We work with typical loop time of more than 1 millisecond (10ms most of the time), and Python is enough for that. It is also pretty easy to put a small piece of C/C++ in the Python if we need a speedup.

  • performance : a great deal of work is made to ensure the performance of the framework. Most tests require a good repetablilty and a stability, and may become hazardous in case of non-handled issue.

  • parallelization : the key to a good test is the synchronisation between the different sensors. This is why we chose to massively parallelize our framework, ensuring everything can run simultaneously. This is also one of the major difficulties we have to deal with in Python.

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

crappy-1.5.2.tar.gz (11.1 MB view details)

Uploaded Source

Built Distribution

crappy-1.5.2-py3-none-any.whl (658.2 kB view details)

Uploaded Python 3

File details

Details for the file crappy-1.5.2.tar.gz.

File metadata

  • Download URL: crappy-1.5.2.tar.gz
  • Upload date:
  • Size: 11.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for crappy-1.5.2.tar.gz
Algorithm Hash digest
SHA256 2e8f02a3155c2b6f641874bf980ef194d80c05ccbe9ac4beb0970c2ce36354eb
MD5 71097b22cd8a5d3fc51b768dba6aff5b
BLAKE2b-256 6fbd90916fbfe22a0edcdc64d07c747d861473e0e90dd17602f7607a13492838

See more details on using hashes here.

File details

Details for the file crappy-1.5.2-py3-none-any.whl.

File metadata

  • Download URL: crappy-1.5.2-py3-none-any.whl
  • Upload date:
  • Size: 658.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for crappy-1.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ab35b53513ef3fc10ac526c87c83417c7a34d8f028a5f56e01d8f83d138e3704
MD5 63ac10b570765668f7b0748f26430ac5
BLAKE2b-256 b3dc53bcc859c1d98a0fd70abe1478560c51a86e40fa0ac6c71139177fb4d237

See more details on using hashes here.

Supported by

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