Просмотр полной версии : Есть ли возможность импортировать переменные
nikolay861
18.03.2024, 12:46
Всем привет. Есть ли возможность импортировать переменные в среде овен логик, экспорт есть, а вот импорта я не нашел. Просто когда очень много переменных (причем однотипных с паттерном), добавлять их в таблице среды это боль.
Так бы было хорошо, экспортировать что есть, добавить нужные переменные в csv и импортировать обратно. Просто у того же сегнетикса есть такая возможность и это очень удобно.
Сколько не гуглил не нашел ничего да и в самом интерфейсе нет ничего. Я так понял нет такой функции и это печально, было бы хорошо если бы добавили, очень сильно сократили бы время работы многим людям.
nikolay861
18.03.2024, 16:57
А еще есть проблема ГИГАНТСКАЯ с сортировкой переменных по именам и адресам, они сбиваются. Добавляешь все по очереди, по адресам, закрываешь окно и все в перемешку, и не как не отсортировать что бы все шло последовательно, это вообще бесит.
Godlike_S
18.03.2024, 18:42
А еще есть проблема ГИГАНТСКАЯ с сортировкой переменных по именам и адресам, они сбиваются. Добавляешь все по очереди, по адресам, закрываешь окно и все в перемешку, и не как не отсортировать что бы все шло последовательно, это вообще бесит.
Почему никак? Нажмите на шапку того параметра, который подлежит сортировке (имя переменной, номер регистра, энергонезависимость и т.п)
Единственное но, это нужно делать каждый раз при открытии окна…
nikolay861
19.03.2024, 12:30
Почему никак? Нажмите на шапку того параметра, который подлежит сортировке (имя переменной, номер регистра, энергонезависимость и т.п)
Единственное но, это нужно делать каждый раз при открытии окна…
Да, но каждый раз все сбивается. И к тому же я имел в виду поле с перемеными с лева, ведь я из этой панели перетаскиваю переменые и они там сбивается, несмотря на то что они были добавлены подряд и нет возможности никакой сортировки. Если экспортировать в CSV то все переменные идут подряд как и добавлял, что за фигня, почему сама среда все перемешивает и зачем.
Сделайте хотя бы жесткую привязку по адресам.
74492
В целом, косяков в работе хватает везде, например у сегнетикс нет зуммирования в рабочей области, когда большой проект это боль, я много лет жалуюсь на это и не я один, но они ничего не меняют.
Королев Кирилл
20.03.2024, 13:03
Добрый день!
Спасибо за обратную связь. Знаем про сложности при работе с таблицей переменных. В планах полностью переработать эти меню. Импорт переменных также планируем поддержать.
nikolay861
25.03.2024, 15:30
Добрый день!
Спасибо за обратную связь. Знаем про сложности при работе с таблицей переменных. В планах полностью переработать эти меню. Импорт переменных также планируем поддержать.
Это будет очень важным обновлением, которое сильно ускорит работу.
Добрый день! Как процесс идёт? А когда в ФБ на ST добавится RETAIN?
Денисов Максим Сергеевич
21.08.2024, 09:18
Добрый день! Как процесс идёт? А когда в ФБ на ST добавится RETAIN?
Добрый день. Планируем взять в работу Retain в ST в начале 2025 года, до конца текущего года выпустим симуляцию в ST
Хорошо бы. А то вместо 3 массивов 10х10 для хранения рецептуры приходится 300 переменных создавать, а это в нынешнем интерфейсе без возможности импорта - боль аццкая.
kondor3000
21.08.2024, 10:57
Хорошо бы. А то вместо 3 массивов 10х10 для хранения рецептуры приходится 300 переменных создавать, а это в нынешнем интерфейсе без возможности импорта - боль аццкая.
Двумерные массивы тоже не поддержаны в Лоджике, так что вам всё равно придётся создавать 30 одномерных массивов, а не 3 двумерных.
Даже если Retain сделают.
Пр это вам не ПЛК.
Вовсе нет, я в таком случае могу использовать одномерный массив с расчетом индекса для считывания.
functional_block Recipe
// Объявление входных переменных
VAR_INPUT
InputHumidity : REAL; // Ввод влажности
InputTemperature : REAL; // Ввод температуры
InputTime : INT; // Ввод времени
CurrentStep : INT; // Текущий шаг
CurrentRecipe : INT; // Текущий рецепт
WriteEnable : BOOL; // Переменная для разрешения записи
END_VAR
// Объявление внутрипрограммных переменных с использованием retain
VAR RETAIN
Humidity : ARRAY[1..100] OF REAL;
Temperature : ARRAY[1..100] OF REAL;
Time : ARRAY[1..100] OF INT;
END_VAR
VAR
Index : INT;
END_VAR
// Объявление выходных переменных
VAR_OUTPUT
OutputHumidity : REAL;
OutputTemperature : REAL;
OutputTime : INT;
END_VAR
// Вычисление индекса для одномерного массива
Index := (CurrentRecipe - 1) * 10 + CurrentStep;
// Пример записи данных во внутрипрограммные переменные при разрешении записи
IF WriteEnable THEN
Humidity[Index] := InputHumidity;
Temperature[Index] := InputTemperature;
Time[Index] := InputTime;
END_IF
// Пример чтения данных из внутрипрограммных переменных и записи в выходные переменные
OutputHumidity := Humidity[Index];
OutputTemperature := Temperature[Index];
OutputTime := Time[Index];
end_function_block
Это у вас работает именно в ПР ?
Если бы работал retain, то работало бы. А так - 300 переменных, отрицание, гнев, депрессия.
kondor3000
01.09.2024, 11:06
Если бы работал retain, то работало бы. А так - 300 переменных, отрицание, гнев, депрессия.
На данный момент, всё можно сделать на панели оператора типа СП3хх. В ней храняться рецепты, а в ПР отправляются данные, например 5 регистров,
в соответствии с номером рецепта.
Либо 2 вариант, использовать ПЛК, там есть двумерные массивы, глобальные переменные и RETAIN.
Глядя на подобные темы, приходит мысль о неправильном выборе средств автоматизации.
Ведь есть ПЛК с похожим составом входов и выходов, но более развитыми языковыми средствами программирования прикладной программы.
Часто у программиста исполнителя заранее спрашивают совета по выбору программируемого прибора.
ПЛК дороже, но экономия будет за счет сокращения времени разработки - человеко-часы что-то да стоят.
ПР200 - 12 000 руб
ПР205 - 20 000 руб
ПЛК110 - 47 000 руб
Разработка ПО - дорожает от ручного набора 300 переменных, вместо одной строки объявления массива.
А будет ещё и последующая доработка по результатам эксплуатации, но программа уже на пределе модернизации и улучшения будут трудновыполнимы (например, добавить к рецептам ещё пару параметров).
У ПР своя ниша применения, где они и должны применяться.
Так а кто мешает набрать 300 переменных внутри программы ST на ПР ? а выбирать уже по номеру через ОДНУ переменную ?
Да, не совсем retain, но ведь можно. И в плане доработки не так много добавлять, либо к каждому массиву по паре переменных, либо еще один массив с новым рецептом и новым номером.
Рецепты где-то должны храниться - или на внешнем устройстве (панель оператора, АРМ оператора) или в ПР.
Значит в ПР придётся делать мега-мультиплексор с несколькими сотнями входов и парой десятков выходов.
Я бы ещё уточнил в РЭ на ПР - достаточно ли RETAIN переменных, чтобы уместить эти рецепты (4 байта на переменную, а RETAIN 1024 или около того байт, т.е. 256 переменных, если сетевых переменных по 2 байта, то 512 переменных).
Можно, всё можно, но неоправданно трудозатратно по причине неправильного выбора средств автоматизации.
Так проблема не в том, что ПР это не может выполнить, а в том, что изготовитель не добавил возможность это сделать в интерпретатор.
Т.е. ПЛК это хорошо, если у тебя быстрые и большие процессы, там уже время такта важно, нужна мощность.
А выделять отдельную линейку искусственно это вообще зачем? Я куплю ПЛК, когда у меня будет сервопривод, например, или линия будет на сотни входов/выходов.
Нет, проблема в том, что на этапе проектирования было выбрано неправильное средство автоматизации. Ведь в ПР RETAIN, массивов не было ни вчера, ни месяц, ни год назад - и это не новость.
Теперь, когда сложность программы превысила квалификацию программиста, начались укоры в сторону производителя, чтобы снять с себя ответственность.
Наиболее простое для Вас решение - хранение рецептов в панели оператора - многие из них позволяют это делать.
Фига вы тут воображать любите. Вопрос изначально был к удобству редактирования переменных и возможность импорта из таблицы. Потом уже перешли к retain и возможности уйти от создания переменных.
Моя квалификация в промышленных устройствах не велика, но опыт работы с микроконтроллерами меня наверное разбаловал - покупаешь контроллер и используешь все его возможности.
Почему для вычисления экспоненты я не могу написать exp(x), например, а должен париться с апроксимацией? Что, микроконтроллер не может посчитать? 30 лет назад
на вшивом калькуляторе считал.
По поводу квалификации - может в ПЛК она у вас выше, но почему коррелирует с хамством?
Вы не хотели бы функцию retain?
Я разве не прав в том, что было бы лучше, чтобы она была?
Функция retain в пр есть, называется энергонезависимое переменные.
Не надо перекладывать с больной головы.
Покажите ПР других производителей, где есть рецепты в вашем понимании?
Именно ПР, а не ПЛК
Я знаю не ПР, их я вообще мало знаю, только захожу в промышленные устройства, но на вскидку могу назвать ESP32 или STM 32, в которых есть всё это и которые стоят по 300р. В случае с ESP32 даже обвязки кроме питания и преобразования интерфейса для программирования ничего не надо. Но на борту уже есть Bluetooth и WiFi а так же web-server.
Что я перекладываю? Прошу или вменяемое редактирование переменных или retain. Хрен с ним с retain. Вменяемое меню редактирования переменных или импорт из таблицы меня устроит.
Да хотя бы чтобы внутри Owen logic можно было дополнительно нумеровать переменные и по этим номерам сортировать. Или в меню переменных чтобы можно было переменные выделять по одному или несколько и перетягивать выше/ниже. Хотя бы стрелками переключать. И чтобы этот список соответствовал тому, что в боковом меню.
Bananas вы ещё забыли о среде разработки, она отличается, хоть внутри и тот же самый stm или аналог.
Вам уже ответили, хотите плюшек, или панель соответствующая, или вместо пр выбираете ПЛК.
Или обходными путями через ST, который в пр.
Да, ответили, какие-то пользователи, что производителем не предусмотрено.
Тут у вас вроде форум для обсуждения и общения, в том числе и с производителем/разработчиком.
Если это были официальные ответы от разработчиков - на вопрос почему ответ - "иди нафиг, вот почему, покупай ПЛК", то я разочарован.
В конце концов, я все-таки клиент. Я даю обратную связь.
А вообще, мне сразу ответили, что retain реализуют в 2025, а срач не я тут развёл, я только ответил, что если бы был retain, то вот таким кодом можно было бы всё решить. И тут налетели эксперты, которые мне рассказали, кто я.
Bananas ну может со временем сделают retain более простой, чем сейчас. А так же как и битовые and, or, xor над числами.
Ну типа надо искать тут ответы от официальных представителей.
Но сейчас этого нет. Когда ждать неизвестно, запрягают они долго всегда.
Успокойтесь. Когда-нибудь будет новое окно переменных. Я косвенно участвовал в его консультировании при помощи матерного орова.
Насколько я понимаю и могу догадаться, сейчас все задачи и сроки у ОВЕНа сдвигаются из-за следующих факторов:
* Постоянный редизайн и переход на новые микросхемы, когда те, которые используются, не поставляются из-за санкций. Так как это промка, то там нельзя просто так взять и заменить микросхему. Надо делать кучу тестов и сертификаций. Особенно на аналоговые каналы.
* Доработка платформы для ПР103/ПР205. Чтобы RETAIN-переменные функционировали как надо, а не в режиме "Всё, что выводится на экран - RETAIN". При этом просто так всё сломать и переделать нельзя, потому что тогда понадобится переделывать все проекты с нуля.
* Допиливание ПР205 как нового флагмана. Тут пытаются пойти навстречу пользователям. Потому что с одной стороны разумным решением будет забить на пользователей и заняться всякими системными вещами (типа окна редактирования переменных), а с другой стороны каждую неделю (и на каждом вебинаре) сыпятся вопросы типа "Когда будет поддержка картинок?", "Когда будет анимация?", "Когда будет Пайтон" (хаха, это мем уже, глупый, так как в ПРках нет Linux, и запускать такие языки не на чем). Эти запросы стараются удовлетворить.
* Переделка окна переменных. Обещают группировку переменных (чуть ли не в древовидной структуре в подпапки), сортировку, и тот самый импорт-экспорт.
PS. Если поискать мои посты на форуме через профиль, то где-то можно будет найти способ (НЕдокументированный и ОПАСНЫЙ), которым я вручную переменные сортировал (распаковывал проект и вручную в файле строки переставлял).
Спасибо за развёрнутый ответ.
Выскажу свои мысли - стоит переходить на отечественные камни, они сейчас дорогие, но если будет спрос, цена начнёт падать. А пока не упала, стоит попробовать выбить от государства субсидии для компенсации за закупку по высоким ценам. Думаю, можно это обосновать логически кому надо.
но если будет спрос, цена начнёт падать.
Даже в объемах рынка всея РФ это мизер для существенного падения цены, а за пределами попробуй еще завоюй свою нишу, борясь с копеечными китаеподелками.
От чего же. Если будет в каждом утюге по камню стоять, то и отечественного рынка хватит. Это же не в дюйм-два кристалл, а так, с ноготочек.
Не одним АвтоВАЗом же заградительные пошлины едины.
Главное, чтобы не вышло, как с ютубом.
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot