Не думал, что вызовет интерес. По этому предлагаю усовершенствование подхода.
Добавляется бит синхронизации. ПЛК ставит этот бит в 0, скада по приему и записи данных взводит в 1. ПЛК по признаку этого бита ставит следующий индекс. В начале массива ставим временную метку, в конце вторую, считаем время прохода пакета (это для оценки пропускной способности)
Что это дает:
1. Гарантированную доставку данных.
2. Контроль над обновлением данных по времени прохода пакета.
3. Минимизация простоев в передаче данных и достижение максимального размера массива.
Экономьте Ваши теги..