Привет, всезнающий All !
На закате своей кар'еры в небольшой, но малоизвестной :-) фирме сподобился я изваять небольшую гамму приборов, имеющих интерфейс и выпускаемых до сих пор с общим тиражом уже в тысячах штук. Опыта интерфейсного было немного, мне положили плохонький перевод описания Modbus фирмы Шнайдер Электрик :"Вот тебе букварь, по нему и дуй". Шаг влево, шаг вправо - сами понимаете. Выбор был небольшой : Modbus ASCII mode и он же RTU mode. Опасаясь, что от Винды необходимой для второго варианта непрерывности пакета я не дождусь ( а там пауза в 2 байта воспринимается как конец сообщения) , я выбрал первый. Физический и-фейс RS485. Скорости вполне хватало для опроса в разумных временных пределах 2-3 десятков точек. Сделали, разложили по цеху с десяток дивайсов даже не на витой паре, а на самокрутках - работает. С тем я и отбыл восвояси по независящим причинам. Потом выясняется - не идут сети на об'ектах. Приз- ванный на спасение софтописатель верхнего уровня ( 5-й по счету, первым дело начинал на FoxPro юноша, до этого автоматизировавший на Клиппере под ДОСом исполкомы, морги и загсы) - изрек вердикт : протокол ни в дугу. И хоть теперь мне это до фонаря, обидно стало ( не за себя даже, за старика Шнайдера - его ведь протокол :-) . Из того, что я узнал, выяснялись любопытные вещи : идет, допустим, на 9600, а на 1200 через пень-колоду, короткие сообщения еще так-сяк, а длинные затыкали систему. Единственно разумное об'я - снение я вижу такое : ребята тупо нарезают времянку по таймеру, и не дождавшись не то что отклика, а даже конца своей посылки, догоняют ей в хвост новой. Дивайсы, ес-сно, молчат - они ничего понять не могут. Вопрос такой у меня : есть ли у кого успешный опыт практического внедрения сабжа с примененем обычной винды на верхнем уровне (не реал-тайм ОС) и бинарной передачей данных (не ASCII ) ? Конечно, это не панацея, переход на RTU даст ускорение максимум процентов на 45 только чистого времени передачи, но даже в ASCII это надо умудриться : связь с 2 десятками дивайсов на уровне запросов "КТО ТАМ?" устанавливать минут 18 Ж-(
WBR Eugene