Gif анимация

Avatar
  • обновлен

Добрый день. Не можем понять как осуществить. Имеется вал с лопастями, в gif формате, который должен крутиться вперед, назад и стоять.

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

Можем конечно 2 gif поставить и картинкой закрыть, но получается не очень красиво.

Как осуществить именно 3 команды на одну gif?

Avatar
Цитата от alexy1986

Добрый день. Спасибо большое всем! Мы так и сделали 2 гифки и статическая картинка. Но было интересно узнать реализация этого только  одной гифкой. Мы загрузили 5-ю версию и вроде там можно это реализовать, но она пока не поддерживает анимацию!

Всем спасибо за ответы!

В примере который опубликовали немного оптимизированная версия с одной гифкой и одним статическим изображением.

Avatar
Цитата от alexy1986

Добрый день. Спасибо большое всем! Мы так и сделали 2 гифки и статическая картинка. Но было интересно узнать реализация этого только  одной гифкой. Мы загрузили 5-ю версию и вроде там можно это реализовать, но она пока не поддерживает анимацию!

Всем спасибо за ответы!

День добрый.

В пятой версии GIF анимация пока не поддерживается (её добавление в эту версию ещё на стадии обсуждения). Но простую анимацию можно делать средствами самой системы. На нашем youtube канале есть примеры реализации анимации.

 

Avatar
alexy1986

Добрый день. Спасибо большое всем! Мы так и сделали 2 гифки и статическая картинка. Но было интересно узнать реализация этого только  одной гифкой. Мы загрузили 5-ю версию и вроде там можно это реализовать, но она пока не поддерживает анимацию!

Всем спасибо за ответы!

Avatar

День добрый, коллеги.

Накидали небольшой пример. Наше виденье обсуждаемой задачи (отдельное спасибо Anatoly за идею).

Image 2108

Пример управления насосом.slz

Avatar
Цитата от Anatoly

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

Как говорится в споре (диалоге) рождается истина! Коллегиальное обсуждение задачи, полезно всем сторонам которые участвуют в процессе..

Avatar
Цитата от Anatoly

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

Добрый вечер, Анатолий.


Предоставленное решение заслуживает внимания, мы его обязательно у себя поверим. И если все верно, будем предлагать его как проверенное решение за Вашим авторством. Спасибо за идею реализации задачи и потраченное время!

Avatar
Anatoly

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

Avatar
Anatoly
Цитата от СИМП Лайт (тех поддержка)

Добрый вечер, Анатолий.

Очень интересно будет увидеть работающий пример - три состояния той же мешалки (вращение вправо, влево и стоп) при двух состояниях управляющего сигнала 0 и 1. Будем рады изучить данный пример, т.к. наши инженеры с ходу не могут найти решения данной задачи.

ПРОЛОГ.

Наваял. Думал что отвечаю Алексу. А это техподдержка поддевает. Шутники.

Конечно, через 0-1 вы не сможете управлять тремя состояниями, (я трезв больше 40 лет:).

О том то и говорил, что вы видели, чел св тупике. Но он достаточно ясно описал задачу. А еже ль выражается, как выражается, то не суть вытягивать из него правильные слова об очевидном.

Но пусть он почитает, думаю понятно.

Дал доступ к файлу диска с демонстрацией работающего примера. Что здесь изучать?

У вас три состояния одного механизма (пуск-стоп-реверс) управление ведется по двум каналам (т.к. поставлено условие о типе данных - bool). Но применять для практической реализации в СКАДА будете три канала. Почему... Особенность работы гиф. Их будет 2 + 1 статичное изображение (или 1 статичный гиф, только для изображения механизма). Первые два объекта могут принимать значения 0-1 (стоп-пуск)(стоп-реверс), но значения у вас будет три т.к. вы не можете присвоить одно и тоже значение "1" одному объекту заставив его принимать 2 разных состояния (в одном гиф это невозможно). Поэтому у вас будут 2 динамических изображения (нормальный пуск и реверс). Появляется одно НО. Изображения не должны мешать друг другу наложением. Если у вас наложится гиф ПУСК на РЕВЕРС, то будет каша (и наоборот). Надо показывать динамичное изображение когда объект в состоянии ПУСК= 1. И скрывать его в состоянии 0. Ведь в это время может быть включен в работу РЕВЕРС, и его изображение наложится на остановленный ПУСК=0, но не заместит его, а смешается. И вы ничего не увидите хорошего. Что делать? Скрывать их в состоянии =0. Но при состоянии двух объектов =0, экран будет пуст... Для этого вводится третье, статичное, изображение объекта состояние -СТОП. Свойства СТОП заключены в условии - если ПУСК or РЕВЕРС =1, то СТОП = скрыт. Если ПУСК and РЕВЕРС = 0, то СТОП = видимый. Вот эти два состояния объекта СТОП решаются в структуре мнемосхем в свойстве "видимость", связывая его с третьим вводимым для этого, виртуальным каналом, отвечающим за контроль состояния объекта СТОП исходя из состояния ПУСК и РЕВЕРС.

