Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Языки программирования в TRACE MODE 6 / Algorithm Programming Languages » Реализация Таймера в FBD

   
Автор / Author Тема / Topic: Реализация Таймера в FBD
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460


Icon 1 отправлено / posted      Профиль для / Profile for sinegub_mihail           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день!!!

Как реализовать таймер в FBD ??? Стандартного блока нету. Нужен таймер в программу для micro RTM.

Подскажите что нибудь...

Сообщения / Posts 105 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AdAstra Technical Support
Moderator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for AdAstra Technical Support           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Различные таймерные функции a FBD-программах реализуются с помощью блоков раздела "Триггеры и счетчики".
Кроме того, используя блоки TIME и DATE раздела "Генераторы" можно работать с компонентами текущего временем сравнивать, запоминать (например, в глобальных переменных).
Используя системные переменные (например, @t_Set_Date), можно ввести в программу текущее время, запоминать его метки и формировать нужные временные интервалы.

Сообщения / Posts 15120 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460


Icon 1 отправлено / posted      Профиль для / Profile for sinegub_mihail           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
А в NanoRTM I-8000 эти функции будут работать ???
Сообщения / Posts 105 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AdAstra Technical Support
Moderator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for AdAstra Technical Support           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В NanoRTM I-8000 работают.
Сообщения / Posts 15120 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Selya
Junior Member / Новичок
Участник № / Member № 6591


Icon 1 отправлено / posted      Профиль для / Profile for Selya           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Сделал вот такую программу Timer на FBD (основную идею подсказал Александр Юрьевич на курсах):
 -
Аргументы:
Timer_C OUT USINT привязан к атрибуту 3 (Состояние) CALL.Program "Timer" (тип Input, Дополнительно -> Выключить)
ARG_000 OUT USINT (нужен для отображения прогресса таймера)

Программа "Timer" запускается передачей в её 3й атрибут (Состояние) значения 0. Как только таймер отработает её состояние самостоятельно переходит в значение 1, программа выключается.

Единственный минус в том, что таймер работает не 5, а 10 секунд. Дело в том, что блок rTRIG формирует импульс не каждую секунду, а раз в 2 секунды! Это ошибка или так и надо?

Сообщения / Posts 29 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AdAstra Technical Support
Moderator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for AdAstra Technical Support           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Из документации:
"Импульс по переднему фронту (rTRIG)
Этот блок формирует прямоугольный импульс длиной в один такт пересчета при изменении значения младшего разряда INP с 0 на 1."
Так он у Вас и работает.

1. Уберите из программы блоки TIME и rTRIG.
2. Задайте у блока CTU значение входа INP=1.
3. Задайте каналу вызова программы период обработки, равный 1 сек.

Сообщения / Posts 15120 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us

Rambler's Top100 Rambler's Top100



Powered by Infopop Corporation
UBB.classic™ 6.7.2