В реальных многоточечных структурах систем телемеханики могут одновременно использоваться диалоговые процедуры различных классов. В качестве примера на рис. 4.9 представлена диаграмма, иллюстрирующая процедуру обмена данными в многоточечной структуре, с одной главной станцией и п периферийными станциями.
Главная станция А выполняет роль первичной, посылает данные к вторичным станциям Вi (i= 1 -- n), используя процедуру S2 — посылка с подтверждением (квитанцией).
Положим, что вторичные станции В1 и В2 приняли данные от станции А правильно и подтверждают это положительными квитанциями КВП (специально выделенный байт Е5Н в формате FT1.2, 14Н в формате FT2, два байта 12Н и 3DH в формате FT3). Посылка данных на станцию Вn требует более подробного ответа (например, при посылке команды ТУ требуется получить подтверждение приема посланной команды). При этом от станции Вn следует подтверждение в виде короткого кадра фиксированной длины (см. рис. 4.6), в котором содержатся адрес вторичной станции и данные о принятой команде.
Рис. 4.9. Диалоговые процедуры S2 и S3
Затем следует посылка данных от станции А по адресу Вт (ADP = = т). Ответ от Вт также осуществляется коротким кадром, в котором кроме подтверждения правильности приема данных от станции А содержится сообщение, что станция Вт имеет данные 1-го класса, которые необходимо срочно передать на станцию А. Для этой цели в байте управления от Вт к А посылается бит T3D о наличии на станции Вт данных 1-го класса (приоритета). Получив это сообщение, станция Л переходит в режим диалоговой процедуры S3 — запрос—ответ: станция А посылает кадр запроса данных 1-го класса (код № 10 в табл. 4.10), а станция Вт отвечает полным кадром ’’ответ” с данными 1-го класса. После приема этого кадра станция А еще раз повторяет запрос с адресом Вт, и так продолжается до тех пор, пока станция Вт в своем ответе сообщит, что больше данных 1-го класса не имеет (бит T3D = 0 в байте управления).
Если посылка данных D от первичной станции принята правильно, но не может быть передана пользователю из-за переполнения буфера памяти вторичной станции, то она отвечает однобайтной отрицательной квитанцией (КВО). Эта ситуация иллюстрируется на рис. 4.9 для станции Bm+1 (процедура S2).
На рис. 4.10 иллюстрируется процедура S2 при обнаружении ошибок при передаче данных (по отсутствию ответа от вторичной станции).
При отсутствии ответа в течение оговоренного времени первичная станция повторяет посылку D с неизменным битом СЧБ (например, СЧБ = 1) по прежнему адресу вторичной станции (например, В1).
Рис. 4.10. Ошибка при передаче посыпки данных и приеме квитанции в процедуре S2
Рис. 4.11. Диалоговая процедура S3-запрос-ответ
Если квитанция от вторичной станции (например, B1) повреждается при передаче, то первичная станция через некоторое время t также
повторяет посылку D по прежнему адресу (ADP = п) с неизменным счетным битом (например, СЧБ = 0). Станция Вп, вновь получив данные с СЧБ = 0, определяет, что ее квитанция (подтверждение приема) не принята, т. е. процедура S2 оказалась неуспешной, и повторяет предыдущий ответ еще раз.
Число повторных посылок-ответов задается заранее и является параметром диалоговой процедуры.
На рис. 4.11 иллюстрируется диалоговая процедура S3 — запрос- ответ при наличии и отсутствии новых данных на вторичных (запрашиваемых) станциях. На станциях 1 и Вт+1 нет новых данных, и они отвечают отрицательной однобайтной квитанцией КВО. На станции В2 имеются данные 1-го класса, и она опрашивается дважды, пока все данные D1 1-го класса не будут переданы, что подтверждается наличием в поле управления кадра ответ—сообщение станции В2 бита T3D = = 0. На станции Вт нет данных 1-го класса, но есть новые данные, которые и передаются в ответе—сообщении с T3D =0.
На рис. 4.12 иллюстрируется процесс диалоговой процедуры S3 при обнаружении ошибок при передаче запроса и получении ответа. При посылке Запрос на вторичную станцию В1 (ADP=1) произошла ошибка, т. е. станция не приняла запроса и, естественно, не ответила. Тогда станция А по истечении некоторого времени t посылает вторично Запрос с тем же адресом ADP =1 и тем же счетным битом СЧБ=1. Если этот Запрос проходит успешно, то следует ответ—сообщение, который принимается станцией А, и процедура S3 со станцией В1заканчивается.
Рис. 4.12. Ошибки при запросе и ответе в процедуре S 3
При запросе станции Вт (по адресу ADP = т) обнаруживается ошибка при приеме Ответа, станция А через некоторое время повторяет Запрос с неизменным СЧБ = 0 и станция Вт повторяет Ответ с теми же данными, которые раньше не были приняты станцией А. Повторение данных происходит по признаку не обновленного счетного бита (СЧБ = 0). Число повторений является параметром диалоговой процедуры.