This is topic Локальный архив и кв. корень in forum Микро Мониторы Реального Времени / Micro Real Time Monitors at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/6/t/000051.html

Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
В контроллере (обычный 486 ПК) не могу найти файл локального архива. Как он называется - buffs.dta, или как задано в бланке Архивация диалога Параметры узла. Все флажки установлены как написано в справочной системе: Архивы в ОЗУ и энергонезависимой памяти. Но архив не ведется, что еще надо сделать?
Кроме этого, после запуска Микро МРВ и отработки IL-программ на экране контроллера появляется сообщение:
sqrt: _DOMAIN error

Контроллер продолжает работать, но после каждого цикла выводится это сообщение и расчетные значения выводятся на ПК оператора не правильные. Как я понимаю не работает функция квадратного корня. Почему? Микро МРВ (стандартный) не поддерживает функцию SQRT?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Если в строке запуска МикроМРВ Вы не указали диск сохранения архива, то его и не будет на диске. Имя его стандартно и всегда buffs.dta .
Сообщение по sqrt - у Вас скорее всего неправильное значение под корнем задано, возможно отрицательное.
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
В строке запуска Микро МРВ стоит disk=3, но на С:\ файла buffs.dta нет. По поводу отрицательного значения под корнем - в РБК в эмуляторе все работает нормально, значение выдается правильное.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1) Должен сохранять. А ключом [BUFFS=d] количество блоков задали?
2) А Вы в МикроМРВ выведите это значение - эмулятор может совсем не то показывать, ведь он не на реальных значениях работает.
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
Файл buffs.dta на диске С:\ появился. Похоже это произошло после того, как я его там создал. Теперь он модифицируется и восстанавливается, если удалить. А ошибка корня связана с тем, что в моем Микро МРВ не работает функция возведения в степень. Запускал файлы mrt7_e.exe и mrt86_e.exe, разницы нет. Повторяю, в эмуляторе все работает, значит программа написана правильно. Я в программе поставил контрольные точки (W) до возведения в степень и после и организовал канал для просмотра этих точек. До возведения - 2 и после операции возведения в квадрат показывает 2. В чем может быть ошибка? Микро МРВ поддерживает функцию возведения в степень?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Какой релиз МикроМРВ?
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
5.15!
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Вообще - дожен поддерживать.
Необходимо проверить.
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
Может быть у меня не те исполнительные модули?
Mrt7.exe - 284816 байт,
mrt86.exe - 284660 байт.
В справочной системе я не нашел ограничений для МикроМРВ по этому вопросу.
Кстати, какой модуль надо запускать для 486?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Тот модуль, что с числом 86 - это только для контроллеров без сопроцессора. 486 - c сопроцессором, поэтому под ним лучше использовать Mrt7.exe или Mrt7_e.exe

Вы возведение в степень под обоими МикроМРВ проверяли?
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
Да, пробовал Mrt7.exe и mrt86.exe, разницы нет.
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
И все-таки, господа, как возвести число в степень в МикроМРВ?
[Недоумение / Confused]
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Проверили под МикроМРВ релиза 5.15 - все работает нормально и возведение в произвольную степень и в квадрат.
Можете прислать свой проект, чтобы мы его у себя запустили?
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
Отправил проект с которым я экспериментировал в адрес техподдержки. Очень интересно, почему же у меня не работает?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Функция возведения в степень (POW или '**') в IL-программах для МикроМРВ не поддкрживается (см. документацию в разделе "Отличия серверов"). Эти функции в МикроМРВ работают только в FBD.

2. Прием автопосылки по каналу Вывод_W4 контроллера, в узле OPER настроен на передачу значения в канал "Пила2".
Т.о. - для передачи значения данного канала, принимаемого по сети, необходимо перенастроить передачу его значения в одноименный канал "Вывод_W4" узла OPER. Вам необходимо в системном объекте "ПРИЕМ РАССЫЛОК" узла OPER разъединить автопосылку от текущего приемника (канала "Пила2") и перенастроить на приемник "Вывод_W4".
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
Ну спасибо, обрадовали! Слона-то я и не заметил!
[Вращающиеся глаза / Roll Eyes] Что мне можете посоветовать? [prey / молящийся] В контроллере идет расчет расхода газа, это его основная обязанность. Без возведения в степень никак нельзя. А если использовать оператор
CALL **? Почему для МикроМРВ эту функцию урезали? В ТМ6 возведение в степень в IL - программах МикроМРВ тоже не поддерживает?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Непонятно зачем Вы вообще IL выбрали для математики - настоятельно бы не рекомендовал! [Вращающиеся глаза / Roll Eyes]
 
Posted by Путинцев Н.В. (Участник № / Member № 1093) on :
 
Хорошо, но что можно еще использовать для расчетов? Подскажите, пожалуйста.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
FBD!
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2