Просмотр полной версии : Механизм отображения image в визуализации
День добрый!
Насколько я понял, в случае использования в визуализации image-файла, он в неизменном виде подгружается в контроллер. Нет ли случайно информации, как данный файл отображается? Если в процессе работы его подменить на другой, поймёт ли это визуализация, и как скоро отобразит обновлённый файл?
Т.е. идея в глобальном виде следующая: развернуть на контроллере (МОДУС-5684) FTP-сервер, IP-камеру настроить на создание фото и выкладывание их на этот FTP, а в визуализуацию добавить этот самый image. Если обновление картинки сработает, можем в web-визуализации получить наблюдение за неким интересующим нас объектом.
Евгений Сергеевич
08.11.2011, 11:54
используемая картинка хранится на самом контроллере в папке CoDeSysSP/visu кажется. если его просто подменить то скорее всего на экране он не изменится, поэтому нужно использовать две картинки и перещелкивать с одной на другую по какому-то событию. А вообще идея интересная.
Малышев Олег
14.11.2011, 15:21
Красиво звучит. Понял зачем вам ftp. Посмотрите точно - не может камера по ssh(scp) работать?? Или по tftp (это совсем не ftp)??
Нет. Правда есть http, может быть есть смысл поиграть через него? Ладно, появится камера - поиграем.
Http в итоге в камере нет. Есть возможность класть куда-либо на FTP, причём каждый раз название файла с картинкой уникальное. Так что от контроллера нужно:
1) наличие простейшего FTP-сервера
2) возможность либо впихнуть скрипт/программулину, которая будет переименовывать файлы, принятые по FTP то в одно имя, то в другое (а в программе CodeSys только передёргивать их по очереди - кстати, надо попробовать, будет ли это вообще работать, если подменять картинки в процессе работы), либо из самой программы CodeSys обращаться к файловой системе контроллера и заниматься переименованием (вроде такие возможности у кого-то из ПЛК3хх я видел) - второй вариант, наверное, даже правильнее...
Проверили наличие нового файла, переименовали, перещёлкнули. Проверяем дальше.
Камера интересна ещё и интегрированным датчиком движения...
если обратится к созданию веб-сервера на ПЛК Овен, анализируете принимаемые данные, если в заголовоке mime-type стоит к примеру image/jpeg, то полученные после заголовка байты сохраняете в файл, под тем названием которое используете в визуализации, например image.jpg. Если камера шлет файлы по фтп, то вместо 80 порта веб-сервера, слушаете 21 порт
на oscat.de работа с фтп реализована
Вариант, но требующий не очень оправданных усилий по разработке. Там же linux - что бы не запихнуть какой-нибудь простенький FTP? Если, конечно, возможности контроллера это позволяют.
Тут в общем подход, на мой взгяд, должен быть примерно такой: хотите ещё что-то от Linux'а - пожалуйста, ставьте (в идеале с 3-5 строчечной инструкцией: примерно так-то и так-то), но будьте готовы пожертвовать чем-то (скоростью? доступной памятью?) в CodeSys.
а компилятор в этом линуксе есть?
Малышев Олег
16.11.2011, 10:02
а компилятор в этом линуксе есть?
Сам то как думаете?
"Вот что, ребята, пулемет я вам не дам..."(С)
Сам то как думаете?
"Вот что, ребята, пулемет я вам не дам..."(С)
:) А можно мне взять модус для тестирования, заявки еще принимаются?
Малышев Олег
16.11.2011, 10:42
пока читайте документацию на
http://download.pureftpd.org/pub/pure-ftpd/doc/README
начиная с пункта (поиском)
------------------------ AFTER AN UPLOAD ------------------------
пока собирается. Очень надеюсь что соберется...
пока читайте документацию на
http://download.pureftpd.org/pub/pure-ftpd/doc/README
значит в этой системе присутствует ftp-сервер и дополнительно загрузив демон pure-uploadscript -r ххх.sh можно скриптом принятый файл сразу переименовать в нужный вид.
Малышев Олег
16.11.2011, 12:26
Выкладываю. Честно говоря не пробовал. Теоретически должен работать.
Последнее расширение .zip - лишнее из имени файла его надо убрать.
Малышев Олег
16.11.2011, 13:48
:) А можно мне взять модус для тестирования, заявки еще принимаются?
Обращайтесь к Кириллу Валюнину. Думаю получится
Выкладываю. Честно говоря не пробовал. Теоретически должен работать.
Последнее расширение .zip - лишнее из имени файла его надо убрать.
неплохо бы конечно знать с какими опциями использовалась команда ./configure, потому что не получилось у меня загруженные файлы переименовать, скорее всего скрипт не выполняется. Легче оказалось написать скрипт который через определенный интервал, проверяет папку и переименовывает последний полученный jpg-файл в нужный
Малышев Олег
16.11.2011, 16:26
--with-uploadscript присутсвует
используемая картинка хранится на самом контроллере в папке CoDeSysSP/visu кажется. если его просто подменить то скорее всего на экране он не изменится, поэтому нужно использовать две картинки и перещелкивать с одной на другую по какому-то событию. А вообще идея интересная.
Евгений Сергеевич! А нет какого-нибудь простенького примера перещёлкивания? Вообще что-то не получилось сделать динамическое изображение. Попробовал просто наложить картинку на картинку, и управлять их видимостью (пример прилагаю), что-то ничего не получается. Хоть обновляй картинки, хоть не обновляй - кажет, похоже, те, что были считаны на момент запуска...
Евгений Сергеевич
21.11.2011, 14:18
я имел в виду вот так.
Вот только вся проблема в том, что CoDeSys, как выяснилось, открывает картинку один раз и хранит ее в оперативной памяти. Из-за чего мы имеем два неприятных момента:
1) простыми картинками можно забить оперативную память и Codesys как процесс будет убит
2) мы не можем обновить картинку без перезагрузки.
Напишем об этом в 3S и остается только ждать их реакции((
Малышев Олег
22.11.2011, 07:42
Не забывайте что в контроллере есть еще один вебсервер можно попробовать использовать. Веб страницу можно формировать с помощью библиотеки кодисис sysfile
А я подложил в каталог визуализации test.html с тремя фреймами: в одном webvisu.htm, в другом java-скрипт, отвечающий за снятие изображения с видеокамеры, третий - иная полезная хрень. Внутри локалки работает. Снаружи пока не пробовал.
И снаружи работает тоже. Вполне пристойно. Единственное, адреса для съёма изображения с камеры надо прописывать так, как они выглядят извне. И открывать соответствующие порты.
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot