Introduction: Technological Evolution of Distributed I/O and HSL System Positioning
With the development of modular and flexible production line equipment, the traditional PLC centralized control mode has exposed problems such as complex wiring, difficult expansion, and high maintenance costs when dealing with a large number of sensors and actuators distributed over long distances. Distributed I/O installs input/output modules nearby the device and communicates with the main controller through a high-speed bus, becoming the standard architecture for modern intelligent manufacturing.
The Linghua Technology HSL system is a high-performance master-slave fieldbus based on RS-422 physical layer improvement. Its design goals are very clear: time determinism (accurate and computable scan cycles), high throughput (up to 12 Mbps transmission rate), and easy deployment (using standard Ethernet cables and RJ-45 connectors). The system core control card (PCI-7853/7854 or PMC-7852/G) is responsible for polling all slave modules and mapping I/O status to onboard SRAM. User applications can directly read and write memory through the PCI/PMC bus without processing underlying protocols.
HSL-DO32-M-N/P is a high-density digital output module in the HSL slave family, providing 32 transistor outputs (NPN or PNP type), occupying 2 slave indexes, suitable for driving actuators such as relays, solenoid valves, indicator lights, etc. Its aluminum alloy shell (M series) enhances heat dissipation and mechanical protection capabilities, and when combined with a dedicated terminal base (HSL-TB32-M-DIN), enables quick wiring and hot swappable replacement.
HSL system architecture and communication principles
2.1 master-slave polling mechanism
HSL adopts a single master multi slave command/response communication model. The main controller sequentially sends command frames to each slave station, including output data settings and input data requests. After receiving a command that matches its own address, the slave station immediately updates the output channel status and returns the current input status. This combination of "setting output+reading input" is completed within one command response cycle, greatly improving efficiency.
In the manual, the metaphor of "teacher student" is used: the master station calls on the teacher one by one (slave station number), releases output values, and requires answers to input status. After the students answer, the teacher records the answers on the blackboard (SRAM). After one round of roll call is completed, all slave outputs have been refreshed, and the main station memory has also saved the latest input data.
2.2 Physical Layer and Transmission Rate
Electrical standard: Improved RS-422 Multi drop, with full duplex or half duplex options.
Connection medium: Standard shielded Cat-5e Ethernet cable, RJ-45 interface.
Transmission speed: The software can be set to 3 Mbps, 6 Mbps (default), and 12 Mbps.
Port design: Each controller provides 2 physical ports (RJ-45), and each port can connect up to 32 slave modules in series. Two ports have the same signal (sending), but the receiving circuit is independent and supports redundant or partitioned wiring.
2.3 Slave Index and Address Mapping
Each slave module sets the starting address (1~63, address 0 reserved) in the system through a 6-digit DIP switch. Different modules occupy different numbers of indexes:
Single index module: such as HSL-DI16DO16 (16 in/16 out) occupies one index.
Dual index module: such as HSL-DO32-M-N/P, which occupies two consecutive indexes starting from odd numbers. For example, if DIP is set to 3, it will occupy indices 3 and 4.
Special modules: Analog or motion control modules may occupy skip indexes (even jumps in full duplex mode).
The main controller supports a maximum of 63 indexes, so theoretically it can mount 31 HSL-DO32-M modules (31 × 2=62 indexes) and achieve 992 digital outputs.
Detailed specifications and selection points of HSL-DO32-M-N/P module
3.1 Model Definition
HSL-DO32-M-N: PNN type (leakage type output), with one end of the load connected to a positive power supply, providing a ground circuit when the output tube is conductive.
HSL-DO32-M-P: PNP type (source output), with one end of the load grounded, providing positive voltage when the output tube is conducting.
3.2 Electrical characteristics (excerpted from the manual)
Parameter NPN type PNP type
Number of output channels 32 32
Switch capacity -50 mA/channel (@ 24VDC)+50 mA/channel (@ 24VDC)
Isolation method: Optocoupler isolation, 2500 VRMS optocoupler isolation, 2500 VRMS
Response time (on → off) 68 μ s (typical) 68 μ s (typical)
Response time (off → on) 1.1 μ s (typical) 1.1 μ s (typical)
Working voltage 24 VDC (nominal) 24 VDC (nominal)
Attention: The total output current is limited by the module PCB routing and terminal capacity. In actual use, please refer to the derating curve (not listed in the manual, it is recommended in engineering that the total power consumption does not exceed the maximum allowable value of the module).
3.3 Physical specifications
Shell: M series, aluminum alloy with heat sink, size 125mm × 80mm, installed on DIN rail with terminal base HSL-TB32-M-DIN.
Wiring method: Connect the on-site signal through the spring or screw terminals of the terminal base. The module itself can be hot swappable, and the entire system does not need to be powered off during replacement (but attention should be paid to live operation safety).
3.4 DIP switch setting
The 6-digit DIP switch on the back of the module (or on the terminal base) is used to set the starting index. Due to DO32 occupying two consecutive odd indices, the switch values must be odd (1, 3, 5,..., 61). For example:
Set the switch to 00000 1 (binary)=1 → occupy index 1,2.
Set 000011 (binary)=3 → occupy index 3,4.
Important limitation: The system scan cycle calculation is based on the "maximum actual occupancy index" rather than the number of physical connections. If the configuration index is not continuous, the main station will still scan for empty indexes, resulting in an extended cycle. Therefore, it is recommended to continuously allocate addresses starting from 1 to optimize performance.

