ELOP II-NT is a programming tool developed by HIMA for H41q and H51q series safety programmable electronic systems, which complies with the IEC 61131-3 standard. This system provides a complete engineering environment and supports full lifecycle management from hardware configuration, logic programming to online debugging. Through ELOP II-NT, engineers can efficiently build safety control applications that comply with SIL 3 levels and ensure the reliability and maintainability of the system.
HIMA PES and H41q/H51q system family
HIMA PES mainly consists of two system families, H41q and H51q, both of which adopt a modular structure and support single channel and redundant configurations. H41q is a compact system that integrates the central unit, power supply, and I/O modules into a 5U height 19 inch subrack, suitable for small and medium-sized applications with no more than 192 I/O points. H51q is a modular system consisting of a 5U central rack and up to 16 4U I/O sub racks, supporting up to 256 I/O modules, suitable for large distributed control systems.
According to security level and availability requirements, the system can be divided into three types: single channel (M), high availability (H), and extremely high availability (HR), and can meet the highest AK 6 requirements through T Ü V certified MS, HS, and HRS models.
Resource allocation and hardware definition
3.1 Creating Configuration and Bus Definitions
Configuration is the highest level of structural tool that organizes the PES resources of the entire system together. In ELOP II-NT, first create a configuration and then define a bus system (such as HIBUS). HIBUS is used for communication between PES and programming units, supporting master/slave mode and up to 31 logic stations. Bus parameters such as baud rate, stop bits, and parity can be uniformly set in the properties and automatically applied to each resource.
3.2 Resource Types and Cabinet Editing
Resources represent a specific PES, and the resource type (such as H41q-M, H51q HRS, etc.) is selected through "RT allocation". In the "Edit Cabinet" dialog box, you can intuitively define the modules of the central rack, I/O sub rack, and each slot. Module parameters (such as baud rate and protocol of serial interface) can be configured in the properties. I/O channels can assign symbol labels and associate them with variables in program instances, thereby achieving hardware and logic mapping.
3.3 Resource Attribute Configuration
The resource attributes include multiple key tabs:
I/O parameters: Define the response of PES to I/O faults, such as noise suppression cycles, shutdown behavior of faulty modules (display only, emergency stop, or normal operation).
Redundancy: Set the behavior of the redundant central unit in case of failure (immediate shutdown, limited time single channel operation, etc.).
Security: Configure security time, watchdog time, requirement level, and restrict online changes, mandatory and testing modes, and other operations.
Programming unit: Define communication parameters with PADT.
Code Generator: Control code generation options, including generating reloadable code, comparing object code, comparing code images, etc.
Programming and Variable Management
4.1 Program instances and variable types
Create program instances under resources to implement the functionality of program types. Variables support multiple types such as BOOL, UINT, INT, WORD, and can be assigned initial values. Global variables can exchange data between different program organizations and function blocks.
4.2 System Variables and Parameters
System variables are predefined and used to access or control the state of PES in user programs, such as I/O errors, forced states, running versions, etc. System parameters are used to configure resource behavior, such as safe time, watchdog time, mandatory permission, etc.
4.3 Event Creation
The variable can be configured as' event driven 'to record state changes with timestamps. Events can be divided into Boolean events (changes in switch values) and scalar events (numerical exceedance). Events are stored in non-volatile buffers and can be transmitted to the upper system through X-OPC servers.

Communication configuration
5.1 HIBUS and HIPRO Protocol
HIBUS is a proprietary bus of HIMA, supporting HIPRO-S (safety related) and HIPRO-N (non safety) protocols. HIPRO-S is used for secure data exchange between PES, using a point-to-point connection where data is directly transmitted from the sender to the receiver and protected by code and signature. HIPRO-N is operated by the PES master station as the data center, collecting data from slave stations and distributing it to other master stations.
5.2 PES main station
The PES master station is a coprocessor module in the H51/H51q system, capable of managing up to 31 slave stations. The main station program needs to be compiled and downloaded to the coprocessor module. The master station can be configured as a time master station, synchronizing the time of all PES on the bus.
5.3 Communication with External Systems
Support communication with external systems through protocols such as MODBUS, 3964R, PROFIBUS-DP, etc. MODBUS basic address can be set in resource properties, and export/import direction can be specified in variable properties. The data blocks and words of the 3964R protocol can be defined separately.
Standard functional block
ELOP II-NT provides a rich set of standard functional blocks to simplify the development of secure applications
H8-STA-3: Group safety related output modules to achieve group shutdown.
H8-UHR-3: Set and read the date and time of PES, generate minute, hour, and day pulses.
HA-LIN-3: Linearization of thermocouple or PT100 temperature sensor, outputting temperature value (one tenth degree).
HA-PID-3: Digital PID controller, supports P, I, D, PI, PD, PID modes, and can switch between manual/automatic mode online.
HA-PMU-3: Convert the digital value of the analog input module into thousandths, or convert thousandths into output values.
HA-RTE-3: Monitoring testable analog input module (F6213/F6214), supporting redundant input value calculation and fault handling.
HB-BLD-3/4: Monitor the testable digital output module (F3323/F3331/F3334), detect module faults, open circuits, and short circuits, and support redundant mode.
HB-RTE-3: Monitoring testable digital input module (F3235/F3237/F3238), supporting fault detection and voting for both single and redundant channels.
HK-AGM-3: Monitor the operational status and bus connection of the PES master station.
HK-LGP-3: Configure logic diagram printing and support multi controller shared printers.
HK-MMT-3: MODBUS main station, supports dial-up communication through telephone lines.
HZ-DOS-3: Diagnostic mode, reporting module faults without shutting down, used to improve the availability of non safety circuits.
HZ-FAN-3: Display the fault channels of testable I/O modules.
Code generation and loading
7.1 Code Generator
After completing the programming, start the code generator through the resource context menu. Errors and status information will be displayed during the generation process. For security related systems, it is necessary to enable object code comparators and generate code comparison images for subsequent detection and modification.
7.2 Compilation and Download
The PES main station program needs to be compiled and downloaded separately. In the control panel, operations such as downloading, reloading, starting, stopping, and single cycle execution can be performed. Operating system updates (OS downloads) are also completed through the control panel.
Online testing and diagnosis
8.1 Online testing window
Online testing provides real-time monitoring and debugging functions. Select 'ONLINE Test' from the resource context menu to open it. The window displays PES status, cycle time, communication status, etc. The program structure tree can be expanded, and double clicking on a function block or program can enter online monitoring.
8.2 Mandatory Variables
In online testing, variables can be forcibly inputted or outputted. After the input variable is forced, its value takes effect throughout the entire logic; The output variable is forced to only affect the physical output, and the logical value remains unchanged. Forcing can be executed in the OLT box or forced graphical interface.
8.3 System Variable Diagnosis
System variables provide rich diagnostic information, such as I/O error codes, communication counters, power failures, coprocessor module status, error masks, etc. These variables can be used in user programs for fault display and handling.
Safety related functions
ELOP II-NT has built-in security related functions to ensure the correct use of programming systems and prevent random hardware errors:
C code comparator: detects modifications in the application program.
Object code comparator: Generate two sets of object code using a non secure PC and compare them to detect hardware errors on the PC.
Code generation image: provides a foundation for subsequent security version control.
Functional testing and documentation: The program page can be marked as "checked", recording the inspector and time, ensuring that modifications are traceable.
