Segnetics

Вернуться   Segnetics > Форум Segnetics

Форум Segnetics Территория общения

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.01.2022, 23:51   #1
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
По умолчанию Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Коллеги, приветствую!
С прошедшими праздниками!

Некоторое время назад я обещал здесь, на форуме, рассказать как был сделал этот интерфейс https://youtu.be/4VpvOpiu8Ng .

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

В общем, если вы хотите попробовать использовать для разработки не только лоджик -- эта информация для вас.

Для сборки проекта-примера описание и проект на гитхабе:
https://github.com/tony-mikhailov/segnetics-smh4-qmlapp

Немного про интерфейс и возможности платформы.


В основе всего лежит Qt 5.9.4. Это максимальна версия Qt, которую мне удалось собрать "родным" компилятором и запустить со всеми моими хотелками на контроллере SMH4. Помимо всех возможностей библиотеки Qt, высокой производительности, хотелось использовать все возможности QML — декларативного описания интерфейсов, плюс хотелось иметь всякие эффекты типа полупрозрачности или возможности отбрасывать настраиваемую тень, использовать TrueType-шрифты, анимации и т.д и т.п. Всё это есть.

Посмотреть как запускается можно тут:
https://www.youtube.com/watch?v=4O7P...fZj3GnWzUsheUA

А так же тут https://mikhailov.center/qmlapp/, этот проект собранный под WASM. (https://ru.wikipedia.org/wiki/WebAssembly)

Если что, спрашивайте.
mikhailov вне форума   Ответить с цитированием
2 благодарности(ей) от:
Старый 09.01.2022, 12:08   #2
windy
Senior Member
 
Регистрация: Mar 2014
Адрес: Санкт-Петербург
Сообщения: 407
Благодарил(а): 1 раз(а)
Поблагодарили: 23 раз(а) в 23 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Серьезная задумка и грандиозная работа!

Теперь было бы время и хватило бы мозгов разобраться и попробовать...
windy вне форума   Ответить с цитированием
Благодарность от:
Старый 09.01.2022, 21:15   #3
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от windy Посмотреть сообщение
Серьезная задумка и грандиозная работа!

Теперь было бы время и хватило бы мозгов разобраться и попробовать...
В целом старался сделать всё как можно проще.

в корне проекта 2 скрипта, один (docker_build.bat) строит образ докера, который будет собирать проект из исходников, второй (docker_run.bat) запускает компиляцию в образе докера, результат должен появиться там же где и батники. Исходники проекта лежат в папке qmlapp/ . Код “окна приложения” в файле app.qml. Там можно что-нибудь поменять, снова запустить docker_run.bat, измененные исходники вновь пересоберутся в контейнере. Если установлен докер, то на всё про всё 10 минут должно хватить)))
mikhailov вне форума   Ответить с цитированием
Старый 10.01.2022, 10:50   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 885
Благодарил(а): 15 раз(а)
Поблагодарили: 647 раз(а) в 591 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

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


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 10.01.2022, 14:12   #5
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата:
Сообщение от Arsie Посмотреть сообщение
Вот и у нас анимашки всякие на тестах крутились хорошо и даже более плавно, чем у вас на видео. А по факту, как на Qt собрали меню - получилось то, что получилось. На SMH4 еще более-менее, а на Триме лично я без слёз смотреть не могу на эту высокую производительность Qt.
Дык, это не производительность Qt, а экран большой для такого проца на Триме. Пруфы и расчеты я дал ещё когда vnc-сервер вам делал и вы с ними согласились

Программировать надо с учётом этого. Ну и библиотека ушла далеко вперёд. 5.3.2, вроде вы для меню используете, и судя по всему на виджетах написали. Вот оттуда и тормоза.
У меня пруфы -- работающая ЛПШН и видос выше. А на Триме, надо учитывать его особенности. И не стоит перерисовывать весь экран если меняешь на нем один пиксель.

Не знаю, где вы увидели "рывки" на видео, там ничего не лагает, может артифакты самой анимации и съёмки через мобилу создали такое ощущение.

Так же отмечу, что это проект для всех в открытом доступе. Теперь каждый может собрать самостоятельно на C++/Qt проект, запустить и оценить перспективность данного направления. И без виртуалки, отмечу.
mikhailov вне форума   Ответить с цитированием
Старый 10.01.2022, 14:55   #6
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 563
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Вообще, по моему, плавный скроллинг и анимация с высоким FPS промышленному контроллеру противопоказана, особенно с одноядерным процессором.
Gel вне форума   Ответить с цитированием
Старый 14.01.2022, 14:28   #7
ackur
Member
 
Регистрация: Oct 2015
Сообщения: 45
Благодарил(а): 3 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от mikhailov Посмотреть сообщение
Если что, спрашивайте.
Как вернуть ПЛК к "Заводскому" состоянию? Прошивка через SmLogix?
ackur вне форума   Ответить с цитированием
Старый 14.01.2022, 14:30   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 17 885
Благодарил(а): 15 раз(а)
Поблагодарили: 647 раз(а) в 591 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от ackur Посмотреть сообщение
Как вернуть ПЛК к "Заводскому" состоянию? Прошивка через SmLogix?
Форматирование через Лоджик и USB.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Благодарность от:
Старый 14.01.2022, 14:55   #9
yvori
Member
 
Регистрация: Jan 2022
Сообщения: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

А по сабжу кто-нибудь что-нибудь пробовал? А то тема интересная, но проект какой-то недоделанный, т.к. приходится допиливать напильником, прыгая вокруг с бубном. Вопрос к автору: Вы вообще тестируете то, что выкладываете в публичный доступ?
yvori вне форума   Ответить с цитированием
Старый 19.01.2022, 14:32   #10
yvori
Member
 
Регистрация: Jan 2022
Сообщения: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Судя по оживлённой дискуссии, никто ничего по теме не пробовал и никому это неинтересно (возможно, даже самому автору)

Цитата
Сообщение от mikhailov Посмотреть сообщение
Если что, спрашивайте.
Но на всякий случай напишу, что пришлось сделать, чтобы всё-таки всё это заработало:

1) указать, где искать Qt-библиотеки, по-умолчанию берутся библиотеки Сегнетикса (например, через LD_LIBRARY_PATH)
2) указать, где искать шрифты (в этой сборке по-умолчанию ищутся где-то в /home/tony), либо тупо их скопировать по требуемому пути
3) скопировать плагины imageformats, чтобы могла загрузиться гифка
4) ну, и на матриксе это всё не взлетит, так что описание на GitHub очень оптимистично
yvori вне форума   Ответить с цитированием
Старый 19.01.2022, 17:33   #11
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от yvori Посмотреть сообщение
Судя по оживлённой дискуссии, никто ничего по теме не пробовал и никому это неинтересно (возможно, даже самому автору)



Но на всякий случай напишу, что пришлось сделать, чтобы всё-таки всё это заработало:

1) указать, где искать Qt-библиотеки, по-умолчанию берутся библиотеки Сегнетикса (например, через LD_LIBRARY_PATH)
2) указать, где искать шрифты (в этой сборке по-умолчанию ищутся где-то в /home/tony), либо тупо их скопировать по требуемому пути
3) скопировать плагины imageformats, чтобы могла загрузиться гифка
4) ну, и на матриксе это всё не взлетит, так что описание на GitHub очень оптимистично
Ну я хоть кто то попробовал. Пока в теме был бардак делать тут мне был нечего.
Что касается тестирования, то провести на все 100% у меня не получилось. Потому что мне надо сбросить к заводским настройкам контроллер. )) А у мена нет виндовз, и сбросить используя Винду в виртуалке не вышло, а может провод не тот)

На самом деле этот момент отложил публикацию материалов на 4ре месяца примерно.

Так что я решил выкладывать что есть. И скорее всего, кое какие моменты у меня могут быть не как у вас.

Будет время посмотрю, а если поправили и в вас Гуд то пилите пулл реквест.
mikhailov вне форума   Ответить с цитированием
Старый 19.01.2022, 17:35   #12
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 277
Благодарил(а): 0 раз(а)
Поблагодарили: 252 раз(а) в 248 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от mikhailov Посмотреть сообщение
.
Что касается тестирования, то провести на все 100% у меня не получилось. Потому что мне надо сбросить к заводским настройкам контроллер. )) А у мена нет виндовз, и сбросить используя Винду в виртуалке не вышло, а может провод не тот)
А через системное меню не пробовали?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 19.01.2022, 19:45   #13
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
А через системное меню не пробовали?
Нет, не пробовал.
mikhailov вне форума   Ответить с цитированием
Старый 20.01.2022, 11:21   #14
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 277
Благодарил(а): 0 раз(а)
Поблагодарили: 252 раз(а) в 248 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от mikhailov Посмотреть сообщение
Нет, не пробовал.
Вот, как один из вариантов сброса.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 20.01.2022, 11:28   #15
yvori
Member
 
Регистрация: Jan 2022
Сообщения: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Вот, как один из вариантов сброса.
Так это вроде не поможет получить девственно чистый контроллер, без файлов, которые копировались по SSH. Тут только форматирование!
yvori вне форума   Ответить с цитированием
Старый 20.01.2022, 12:15   #16
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 277
Благодарил(а): 0 раз(а)
Поблагодарили: 252 раз(а) в 248 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от yvori Посмотреть сообщение
Так это вроде не поможет получить девственно чистый контроллер, без файлов, которые копировались по SSH. Тут только форматирование!
Вы проверяли? Если там сильно меняется что-то на контроллере, возможно. Я еще не добрался попробовать эту поделку.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 20.01.2022, 13:59   #17
yvori
Member
 
