Поддержка WS3610 Heavy Weather

Здесь обсуждаются любые продукты компании СофтЛаб-НСК для телевизионного вещания (Форвард Т, Форвард ТС, Форвард Голкипер, Форвард Рефери, Форвард Офис, Форвард Инжест)

Модераторы: Людмила, PR, vd, Даниленко Сергей

Ответить
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Поддержка WS3610 Heavy Weather

Сообщение НоваяРеальность »

Подведу небольшие итоги ковыряния мною этой чудо-станции.
Для начала скажу, что тестировал всё на столе в кабинете, а не с датчиками на улице в реальных условиях (как оказалось это тоже важно) и на машинке без платы.
Что заметил:
1. Алгоритмы работы разных датчиков сильно отличаются друг от друга. Самые простейшие (температура, влажность, давление) - просто снимают текущие значения. Датчик осадков - усредненно-накопительный. Датчики скорости и направления ветра работают по хитрым алгоритмам, зависящим от времени (наверное для того чтобы исключить порывы ветра и т.п.).
Из-за этого думаю у меня часть датчиков и не давали информацию, поэтому и FDImageUpdater глючил.
2. Не совсем понял, как Вы организовали поддержку этой железки. По-моему, при каждом запросе значения датчика вызывается программа HeavyWeather, поскольку в процессах замечал несколько копий этой программы при работе FDImageUpdater.
По моему проще было бы саму прграмму HeavyWeather держать открытой на машинке и уже обрабатывать файл с данными, который создает и обновляет программа станции.
3. Направления ветра думаю достаточно 8 (можно исходить из значений угла в градусах и уже преобразовывать): С, С-В, В, Ю-В, Ю, Ю-З, З, С-З. И желательно присовокупить сюда же и скорость в м/с. Например: С-З 5м/с. Кстати, ваше значение скорости ветра врёт, на экране железки одно значение, а у вас - больше, может в км/ч считаете?
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Сообщение НоваяРеальность »

Также попутный вопрос по файлам регионов и как их использует программа FDImageUpdater.
К примеру, я использую в файле региона бэкграунд-картинку и область для вывода текстовой информации с датчика. Как я понял в файле региона сама картинка не хранится, хранится только ссылка на неё. Когда запускаешь проект в FDImageUpdater и во время выполнения проекта удаляешь файл с картинкой, то проект также выполняется, только вместо картинки прозрачность. Это как-бы нормально. Чудеса начинаются потом. Если теперь вместо старой картинки скопировать в этот же каталог другую картинку с этим же именем, то вне зависимости от содержания картинки, выводится на экран старая картинка. Откуда FDImageUpdater её берет, непонятно, скорее всего из буфера памяти. При чём, если даже останавливаешь выполнение проекта, делаешь Prepare, Start, то всё равно остается старая картинка. И только когда закроешь проект, затем снова откроешь - картинка сменится. Я это к чему веду. Хотелось бы оперативно менять картинку-подложку в зависимости от показаний метеостанции (солнечно, пасмурно, дождь, снег, гроза).
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

