Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 16

Тема: По организации ввода-вывода

  1. #1

    По умолчанию По организации ввода-вывода

    Вопрос к опытным и самым опытным пользователям ПЛК 8=)
    Я привык так, что все известные мне PLC делают цикл ввода, за тем цикл логических операций по сложной и разветвленной структуре программных блоков, потом делают цикл вывода. Исключения составляют те "тэги", которые могут безусловно и моментально устанавливать только отдельный вывод не ожидая окончания всего логического цикла, в которых встречаются специальные команды. Но это всё лирика. Работая в CoDeSys и понимая что мои выводы будут висеть где-то в сети на всяких там МВА и МВВ, я невольно потерял эту стройную систему мышления : чтение - действия - запись. И дело в том, что операции выполняются намного быстрее, чем может быть получен результат на выводах, а тем более удаленных. Могут быть случаи, когда какой-либо бит был установлен и снят раньше времени цикла записи, и по всей вероятности на выходе мы ничего не получим. Хотелось бы уяснить для себя, как всё это решается в ПЛК, потому что мне неудобно работать с данными ввода типа %IW. Такие данные я преобразую в BOOL, и далее везде в программе применяю этот тип, как говориться, налету без заморочек. В таком случае, от задержки по чтению в основном можно абстрагироваться, а вот при записи с обратным преобразованием в %QW, а то в %QD, уже так просто отделаться нельзя, надо учитывать время и цикличность вывода, понимать как это происходит и не хулиганить.
    Конечно можно организовать свой собственный вывод на Modbus с контролем по факту записи, но почему-то очень этого не хочется делать.
    Последний раз редактировалось aven; 21.08.2011 в 12:50.

  2. #2

    По умолчанию

    А можно теперь вопрос то сформулировать???

  3. #3

    По умолчанию

    Цитата Сообщение от Николаев Андрей Посмотреть сообщение
    А можно теперь вопрос то сформулировать???
    Вопрос прямо классический, как работает?
    Но вероятно, чтобы избежать философкого ответа, надо конкретизироваться 8=)
    Как данные %QW из программного блока после операции := попадают на выход того же МДВВ? Когда они там могут появиться? Что с ними произойдет, есть они ещё не ушли, а уже модифицировались? И можно ли об этом как-то узнать?
    Последний раз редактировалось aven; 21.08.2011 в 16:24.

  4. #4

    По умолчанию

    Принцип работы контроллера классический, как Вы и описывали:
    Опрашиваем область памяти входов (%I), выполняем программу, записываем данные в область памяти выходов (%Q).
    А уже из области выходов контроллер, в свободное от основной задачи время, отсылает данные по сети. То есть при цикле 1мс данные в память записываются раз в 1 мс. При этом передача данных на устройства В\В идет последовательно, по своему алгоритму.

    В принципе, как верно было сказано - Вы можете взять с диска библиотеку ModBus и сами определять какие данные в какой момент времени посылать, работая на прямую с портом.

  5. #5
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,302

    По умолчанию

    очень обидно, когда на форуме пишут такие слова
    Я привык так, что все известные мне PLC
    . Извините о каких контроллерах Вы говорите и чем Овен со своей линейкой так уж отличается от других. По аналогии, когда немцы говорят что с популярной серией ET-200M проблем не будет, за связь с
    МВА и МВВ
    можно тоже не беспокоиться, если "руки не кривые" и нет иллюзий, что при последовательном соединении на скорости 9600 можно обогнать пакеты ТСР

  6. #6

    По умолчанию

    Попытаюсь расшифровать вопрос...
    На классических ПЛК, конфигурируя сетку хоть профибас коть девайсНет, чётко заешь время цикла обмена и как он происходит, есть и скоростные сетки привязанные к моменту обновления I/O, цикл связи почти сравним шиной I/O контроллера.
    Когда связь через 485 описываешь сам, тоже знаешь возможное время реакции выхода после его изменения в программе, и имеешь возможность внеочередной записи в сетевой модуль.
    С кодесисом в этом вопросе глушняк, по временной вилке между изменением бита в программе и изменением физического выхода модуля можно просто гадать.
    тут и прямые руки не помогут.

    А если совсем просто, получив сигнал с неизвестно какой задержкой с датчика конечного положения штуки которая шибко быстро двигается, контроллер отдаёт команду на остановку, успет ли эта штука получить команду на остановку до того как проломит стену?
    Последний раз редактировалось BETEP; 21.08.2011 в 18:06.

  7. #7

    По умолчанию

    Цитата Сообщение от BETEP Посмотреть сообщение
    А если совсем просто, получив сигнал с неизвестно какой задержкой с датчика конечного положения штуки которая шибко быстро двигается, контроллер отдаёт команду на остановку, успет ли эта штука получить команду на остановку до того как проломит стену?
    А это ктото обещал?
    Для несинхронной шины и т.д. и т.п.

  8. #8

    По умолчанию

    Цитата Сообщение от ASo Посмотреть сообщение
    А это ктото обещал?
    Вот и я про это, как узнать гарантированное время реакции сетевого выхода после его изменения в программе? и есть ли возможность внеочередной передачи туда куда нужно.
    Последний раз редактировалось BETEP; 21.08.2011 в 18:35.

  9. #9

    По умолчанию

    Цитата Сообщение от BETEP Посмотреть сообщение
    С кодесисом в этом вопросе глушняк, по временной вилке между изменением бита в программе и изменением физического выхода модуля можно просто гадать
    Вот тут бы я просто узнал, а когда собственно была произведена передача в сеть или хотя бы просто что произведена, то есть вот флажок и он есть упавший на данный момент.

  10. #10

    По умолчанию

    Цитата Сообщение от BETEP Посмотреть сообщение
    как узнать гарантированное время реакции сетевого выхода после его изменения в программе?
    Никак. Это в принципе не определено в RS-485+MODBUS (подобных протоколах).
    Цитата Сообщение от BETEP Посмотреть сообщение
    и есть ли возможность внеочередной передачи туда куда нужно.
    Есть, если сами напишете "систему ввода-вывода" на указанной библиотеке.

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •