HMI_панель на Андроиде

HMI_панель на Андроиде - KaScada
Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#401

Сообщение Rovki » 23.05.2016{, 22:15}

Если есть в доме смартТВ ,то можно легко продублировать работу Каскады на ТВ (только отображение)
Для скачивания вложений Вы должны быть зарегистрированы.
Последний раз редактировалось Rovki 23.05.2016{, 22:17}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#402

Сообщение Rovki » 24.05.2016{, 18:00}

Можно работать на каскаде ,а в фоновом режиме вести наблюдение за помещением, установив соответствующее приложение -для охраны :oнормально .
Извиняюсь за пыль на клаве -делал ремонт и снимал

Добавлено (24.05.2016, 18:00)
---------------------------------------------
Rovki писал(а):Прикрепления: 4531258.jpg(120Kb)
Собачка в роли подопытного оператора смотрит на Каскаду ,а я ее вижу на ноутбуке .
Для скачивания вложений Вы должны быть зарегистрированы.
Последний раз редактировалось Rovki 23.05.2016{, 22:29}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
hrach
Сержант
Сообщения: 252
Зарегистрирован: 17.09.2015{, 11:05}
Репутация: 9
Откуда: Самара
Имя: Грачик
Контактная информация:

HMI_панель на Андроиде

#403

Сообщение hrach » 24.05.2016{, 22:18}

[video][/video]

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#404

Сообщение Rovki » 24.05.2016{, 23:28}

Спасибо за видео ,Грачик !Может в настройках планшета есть настройка тачскрина ,его чувствительности ..
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#405

Сообщение support » 25.05.2016{, 00:38}

Я наконец то отладил работу нового модбаса (осталось работа по причёсыванию интерфейса) и попробовал по тестировать каскаду. Сразу скажу - новый модбас представляет собой реализацию классического полного промышленного стандарта. То есть есть отдельные области памяти для Discrete Inputs, Coil, InputRegistors, Holding registors. Это обоснованно тем что у меня есть планы по созданию датчиков и исполнительных устройств выстаиваемых в промышленные системы и там это важно. Из за такой организации памяти возникли некоторые проблемы с Каскадой. Кстати эти проблемы возникнут у неё и при попытке работать с любой системой на "правильном" модбасе.
В чём суть проблемы. Я так понимаю у Вас в программе общая область регистров без разделения на типы. В цикле программы Вы сначала записываете изменённые данные (заданные с помощью задатчиков) в слейвы с помощью функции 6 (то есть в область HoldingRegisters) а потом считываете все регистры с помощью функции 2 (то есть из области Input Registers). Вот тут и засада. Если для индикатора все более менее хорошо (создаём в слейве InputRegistr с нужным адресом и пишем в него необходимое значение), то с задатчиком всё намного сложнее. Поскольку Вы пишете функцией 6, то и создавать надо Holding Register c нужным адресом. Хорошо создаём, и пишется в него всё нормально. Но читать то Вы пытаетесь InputRegistr (функция 2). А InputRegist -а с таким адресом нет. Соответственно на задатчике постоянно висит значок ошибки (модбас при попытке прочитать не существующий адрес возвращает ошибку).  Иди вообше в InputRegistr с таким адресом находятся совершенно левые данные (тогда задатчик приклеется к значению этого входа и его не сдвинеш - то же экспериментировал).
Вариантов решения этой проблемы два.

Первый - костыль для FLProg и он не поможет в случае настоящего устройства - в программе FLProg создать Holding registr и Input Registr  с одним адресом и переписывать значение из Holding registr в Input Registr. Проверенно - работает. Но в случае настоящего промышленного контроллера это не прокатит. Там InputRegistors жёстко привязаны к железным аналоговым входам и ничего в него записать нельзя.

Второй - несложный, снимает практически все проблеммы но требует работы разработчиков Каскады. Пускай каскада работает только с Holding Registrs. То есть читайте не с помощью функции 2 а с помощью функции 3. Все проблемы снимутся, и даже при переходе программы FLProg на новый модбас старые проекты созданные для Каскады будут продолжать работать.

Надеюсь на понимание разработчиков Каскады. Если что то непонятно -задавайте вопросы
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#406

Сообщение Rovki » 25.05.2016{, 00:57}

support писал(а):Но в случае настоящего промышленного контроллера это не прокатит
ПЛК овен и ПР Овен -промышленные контроллеры ,наши отечественные на них и ориентируемся .Овен крупнейшая в России компания и старейшая (25лет) .С ними Каскада работает прекрасно .

https://ru.wikipedia.org/wiki/Modbus
Хотя то же брали импортный ПЧВ (частотник) и там области разнесены ,а как имп. ПЛК надо глядеть ..
Для скачивания вложений Вы должны быть зарегистрированы.
Последний раз редактировалось Rovki 25.05.2016{, 01:06}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#407

Сообщение support » 25.05.2016{, 01:10}

Я конечно понимаю что Вы ориентируетесь на Овен. Но с другой стороны есть стандарт Modbus.
Да и Вам собственно говоря работы не много. В коде в одном месте поменять 2 на 3. Формат запроса при этом не меняется (для обеих областей он одинаковый), а проблема снимется. Кстати к тому же частотнику подключится сможете, да и к оборудованию ABB (у них с модбасом строго - это они авторы модбаса) без проблем.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#408

Сообщение Rovki » 25.05.2016{, 01:24}

support писал(а):Но с другой стороны есть стандарт Modbus.
Я же подчеркнул ,что это вроде  как уже не стандарт :D
(разделение) ,кто как хочет тот так и делает .Зачем нам АВВ ,на свои то ПЛК денег не хватает .К стати ,кроме железа есть и ОПС и СКАДА в том числе от ИНСАТ.Они прекрасно поддерживают Овен ПЛК и ПР.
В любом случае обсужу с Программистом ,что можно и нужно ли делать .На сегоднешний день Каскада работает с ардуино ,пЛк ,пр ...

Добавлено (25.05.2016, 01:24)
---------------------------------------------
И ардуиншики похоже идут этим же путем (совмещение областей)
https://habrahabr.ru/post/249043/
Для скачивания вложений Вы должны быть зарегистрированы.
Последний раз редактировалось Rovki 25.05.2016{, 01:19}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#409

Сообщение support » 25.05.2016{, 01:24}

Ну вообще то даже в OPC сервере от Овен предусмотрено разбиение на области.



А Вы позиционируете себя вроде как Скада. Я честно говоря не видел не одной скады или ОПС сервера которые работали бы только со совмещёнными областями.
Для скачивания вложений Вы должны быть зарегистрированы.
Автор программы FLProg.

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#410

Сообщение support » 25.05.2016{, 01:27}

Rovki писал(а):И ардуиншики похоже идут этим же путем (совмещение областей)
Это просто самый простой и лёгкий путь. Но накладывает некоторые ограничения. Для создания библиотеки - самое то. Но честно говоря - я нормально работающую библиотеку так и не нашёл - пришлось писать драйвер самому.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#411

Сообщение Rovki » 25.05.2016{, 01:30}

support писал(а):Я честно говоря не видел не одной скады или ОПС сервера которые работали бы только со совмещёнными областями.
Ну я же дал скрин ОПС от ИНСАТ .Пишу например ,по адресу 200 ,а читаю 201 регистр из ПР .а не 30000 и 40000
может тут что то http://www.masterscada.ru/product...._UG.pdf
Последний раз редактировалось Rovki 25.05.2016{, 01:45}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#412

Сообщение support » 25.05.2016{, 01:51}

ПР - слейв - у него да совмещённые области. Но OPC сервер - всегда мастер. Он может работать как с совмещёнными областями так и с разделёнными. И в приведённом скриншоте выбрана область Holding Registr.

При создании тега можно было выбрать и другую область. В случае работы с ПР например при выборе области InputRegistrs c адресом 201 Вы получили бы те же данные, а при работе с полным модбасом - другие (значения с аналогового входа 201).

Но Каскада работает ТОЛЬКО с объединёнными областями. То есть с тем же частотником она работать не сможет. Вы не сможете прочитать значения входов частотника (это область DiscreteInputs и они читаются с помощью функции 2 ) , подать еденичку на цифровой выход частотника (область Coil запись - функция 5). Да и задать например с каскады скорость вращения частотника не получится, особенно если заданная скорость лежит где то в Holding registr по адресу 1 а на первый аналоговый вход например подано для контроля входное напряжение.

Для чего это нужно. Ну например классно было бы на RS485 частотника повесить Сокет-3М, подойти с планшетом, и посмотреть состояние частотника, изменить скорость и т.д. Сейчас это сделать невозможно. Мир промышленных устройст не ограничивается только ПР.

P.S. В предыдущих комментариях я ошибся - Каскада читает не функцией 2 а функцией 4. Вот её в идеале надо бы изменить на 3.
Для скачивания вложений Вы должны быть зарегистрированы.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#413

Сообщение Rovki » 25.05.2016{, 01:58}

Цитата support ()200?'200px':''+(this.scrollHeight+5)+'px');">И в приведённом скриншоте выбрана область Holding Registr. Так она не выбирается пользователем ,вот и выхода сюда же
Для скачивания вложений Вы должны быть зарегистрированы.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#414

Сообщение support » 25.05.2016{, 02:02}

Ну и напоследок.
Разделённые области встречаются в основном в законченных устройствах не предусматривающих возможности программирования собственной логики. Как то частотные преобразователи, блоки контроля двигателей, измерительные преобразователи, блоки чтения цифровых или аналоговых  входов (например серия ADAM от Advantech). У них InputRegistrs, DiscreteInputs, Coils жёстко привязянны к входам -выходам, а в HoldingRegisters находятся настоечные данные
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#415

Сообщение Rovki » 25.05.2016{, 02:05}

