Форум 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 бесплатная Базовая версия / TRACE MODE 6 free Base version » Программирование

   
Автор / Author Тема / Topic: Программирование
shooombj
Junior Member / Новичок
Участник № / Member № 3565


Icon 1 отправлено / posted      Профиль для / Profile for shooombj           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте! Подскажите пожалуйста, как запрограммировать работу функций вида:

1. Y[i] = Y[i-1] + X[i]
2. Y[i] = 0,5*Y[i-1] + (X[i] + X[i-1])/2
3. Y[i] = (X[i] + X[i-1] + ... X[i - (N - 1)])/N

Можно ли в этом случае воспользоваться FBD-блоками?
X-вход, Y-выход. Для примера, пусть X генерируется любым стандартным генератором.

Сообщения / Posts 3 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
1. Для решения задач 1 и 2 можно использовать функциональный блок "Запаздывание (LTN)" из раздела "Функции выбора". С задержанными сигналами производить необходимые арифметические действия с помощью блоков из раздела "Арифметические".

2. Задача 3 решается с помощью канала CALL с типом вызова RT_Statistics.

Сообщения / Posts 17114 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
shooombj
Junior Member / Новичок
Участник № / Member № 3565


Icon 1 отправлено / posted      Профиль для / Profile for shooombj           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
C задачами 1 и 2 все получилось, большое спасибо! А можно еще поподробнее о решении задачи 3.
Сообщения / Posts 3 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
По поводу задачи 3.
Я, видимо, неточно представил себе суть задачи.
Ссылка на RT_Statistics не корректна.

В общем случае надо писать программу на языке ST.
Создавать массив из N глобальных переменных. Программно организовывать в нем стек с вытеснением самой ранней записи и усреднять значения, накопленные в стеке.
Функции стека и усреднения можно организовать с помощью циклов.

Не исключено, что при подходе к этой задаче с точки зрения ее конечного использования, можно найти и более рациональное решение.

Сообщения / Posts 17114 | Из / From: Россия  |  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



Powered by Infopop Corporation
UBB.classic™ 6.7.2