Analysis of Scanning Cycle and Time Certainty
The most prominent advantage of HSL is deterministic scanning - the scanning period is only proportional to the "maximum slave index number" and is independent of module type and data volume (because the time slot of each index is fixed). The manual provides the reference time for each index in full duplex mode:
12 Mbps: 15.17 μ s/index
6 Mbps: 30.33 μ s/index
3 Mbps: 60.67 μ s/index
The minimum scanning period is 3 index time slots (even if there is only 1 module, it will occupy at least 3 time slots).
Calculation formula:
Tcycle=max_slave_index×tunit
among which
max_slave_index
The max_Slave_index is the maximum index number set by the system (specified through the max_Slave_Co parameter of the HSL_start function).
For example, if there is only one HSL-DO32-M-N module in the system and DIP is set to 1, it will actually occupy indices 1 and 2. However, to ensure communication, it is necessary to set Max_Slave-No to at least 3 (or use HSL_auto_start for automatic detection). At this time, the scanning period for 6 Mbps full duplex is 3 × 30.33 μ s=91 μ s.
If 16 DO32 modules are mounted (occupying 32 indexes), the period is 32 × 30.33 μ s ≈ 970 μ s, which is still much less than 1 ms.
In half duplex mode, each index time slot doubles, suitable for long-distance or high interference environments, but with longer periods.
Wiring topology and HUB/repeater expansion
5.1 Serial daisy chain
The most commonly used topology: master port → slave 1 → slave 2 →... → last slave. Each slave module's terminal base transmits the RJ-45 received signal in parallel to the next one, and enables the end terminal resistor (via base jumper) to eliminate reflections.
Maximum cable length (without HUB): 200 meters at 6 Mbps and 100 meters at 12 Mbps.
Cable requirements: Standard shielded Category 5e twisted pair, using only 4 wires (TX+, TX -, RX+, RX -).
5.2 Star or Tree Expansion (using HSL-HUB/Repeater)
HSL-HUB provides one input port and three output ports, which can divide the network into multiple sub branches and effectively increase the total wiring distance. The manual provides the maximum distance for cascading 1-7 HUBs (for example, at 6 Mbps, 7 HUBs can reach 1.6 km). However, it should be noted that for each additional HUB, the scanning cycle will experience an additional delay of approximately one index time slot (see Appendix D for the scanning schedule).
5.3 Terminal Resistance Setting
Each terminal base (such as HSL-TB32-M-DIN) has jumper wires JP3 (Tx terminal) and JP4 (Rx terminal). Only enable these two jumpers at the end module of the physical circuit, and disable the intermediate node, otherwise signal reflection will cause communication errors.
Self diagnosis and error handling mechanism
The HSL system has a powerful communication monitoring function built in, which helps on-site engineers quickly locate faulty substations.
No response counter: The master station maintains a 3-digit counter (0-7) for each slave station. During each polling, if the slave station responds correctly, the counter is reset to zero; If there is no response after timeout, the counter will be incremented by 1.
Error flag: When the counter is ≥ 3, the system marks the communication error of the slave station (CHK3 flag set); When the counter is 7, it is considered that the module is offline (CHK7).
Software query: Through the HSL_connect_status and HSL_slave.live functions, the application can read the communication status of each slave in real time, implementing fault alarm or automatic retry logic.
Self diagnostic driver: The driver layer defaults to detecting offline modules every 20 ms and can notify the upper layer through IRQ.
For output modules such as HSL-DO32, if communication is interrupted, their output status will maintain the last successfully received value (depending on the module design, usually maintained). Engineers can cooperate with watchdog timers (the main card supports hardware timer interrupts) to achieve a safe output state.
Software programming and LinkMaster debugging tools
7.1 Drivers and API Libraries
Linghua provides dynamic link libraries (D2K-DASK style) for Windows and Linux, with function prefixes uniformly set to HSL. For digital output, the core functions include:
HSL_D_writable output: Write a 32-bit output value at once.
HSL_D_Write_channel_output: Write channel by channel.
HSL_D_read_output: Read back the output value saved in the main card SRAM (confirm if the write is successful).
HSL_D_set_output: Configure output polarity (positive or negative logic) to adapt to different actuators.
Programming process (refer to Chapter 6 flowchart):
HSL_initial initializes the main card.
HSL_set_stcan_dedition sets the rate and duplex mode (optional).
HSL_auto_start or HSL_start starts scanning and automatically detects slave stations.
Loop call HSL_D_Write_output to update the output, while also calling HSL_slave_live to monitor the status.
Before exiting the program, call HSL_stop and HSL_close to release resources.
7.2 LinkMaster Utility Tools
During the development and debugging phase, the LinkMaster graphical tool greatly simplifies system validation. After running, automatically scan all main cards and connected slave stations, click on the corresponding module icon to manually control the on/off of each output channel, and observe the communication error counter in real time. For HSL-DO32, the interface displays 32 circular buttons, with red indicating conduction and gray indicating shutdown. This tool can complete hardware connection testing without writing any code and is the preferred method for on-site troubleshooting.
Suggestions for Terminal Base and On site Wiring Engineering
8.1 Base selection
HSL-TB32-M-DIN: Designed specifically for M-series modules, single slot, 32 channel screw or spring terminals, supporting DIN rail installation.
The base is equipped with a built-in power input (24VDC) and a common terminal (COM) to supply power to the module. NPN type output requires connecting the load to the positive power supply, while PNP type requires connecting the load to ground.
8.2 Wiring precautions
The output channel adopts optocoupler isolation, but the on-site power line should be routed separately from the signal line to avoid electromagnetic interference.
The current of each output channel should not exceed 50mA. If driving a large inductive load (such as a relay coil), a freewheeling diode should be connected in parallel at the load end to prevent the output tube from being damaged by the back electromotive force.
There is a fuse jumper (JP5) on the base, which can be selected to be connected in series with the fuse protection module.
8.3 Hot plug operation
The M series module supports hot swapping, and there is no need to disconnect the power and signal lines when replacing the module. However, it is important to ensure that the DIP switch address of the new module is consistent with the original module, otherwise the system address conflicts.
Precautions for System Integration and Replacement
For engineers who are maintaining outdated distributed systems (such as using third-party serial buses or dedicated ASIC solutions), HSL provides a clear upgrade path:
Compatibility: PCI-7853/7854 supports standard PCI slots, PMC-7852/G is suitable for embedded CompactPCI or VPX platforms, and meets industrial grade long life cycle requirements.
Software migration: Linghua provides rich example code (C/C++, VB, LabVIEW), with clear API design and short development cycle for new projects.
Spare parts management: The HSL product line covers DI, DO, AI, AO, relays, thermocouples, and motion control modules, reducing the variety of spare parts on a unified platform.
Key points when replacing discontinued modules:
Confirm the number and type of I/O points in the original system, and select the corresponding model (if originally 16 output, it can be upgraded to DO32 to increase margin).
Check the output polarity (NPN vs PNP) to ensure compatibility with the on-site load.
Recalculate the scanning cycle to ensure real-time requirements are met.
Fully test the new module using the LinkMaster tool before putting it into production.