И вообще запись\чтение в задатчиках (переключатель ,цифровой задатчик и аналоговый) сделана для обратной связи .Что бы визуально было видно не то что хотел задать(записать) ,а то что реально ушло слейву (чтение)..Особеноо для мобильной панели ,а то включил пуск и выключил каскаду (ушел) ,а кто то питание установки выключил .Включаем Каскаду и видим реальное положение переключателя ,а не установленное ранее .
Последний раз редактировалось Rovki 25.05.2016{, 02:10}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#416

Сообщение support » 25.05.2016{, 02:05}

Rovki писал(а):Так она не выбирается пользователем ,вот и выхода сюда же
Все правильно, HoldingRegistr и Coil позволяют читать и писать в себя.
Но ведь там не только HoldingRegistrs можно выбрать при создании тега, но и на входах по моемe можно выбрать ещё и DisctreteInputs и InputRegistr.
Автор программы FLProg.

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#417

Сообщение support » 25.05.2016{, 02:09}

Rovki писал(а):И вообще запись\чтение в задатчиках (переключатель ,цифровой задатчик и аналоговый) сделана для обратной связи .Что бы визуально было видно не то что хотел задать(записать) ,а то что реально ушло слейву (чтение)..
Я это понимаю. Но если вы пишете в HoldingRegistr то логично было бы и читать оттуда. А Вы совершенно неожиданно читаете с аналогового входа . Я конечно понимаю что для ПР это без разницы, Но вед Вы пытаетесь быть универсальным решением.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#418

Сообщение Rovki » 25.05.2016{, 08:08}

support писал(а):А Вы совершенно неожиданно читаете с аналогового входа
Я не понимаю о каком аналоговом входе речь ...
Если мы записали в какой то регистр данные и потом их прочитали ,значит физически это одна и та же ячейка памяти раз они совпали ....При этом физический адрес этой ячейки может быть каким угодно(со смешением) .Кроме того ,в ПР ,например сетевая переменная находится в ОЗУ и при выключении питания они переписываются в энергонезависимую память ,а при включении вновь считывается из ретейн области ...
Сегодня вечером попробует протестить с другой функцией и сообщим о результатах .
Последний раз редактировалось Rovki 25.05.2016{, 08:56}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1754
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 603
Откуда: Астрахань
Имя: Сергей
Контактная информация:

HMI_панель на Андроиде

#419

Сообщение support » 25.05.2016{, 18:05}

Rovki писал(а):Я не понимаю о каком аналоговом входе речь
Повторюсь. Вы пишете в раздел HoldingRegisters (перевод - Регисторы хранения), а читаете из InputRegistors (перевод -Входные регистры - в соответствии со стандартом подразумевается что в них хранятся значения считанные с аналоговых входов). Для ПР с совмещёнными областями это конечно значения не имеет, но ПР это не единственный контроллер на свете, а вот для устройств с разделёнными областями это имеет очень даже большое значение.

Ребята, если Вы пытаетесь создать универсальную Скаду работающую по модбасу, неплохо было бы разобраться с базовыми вещами, а не работать методом тыка в один единственный контроллер.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4105
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 195
Откуда: Чехов
Имя: Анатолий
Контактная информация:

HMI_панель на Андроиде

#420

Сообщение Rovki » 25.05.2016{, 18:26}

support писал(а):Ребята, если Вы пытаетесь создать универсальную Скаду работающую по модбасу, неплохо было бы разобраться с базовыми вещами, а не работать методом тыка в один единственный контроллер.
Сергей ,я не программист и тонкостей модбаса не знаю ,для этого есть другой человек Kascada .Я ставлю задачу ,а он реализует .Поэтому тыка нет .С самого начала ставилась задача работы с отечественными ПР,ПЛК и она успешна решена .Потом появилась идея работать с ардуино и ФЛПрог ,она так же была решена ,правда на старой реализации модбаса .О каком тыке речь? Я просто как электронщик не понимаю некоторых ваших программистких штучек (и не скрываю это) .Для меня есть физический адрес ячейки памяти ,знаю о том что есть разные способы адресации ,индексная ,косвенная к ячейкам памяти ...И способы адресации к ячейкам памяти внутри МК не соответствуют способам адресации в модбасе к этим ячейкам ,ввиду того что адресное пространство памяти условно разбито на 4 области ,которые закреплены за входами\выходами битными и рабочими регистрами .Знаю что Функция в модбасе жестко определяет с чем мы работаем и какую операцию хотим проделать и тд...А все подробности знает непосредственный исполнитель-писатель  Каскада .Сегодня он проверит ваше предложение и если оно будет работать с ПР и ПЛК Овен как раньше ,но при этом будет работать и ФЛпрог ,то мы внесем изменения.Если нет ,то вносить не будем ,нам отечественное ближе и дороже ,как и предполагаемые отечественные пользователи.
Последний раз редактировалось Rovki 25.05.2016{, 18:55}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Ответить

Вернуться в «HMI_панель на Андроиде - KaScada»