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

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 5 » Редактор Базы Каналов (Математика) / Channel Base Editor » Принудительная запись в СПАД

   
Автор / Author Тема / Topic: Принудительная запись в СПАД
fherbeck
Junior Member / Новичок
Участник № / Member № 1012


Icon 5 отправлено / posted      Профиль для / Profile for fherbeck           Редактировать/удалить сообщение / Edit/Delete Post 
Мне необходимо организовать принудительную запись в СПАД всех каналов на каждом цикле. Я завел канал "ЗАПИСЬ" типа OUTPUT подтип ДИАГНОСТИКА:ПОТЕРЯ_СПАД.
Далее я пытался применить четыре варианта посылки значения (10 и 0x10 по документации непонятно имеются в виду шестнадцатеричные или десятичные числа) в этот канал:
1) На канал "ЗАПИСЬ" навесил процедуру УПРАВЛЕНИЕ, которая пишет 10 в ЗАПИСЬ_In
2) Завел канал типа I подтип управление, на который навесил процедуру УПРАВЛЕНИЕ, которая пишет 10 в ЗАПИСЬ_In
3) Написал IL метапрограмму, которая пишет 10 в ЗАПИСЬ_In
4) Завел постоянно изменяющийся канал типа I (СИСТЕМНЫЙ:время_выполнения), на который навесил процедуру ТРАНСЛЯЦИЯ, которая пишет 10 в ЗАПИСЬ_In
Во всех четырех случаях получил один и тот же результат - в СПАД пишутся только изменяющиеся каналы. Каналы, значение которых неизменно, попадают в СПАД только в момент запуска проекта.

Как мне решить проблему принудительной записи на каждом цикле?

Сообщения / Posts 18 | Из / 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 
Что-то очень сложное у Вас получилось на FBD все можно было легко сделать. И не совсем понятно откуда значение 10, там разные есть значения (формат DEC)?
Скорее всего у Вас значение канала, управления архивацией, не меняется по Вашему алгоритму.
Попробуйте сделать обычную FBD - будет гораздо проще.

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


Icon 1 отправлено / posted      Профиль для / Profile for fherbeck           Редактировать/удалить сообщение / Edit/Delete Post 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
Что-то очень сложное у Вас получилось на FBD все можно было легко сделать. И не совсем понятно откуда значение 10, там разные есть значения (формат DEC)?

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

quote:
Отправитель / Originally posted by AdAstra Technical Support:

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

А я и делал обычную FBD состоящую из одного блока MOVE и пытался вешать ее как на процедуру управления канала ПОТЕРЯ СПАД, так и на процедуру трансляции этого же канала. Результат нулевой. Или нужно подключить эту FBD программу куда-то в другое место?
Может быть в релизе 5.15 принудительное сохранение не работает?
А у Вас случаем нет рабочего примера с принудительной записью в СПАД?

Сообщения / Posts 18 | Из / 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 
1) Формат значений десятичный.
2) Просто установка канала в значение 10 должного результата не даст. Дело в том, что принудительная запись в СПАД производится только по изменению значения канала с нулевого значения на ненулевое. То есть - FBD-программа должна с определенным периодом посылать в канал в течение одного такта значение 10, а потом снова сбрасывать его в ноль. Сделать это можно, например, контролируя значение остатка от деления текущих секунд на уставку периода в секундах и когда она равна 0 - по значению условия через блок SEL подавать на вход канала значение 10 или 0. Понадобится всего 4 блока: TIME, %, == и SEL.

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

  New Poll   Закрыть тему / 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