jcxz 234 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 7 минут назад, tonyk_av сказал: Может. Я же приводил ссылки на платы последовательных интерфейсов с FIFO в 256 байт. Специально сделано, чтобы передавать без разрывов. Я же написал: "в общем случае". Т.е. - для COM-портов любого типа, образованных каким угодно оборудованием. Ведь тут некоторые утверждают, что в любом случае, для любых COM-портов всё будет ок: 2 часа назад, quark сказал: Итог: Любые внешние устройства, использующие протокол MODBUS, могут быть подключены, качестве ведомых устройств, к ПК как ведущему устройству. Все они будут корректно работать без каких-либо ограничений. Вот так вот. Понятно, что потом, когда петух жареный клюнет несчастный пользователь их кривых поделий здорово влетит в копеечку и предъявит им претензии, то они просто сольются. Здесь то за базар они ничем не рискуют.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 43 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба Обратите внимание на картинку. Ясно ведь нарисовано, что допускается пауза не более полутора символов. Даже для 115200 это около 150мкс. По нынешним временам это уйма времени. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 25 мая, 2023 Опубликовано 25 мая, 2023 (изменено) · Жалоба 11 минут назад, jcxz сказал: А если у вас например - ваш холодильник будет иногда вдруг самопроизвольно отключаться на несколько часов (потому как "умный дом", управление электропитанием, все дела ). Или свет в сортире иногда самопроизвольно выключаться в самые неподходящие моменты. По той же причине. Как это соотносится с этим? 23 минуты назад, mantech сказал: то ничего страшного не произойдет, если 1 из 100 пакетов придет с ошибкой, то же самое может случится на суперпупер надежном ПЛК, просто помеха в линии, так что, если программа на ПК написана максимально корректно Или у вас при ошибке кадра по любой причине, повтор не делается принципиально? Или принятый пакет не проверяется на целостность, на корректность КС и сразу идет в работу? Изменено 25 мая, 2023 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 234 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 15 минут назад, tonyk_av сказал: Ясно ведь нарисовано, что допускается пауза не более полутора символов. Даже для 115200 это около 150мкс. По нынешним временам это уйма времени. Для USB-CDC на USB-FS это всего лишь 64/11520 = 5.5 мсек. Что совсем немного. И то - только для FTDI (с энд-поинтами 64 байта) и при условии, что кадр был заполнен полностью. А все ли USB-CDC имеют эндпоинты == 64 байта или есть меньше? А если рядом сидит изохронный эндпоинт? А если рядом сидят другие USB-CDC? ... 13 минут назад, mantech сказал: Как это соотносится с этим? Или у вас при ошибке кадра по любой причине, повтор не делается принципиально? Или принятый пакет не проверяется на целостность, на корректность КС и сразу идет в работу? Элементарно: Ваш Modbus-RTU работает через USB-CDC-свисток. Вы воткнули рядом с ним колонку с музычкой. Которая качает через изохронную точку высококачественный звук. Связь и пропала. Вообще пропала. Потому как все кадры пошли теперь с разрывами. Так как не успевает пролезть длинный кадр через эндпоинт 64 байта посылаемый раз в несколько 1-мсек интервалов. Вы этого не заметили. Воткнули музычку и пошли в сортир. А мастер в это время всё повторял и повторял запросы. Которые никак не проходили теперь, так как кадры стали резаться. И через минуту, ваш контроллер (ведомый), выставил таймаут "отсутствия связи с центром". И по этой причине вырубил вам в сортире свет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ericN 3 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба В 25.05.2023 в 14:32, jcxz сказал: И по этой причине вырубил вам в сортире свет. Пошел в сортир, ставь музычку на паузу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 21 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 46 минут назад, mantech сказал: Эт где такие требования, что после одного опроса и сразу из списка? А если помеха, тогда что? Чет тут явно что-то мутное... 3 раза делался повтор. если 3 раза не ответил - переключались на резерв... ещё 3 раза - останавливали всю систему. На самом деле на длинных пакетах такое наблюдалось. сначало, когда увидели это на столе - сделали повторы. действительно - вдруг помеха (хотя линия короткая была, всё экранировано, даже в грозу помехе не откуда взяться). Но подстраховались повторами. Уже в работе, так бывало, что и 3 раза нет ответа. Мастер linux не гарантировал неразрывной передачи. это было редко, но было. и было от этого "не прияно". А теперь с ваших слов... 1 пакет из 100 теряем. Хорошо. кто силён в теории вероятности? если теряем 1 пакет из 100, то какова вероятность что потеряем 3 пакета подряд из 300? ps Когда строили АЭС в Чернобыле, то считалось что вероятность аварии очень мала. Авария на АЭС может произойти раз в 1 млн лет. Ученные не ошибались. Первый миллион прошел. pps причем граница между первым млн и вторым проходит где-то между 1986 и 2011 годами. фукусима - это уже из 2-го млн. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
destroit 9 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба Только что, ericN сказал: Пошел в сортир, ставь музычку на паузу. Во развернули диспут, за две платы + ПК ...чтоб комп не ВЫКЛючали, вешаю дежурный транспарант . Кстати, за BITBUS еще не тёрли ? Сотня+ устройств в одной системе пашет 24/7 крайние 20-ть лет ... ничего стороннего подключить нельзя . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 43 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 19 minutes ago, razrab83 said: Мастер linux не гарантировал неразрывной передачи. это было редко, но было. и было от этого "не прияно". Я вот понять не могу: в 16550 FIFO на 8 байт, плюс передача с использованием DMA- и есть пропуски? Для той платы с FIFO на 256 байт, ссылку на которую я показывал, есть драйвер для Линукс. Под Виндой за полгода работы на объекте ни разу не пришёл битый пакет ни с той платой, ни с MOXA-1150. А скорость нормальная, 115200. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 7 25 мая, 2023 Опубликовано 25 мая, 2023 (изменено) · Жалоба 1 час назад, tonyk_av сказал: Обратите внимание на картинку. Ясно ведь нарисовано, что допускается пауза не более полутора символов. Даже для 115200 это около 150мкс. По нынешним временам это уйма времени. Реакция 150мкс чисто программно непосильная задача не только для ОС Win и Lin но даже если вы программируете Bare metal многоядерный проц с гигерцовоой тактовой. Во первых тяжелое переключение контекста. Во вторых сложная иерархия кэшей и шинных коммутаторов. Из кэша - гигагерцы а махать ногами - медленно и печально. Нужно железо которое аппаратно поддерживает RTU а его в доступных компах нет. 3 часа назад, quark сказал: В реальности, только отдельные "'эстеты" используют "мусорные линии", болтающиеся в воздухе. Все остальные используют защитное смещение. ... Межфреймовая пауза между окончанием запроса и началом ответа обеспечивается ведомым устройством, которое работает по стандарту. Эта пауза принципиально не контролируется ведущим, за ненадобностью. Уже объяснял почему. Контроль нужен только на максимальную паузу, чтобы решить, что устройство уже не ответит. Неверный вывод. Все стандартные ведомые устройства будут работать. Для них все будет строго по стандарту. А как все устроено в ПК - их не касается. Защитное смещение (растяжка) это сопротивление 500 Ом или более. Выходное сопротивление передатчика RS485 менее 50 Ом. Разница на порядок. Кроме того растяжка вообще не обязательно для надежной работы при скрупулезном следовании стандарту RTU, она нужна только чтобы кое-как работало негодное оборудование а именно стандартные порты в ПК. Паузы 3.5T обрамляющие кадр с обеих сторон как раз и предназначены чтобы передатчик железобетонно удерживал в линии состояние Idle по которому разделяются кадры как ведомыми так и ведущим потому что в 485 линии они все одинаковые. Изменено 25 мая, 2023 пользователем _3m Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 43 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 13 minutes ago, _3m said: Реакция 150мкс чисто программно непосильная задача не только для ОС Win и Lin но даже если вы программируете Bare metal многоядерный проц с гигерцовоой тактовой. Странно, но МК даже на 48 МГц это делает не напрягаясь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 21 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 3 минуты назад, tonyk_av сказал: Странно, но МК даже на 48 МГц это делает не напрягаясь. МК это делает аппартно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
tonyk_av 43 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 15 minutes ago, _3m said: Разница на порядок. Кроме того растяжка вообще не обязательно для надежной работы при скрупулезном следовании стандарту RTU Растяжка идёт не из каких-то требований RTU, которых там и не было никогда, а из рекомендаций по разводке сетей стандарта EIA-485. 16 minutes ago, _3m said: она нужна только чтобы кое-как работало негодное оборудование а именно стандартные порты в ПК. Так стандартные порты в ПК- это EIA-232 с его плюс-минус 12В, а не EIA-485 с его 3.3В или 5В. Just now, razrab83 said: МК это делает аппартно. Если есть RTO. Мы так-то говорим, по-сути, о времени переключении контекста процессора. Я с удивлением узнал, что гигагерцовый процессор не успевает переключить контекст даже за 150мкс, а МК на 48МГц- может. Поржал, если честно. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quark 48 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 1 час назад, _3m сказал: Защитное смещение (растяжка) это сопротивление 500 Ом или более. Выходное сопротивление передатчика RS485 менее 50 Ом. Разница на порядок. Кроме того растяжка вообще не обязательно для надежной работы при скрупулезном следовании стандарту RTU, она нужна только чтобы кое-как работало негодное оборудование а именно стандартные порты в ПК. Паузы 3.5T обрамляющие кадр с обеих сторон как раз и предназначены чтобы передатчик железобетонно удерживал в линии состояние Idle по которому разделяются кадры как ведомыми так и ведущим потому что в 485 линии они все одинаковые. Понятно. Еще один фанат "мусорных линий" объявился, в компанию к Arlleex. Нравиться героически преодолевать трудности? Особенно те, которые создали себе сами? Ну-ну.. В этом случае ПК, в качестве мастера, Вам конечно не подойдет. Забудьте. Но, я думаю, эту трудность Вы тоже преодолеете. И без помощи подтяжек, которые для Вас - "табу". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 25 мая, 2023 Опубликовано 25 мая, 2023 · Жалоба 7 часов назад, jcxz сказал: Ваш Modbus-RTU работает через USB-CDC-свисток. Вы воткнули рядом с ним колонку с музычкой. Как вы себе представляете подобное в промавтоматике? Или у вас в порядке вещей взять и воткнуть непойми что в ПК занятый ответственной работой, установить на нем какую-то "левую" прогу? А если он при этом зависнет вообще? Помню в бытность работы в охране, на пульте стояли 2 ПК на которых работала прога управления снятием\постановкой на охрану, так вот там были требования, отсутствие дисководов, "лишних" портов усб, и опломбированный корпус. А если начальник техслужбы увидит что-то незаконно установленное, то обслуживающий инженер может получить неполное служебное соответствие, вот так должно быть в ответственных устройствах, а то, что у вас по описанию - это бардак, уж извините... 7 часов назад, razrab83 сказал: А теперь с ваших слов... 1 пакет из 100 теряем. Хорошо. кто силён в теории вероятности? если теряем 1 пакет из 100, то какова вероятность что потеряем 3 пакета подряд из 300? Только учтите, потеря 3 пакетов ДРУГ ЗА ДРУГОМ, а это уже совсем другая вероятность, чувствуете))) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 21 26 мая, 2023 Опубликовано 26 мая, 2023 (изменено) · Жалоба 10 часов назад, mantech сказал: Только учтите, потеря 3 пакетов ДРУГ ЗА ДРУГОМ, а это уже совсем другая вероятность, чувствуете))) нет, не чувствую. я спросил "то какова вероятность что потеряем 3 пакета ПОДРЯД из 300?" Посчитали? Запомнили. Та вот "3 пакета подряд" это и есть "3 пакета друг за другом". "вероятность 3-х пакетов др. за др" не будет совершенно другой вероятностью, будет такая же, как "вероятность 3 пакета подряд", в силу того что наречие "подряд" и "др. за др." это одно и тоже. Изменено 26 мая, 2023 пользователем razrab83 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться