PDA

Просмотр полной версии : Групповая запись переменных в ПР200



dmitrboristuk
25.07.2020, 17:10
Добрый день! Попытаюсь детально описать задачу. Есть скажем программа управления транспортерными лентами, режимы работы настраиваются восемью переменными. Если мне надо поменять режим работы транспортерными лентами, задающийся этими восемью переменными, то я буду менять их по очереди. А как сделать так, чтобы можно было одновременно изменить значения этих переменных за один раз, записав соответствующие значения из таблицы. И как имея существующие настройки сохранять группу параметров в таблицу, а затем при смене режимов производить групповую замену переменных выбором соответствующей строки из таблицы?

Я сам электрик, а не программист, так что заранее извините, если попутал термины!

Алексеев
25.07.2020, 19:28
На экране целочисленная переменная редактируется от 0 до сколько режимов Вам нужно менять .


Оператором EQ сравнивается , оператором SEL или FSEL выбирается и будет столько столбцов , сколько Вам нужно
поменять параметров за раз и столько строк сколько режимов вам нужно иметь ( задается с экрана ). Готового
макроса нету . Как то так . 50318 Это только идея реализации.
Может быть есть готовый у кого нибудь макрос ждите может быть выложат . Хотя это просто .

dmitrboristuk
25.07.2020, 20:38
Спасибо, попробую понять

Sergej_
26.07.2020, 09:35
Таблица будет формироваться в ОЛ или вводится кнопками? Параметры булевы или численные? Если таблица будет формироваться в ОЛ то это просто , с кнопок посложнее. Напишите как Вам нужно.

Sergej_
26.07.2020, 10:09
И сколько максимальное число режимов ( " строк ") необходимо?

dmitrboristuk
26.07.2020, 12:01
Sergej_ в строке 8 параметров 6 целочисленных параметров, и два булевских. Из среды ОЛ неплохо, а если с кнопок то совсем было бы замечательно!

capzap
26.07.2020, 12:26
Sergej_ в строке 8 параметров 6 целочисленных параметров, и два булевских. Из среды ОЛ неплохо, а если с кнопок то совсем было бы замечательно!

таблицу то когда нибудь покажете?

dmitrboristuk
26.07.2020, 13:39
таблицы еще нет, сейчас это выглядит как 8 записей переменных в функциональные блоки

Sergej_
26.07.2020, 15:40
сколько максимальное число режимов ( " строк ") необходимо? Делал под проект макрос типа ПЗУ 8(4) для ввода графиков с кнопок на 8 переменных флоат, если8( 4) режима достаточно то доработать не сложно, можно и больше, но энергонезависимой памяти не много в ПР200,сколько у Вас задействовано неизвестно, по крайней мере у меня проект очень большой был пришлось урезать с 8, до 4 .Если с формировать таблицу из ОЛ то это не проблема, нужно знать максимальное число Ваших режимов,под них подредактировать мультиплексор, значения параметров для каждого канала задать константами. Проект на рабочем компе в рабочий день могу посмотреть как Вам помочь.

Sergej_
26.07.2020, 18:03
Вот Вам на скору руку загрузка с ОЛ на 8 режимов (0-7) , если нумерация не устроит, подредактируйте макросы мультиплексоров например нумерация не с 0-7 а с1-8, количество режимов тоже подредактируйте если нужно .

Sergej_
26.07.2020, 18:14
1-6 канал целочисленные, 7,8 бинарные

Сергей0308
26.07.2020, 18:37
1-6 канал целочисленные, 7,8 бинарные

В 9 посте у Вас переменные флоат, теперь целочисленные, ну это же не элементарная частица, состояние суперпозиции она не имеет! Короче, не плохо бы уточнить и прояснить ситуацию, я так понимаю, если задаётся какой то режим работы, это должна быть целочисленная переменная?!

Сергей0308
26.07.2020, 20:17
таблицы еще нет, сейчас это выглядит как 8 записей переменных в функциональные блоки


Sergej_ в строке 8 параметров 6 целочисленных параметров, и два булевских. Из среды ОЛ неплохо, а если с кнопок то совсем было бы замечательно!

Так сколько режимов работы у Вас будет? Именно столько входов должен иметь мультиплексор, соответствующий вашим типом данных переменных, всё!

Вам для флоат такой:

50321

И для булевых переменных такой:

50322

Для выбора нужного режима на экране создаёте комбобокс с количеством строк равным количеству режимов работы, подписываете каждый режим, чтобы вам понятно было, с экрана выбираете нужный вам режим работы и незабываем эту переменную сделать энергонезависимой, чтобы при каждом включении не приходилось настраивать, а только когда надо сменить режим работы, всё!

50323

dmitrboristuk
26.07.2020, 22:00
Спасибо за ответы, как выйду на работу буду разбираться. Я думаю этих восьми режимов мне хватит.
А вообще здорово, что придумали такую вещь как программируемое реле, и по цене не особо дорого, и по функционалу, а самое главное по доступности программирования. С моими нулевыми знаниями в программировании, я в июне за 2 недели разобрался, как на триггерах и логических элементах создавать программируемые устройства, а когда еще можно с экрана поменять установки, так вообще обрадовался. Я не знаю как с микроконтроллерами, поменялось ли что за пршедшие 10 лет в плане сред программирования и удобства пользования, но когда я пробовал осваивать, простейшие вещи как включение светодиода с клавиши и вывод на экран известной фразы, плюс еще программаторы, компы с LTP портами, которых тогда уже с трудом удавалось находить, вызывали сильнейшее неприятие. Так что спасибище разработчикам таких замечательных устройств.

Sergej_
27.07.2020, 07:46
В 9 посте у Вас переменные флоат, теперь целочисленные, ну это же не элементарная частица, состояние суперпозиции она не имеет! Короче, не плохо бы уточнить и прояснить ситуацию, я так понимаю, если задаётся какой то режим работы, это должна быть целочисленная переменная?!
Сергей0308,человек просил 6 каналов целочисленных и 2 булевых пусть будут 6 целочисленные, 2 булевых -пожалуйста . Мы же не знаем ТЗ, так-же не знаем откуда он собрался задавать номера режимов если с экрана , то Вы объяснили как, а может быть из программы или еще каким-то образом? А задать варианты параметров из ОЛ чаще практичней , если не требуется их часто менять-персонал не испортит.
dmitrboristuk "упаковал" для Вас в "коробочку", не забываем что нумерация сейчас 0-7,если нужно 1-8 подредактируйте мультиплексоры ну и конечно задать нужные параметры в константах :rolleyes:, разберетесь, удачи всем.

Сергей0308
27.07.2020, 13:59
Сергей0308,человек просил 6 каналов целочисленных и 2 булевых пусть будут 6 целочисленные, 2 булевых -пожалуйста . Мы же не знаем ТЗ, так-же не знаем откуда он собрался задавать номера режимов если с экрана , то Вы объяснили как, а может быть из программы или еще каким-то образом? А задать варианты параметров из ОЛ чаще практичней , если не требуется их часто менять-персонал не испортит.
dmitrboristuk "упаковал" для Вас в "коробочку", не забываем что нумерация сейчас 0-7,если нужно 1-8 подредактируйте мультиплексоры ну и конечно задать нужные параметры в константах :rolleyes:, разберетесь, удачи всем.

Сложно у Вас у меня в 1,5-2 раза проще!

Sergej_
28.07.2020, 08:42
Сложно у Вас у меня в 1,5-2 раза проще!
Сергей в чем сложность? Задача несложная и решить ее можно разными способами и большой разницы нет, констант заполнять одинаковое кол-во, главное чтоб работало .В части задания BOOL параметров можно вообще "задать" целочисленным потом извлечь нужные биты в соответствии с номером режима , если кол-во режимов не будет превышать кол-во разрядов, картинка будет вообще простая, но не очень удобно. Но для целей заявленных dmitrboristuk, наверное наглядней и проще заполнить будет по отдельности , тем более человек только осваивает это дело.

Сергей0308
28.07.2020, 09:21
Сергей в чем сложность? Задача несложная и решить ее можно разными способами и большой разницы нет, констант заполнять одинаковое кол-во, главное чтоб работало .В части задания BOOL параметров можно вообще "задать" целочисленным потом извлечь нужные биты в соответствии с номером режима , если кол-во режимов не будет превышать кол-во разрядов, картинка будет вообще простая, но не очень удобно. Но для целей заявленных dmitrboristuk, наверное наглядней и проще заполнить будет по отдельности , тем более человек только осваивает это дело.

Разница с моим в количестве используемых элементов, кроме того у меня отсутствуют ненужные элементы, типа как у Вас блоки преобразования типов!

50362

И, складывается такое впечатление, что мультиплексор делали при езде по ухабам или с похмелья! И, даже поленились вынести константы в свойства макроса!

Алексеев
28.07.2020, 11:44
Разница с моим в количестве используемых элементов, кроме того у меня отсутствуют ненужные элементы, типа как у Вас блоки преобразования типов!

50362

