ага. подумаю над проблемой.
Однако что сразу бросается в глаза:
"2103","585.443116000","10.0.6.10","10.0.6.234","M odbus/TCP","71","Response: Trans: 0; Unit: 5, Func: 3: Read Holding Registers"
"2104","585.444082000","10.0.6.234","10.0.6.10","M odbus/TCP","66"," Query: Trans: 0; Unit: 5, Func: 3: Read Holding Registers"
"2106","585.446016000","10.0.6.10","10.0.6.234","M odbus/TCP","81","Response: Trans: 0; Unit: 5, Func: 3: Read Holding Registers"
"2107","585.447086000","10.0.6.234","10.0.6.10","M odbus/TCP","66"," Query: Trans: 0; Unit: 5, Func: 3: Read Holding Registers"
"2113","585.702699000","10.0.6.10","10.0.6.234","M odbus/TCP","71","Response: Trans: 0; Unit: 5, Func: 3: Read Holding Registers"
"2114","585.703080000","10.0.6.234","10.0.6.10","M odbus/TCP","66"," Query: Trans: 0; Unit: 5, Func: 3: Read Holding Registers"
Такое ощущение, что OPC выплёвывает следующий запрос не по расписанию опроса, а как только пришёл ответ. ПЛК даже шлет
"2115","585.703270000","10.0.6.10","10.0.6.234","I CMP","70","Source quench (flow control)"
- сообщение о том, что он не может так часто обрабатывать запросы (т.е. внутренний буфер сокета заполнился). Т.к. буфер динамический - а это около 100 записей, то, полагаю, в этом и проблема.
Буфер заполняется и пока ПЛК пытается его переварить - ответы начинают рассинхронизовываться.
Попробуйте снизить частоту опроса.





Ответить с цитированием