Регистрация: Jan 2022
Сообщения: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Вы проверяли?
Так проблема в том, что поделка, которая сейчас находится на гитхабе не доделана. В ней не хватает некоторых вещей. А раз у автора это работает, то он вносил какие-то изменения вручную. Например, изменял системные файлы, редактировал скрипты. И чтобы протестировать свою разработку ему нужен совершенно чистый контроллер, А для этого нужно форматировать, чтобы полностью избавиться от всех следов самодеятельности.


Цитата
Сообщение от mikhailov Посмотреть сообщение
Потому что мне надо сбросить к заводским настройкам контроллер. )) А у мена нет виндовз, и сбросить используя Винду в виртуалке не вышло
В принципе, чтобы отформатировать контроллер SMLogix не нужен. Достаточно поднять RNDIS и настроить DHCP и TFTP
yvori вне форума   Ответить с цитированием
Старый 20.01.2022, 16:17   #18
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

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



В принципе, чтобы отформатировать контроллер SMLogix не нужен. Достаточно поднять RNDIS и настроить DHCP и TFTP
Это всё так. У меня на это сейчас нет времени. В целом, на основании одного из каментов, я внесу изменения в пакет, что бы всё стартовало без проблем. Буду признателен я за помощь в тестировании в таком случае.

А как залить с помощью ТФТП, раз у вас это в голове и под рукой -- прошу поделиться.
mikhailov вне форума   Ответить с цитированием
Старый 20.01.2022, 16:17   #19
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 277
Благодарил(а): 0 раз(а)
Поблагодарили: 252 раз(а) в 248 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Я про то, что вы проверяли, что сброса через системное меню недостаточно?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. вне форума   Ответить с цитированием
Старый 20.01.2022, 16:21   #20
mikhailov
Member
 
Регистрация: Sep 2017
Сообщения: 64
Благодарил(а): 4 раз(а)
Поблагодарили: 7 раз(а) в 6 сообщениях
Talking Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Я про то, что вы проверяли, что сброса через системное меню недостаточно?
Не работает ваше системное меню на контроллере. Не сбрасывает ничего.
mikhailov вне форума   Ответить с цитированием
Старый 20.01.2022, 18:30   #21
yvori
Member
 
Регистрация: Jan 2022
Сообщения: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Я про то, что вы проверяли, что сброса через системное меню недостаточно?
Через системное меню можно сделать сброс на заводские настройки, либо обновить пакеты. Ни в том, ни в другом варианте сторонний софт и чужие deb-пакеты не удаляются. Файлы созданные вручную также остаются на своих местах. Чтобы вернуть систему в первоначальное состояние нужно где-то хранить её образ и что-то ничего похожего на ваших контроллерах не наблюдается. Или, возможно, мы чего-то не знаем???


Цитата
Сообщение от mikhailov Посмотреть сообщение
А как залить с помощью ТФТП, раз у вас это в голове и под рукой -- прошу поделиться.
Так сразу не смогу ответить - давно это было. Да и линукса сейчас нет под рукой. В основном, пришлось возиться с RNDIS - перекомпилировать ядро, чтобы включить поддержку. А dhcp и tftp, по-моему, несложно настраиваются, можно глянуть у сегнетикса, как у них в лоджике настроено. Файлики для загрузки также берутся в лоджике, раньше firmware была без пароля, а теперь извлечённые файлы можно найти в AppData\Local\Temp\sm_logix\unzip
yvori вне форума   Ответить с цитированием
Старый 20.01.2022, 21:11   #22
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 563
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от yvori Посмотреть сообщение
Файлики для загрузки также берутся в лоджике, раньше firmware была без пароля, а теперь
Да там пароль -- 4 символа, из которых 3 -- цифры и один -- символ точки. Можно вручную подобрать пароль.

Например, как вы думаете, какой пароль на архив будет в версии лоджика 3.34 ?
Gel вне форума   Ответить с цитированием
Старый 20.01.2022, 21:56   #23
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 619
Благодарил(а): 12 раз(а)
Поблагодарили: 186 раз(а) в 183 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от Gel Посмотреть сообщение
какой пароль на архив будет в версии лоджика 3.34 ?
Такой же как и в 32-й.
ATS вне форума   Ответить с цитированием
Старый 20.01.2022, 22:02   #24
Gel
Senior Member
 
Регистрация: Nov 2017
Сообщения: 563
Благодарил(а): 3 раз(а)
Поблагодарили: 38 раз(а) в 30 сообщениях
По умолчанию Ответ: Докер-образ и проект пример на Qt/C++/QML для SMH4 кому интересно

Цитата
Сообщение от ATS Посмотреть сообщение
Такой же как и в 32-й.
Все логично. Если бы было, как должно быть в 34-ой, это был бы Siemens, а не Segnetics.

Gel вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование USB-хаба Varnak Вопросы о SMH-2G(i) 8 01.03.2013 12:20


Часовой пояс GMT +4, время: 05:25.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2023