Как вы заводите на СКАДА сигнал ПУСК? в Тег.

Как вы заводите в СКАДА сигнал РЕВЕРС? тоже в Тег, но с другим именем.

Значит, то к чему вас подводила техподдержка вопросами, решается тремя состояниями, условно назовем их 1а-0-1б. Значения то 0-1, но каналы разные. И 1а не есть 1б, т.к. управляют разным рабочим состоянием, хотя одного и того же оборудования. Так же и состояние 0, отличается друг от друга, т.к. принадлежит разным объектам управления одной единицы оборудования. Скорее, в практике, вам надо будет их объединить в один канал. т.к. 0, он и есть 0 - общий стоп для любого управляющего состояния и любому объекту ПУСК или РЕВЕРС должен присваиваться 0 при остановке. Все реверсивные переключения оборудования проходят через СТОП.

Что же это за инженеры у вас завелись, которые не могут решить задачу :))

Avatar
Цитата от Anatoly

Техподдержка, научитесь отвечать людям не встречным вопросом. Вам же не нужен ответ потому, что вы видите, человек в ступоре и принимает неправильные решения. И суть знаете. Разъясните прямым обращением (но не вопросами), что постановка задачи ошибочная или дайте решение проблемы. Берите пример с Юрия Скобелкина. На любые вопросы у него нормальные поясняющие ответы, которые не ставят человека в ступор.

Успехов.

Добрый вечер, Анатолий.

Тех поддержка как "доктор" нужно выяснить симптомы и "боли" человека обратившегося за помощью. А в этом деле без наводящих вопросов не обойтись. При этом нужно не забывать что у человека обратившегося за помощью может быть своё виденье решения задачи, которое наши инженеры могли упустить из виду. По этой причине без вопросов - к счастью или иначе, не обойтись. Спасибо за Ваши комментарии. 

Avatar
Цитата от Anatoly

Нормально вы можете все сделать. Но проблема есть в гифке. Если у вас есть заготовка гиф с правым и левым вращением то для реализации потребуется 3 гиф. Одна будет статичная, вторая- нормальное вращение и следующая - реверс. Вяжете динамические гиф так же через биты. Но в дополнение, соответствующий канал вяжете на видимость соответствующей гиф. Т.е. при значении канала 1 включается видимость работающей гиф. При значении 0, гиф не отображается. Статическая гиф вяжется к виртуальному каналу работающему через скрипт 2OR-NOT. Входы OR это канал нормального пуска и канал реверса, выход блока инвертируется и значение подается на канал управления видимостью статического изображения. Логика проста: при единице на любом из динамических каналов, статический получает значение 0 и исчезает. И наоборот. (при использовании виртуальных каналов - вызов скрипта по времени 100мс)

Не смог прикрепить видео. Это ссылка к файлу на гугл-диске. Записал как работает анимация. Только не было гиф с обратным вращением. Сами найдете на просторах инета.

https://drive.google.com/file/d/1D3XPIjwye0-dlMora4BN0f-yhCBbcLQC/view?usp=sharing

Image 2107

Добрый вечер, Анатолий.

Очень интересно будет увидеть работающий пример - три состояния той же мешалки (вращение вправо, влево и стоп) при двух состояниях управляющего сигнала 0 и 1. Будем рады изучить данный пример, т.к. наши инженеры с ходу не могут найти решения данной задачи.