Таймеры CoDeSys |
Ответить | Страница <1234 11> |
Автор | ||
Действительный член Присоединился: 29 Январь 2004 Категория: Russian Federation Online Status: Offline Публикации: 293 |
Опубликовано: 19 Февраль 2007 13:42 |
|
Доп. мысль: Технично? |
||
Igor Petrov
|
||
Участник Присоединился: 04 Апрель 2005 Категория: Russian Federation Online Status: Offline Публикации: 80 |
||
Здраствуйте. Уважаемый IP вам не кажется что эта особенность языка SFC противоречит идеологии ПЛК, в которой организация задержек не приемлема? |
||
Действительный член Присоединился: 08 Март 2006 Категория: Russian Federation Online Status: Offline Публикации: 440 |
||
Да, технично. Хотя источником времени здесь служит все тот же системный счетчик, в неявном виде. На том же системном счетчике стоят периоды задач и т.д. Таймеры "питаются" также напрямую от Сис.Сч. Вообще говоря, играть можно на всем что тикает. Например, в SP RTE в качестве источника тактов времени можно использовать собственно сам цикл выполнения задачи (если он достаточно короткий), и вообще не прибегать ни к каким таймерам, задержанным условиям SFC и т.п. При этом, правда, наблюдается небольшой Jitter (дрожание длительности - на сильных компах почти не заметен), но в каждом конкретном случае можно решить - пренебрегать этим или нет. С уважением, SAN. |
||
Действительный член Присоединился: 01 Июнь 2006 Категория: Russian Federation Online Status: Offline Публикации: 464 |
||
Отнюдь Следует различать задержки выполнения цикла задачи и задержки изменения состояния алгоритма. Ведь задержка выполнения шага не приводит ни в коем случае к остановке цикла задачи, напротив цикл проходит дальше не выполняя ничего более шага на котором выполнение было задержано при текущем состоянии входных переменных, в данном случае время является такой переменной а программу можно рассматривать как простой конечный автомат состояние выходов которого строго зависит от состояния входных переменных и его внутреннего состояния, в которое он перешел в предшествующем цикле задачи. Следовательно время реакции нашего алгоритма на изменение входных переменных (в том числе времени) останется равным удвоенному времени цикла и остановка на шаге не приведет к остановке обработке имиджа процесса и прочим неприятностям которые могли бы возникнуть при действительной задержке цикла задачи
|
||
Действительный член Присоединился: 29 Январь 2004 Категория: Russian Federation Online Status: Offline Публикации: 293 |
||
Абсолютно верно!
Отсчитывать временные задержки на базе рабочего цикла возможно, но ИМХО делать это есть смысл для очень малых или некритичных к стабильности задержек. (Например, если используем коммутатор сигналов на 1 аналоговый входов и ему надо дать пару мс. после коммутации след. канала и т.п. ) Таймеры практичнее: интервал циклических задач можно менять как угодно, таймеры всегда будут работать правильно. |
||
Igor Petrov
|
||
Участник Присоединился: 02 Сентябрь 2005 Категория: Russian Federation Online Status: Offline Публикации: 54 |
||
А вообще количество таймеров в программе ограничено или все определяется свободной памятью? В Шнайдере, на сколько я помню, оно всетаки ограничено.
|
||
Действительный член Присоединился: 15 Январь 2004 Категория: Russian Federation Online Status: Offline Публикации: 805 |
||
Ограниченно количеством функц. блоков, что впрочем настраивается. Кстати, иногда специально избегаю стандартных TONов, TOFов, особенно если они вложены в другой функц.блок. Ведь что может получиться: вставил в такой блок пару таймеров, затем в основной программе - сотню блоков (обработка сигналов например), и вот получилось таймеров уже две сотни. Сравниваю в таких случаях системное время с заранее запомненной переменной типа TIME. |
||
Действительный член Присоединился: 29 Январь 2004 Категория: Russian Federation Online Status: Offline Публикации: 293 |
||
Ко-во не ограничено. Самый первый, используемый в проекте, экземпляр любого ФБ кушает память кода, все следующие только память данных (суммарный объем всех переменных + 4 байта). |
||
Igor Petrov
|
||
Действительный член Присоединился: 15 Январь 2004 Категория: Russian Federation Online Status: Offline Публикации: 805 |
||
|
||
Действительный член Присоединился: 15 Январь 2004 Категория: Russian Federation Online Status: Offline Публикации: 805 |
||
Ну а количество функциональных блоков ведь ограничено... |
||
Ответить | Страница <1234 11> |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |