nidcpower


Namenidcpower JSON
Version 1.4.8 PyPI version JSON
download
home_pagehttps://github.com/ni/nimi-python
SummaryNI-DCPower Python API
upload_time2024-04-26 20:12:19
maintainerNI
docs_urlNone
authorNI
requires_pythonNone
licenseMIT
keywords nidcpower
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            Overall Status
--------------

+----------------------+------------------------------------------------------------------------------------------------------------------------------------+
| master branch status | |BuildStatus| |MITLicense| |CoverageStatus|                                                                                        |
+----------------------+------------------------------------------------------------------------------------------------------------------------------------+
| GitHub status        | |OpenIssues| |OpenPullRequests|                                                                                                    |
+----------------------+------------------------------------------------------------------------------------------------------------------------------------+

===========  ============================================================================================================================
Info         Python bindings for NI Modular Instrument drivers. See `GitHub <https://github.com/ni/nimi-python/>`_ for the latest source.
Author       NI
===========  ============================================================================================================================

.. |BuildStatus| image:: https://api.travis-ci.com/ni/nimi-python.svg
    :alt: Build Status - master branch
    :target: https://travis-ci.org/ni/nimi-python

.. |MITLicense| image:: https://img.shields.io/badge/License-MIT-yellow.svg
    :alt: MIT License
    :target: https://opensource.org/licenses/MIT

.. |CoverageStatus| image:: https://codecov.io/github/ni/nimi-python/graph/badge.svg
    :alt: Test Coverage - master branch
    :target: https://codecov.io/github/ni/nimi-python

.. |OpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python.svg
    :alt: Open Issues + Pull Requests
    :target: https://github.com/ni/nimi-python/issues

.. |OpenPullRequests| image:: https://img.shields.io/github/issues-pr/ni/nimi-python.svg
    :alt: Open Pull Requests
    :target: https://github.com/ni/nimi-python/pulls


.. _about-section:

About
=====

The **nidcpower** module provides a Python API for NI-DCPower. The code is maintained in the Open Source repository for `nimi-python <https://github.com/ni/nimi-python>`_.

Support Policy
--------------
**nidcpower** supports all the Operating Systems supported by NI-DCPower.

It follows `Python Software Foundation <https://devguide.python.org/#status-of-python-branches>`_ support policy for different versions of CPython.


NI-DCPower Python API Status
----------------------------

+-------------------------------+--------------------------+
| NI-DCPower (nidcpower)        |                          |
+===============================+==========================+
| Driver Version Tested Against | 2024 Q2                  |
+-------------------------------+--------------------------+
| PyPI Version                  | |nidcpowerLatestVersion| |
+-------------------------------+--------------------------+
| Supported Python Version      | |nidcpowerPythonVersion| |
+-------------------------------+--------------------------+
| Documentation                 | |nidcpowerDocs|          |
+-------------------------------+--------------------------+
| Open Issues                   | |nidcpowerOpenIssues|    |
+-------------------------------+--------------------------+
| Open Pull Requests            | |nidcpowerOpenPRs|       |
+-------------------------------+--------------------------+


.. |nidcpowerLatestVersion| image:: http://img.shields.io/pypi/v/nidcpower.svg
    :alt: Latest NI-DCPower Version
    :target: http://pypi.python.org/pypi/nidcpower


.. |nidcpowerPythonVersion| image:: http://img.shields.io/pypi/pyversions/nidcpower.svg
    :alt: NI-DCPower supported Python versions
    :target: http://pypi.python.org/pypi/nidcpower


.. |nidcpowerDocs| image:: https://readthedocs.org/projects/nidcpower/badge/?version=latest
    :alt: NI-DCPower Python API Documentation Status
    :target: https://nidcpower.readthedocs.io/en/latest


.. |nidcpowerOpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python/nidcpower.svg
    :alt: Open Issues + Pull Requests for NI-DCPower
    :target: https://github.com/ni/nimi-python/issues?q=is%3Aopen+is%3Aissue+label%3Anidcpower


.. |nidcpowerOpenPRs| image:: https://img.shields.io/github/issues-pr/ni/nimi-python/nidcpower.svg
    :alt: Pull Requests for NI-DCPower
    :target: https://github.com/ni/nimi-python/pulls?q=is%3Aopen+is%3Aissue+label%3Anidcpower



.. _nidcpower_installation-section:

Installation
------------

As a prerequisite to using the **nidcpower** module, you must install the NI-DCPower runtime on your system. Visit `ni.com/downloads <http://www.ni.com/downloads/>`_ to download the driver runtime for your devices.

