Вложений: 1
Помогите с последовательным включением
Доброго времени уважаемые форумчане!
Есть такой проект на CFC
В нём есть:
En_function: BOOL; - разрешение на включение функции
counter: WORD; - счётчик от энкодера
volume_start: WORD; - значение начального движения
sensor: BOOL; - датчик крайнего положения механизма
Err: BOOL; - значение возможной ошибки (запрет на выполнение действия)
TIME_reg: WORD; - регистр времени на последнее действие
Trig_start: F_TRIG; - тригер переключения действия
slow: BOOL; - медленное движение
Delay100ms: TOF; - костыль что бы программа не прерывалась раньше времени
Permission: BOOL; - разрешение на выход из программы
speed: BOOL; - движение на макс. скорости
start: BOOL; - начало движения
timer: TP; - таймер последнего движения
last_ACT: BOOL; - последнее движение
function_end: BOOL; - действие закончено.
Проблема в том что выходные переменные:
start, speed и slow - включаются на реальном контроллере с задержкой.
То есть - механизм движется по выходу старт, дошёл до своего значения энкодера, остановился, включилось движение по speed... и т.д.
А надо что бы он не успевал остановиться и продолжал двигаться уже по speed
Что я сделал не так и как добиться того что бы механизм двигался плавно (сейчас идёт рывками между переключениями)
ЗЫ. Это только часть программы. Вся программа более 300 блоков + 230 блоков раз в 240мсек (вывод инфы на дисплей)
ЗЫ.ЗЫ пробовал ставить задержку до 60 мсек (на отключение выходных переменных старт и т.д. - не помогло.) Более 60 не ставил. И так бред какой то. Надо что то нормальное придумать.