2. Не совсем понял, как Вы организовали поддержку этой железки. По-моему, при каждом запросе значения датчика вызывается программа HeavyWeather, поскольку в процессах замечал несколько копий этой программы при работе FDImageUpdater.
По моему проще было бы саму прграмму HeavyWeather держать открытой на машинке и уже обрабатывать файл с данными, который создает и обновляет программа станции.
Поддержка организована именно таким способом о котором вы говорите - читаем файл, который пишет HeavyWeather. При этом само приложение HeavyWeather запускается нами самостоятельно (для этого путь к нему вы прописывали в конфигураторе) один раз в режиме "hidden" (чтобы не показывало своей мордочки). Почему в процессах запускается несколько экземпляров - нужно разбираться, повторяю - мы запускаем его один раз. А вы сами ручками не стартуете его (так сказать для надежности :))?
Направления ветра думаю достаточно 8 (можно исходить из значений угла в градусах и уже преобразовывать): С, С-В, В, Ю-В, Ю, Ю-З, З, С-З.
Ясно, сделаем.
И желательно присовокупить сюда же и скорость в м/с. Например: С-З 5м/с.
А вот это надо подумать как сделать - датчики то разные, соответственно и задания разные. Нужно подумать:)
Кстати, ваше значение скорости ветра врёт, на экране железки одно значение, а у вас - больше, может в км/ч считаете?
Проверим. Не могли бы вы сообщить, что показывает датчик и что показываем мы в этот же самый момент? К сожалению, своей метеостанции в данный момент у нас нет - нам ее в свое время присылали из Окно-ТВ.
...Также попутный вопрос по файлам регионов и как их использует программа FDImageUpdater. К примеру, я использую в файле региона бэкграунд-картинку и область для вывода текстовой информации с датчика. Как я понял в файле региона сама картинка не хранится, хранится только ссылка на неё. Когда запускаешь проект в FDImageUpdater и во время выполнения проекта удаляешь файл с картинкой, то проект также выполняется,...
Текущее поведение программы ImageUpdater действительно не предполагает изменения в регион-файле. Файл *.rgn зачитывается только один раз при подъеме проекта. Однако можно внести соответствующие изменения, при которых объект, работающий с rgn-файлом будет отслеживать состояние всех связанных с ним дополнительных графических файлов и при их изменении перерисовываться. Можно было бы по простому заставить ImageUpdater на каждом обороте перезачитывать и перегружать rgn-файл, но это больно трудоемкая и затратная процедура. Поэтому делать это прийдется не в самом ImageUpdater'е, а несколько глубже.
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Договорились, что нам предоставят метеостанцию для дальнейших работ.
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Сообщение НоваяРеальность »

Даниленко Сергей писал(а):А вы сами ручками не стартуете его (так сказать для надежности :))?
Да, так и было. Я запускал приложение для сравнения показаний датчиков в программе и FDImageUpdater.
А вот это надо подумать как сделать - датчики то разные, соответственно и задания разные. Нужно подумать.
Ну тут вообще не вижу никаких сложностей. Я думаю вы читаете ini файл currdat.lst стандартными процедурами чтения блоков и переменных из ini файлов и выводите значение в текстовую переменную для обработки FDImageUpdater'ом. Читаем угол в градусах, преобразуем в текстовое значение направлений ветра и потом просто складываем эти переменные, в итоге - получаем то что надо. По крайней мере я в своей программе таким образом поступил.
Проверим. Не могли бы вы сообщить, что показывает датчик и что показываем мы в этот же самый момент? К сожалению, своей метеостанции в данный момент у нас нет - нам ее в свое время присылали из Окно-ТВ.
Проверил - точно не в м/с читаете.
Договорились, что нам предоставят метеостанцию для дальнейших работ.
Кстати, мы по-моему в Окно-ТВ купили ту станцию, которая у вас была на тестировании на выставке. Там не совсем комплект оказался, не хватает уголка крепления датчика ветра к стене. У вас случайно он нигде не завалялся, а то не совсем хочется что-то изобретать для крепления.
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Да, так и было. Я запускал приложение для сравнения...

А вы внимательно прочитали ту инструкцию, которую мы вам высылали? Там вроде бы никаких слов по поводу самостоятельного запуска приложения нет. А сравнивать данные нужно по LCD-дисплею - там все выводится.
Ну тут вообще не вижу никаких сложностей. ...
Это вам так кажется. Огромное спасибо за совет как и что нам делать. Но проблема не в этом - она не в технике получения данных, а в логике поведения программы ImageUpdater. Если вы обратите внимание, то сейчас выбирается задание типа Sensor и на каждое показание заводится специальный тип "device". Такая схема не предусматривает одновременного вывода нескольких значений. Логика поведения еще раз повторю другая: одно задание - одно показание. Вы пытаетесь решить проблему только под своим личным углом зрения, а нам ее необходимо решать для общего случая. Простой пример: вы хотите данные видеть так - С-З 5м/с, а кто-то захочет вот так - 5м/с, С-З. И что делать в этом случае? Нужен подход, который удовлетворил бы всех пользователей, был бы удобен и логичен - именно в этом вся проблема (а не в том как читать файл и как складывать переменные).
Проверил - точно не в м/с читаете.
Огромное спасибо за информацию, но толку от нее никакого. Не могли бы вы сообщить, что показывает датчик и что показываем мы в этот же самый момент? Нам нужны цифры!
У вас случайно он нигде не завалялся
Нет, не завалялось. Мы отдали все, что у нас было. Крепеж мы из коробки и не вынимали - он нам не был нужен.
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Сообщение НоваяРеальность »

Даниленко Сергей писал(а):Огромное спасибо за информацию, но толку от нее никакого. Не могли бы вы сообщить, что показывает датчик и что показываем мы в этот же самый момент? Нам нужны цифры!
Писал ответ из дома, железки под рукой не было, сейчас на работе проверил - вот такая информация:
Вы выводите значение 29
На экране железки 8.3
В файле currdat.lst такие данные:
[wind_speed]
mps="8.3"
kmh="29.8"
mph="18.5"
knt="16.1"
bft="4"
fedor
Сообщения: 283
Зарегистрирован: 17 янв 2007 13:02
Откуда: Хабаровск

Сообщение fedor »

Извините что встреваю...
mps - meters per second (метров в секунду)
kmh - kilometers per hour (километров в час)
mph - miles per hour (миль в час)
Так что всё верно,
8,3м/с=29880м/ч=29,8км/ч
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Так что всё верно,
8,3м/с=29880м/ч=29,8км/ч
Боюсь что это все таки наша проблема.
Device называется "WS3610_wind_speed_mps", а выдаем мы в км/час :oops: Это явно неправильно. Как я уже писал, мы ожидаем прибытия станции к нам для дальнейшей работы - так что подправим.
Появились кое-какие мысли по поводу показа одновременно нескольких параметров в одном задании. Чуть позже можно будет сформулировать. Ясно одно, что организовано задание будет несколько другим способом - прийдется достаточно серьезно переделывать интерфейс создания задания.
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Сообщение НоваяРеальность »

Ну как у вас успехи? Станцию получили?

Кстати, тут вопрос ещё возник попутно: можно ли каким либо образом склеить несколько tga файлов в один?
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Станцию получили?
Станция уже в Новосибирске. Сегодня обещали привезти непосредственно нам.
Кстати, тут вопрос ещё возник попутно: можно ли каким либо образом склеить несколько tga файлов в один?
Вы хотите получить в итоге файл tga? Тогда никак.
Или вы хотите получить авишку из targa-sequence? Тогда в программе TGA2AVI.
Не могли бы вы поподробнее объяснить цель?
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Сообщение НоваяРеальность »

Даниленко Сергей писал(а):Не могли бы вы поподробнее объяснить цель?
Ну к примеру я создаю бегушку в SPTEditore. Нужно чередовать tga-шки, полученные непосредственно в SPTEditore при помощью импорта из текстового файла и просто картинки из tga файлов. Сейчас spt файл получается примерно такого плана:
targa строка1.tga
targa картинка1.tga
targa строка2.tga
targa картинка2.tga
targa строка3.tga

Нужно для эфира, чтобы строка во время отключения титров и последующего включения начиналась сначала, т.е. необходим один tga файл.
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

Сообщение НоваяРеальность »

Ещё по теме станции.
Как вы выводите значения датчиков, если выбран формат +#, округляете значение или просто отбрасываете дробную часть? Думаю правильнее было бы округлять.
Сейчас в файле currdat.lst к примеру значение 4.9, а на экран выдается +4°С
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Нужно для эфира, чтобы строка во время отключения титров и последующего включения начиналась сначала, т.е. необходим один tga файл.
Процедура импорта в программе SPTEditor также создает картинки. В SPTEditor'е есть возможность при импорте делать одну tga-шку. Может вам каждый раз делать бегучку через импорт (включив "грыжик" для импорта в один файл)? Имеются ввиду и для объявлений, которые у вас "просто картинки из tga файлов". Если это невозможно, то остается только перегрузка задания в титровальном элементе с бегущей строкой. Там, где вы после отключения бегучки начинаете ее показывать снова, необходимо добавить команду загрузки заданий. В этом случае бегущая строка начнет исполняться сначала.
О командах работы с бегущей строкой можно посмотреть специальный видеоурок:
http://www.softlab-nsk.com/rus/forward/ ... les_12.zip
http://www.softlab-nsk.com/rus/forward/ ... les_12.pdf
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Как вы выводите значения датчиков, если выбран формат +#, округляете значение или просто отбрасываете дробную часть? Думаю правильнее было бы округлять.

Сейчас отбрасывается дробная часть.
Делать округление?
Ответить