TC Temperature Controller¤
TCSeries
(Serial)
¤
TCSeries(equipment: Equipment)
flowchart LR
msl.equipment_resources.electron_dynamics.tc_series.TCSeries[TCSeries]
msl.equipment.interfaces.serial.Serial[Serial]
msl.equipment.interfaces.message_based.MessageBased[MessageBased]
msl.equipment.schema.Interface[Interface]
msl.equipment.interfaces.serial.Serial --> msl.equipment_resources.electron_dynamics.tc_series.TCSeries
msl.equipment.interfaces.message_based.MessageBased --> msl.equipment.interfaces.serial.Serial
msl.equipment.schema.Interface --> msl.equipment.interfaces.message_based.MessageBased
click msl.equipment_resources.electron_dynamics.tc_series.TCSeries href "" "msl.equipment_resources.electron_dynamics.tc_series.TCSeries"
click msl.equipment.interfaces.serial.Serial href "" "msl.equipment.interfaces.serial.Serial"
click msl.equipment.interfaces.message_based.MessageBased href "" "msl.equipment.interfaces.message_based.MessageBased"
click msl.equipment.schema.Interface href "" "msl.equipment.schema.Interface"
Establishes a connection to a TC Series Temperature Controller from Electron Dynamics Ltd.
Regular-expression patterns that are used to select this Resource when connect() is called.
manufacturer=r"Electron Dynamics"
model=r"TC\s*[M|L]"
flags=IGNORECASE
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
equipment
|
Equipment
|
An Equipment instance. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 | |
get_alarm
¤
get_alarm() -> Alarm
Get the alarm parameters.
Returns:
| Type | Description |
|---|---|
Alarm
|
The alarm parameters. |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 | |
get_control
¤
get_control() -> Control
Get the PID control parameters.
Returns:
| Type | Description |
|---|---|
Control
|
The control parameters. |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 | |
get_output
¤
get_output() -> Output
Get the output parameters.
Returns:
| Type | Description |
|---|---|
Output
|
The output parameters. |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
399 400 401 402 403 404 405 406 407 408 409 410 411 | |
get_sensor
¤
get_sensor() -> Sensor
Get the sensor parameters.
Returns:
| Type | Description |
|---|---|
Sensor
|
The sensor parameters. |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 | |
get_setpoint
¤
get_setpoint() -> Setpoint
Get the setpoint parameters.
Returns:
| Type | Description |
|---|---|
Setpoint
|
The setpoint parameters. |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
430 431 432 433 434 435 436 437 438 439 440 441 442 | |
get_status
¤
get_status() -> Status
Get the status.
Returns:
| Type | Description |
|---|---|
Status
|
The status parameters. |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 | |
set_alarm
¤
set_alarm(alarm: Alarm) -> None
Set the alarm parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
alarm
|
Alarm
|
The alarm parameters. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
465 466 467 468 469 470 471 472 473 474 475 | |
set_control
¤
set_control(control: Control) -> None
Set the PID control parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
control
|
Control
|
The control parameters. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
477 478 479 480 481 482 483 484 485 486 487 | |
set_output
¤
set_output(output: Output) -> None
Set the output parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
output
|
Output
|
The output parameters. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
489 490 491 492 493 494 495 496 | |
set_output_drive
¤
Set the output drive state and value.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
enable
|
bool
|
Whether to enable or disable the output drive. |
required |
value
|
float
|
Percent drive output. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
498 499 500 501 502 503 504 505 | |
set_sensor
¤
set_sensor(sensor: Sensor) -> None
Set the sensor type and the sensor parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
sensor
|
Sensor
|
The sensor parameters. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
507 508 509 510 511 512 513 514 515 516 | |
set_setpoint
¤
set_setpoint(setpoint: Setpoint) -> None
Set the setpoint parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
setpoint
|
Setpoint
|
The setpoint parameters. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
518 519 520 521 522 523 524 525 | |
set_test
¤
Set the test parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
mode
|
int
|
The test mode. One of:
|
required |
data
|
float
|
The test data. |
()
|
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 | |
Establishes a connection to a TC Series Temperature Controller from Electron Dynamics Ltd.
The main communication class is TCSeries.
Alarm
dataclass
¤
Alarm(
type: AlarmType,
alarm_min: float,
alarm_max: float,
ok_min: float,
ok_max: float,
limit_min: float,
limit_max: float,
)
Alarm parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
alarm_min
|
float
|
The temperature below which the alarm is activated. |
required |
alarm_max
|
float
|
The temperature above which the alarm is activated. |
required |
ok_min
|
float
|
The minimum temperature difference from the setpoint for the temperature to be okay. |
required |
ok_max
|
float
|
The maximum temperature difference from the setpoint for the temperature to be okay. |
required |
limit_min
|
float
|
The minimum temperature below which the drive output is disabled. |
required |
limit_max
|
float
|
The maximum temperature above which the drive output is disabled. |
required |
Control
dataclass
¤
Control(
type: ControlType,
p: float,
i: float,
d: float,
d_filter: float,
dead_band: float,
power_up_state: PowerUpState,
)
The PID control parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
type
|
ControlType
|
The control type. |
required |
p
|
float
|
The proportional (gain) value. With a proportional control type, the controller output is
proportional to the temperature error from the setpoint. The proportional terms sets
the gain for this, i.e., |
required |
i
|
float
|
The integral value. With integral action, the controller output is proportional to the amount of time the error is present. Integral action eliminates offset. The integral term is a time unit in seconds. NB for larger effects of integration reduce the integral time, also for operation without integral, integral time can be set to a large number, e.g. 1e6. |
required |
d
|
float
|
The derivative value. With derivative action, the controller output is proportional to the rate of change of the measurement or error. The controller output is calculated by the rate of change of the measurement with time, in seconds. To increase the derivative action increase the derivative value. |
required |
d_filter
|
float
|
The derivative filter is a low pass filter function on the derivative value. This allows the filtration of noise components which are a problem with a pure derivative function. The filter value should be set to be between 0 and 1. |
required |
dead_band
|
float
|
For use with On/Off control the dead band specifies the temperature range around the set point where the output is zero. For example:
|
required |
power_up_state
|
PowerUpState
|
Temperature control state from power up. |
required |
Output
dataclass
¤
Output parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
polarity
|
int | Polarity
|
Output drive polarity. |
required |
minimum
|
float
|
The minimum value limit of the output. Range -100 to +100. |
required |
maximum
|
float
|
The maximum value limit of the output. Range -100 to +100. |
required |
frequency
|
float
|
Sets the pulse-width modulation repetition frequency of the output drive. Range 20 to 1000 Hz. |
required |
Source code in packages/resources/src/msl/equipment_resources/electron_dynamics/tc_series.py
207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 | |
Sensor
dataclass
¤
Sensor(
type: SensorType,
x2: float,
x: float,
c: float,
unit: Unit,
averaging: bool,
r: float = 22000.0,
)
Sensor parameters.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
type
|
SensorType
|
Sensor type. |
required |
x2
|
float
|
See |
required |
x
|
float
|
See |
required |
c
|
float
|
The |
required |
unit
|
Unit
|
The temperature unit. |
required |
averaging
|
bool
|
Whether to enable or disable averaging. |
required |
r
|
float
|
Used for NTC or RES sensors and corresponds to the RL drive resistance. |
22000.0
|
Setpoint
dataclass
¤
Status
dataclass
¤
Status(
setpoint: float,
temperature: float,
controlled: bool,
output: float,
alarm_type: AlarmType,
faults: int,
temp_ok: bool,
supply_v: float,
version: str,
test_cycles: float,
test_mode_completed: bool,
)
Controller status.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
setpoint
|
float
|
Setpoint value. |
required |
temperature
|
float
|
required | |
controlled
|
bool
|
Whether the temperature control drive is on or off. |
required |
output
|
float
|
The output value (between -100 and 100). |
required |
alarm_type
|
AlarmType
|
The type of alarm used. |
required |
faults
|
int
|
Fault flags.
|
required |
temp_ok
|
bool
|
Whether the temperature is ok (within range). |
required |
supply_v
|
float
|
The supply voltage. |
required |
version
|
str
|
The firmware version number of the controller. |
required |
test_cycles
|
float
|
The number of test cycles that have occurred. |
required |
test_mode_completed
|
bool
|
Whether the test has completed. |
required |