Заметил, что переменная .xAllSlavesOk не совсем правильно отображает состояние слейвов. Переменная тру, но фактически в кодесисе присутствуют восклицательные знаки. Заменил эту переменную на NOT(.xError or .xError и так далее) вместо .xAllSlavesOk и работать стало без перебоев в сети (ну то есть, если перебои появлялись, то связь восстанавливалась в соответствии с написанным алгоритмом).