Introduction
Cryo HMI Template is a template project offered to quick start the process of creating an HMI/frontend for a Cryogenic PLC application.
This documents provides instructions on how The TwinCAT template HMI (from now on referred as TcHmiTemplate or just Template) project works and what it consists of.
Version history
Date |
Notes |
|---|---|
2024-06-03 |
Initial release. |
2024-07-10 |
Added Cryo PLC example project (CryoPlcExampleProject) to replace the PDS PLC project.
Fixed bug in
UserControls/PumpUserControl.usercontrol, where listener for the state STOPPING was never implemented.Added user control
UserControls/SequenceControlFaceplate.usercontrol and associated resources. See chapter for the sequene faceplates.Updated dependencies/requirements from projects; The ESO cryo framework 1.0.0 → 1.0.1. The ESO cryo PLC library 0.0.2.10 → 0.0.2.12.
Added
Pages/EvacuateSequence.content. Added EvacuateSequence page identity to PageIdentity datatype. See chapter sequence.Updated
Pages/CryogenicController.content by adding an instance of the SequenceControlFaceplate.usercontrol. |
2024-09-24 |
Fixed bug in the
UserControls/StirlingCoolerUserControl.usercontrol in where the state symbol was not updated according to the state of the cooler.Added user control
UserControls/LakeshoreControllerUserControl.usercontrol. See chapter for the lakeshore controller user control.Added faceplate
Faceplates/LakeshoreFaceplate.usercontrol. See chapter for the lakeshore faceplate.Updated dependencies/requirements from projects; The ESO cryo PLC library 0.0.2.12 → 0.0.2.16.
Updated
Pages/CryogenicController.content by adding an instance of the LakeshoreControllerUserControl.usercontrol & Faceplates/LakeshoreFaceplate.usercontrol.Changed behaviour of the filtering of event messages, so that when pressing the “Active Alarms” and “All Messages” buttons in the device faceplates also filter based on the instance name of the device and not only on the event class.
Added column in the event class to display the source/device name of all events.
|
2024-10-01 |
Added user access control for the following:
- Service tab faceplate (Engineering on/off). Only engineering group is allowed to turn engineering mode on. Engineering group + operation group can turn engineering mode off.
- Sequence control faceplate. The monitoring group is not allowed to press the “Start” + “Stop” buttons.
- No Alarm/Warning faceplate. The monitoring group is not allowed to press the “Confirm” button.
- Cooler On/Off faceplate. The monitoring group is not allowed to press the “On” + “Off” and the “Automatic” + “Manual” buttons.
- Pump On/Off faceplate. The monitoring group is not allowed to press the “On” + “Off” buttons and the “Automatic” + “Manual” buttons.
- Valve Open/Close faceplate. The monitoring group is not allowed to press the Open/Close buttons and the “Automatic” + “Manual” buttons.
Added new user “Observer” that is part of the group “Monitoring”.
Updated pump faceplate with one additional tab “Status”.
Added a “Go Back” button on the “Messages”-tab for all device faceplates. This gives the operator a possibility to go back to the previous page, which is useful if the operator quickly wants to go back to the page where he/she came from before showing the events in the event page. Note that this required:
- Additional internals symbols (LastVisitedPageIdentity, PreviouslyVisitedPageIdentity) and
- One global event listener (SelectedPageIdentity)
|
2024-10-08 |
Added heater user control.
Added heater faceplate.
Updated
CryogenicController.content to use the heater user control and the heater faceplate (through popups). |
2024-10-31 |
Added faceplates for analog sensors (
PressureFaceplate.usercontrol & TemperatureFaceplate.usercontrol).Added
PdsHeaterUserControl.usercontrol and PdsHeaterFaceplate.usercontrol.Splitted
AnalogSensorUserControl.usercontrol into two new separate ones, the TemperatureUserControl.usercontrol and PressureUserControl.usercontrol.In
CryogenicController.content, replaced the five instances of the analog sensor control with three instances of TemperatureUserControl.usercontrol and two instances of PressureUserControl.usercontrol.In
CryogenicController.content, made sure that all three temperature user controls have popups created if you click on them using the TemperatureFaceplate.usercontrol, and both pressure user controls have popups created if you click on them using the PressureFaceplate.usercontrol.In
CryogenicController.content, replaced the three instances of HeaterUserControl.usercontrol to PdsHeaterUserControl.usercontrol.In
CryogenicController.content, replaced the three instances of HeaterFaceplate.usercontrol to PdsHeaterFaceplate.usercontrol.Updated dependencies/requirements from projects; The ESO cryo PLC library 0.0.2.12 → 0.0.2.18 & the ESO cryo PLC HMI gateway library 0.0.0.1 → 1.0.0.0.
|
2025-02-04 |
Solved bug in ESO cryo PLC HMI gateway library where the requested mode (Auto or Manual) was not unset for the HMI gateway devices. The PLC HMI gateway library version is incremented to 1.0.0.1.
|
2025-12-05 |
Added CryoTcHmiTemplate and CryoFramework for HMI 14.x (TwinCAT 3.1.4026.x).
Added chapter for RFID tag support in CryoTcHmiTemplate
|
2026-01-28 |
Added note that JB.TcHmiDynamicPopup is available as NuGet package in ESO GitLab.
Added reference to pre-compiled version of the TcUiClientExtension
|
Scope
This document is the user manual for Cryo HMI Template project. The intended audience are ELT users, consortia developers or Cryogenic Engineers.
This Package is one of the deliverables for ESO Cryo Framework, which is composed by:
Cryo Library: PLC Library for standard ESO Cryogenic devices.
Cryo HMI Framework Controls: Collection of HMI Framework controls that will interface with Cryo Library
Cryo HMI Template Project: Start-up project to create an HMI Application. The project comes with a base project structure, UserControls and references to ESO libraries (this document).
Cryo PLC Example Project: PLC project used in conjunction with the Cryo HMI Template Project. There is no hardware (I/O) dependency for this project and as such it can be running locally on the desktop.
Acronyms
ELT |
Extremely Large Telescope |
FB |
Function Block |
GUI |
Graphical User Interface |
HMI |
Human Machine Interface |
IFW |
Instrument Framework |
PLC |
Programmable Logic Controller |