sdss-drift


Namesdss-drift JSON
Version 1.2.0 PyPI version JSON
download
home_pagehttps://github.com/sdss/drift
SummaryModbus PLC control library
upload_time2024-05-31 05:08:01
maintainerNone
docs_urlNone
authorJosé Sánchez-Gallego
requires_python<4.0,>=3.8
licenseBSD-3-Clause
keywords astronomy software
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # SDSS-V Modbus PCL library

![Versions](https://img.shields.io/badge/python->3.8-blue)
[![Documentation Status](https://readthedocs.org/projects/sdss-drift/badge/?version=latest)](https://sdss-drift.readthedocs.io/en/latest/?badge=latest)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Test](https://github.com/sdss/drift/actions/workflows/test.yml/badge.svg)](https://github.com/sdss/drift/actions/workflows/test.yml)
[![codecov](https://codecov.io/gh/sdss/drift/branch/master/graph/badge.svg)](https://codecov.io/gh/sdss/drift)

This library provides an asynchronous interface with modbus devices over a TCP ethernet controller (such as [this one](https://www.wago.com/us/controllers-bus-couplers-i-o/controller-modbus-tcp/p/750-862)) and control of the connected I/O modules. The code is a relatively thin wrapper around [Pymodbus](http://riptideio.github.io/pymodbus/) with the main feature being that it's possible to define a PLC controller and a complete set of modules as a YAML configuration file which can then be loaded. It also provides convenience methods to read and write to the I/O modules and to convert the read values to physical units.

This code is mostly intended to interface with the SDSS-V [FPS](https://www.sdss.org/future/technology/) electronic boxes but is probably general enough for other uses. It's originally based on Rick Pogge's [WAGO code](https://github.com/sdss/FPS/tree/master/WAGO).

## Installation

To install, run

```console
pip install sdss-drift
```

To install from source, git clone or download the code, navigate to the root of the downloaded directory, and do

```console
pip install .
```

`sdss-drift` uses [Poetry](https://poetry.eustace.io/) for development. To install it in development mode do

```console
poetry install -E docs
```

## Documentation

Refer to the Read the Docs [documentation](https://sdss-drift.readthedocs.io/en/latest) for more details.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/sdss/drift",
    "name": "sdss-drift",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.8",
    "maintainer_email": null,
    "keywords": "astronomy, software",
    "author": "Jos\u00e9 S\u00e1nchez-Gallego",
    "author_email": "gallegoj@uw.edu",
    "download_url": "https://files.pythonhosted.org/packages/7d/33/b26df92d114798f618576c4c11797d880465e002738d28920313667d3b63/sdss_drift-1.2.0.tar.gz",
    "platform": null,
    "description": "# SDSS-V Modbus PCL library\n\n![Versions](https://img.shields.io/badge/python->3.8-blue)\n[![Documentation Status](https://readthedocs.org/projects/sdss-drift/badge/?version=latest)](https://sdss-drift.readthedocs.io/en/latest/?badge=latest)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Test](https://github.com/sdss/drift/actions/workflows/test.yml/badge.svg)](https://github.com/sdss/drift/actions/workflows/test.yml)\n[![codecov](https://codecov.io/gh/sdss/drift/branch/master/graph/badge.svg)](https://codecov.io/gh/sdss/drift)\n\nThis library provides an asynchronous interface with modbus devices over a TCP ethernet controller (such as [this one](https://www.wago.com/us/controllers-bus-couplers-i-o/controller-modbus-tcp/p/750-862)) and control of the connected I/O modules. The code is a relatively thin wrapper around [Pymodbus](http://riptideio.github.io/pymodbus/) with the main feature being that it's possible to define a PLC controller and a complete set of modules as a YAML configuration file which can then be loaded. It also provides convenience methods to read and write to the I/O modules and to convert the read values to physical units.\n\nThis code is mostly intended to interface with the SDSS-V [FPS](https://www.sdss.org/future/technology/) electronic boxes but is probably general enough for other uses. It's originally based on Rick Pogge's [WAGO code](https://github.com/sdss/FPS/tree/master/WAGO).\n\n## Installation\n\nTo install, run\n\n```console\npip install sdss-drift\n```\n\nTo install from source, git clone or download the code, navigate to the root of the downloaded directory, and do\n\n```console\npip install .\n```\n\n`sdss-drift` uses [Poetry](https://poetry.eustace.io/) for development. To install it in development mode do\n\n```console\npoetry install -E docs\n```\n\n## Documentation\n\nRefer to the Read the Docs [documentation](https://sdss-drift.readthedocs.io/en/latest) for more details.\n\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "Modbus PLC control library",
    "version": "1.2.0",
    "project_urls": {
        "Documentation": "https://sdss-drift.readthedocs.org",
        "Homepage": "https://github.com/sdss/drift",
        "Repository": "https://github.com/sdss/drift"
    },
    "split_keywords": [
        "astronomy",
        " software"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e8b6e1affa5671e199a9b95ad053fc84485f098db6b3a0108bc4aa65a213bbda",
                "md5": "681e45e67ba375b7443bd42430e3d37b",
                "sha256": "9bc829d4ffc657a99f938a42cf1e67416099eb74cf35f288e54bbc37d0fb6967"
            },
            "downloads": -1,
            "filename": "sdss_drift-1.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "681e45e67ba375b7443bd42430e3d37b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.8",
            "size": 13248,
            "upload_time": "2024-05-31T05:07:59",
            "upload_time_iso_8601": "2024-05-31T05:07:59.597915Z",
            "url": "https://files.pythonhosted.org/packages/e8/b6/e1affa5671e199a9b95ad053fc84485f098db6b3a0108bc4aa65a213bbda/sdss_drift-1.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7d33b26df92d114798f618576c4c11797d880465e002738d28920313667d3b63",
                "md5": "c241f7a89079cc62af4a236b92c1be1b",
                "sha256": "b6b6ae0021512be2ee477066168871e080d7b947c18f9849debc20f16bf921ff"
            },
            "downloads": -1,
            "filename": "sdss_drift-1.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c241f7a89079cc62af4a236b92c1be1b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.8",
            "size": 13092,
            "upload_time": "2024-05-31T05:08:01",
            "upload_time_iso_8601": "2024-05-31T05:08:01.822521Z",
            "url": "https://files.pythonhosted.org/packages/7d/33/b26df92d114798f618576c4c11797d880465e002738d28920313667d3b63/sdss_drift-1.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-31 05:08:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sdss",
    "github_project": "drift",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "sdss-drift"
}
        
Elapsed time: 0.54231s