Skip to main content

This package provides everything to run a PID Controller with.

Project description

NOMAD-CAMELS Driver for PID

This package provides everything to run a PID Controller written for the measurement software NOMAD-CAMELS.
This PID is implemented as a pure software PID and can take any channel as input and any channel as output.

How to use

Use the input channel to control the PID values. After calculating the output, it will be written to the output channel.

The bias channel is for example useful in systems that consist of heating and cooling for temperature control. This channel is set to certain fixed values depending on the setpoint (see below).

The conversion functions for reading / setting work as follows:
The value from the input channel is the input for the conversion function for reading. Two default functions come with this package: Pt1000 and Pt100, referring to the temperature sensitive resistors with the same name. These functions calculate the temperature from a measured resistance, i.e. when your input channel is a resistance, you may use one of these functions to make your PID control a temperature.

The time delta is the time between to PID steps (i.e. reading, calculating, setting the new output value).

The PID values are set with the table:\

  • setpoint: When your desired setpoint is above this value, that line of the table will be used for the PID values.
  • kp, ki, kd: These are the typical three values for the proportional, integral and derivative part of the PID.
  • max_value, min_value: These values limit the output range.
  • bias: This value is put to the bias channel if that channel is provided.
  • stability-delta, stability-time: When the value is in the range of stability-delta around the setpoint for stability-time seconds, the PID will set its channel pid_stable to True. This is also used in the PID wait for stable step.

When interpolate PID values is used, all values inside the table are interpolated column-wise between two setpoints.
Example: When you provide kp=1 for the setpoint 0.0 and kp=2 for the setpoint 10.0, using a setpoint of 5.0 in the PID will set kp to 1.5.

The instruments comes with a custom step used in protocols: "PID wait for stable". This step provides a convenience function to wait until the stability criteria of the PID are fulfilled.

Documentation

For more information and documentation visit this page.

Changelog

0.2.3

Improvements:

  • Made description in Readme clearer
  • UI for custom conversion functions cleaner

0.2.2

Improvements:

  • Now allowing for custom conversion functions and from user-defined python files
  • Added descriptions for PID-channels and configs

Fixes:

  • When startup of manual control breaks, no additional error is raised on closing anymore

0.2.1

Fixes:

  • settings got broken in last update, now fixed
  • progress bar of waiting step now works

0.2.0

Changes:

  • many previous settings are now configs, allowing for better access to the PID while running

Fixes:

  • NaN values are now handled by turning off the PID for the moment, instead of crashing

0.1.10

Fixes:

  • Output and single pid values should now be correctly recorded as float

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

nomad_camels_driver_pid-0.2.3.tar.gz (23.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nomad_camels_driver_pid-0.2.3-py3-none-any.whl (24.0 kB view details)

Uploaded Python 3

File details

Details for the file nomad_camels_driver_pid-0.2.3.tar.gz.

File metadata

  • Download URL: nomad_camels_driver_pid-0.2.3.tar.gz
  • Upload date:
  • Size: 23.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for nomad_camels_driver_pid-0.2.3.tar.gz
Algorithm Hash digest
SHA256 650ad6a7e5aa69f8f33eba4feb30b8312f6b234fa76995d865d4b858105b5dfa
MD5 f072045170d036aa7644042a6b385d07
BLAKE2b-256 6578cd5a771eeccb241d147d8a4682f0caa9f79119daf4559f8f92ea17c2e8c7

See more details on using hashes here.

File details

Details for the file nomad_camels_driver_pid-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for nomad_camels_driver_pid-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9a372ced8997eb14ed8a7b1efafff99eaf06f20fca5ea9bf12d785b94e9b9cd5
MD5 fd9fe68659f938c29491cb032ebf65a1
BLAKE2b-256 a680f1cd1325c5908ac85ecc7e3aaa730cfd807094f211d36e28577c8cdd296c

See more details on using hashes here.

Supported by

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