“No,” Arun said, hitting save and restarting the IO server. “I’m teaching Citect to be polite.”
For three agonizing seconds, nothing happened. Then, like a wave returning to shore, the grey blocks on the screen flashed yellow, then green. Tank C-47’s level read 47.3%. Pump 9B showed ‘Running.’ FT-104 ticked up: 12.4 L/s.
Lena exhaled. “You fixed it with a timer ?”
Arun rubbed his eyes. He’d seen this before. The hardware was fine. The problem lived in the invisible handshake between Citect and the ancient Modbus network. He pulled up the . citect modnet parameters
“Lost the whole southern skid,” his trainee, Lena, said, pointing at the mimic diagram. “But the PLC says it’s online.”
Arun leaned back. “In industrial automation, you don’t fight the hardware. You just adjust the until reality agrees to talk to your software. Tonight, reality needed an extra 230 milliseconds to find its voice.”
“Watch,” he said, clicking into the [MODNET] section of the citect.ini file. “Most people think ‘baud rate’ or ‘stop bits’ are the only things that matter. They’re wrong.” “No,” Arun said, hitting save and restarting the
“Too fast,” he replied. “Citect is like a hyperactive courier. It writes a request packet, then waits only 150ms for the line to clear before shoving the next one out. But the old Modbus repeater on the southern skid? It’s a retired unit from the 90s. It has dementia. It needs 350ms to remember where it left its keys.”
Lena squinted. “150 milliseconds? That’s fast.”
“You’re slowing down the entire polling cycle for one bad repeater?” Lena asked. Tank C-47’s level read 47
He changed the from WaitToSend=150 to WaitToSend=380 .
The alarm went silent. The graveyard shift resumed. And in the server log, a single line confirmed the fix: MODNET: Communications restored on COM5 (WaitToSend=380).