Спасибо большое, это помогло, но результата не дало. Создавал протокол mysql, все параметры указывал, добавлял запрос mysql, добавлял туда команду, но ответа так и не добился.
Вид для печати
Спасибо большое, это помогло, но результата не дало. Создавал протокол mysql, все параметры указывал, добавлял запрос mysql, добавлял туда команду, но ответа так и не добился.
Как вы пишите запрос? Как присваиваете результат переменной?
Добрый день. Подскажите пожалуйста как по клику мыши открыть новое окно в развёрнутом виде на весь экран.
У меня открывается в центре небольшое окно, а только потом я могу его развернуть.
Так и делаю, только окно открывается не на весь экран, приходится его вручную разворачивать
Работаю в клиенте
Если ставлю false я не могу это окно перетащить на другой монитор
Подскажите пожалуйста как в браузере сделать понятными названия вкладок? Например Освещение.
Вложение 49964
https://owen.ru/forum/showthread.php...l=1#post314831
Думаю, что сейчас ничего не поменялось.
Прошёл почти год...
Добрый день.
Подскажите пожалуйста, как динамизировать параметр "список" элемента "Выпадающий список".
В справке указано следующее:
"Это свойство имеет тип STRING и определяет список доступных строк в выпадающем списке. Строки в списке разделяются символом ~. При установке входящей связи список строк может быть изменен в результате работы среды исполнения. Если параметр типа перечисление был перетащен в окно правой кнопкой мыши, и в контекстном меню был выбран пункт Выпадающий список, то данное свойство заполнится автоматически."
Планировалось использовать "Выпадающий список" для выбора рецепта. Параметр "список" в качестве изменяемых в процессе работы наименований рецепта, а параметр "выбор" передавать в индекс массива.
На ум пришел только вариант с хранением строк в массиве, склейка их с разделителем "~" конкатенацией, и передача переменной String в параметр "список".
Может есть другие варианты организовать выбор и хранение рецептов?
Вопрос по отчетам.
для учета переменных с плохим признаком качества нужно перетаскивать в отчет переменные типа SYSTEM_LREAL_PARAM?
Здравствуйте коллеги!
Кто-нибудь сталкивался с проблемой присваивания значений массиву в программе ST?
Мой путь: создал структуру, на ее основе создал массив. Это динамический массив в который загоняется результат SQL запроса. После этого значение передается в промежуточный параметр в узле с той же структурой (хз зачем, но ТП сказала что без этого не работает) В объекте созданы параметры с той же структурой. В ST программе пытаюсь присвоить результат SQL-запроса другому массиву с минимальной обработкой и ничего не получается. Не присваивается даже если использовать банальное ArrName[1].TimePgAP := "00:00:00". То есть в параметры на входе программы значения поступают, а обработать или присвоить другой переменной на выходе программы не получается (обычной переменной присвоить значение удается, а именно этому массиву нет). Во всех этих переменных используется единая структура массива.
Добрый день.
Тоже сталкивался с подобной проблемой, не передавались данные между структурами. Объяснение ТП "прямая передача сложных типов данных (структрур, массивов) между задачами невозможна". В справке также нашел упоминание:
Вложение 50455Цитата:
"Важно! В текущей версии MasterSCADA 4D прямая передача сложных типов данных (структрур, массивов) между задачами невозможна. Например, если в задаче протокола было получено значение типа Структура, то его нужно связать сначала с глобальным параметром Узла, а затем уже глобальный параметр связывать напрямую с параметром задачи узла или непосредственно использовать в программах ST"
Если передавать из структуры в параметр, а далее опять в структуру, то все работает.Цитата:
значение передается в промежуточный параметр в узле с той же структурой
Локализовал проблему.
Значение в ST программе не присваивается если массив созданный на основе структуры динамический. Если размер задать вручную, то значение в ST программе присваивается корректно.
Добрый день!
Есть такая проблема, в проекте данные приходят через протокол OPC UA с opc сервера kepserverex 5. И некоторые из данных, которые во времени почти всегда имеют постоянное значение (заряд ибп = 100%, статус работа ИБП = true) не инициализируются при запуске проекта и имеют статус кодом BadWaitingInitialData. Переменные, которые постоянно обновляются (токи, напряжение) инициализируются нормально.
Но когда происходит изменение этих параметров в opc сервере (заряд ибп = 99%, статус работа ИБП = false), это случается когда ИБП самотестируется и меняет режим работы на тест и переходит на батареи, данные сразу инициализируются в скаде и корректно отображаются на мнемосхеме.
Кто-то сталкивался с такой проблемой?
Здравствуйте!
Подскажите, возможно ли динамический массив напрямую передать в отчет?
С обычным параметром получается, а массив не передает значения и просто в строку пишет:
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ответ от ТП: низзя.
Самое обидное что в справке есть описание что для генерации отчета можно использовать SQL запрос, однако это работает только в 3 версии. В 4 такого не предусмотрено.
Вложение 50630
Здравствуйте!
И снова вопрос по массивам...
Пытаюсь объединить два массива, но проблема в том что у них разный размер. NameAP общие.
Делаю так:
n:=UPPER_BOUND(RevStatusAp,1);
FOR i:=1 to n do
If RevWEB[i].NameAP = RevFromPg[i].NameAP
THEN RevWEB[i].TimePgAP := RevFromPg[i].TimeAP
END_IF;
END_FOR;
Моя логика такая: если строковые значения NameAP совпадают, то .TimeAP должен записаться в ту последовательность, номер которой был в RevWEB[i].NameAP. Но что-то не так. Где я не прав?
Здравствуйте.
Не могу отправить СМС.
пробовал два разных модема ZTE и один Телеофис
ход "передачи" для всех один
отправка (статус SEND_SMS = 17)
смс отправлено (статус 18)
но затем ошибка 3
и отправление всякий раз повторяется (статус 17).
(Получилось отправить без ошибок только на ОВЕН ПМ-01)
но там есть особенность не применимая к остальным модемам.
Может кто сталкивался с подобной проблемой.
На каких модемах такой ошибки нет, или как ее решить?
Добрый день!
При передаче данных по ModbusTSP на ПЛК возникла необходимость конвертации в word переменной типа real. В блоках MasterScadaD есть ФБ, но он записывает только в одну переменную типа word, похоже обрезая real. Как сделать разбивку real на два word? Заранее спасибо!
Да, но при использовании REAL_TO_DWORD число округляется до целого. Как сохранить при преобразовании десятичные и сотые? Возможно не так понял Вас - можно привести пример?
PS: В codesys есть библиотека ОСL - с помощью которой вопрос решается однозначно правильно. Есть ли в masterscada что-то подобное? К сожалению не нашел...
Большое спасибо за код.
Получается для передачи данных из Masterscada4d нам нужно из real преобразовать в word. Скажем 3.3 перекидываем в word_1 это 16467 и word_2 это 13107 (что за тип пока не разобрался -16-й возможно).
Подойдет ли данная программа для разбивки?
Перекинув по ModbusTCP в codesys3.5 (на ПЛК) значения word_1 и word_2 мы уже их можем объединить с помощью OCL.word2_to_real. Условная модель описанного обмена на рис -Вложение 50833
Почему вы не хотите сразу передать в real, заодно и на тегах сэкономить
Добрый день. Скажите. Можно ли как-то вытащить сигналы о нарушении связи с узлами, нарушении сети.
Есть вроде системные окна с такими сообщениями. А как это вытащить на мнемосхему?
С узлом нет, можно с протоколами. Для этого надо использовать признак качества (StatusCode) одного из каналов модуля, а также параметр Отказ, который есть в каждом модуле.
Вложение 50940
Здравствуйте. Возник вопрос. Если в настройках подключения ModBus TCP указать два IP адреса через запятую, это будет резервированием каналов связи?
Проблема решилась тем, что я убрал шифрование в masterscada4 и убрал шифрование на opc-сервере. Все стало работать корректно.
Добрый день. Есть ли видео с примерами работы на языке SFC?
Помогите, пожалуйста, запрограммировать SFC-ветвление выбора.
Вложение 51425
Спасибо
Вы спросили пример SFC их есть у меня)
https://www.youtube.com/watch?v=Gg5dujnCE-w
в принципе я достаточно подробно описал как создал алгоритм работы светофора. И те знания, по Masterscada sfc что мне доступны.
Добрый день народ, возникла проблема с MS4D, при разработке его фризит будто CPU не хватает, но при этом система летает, кто сталкивался с такой проблемой и есть хотя-бы адекватное объяснения?
NoteBook:
CPU: Razen 7 4800, 8 ядер 16 потоков.
RAM: 64 GB DDR4.
GPU: RTX 2060 6GB
SSD: PCIE G3 SSD 512GB
Такая же проблема, проект весит 1 ГБ, при редактировании окон, компиляции проекта и т.п. все очень сильно тормозит. Единственное, что у меня проц слабоват, по остальному железу немного получше: i3-7100, 32GB DDR4, SSD 240 GB. Обращался по данному вопросу в саппорт, но ничего внятного сказать не смогли.
У вас сильно большой проект? Сколько весит? Просто задумывался о модернизации ПК, но раз у вас и на таком железе тормозит, то возникает вопрос о целесообразности улучшения ПК.
Проект весит 115 мб, да и мне саппорт не чего внятного не сказал, кроме как "очистить кеш, очистить историю обновить программу" и пишут что у них razen 5, 16 ОЗУ и все работает нормально =)