The nimi-python modules (i.e. for **NI-DCPower**) can be installed with `pip <http://pypi.python.org/pypi/pip>`_::

  $ python -m pip install nidcpower~=1.4.8


Contributing
============

We welcome contributions! You can clone the project repository, build it, and install it by `following these instructions <https://github.com/ni/nimi-python/blob/master/CONTRIBUTING.md>`_.

Usage
------

The following is a basic example of using the **nidcpower** module to open a session to a Source Meter Unit and measure voltage and current.

.. code-block:: python

    import nidcpower
    # Configure the session.

    with nidcpower.Session(resource_name='PXI1Slot2/0') as session:
        session.measure_record_length = 20
        session.measure_record_length_is_finite = True
        session.measure_when = nidcpower.MeasureWhen.AUTOMATICALLY_AFTER_SOURCE_COMPLETE
        session.voltage_level = 5.0

        session.commit()
        print('Effective measurement rate: {} S/s'.format(session.measure_record_delta_time / 1))

        samples_acquired = 0
        print('Channel           Num  Voltage    Current    In Compliance')
        row_format = '{0:15} {1:3d}    {2:8.6f}   {3:8.6f}   {4}'
        with session.initiate():
            channel_indices = '0-{}'.format(session.channel_count - 1)
            channels = session.get_channel_names(channel_indices)
            for i, channel_name in enumerate(channels):
                samples_acquired = 0
                while samples_acquired < 20:
                    measurements = session.channels[channel_name].fetch_multiple(count=session.fetch_backlog)
                    samples_acquired += len(measurements)
                    for i in range(len(measurements)):
                        print(row_format.format(channel_name, i, measurements[i].voltage, measurements[i].current, measurements[i].in_compliance))

`Other usage examples can be found on GitHub. <https://github.com/ni/nimi-python/tree/master/src/nidcpower/examples>`_

.. _support-section:

Support / Feedback
==================

For support specific to the Python API, follow the processs in `Bugs / Feature Requests`_.
For support with hardware, the driver runtime or any other questions not specific to the Python API, please visit `NI Community Forums <https://forums.ni.com/>`_.

.. _bugs-section:

Bugs / Feature Requests
=======================

To report a bug or submit a feature request specific to Python API, please use the
`GitHub issues page <https://github.com/ni/nimi-python/issues>`_.

Fill in the issue template as completely as possible and we will respond as soon
as we can.


.. _documentation-section:

Documentation
=============

Documentation is available `here <http://nidcpower.readthedocs.io>`_.


.. _license-section:

License
=======

**nimi-python** is licensed under an MIT-style license (`see
LICENSE <https://github.com/ni/nimi-python/blob/master/LICENSE>`_).
Other incorporated projects may be licensed under different licenses. All
licenses allow for non-commercial and commercial use.


**gRPC Features**

For driver APIs that support it, passing a GrpcSessionOptions instance as a parameter to Session.__init__() is
subject to the NI General Purpose EULA (`see NILICENSE <https://github.com/ni/nimi-python/blob/master/NILICENSE>`_).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ni/nimi-python",
    "name": "nidcpower",
    "maintainer": "NI",
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": "opensource@ni.com",
    "keywords": "nidcpower",
    "author": "NI",
    "author_email": "opensource@ni.com",
    "download_url": "https://files.pythonhosted.org/packages/8c/ab/2cf2f7e95e30e185e128a4859ae2940144f533db4fb09dbc5f4afe9bf4c7/nidcpower-1.4.8.tar.gz",
    "platform": null,
    "description": "Overall Status\n--------------\n\n+----------------------+------------------------------------------------------------------------------------------------------------------------------------+\n| master branch status | |BuildStatus| |MITLicense| |CoverageStatus|                                                                                        |\n+----------------------+------------------------------------------------------------------------------------------------------------------------------------+\n| GitHub status        | |OpenIssues| |OpenPullRequests|                                                                                                    |\n+----------------------+------------------------------------------------------------------------------------------------------------------------------------+\n\n===========  ============================================================================================================================\nInfo         Python bindings for NI Modular Instrument drivers. See `GitHub <https://github.com/ni/nimi-python/>`_ for the latest source.\nAuthor       NI\n===========  ============================================================================================================================\n\n.. |BuildStatus| image:: https://api.travis-ci.com/ni/nimi-python.svg\n    :alt: Build Status - master branch\n    :target: https://travis-ci.org/ni/nimi-python\n\n.. |MITLicense| image:: https://img.shields.io/badge/License-MIT-yellow.svg\n    :alt: MIT License\n    :target: https://opensource.org/licenses/MIT\n\n.. |CoverageStatus| image:: https://codecov.io/github/ni/nimi-python/graph/badge.svg\n    :alt: Test Coverage - master branch\n    :target: https://codecov.io/github/ni/nimi-python\n\n.. |OpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python.svg\n    :alt: Open Issues + Pull Requests\n    :target: https://github.com/ni/nimi-python/issues\n\n.. |OpenPullRequests| image:: https://img.shields.io/github/issues-pr/ni/nimi-python.svg\n    :alt: Open Pull Requests\n    :target: https://github.com/ni/nimi-python/pulls\n\n\n.. _about-section:\n\nAbout\n=====\n\nThe **nidcpower** module provides a Python API for NI-DCPower. The code is maintained in the Open Source repository for `nimi-python <https://github.com/ni/nimi-python>`_.\n\nSupport Policy\n--------------\n**nidcpower** supports all the Operating Systems supported by NI-DCPower.\n\nIt follows `Python Software Foundation <https://devguide.python.org/#status-of-python-branches>`_ support policy for different versions of CPython.\n\n\nNI-DCPower Python API Status\n----------------------------\n\n+-------------------------------+--------------------------+\n| NI-DCPower (nidcpower)        |                          |\n+===============================+==========================+\n| Driver Version Tested Against | 2024 Q2                  |\n+-------------------------------+--------------------------+\n| PyPI Version                  | |nidcpowerLatestVersion| |\n+-------------------------------+--------------------------+\n| Supported Python Version      | |nidcpowerPythonVersion| |\n+-------------------------------+--------------------------+\n| Documentation                 | |nidcpowerDocs|          |\n+-------------------------------+--------------------------+\n| Open Issues                   | |nidcpowerOpenIssues|    |\n+-------------------------------+--------------------------+\n| Open Pull Requests            | |nidcpowerOpenPRs|       |\n+-------------------------------+--------------------------+\n\n\n.. |nidcpowerLatestVersion| image:: http://img.shields.io/pypi/v/nidcpower.svg\n    :alt: Latest NI-DCPower Version\n    :target: http://pypi.python.org/pypi/nidcpower\n\n\n.. |nidcpowerPythonVersion| image:: http://img.shields.io/pypi/pyversions/nidcpower.svg\n    :alt: NI-DCPower supported Python versions\n    :target: http://pypi.python.org/pypi/nidcpower\n\n\n.. |nidcpowerDocs| image:: https://readthedocs.org/projects/nidcpower/badge/?version=latest\n    :alt: NI-DCPower Python API Documentation Status\n    :target: https://nidcpower.readthedocs.io/en/latest\n\n\n.. |nidcpowerOpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python/nidcpower.svg\n    :alt: Open Issues + Pull Requests for NI-DCPower\n    :target: https://github.com/ni/nimi-python/issues?q=is%3Aopen+is%3Aissue+label%3Anidcpower\n\n\n.. |nidcpowerOpenPRs| image:: https://img.shields.io/github/issues-pr/ni/nimi-python/nidcpower.svg\n    :alt: Pull Requests for NI-DCPower\n    :target: https://github.com/ni/nimi-python/pulls?q=is%3Aopen+is%3Aissue+label%3Anidcpower\n\n\n\n.. _nidcpower_installation-section:\n\nInstallation\n------------\n\nAs a prerequisite to using the **nidcpower** module, you must install the NI-DCPower runtime on your system. Visit `ni.com/downloads <http://www.ni.com/downloads/>`_ to download the driver runtime for your devices.\n\nThe nimi-python modules (i.e. for **NI-DCPower**) can be installed with `pip <http://pypi.python.org/pypi/pip>`_::\n\n  $ python -m pip install nidcpower~=1.4.8\n\n\nContributing\n============\n\nWe welcome contributions! You can clone the project repository, build it, and install it by `following these instructions <https://github.com/ni/nimi-python/blob/master/CONTRIBUTING.md>`_.\n\nUsage\n------\n\nThe following is a basic example of using the **nidcpower** module to open a session to a Source Meter Unit and measure voltage and current.\n\n.. code-block:: python\n\n    import nidcpower\n    # Configure the session.\n\n    with nidcpower.Session(resource_name='PXI1Slot2/0') as session:\n        session.measure_record_length = 20\n        session.measure_record_length_is_finite = True\n        session.measure_when = nidcpower.MeasureWhen.AUTOMATICALLY_AFTER_SOURCE_COMPLETE\n        session.voltage_level = 5.0\n\n        session.commit()\n        print('Effective measurement rate: {} S/s'.format(session.measure_record_delta_time / 1))\n\n        samples_acquired = 0\n        print('Channel           Num  Voltage    Current    In Compliance')\n        row_format = '{0:15} {1:3d}    {2:8.6f}   {3:8.6f}   {4}'\n        with session.initiate():\n            channel_indices = '0-{}'.format(session.channel_count - 1)\n            channels = session.get_channel_names(channel_indices)\n            for i, channel_name in enumerate(channels):\n                samples_acquired = 0\n                while samples_acquired < 20:\n                    measurements = session.channels[channel_name].fetch_multiple(count=session.fetch_backlog)\n                    samples_acquired += len(measurements)\n                    for i in range(len(measurements)):\n                        print(row_format.format(channel_name, i, measurements[i].voltage, measurements[i].current, measurements[i].in_compliance))\n\n`Other usage examples can be found on GitHub. <https://github.com/ni/nimi-python/tree/master/src/nidcpower/examples>`_\n\n.. _support-section:\n\nSupport / Feedback\n==================\n\nFor support specific to the Python API, follow the processs in `Bugs / Feature Requests`_.\nFor support with hardware, the driver runtime or any other questions not specific to the Python API, please visit `NI Community Forums <https://forums.ni.com/>`_.\n\n.. _bugs-section:\n\nBugs / Feature Requests\n=======================\n\nTo report a bug or submit a feature request specific to Python API, please use the\n`GitHub issues page <https://github.com/ni/nimi-python/issues>`_.\n\nFill in the issue template as completely as possible and we will respond as soon\nas we can.\n\n\n.. _documentation-section:\n\nDocumentation\n=============\n\nDocumentation is available `here <http://nidcpower.readthedocs.io>`_.\n\n\n.. _license-section:\n\nLicense\n=======\n\n**nimi-python** is licensed under an MIT-style license (`see\nLICENSE <https://github.com/ni/nimi-python/blob/master/LICENSE>`_).\nOther incorporated projects may be licensed under different licenses. All\nlicenses allow for non-commercial and commercial use.\n\n\n**gRPC Features**\n\nFor driver APIs that support it, passing a GrpcSessionOptions instance as a parameter to Session.__init__() is\nsubject to the NI General Purpose EULA (`see NILICENSE <https://github.com/ni/nimi-python/blob/master/NILICENSE>`_).\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "NI-DCPower Python API",
    "version": "1.4.8",
    "project_urls": {
        "Homepage": "https://github.com/ni/nimi-python"
    },
    "split_keywords": [
        "nidcpower"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "462dae41a103a0c297bf534cd8004e74b4f9de113c93f7b56898c88551badc9a",
                "md5": "ffd735ae84f4867bc9209283e4d82ce7",
                "sha256": "35b2094f66c594893e37fd50c07e8a4bb711f31f5bd4b0540f3e168e3376e0c1"
            },
            "downloads": -1,
            "filename": "nidcpower-1.4.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ffd735ae84f4867bc9209283e4d82ce7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 122203,
            "upload_time": "2024-04-26T20:12:00",
            "upload_time_iso_8601": "2024-04-26T20:12:00.865813Z",
            "url": "https://files.pythonhosted.org/packages/46/2d/ae41a103a0c297bf534cd8004e74b4f9de113c93f7b56898c88551badc9a/nidcpower-1.4.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8cab2cf2f7e95e30e185e128a4859ae2940144f533db4fb09dbc5f4afe9bf4c7",
                "md5": "b6f3a1f42c36dc41e97eceaf3aaa6d30",
                "sha256": "6880777ec6138c4bad812339b96107f0351573bcf701391e4443b44021b2a392"
            },
            "downloads": -1,
            "filename": "nidcpower-1.4.8.tar.gz",
            "has_sig": false,
            "md5_digest": "b6f3a1f42c36dc41e97eceaf3aaa6d30",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 118816,
            "upload_time": "2024-04-26T20:12:19",
            "upload_time_iso_8601": "2024-04-26T20:12:19.647871Z",
            "url": "https://files.pythonhosted.org/packages/8c/ab/2cf2f7e95e30e185e128a4859ae2940144f533db4fb09dbc5f4afe9bf4c7/nidcpower-1.4.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-26 20:12:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ni",
    "github_project": "nimi-python",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "nidcpower"
}
        
NI
Elapsed time: 0.23877s