Если проект простой , а он будет простым то какая разница 1 % или 2% использования ресурса ПР200 :o

Вообще то предложение для ОВЕНА организовать олимпиаду по программированию в ПР200 ( как происходит в компании инсат по мастер скаде)
Вы бы точно брали все призы .

Сергей0308
28.07.2020, 12:21
Если проект простой , а он будет простым то какая разница 1 % или 2% использования ресурса ПР200 :o

Вообще то предложение для ОВЕНА организовать олимпиаду по программированию в ПР200 ( как происходит в компании инсат по мастер скаде)
Вы бы точно брали все призы .

Как Вы написали - это в два раза, это существенная разница, вот интересно, если кому зарплату понизят в 2 раза, он тоже будет утверждать, что это не существенная разница? Ну а работать и так будет, я же не утверждал, что не будет так работать! Помните мультик "и так сойдёт": https://www.youtube.com/watch?v=8Kr23RvT--k&t=340s

Серёга Букашкин
28.07.2020, 12:34
Да просто автор ещё не все ФБ освоил, не дошел до дешифратора и SEL. Конечно предложенный вариант самый затратный из всех способов, но работает ведь.

Алексеев
28.07.2020, 13:12
Как Вы написали - это в два раза, это существенная разница, вот интересно, если кому зарплату понизят в 2 раза, он тоже будет утверждать, что это не существенная разница? Ну а работать и так будет, я же не утверждал, что не будет так работать! Помните мультик "и так сойдёт": https://www.youtube.com/watch?v=8Kr23RvT--k&t=340s

Вот меня тоже обвиняют некоторые коллеги в том что мои проекты в ОЛ достаточно громоздкие уже 29 мсек цикл. Но зато Я их постоянно тестирую на вские рода нештатные ситуации .
Когда допустим можно изменить , Я просто добавляю дополнительные условия . Меня так приучил ПЛК , где самай большой проект 10% от ресурса ПЛК.
Это для меня на много более важнее чем величина кода . Как только дойду до завершения ресурса так сразу начну оптимизировать . А сейчас только 58%.
А по воду 1 % или 2% какая разница если еще есть 98% .

Серёга Букашкин
28.07.2020, 13:51
мои проекты в ОЛ достаточно громоздкие
Большая задача обычно и много вх/вых требует. Я большую задачу распределяю на несколько ПР200, при этом получая достаточно вх/вых. Если просуммировать их ресурс получится 130...170%. Но это хороший метод, лучше чем на ПЛК, и дешевле конечно.

Алексеев
28.07.2020, 15:50
Большая задача обычно и много вх/вых требует. Я большую задачу распределяю на несколько ПР200, при этом получая достаточно вх/вых. Если просуммировать их ресурс получится 130...170%. Но это хороший метод, лучше чем на ПЛК, и дешевле конечно.
У меня такой же подход . Каждый ПР200 выполняет свою задачу на каждом котле свой ПР200 , котельной управляет ещё один объединенные с котловыми по RS485 и он же связывается с мастер скадой по GPRS
каждую минуту ( фактически онлайн режим ) . И вот сейчас на столе всё это собрано и идёт постоянное тестирование Мастер скада ПК соединён с ПР200 котельным , и два котловых соединённые по RS485 c котельным ПР200.
Создаю различные ситуации . И что то вот уже на протяжении 2х месяцев каждый раз что то дорабатываю ( во всех трёх проектах Скада , котельный , котловой). Лучше сейчас потратить время , чем во время отопительного сезона ездить по объектам .

Серёга Букашкин
28.07.2020, 16:49
У меня такой же подход .
Ну похоже это не очень-то крупная задача с котлом если ресурсами одного ПР200 решается. ПРМ не помогают тут радикально (и небезопасно из-за угрозы прекращения связи по шлейфу), А ПРМ-3 только недавно появился. У меня в задаче котла только аналоговых сигналов 16...18 шт.(с положениями приводов регуляторов), и горелок на котле обычно более одной. Даже на задачу деаэратора одного ПР200 мало, надо два если по нормальному делать. И насчёт скады, связь наверное каждую секунду, а не минуту? Не лучше ли в качестве концентратора ставить местный ПК со скадой, он же удобный пульт управления и всё пишет, а удаленную связь уже с него через OPC? Впрочем, в Вашем случае похоже надо обслуживать маленькие котелки, работающие без наблюдения местных операторов, поэтому такой подход к структуре передачи данных (записи никому по месту не нужны).

Sergej_
28.07.2020, 18:03
Разница с моим в количестве используемых элементов, кроме того у меня отсутствуют ненужные элементы, типа как у Вас блоки преобразования типов!

