Skip to main content

useless client of a simulated device with PLICO

Project description

TIPICO: Test Inutile per Provare Inutilmente pliCO

Python package codecov Documentation Status PyPI version

tipico is a useless application to test the plico environment.

Installation

On the client

pip install tipico

On the server

pip install tipico-server

The tipico-server package installs also the client package.

Config files

The server requires to be configured

The application uses appdirs to locate configurations, calibrations and log folders: the path varies as it is OS specific. Typical paths for config files are:

  • On OS X $HOME/Library/Application Support/inaf.arcetri.ao.tipico_server/tipico_server.conf
  • On Ubuntu $HOME/.config/inaf.arcetri.ao.tipico_server/tipico_server.conf

The configuration files are copied when the application is first used from their original location in the python package to the final destination, where they are supposed to be modified by the user. The application never touches an installed file (no delete, no overwriting)

The easiest way of checking which config file is used by the server is to start it (see below) and check for the config file name written in the standard output.

Another way of querying the system for config file location is to run python on the server and type:

import tipico_server
tipico_server.defaultConfigFilePath

The user can specify customized conf/calib/log file path for both servers and client (how? ask!)

Usage

Starting Servers

Starts the 2 servers that control one device each.

tipico_start

Using client

In a Python / IPython shell:

Create a client of the device (suppose the server is running on localhost on port 60010)

In [1]: import tipico

In [2]: instr= tipico.instrument('localhost', 60010)

Get position and move actuator

In [3]: instr.getPosition()
Out[3]: 0

In [6]: instr.moveTo(np.array([42, 3.14]))

In [7]: instr.getPosition()
Out[7]: array([42.  ,  3.14])

Get position and move actuator


In [8]: status=instr.getStatus()

In [9]: status.actuatorCommands()
Out[9]: array([42.  ,  3.14])

In [10]: status.commandCounter()
Out[10]: 1

In [11]: instr.moveTo(np.array([1, 2]))

In [12]: status=instr.getStatus()

In [13]: status.commandCounter()
Out[13]: 2

In [14]: status.actuatorCommands()
Out[14]: array([1, 2])

In [15]: instr.getPosition()
Out[15]: array([1, 2])

In [16]: instr.getSnapshot('tux')
Out[16]: {'tux.COMMAND_COUNTER': 2, 'tux.SERIAL_NUMBER': '1', 'tux.STEP_COUNTER': 17065}

In [17]: instr.getSnapshot('tux')
Out[17]: {'tux.COMMAND_COUNTER': 2, 'tux.SERIAL_NUMBER': '1', 'tux.STEP_COUNTER': 21225}

Stopping Tipico

To kill the servers run

tipico_stop

More hard:

tipico_kill_all

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

tipico-0.16.0.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

tipico-0.16.0-py2.py3-none-any.whl (11.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file tipico-0.16.0.tar.gz.

File metadata

  • Download URL: tipico-0.16.0.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

File hashes

Hashes for tipico-0.16.0.tar.gz
Algorithm Hash digest
SHA256 d7b76dc05cb43920aacab638454856f9db0f05b6c20bbc11fad53efa68f0d940
MD5 cdeff886f472c7724d4af646b8bf4ad8
BLAKE2b-256 574ff487c7633a06a37bb81f73fa7d7813b623bcaab4fde6932f50ebb86afadc

See more details on using hashes here.

File details

Details for the file tipico-0.16.0-py2.py3-none-any.whl.

File metadata

  • Download URL: tipico-0.16.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.5

File hashes

Hashes for tipico-0.16.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 22f782c2d9d20010401f5bcff5772d5a419960542ce9f2525d469c8f1e467511
MD5 0b70a55adf9a66e173382b4e87b79ca0
BLAKE2b-256 c05fa811c1e8886dc042b1f87229bacd94a14173d84c6a13cc2200f866cab93e

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