50362

И, складывается такое впечатление, что мультиплексор делали при езде по ухабам или с похмелья! И, даже поленились вынести константы в свойства макроса!
" с похмелья", что ж так сразу, на скорую руку между делом- согласен.
Сергей, Вы человек безусловно сведущий в ОЛ , взгляните пожалуйста на BOOL часть еще одного варианта с точки зрения ресурсосбережения. Удобство использования оставим пока,если режимы задать на "века"то вполне, по сути это предложенный Вами вариант в усеченной форме.По поводу не убранных блоков просмотрел , каюсь, но прикладного значения это не имеет вообще с точки зрения ресурсов. По поводу "полировки" макроса думаю автор темы разберется, может он вообще его использовать не будет , Вы же не собрали макрос , а только указали направление никто же Вам не пеняет.По поводу кол-ва элементов вопрос интересный, особо голову этим не забивал, но их количество никак не прямо пропорциональнo использованным ресурсам в части использования памяти точно, в плане вычислений вопрос открытый. Ради интереса взглянул на использованные ресурсы Вашего мултьтиплексора на 8 входов и овеновского который я предлагал, если верить ОЛ Ваш кушает ПЗУ немного меньше, зато ОЗУ больше.Хотя картинка действительно проще, но как потом поступит компилятор ОЛ, и обработает процессор ПР-ки то нам неведомо.

Алексеев
28.07.2020, 18:15
Ну похоже это не очень-то крупная задача с котлом если ресурсами одного ПР200 решается. ПРМ не помогают тут радикально (и небезопасно из-за угрозы прекращения связи по шлейфу), А ПРМ-3 только недавно появился. У меня в задаче котла только аналоговых сигналов 16...18 шт.(с положениями приводов регуляторов), и горелок на котле обычно более одной. Даже на задачу деаэратора одного ПР200 мало, надо два если по нормальному делать. И насчёт скады, связь наверное каждую секунду, а не минуту? Не лучше ли в качестве концентратора ставить местный ПК со скадой, он же удобный пульт управления и всё пишет, а удаленную связь уже с него через OPC? Впрочем, в Вашем случае похоже надо обслуживать маленькие котелки, работающие без наблюдения местных операторов, поэтому такой подход к структуре передачи данных (записи никому по месту не нужны).

В моем случае да маленькие до 500 кВт ( в паре 2 -- 1000 кВт) .И задача стоит сократить дежурный персонал .
Стоит задача повысить энергоэффективность за счёт уменьшения стоимости Гкалории .50374
50375 50376 . Каждую минуту этого достаточно что сообщить о нештатной ситуации

Пк стоит на несколько десятков котельных по сравнению с вашими мини котельных . Стоимость диспетчеризации не позволяет
использовать на каждой котельной ПК да это не зачем .Обычные ПК ( ноутбуки ) насколько Я знаю нельзя использовать
в промышленности , а только промышленные === они стоят деняк ( это не китайский ширпотреб )

Серёга Букашкин
28.07.2020, 19:57
Какая это скада на картинке? На мастерскаду не похоже. Капризы на тип компа бывают только на больших станциях, и овен там не разрешается, а на котельных можно что угодно. Промышленный обычно отличается доп защитой корпуса, внутри то же самое.

Алексеев
28.07.2020, 21:33
Какая это скада на картинке? На мастерскаду не похоже. Капризы на тип компа бывают только на больших станциях, и овен там не разрешается, а на котельных можно что угодно. Промышленный обычно отличается доп защитой корпуса, внутри то же самое.

Это Мастер Скада ф. Инсат . С нас не требуют чтобы на каждом объекте по ПК да это и не нужно . Компьютер только у диспетчера это в одном случае там где есть диспетчерская служба ..
В тех случаях где она не организована ПК постоянно включён в офисе и рассылает емейлы и СМС , или если нужно с него идет управление по всем объектам . Работает как сервер . 50383 50384.
Согласен и цена соответственно повышается в несколько раз .50385

melky
29.07.2020, 09:04
Ну у вас на картинках слишком крутые промПК. Если рассматривать ARM или впаянный x86 на 1,1 ГГц то ценник начинается примерно от 120$ + память + БП.

Тут фокус в том, что непосредственно на объекте Scada может сохранять абсолютно все данные, а в голову передавать только важные и в случае разбора полетов, можно удаленно зайти на экземпляр котельной и посмотреть все.

Если этого не требуется, то да, можно потратить на GSM модем, роутер и т.д. но экономии там будет немного...