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

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

Модераторы: ElenVR, Людмила, PR

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

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

Даниленко Сергей писал(а):Сейчас отбрасывается дробная часть.
Делать округление?
По-моему мнению, округление более реально отображает значение датчика.
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

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

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

Пока ждём новую версию FdImageUpdater, написал маленькую программульку, которая вытаскивает из файла currdat.lst данные датчиков и выводит их в файлы *.txt, а затем эти файлы уже обрабатываю FdImageUpdater'ом для последовательного вывода значений из файлов в *.tga файл. Вроде всё работает, вот только не нашел нового описания FdImageUpdater у вас на фытыпы.
В частности меня интересует формат текстового файла.
К примеру я пишу в файл строку:

Код: Выделить всё

Температура: -4°C
Всё нормально выводится, при изменении датчиков - меняется картинка.
Но если я запишу в файл строку:

Код: Выделить всё

Температура: 
(я это делаю при выходе из программы, дабы убрать с экрана показания, если данные не обновляются), то выводится всё равно предыдущее значение. Так и не понял алгоритма работы программы с пустым значением текста (получается что пустое значение просто игнорируется), а в описании про формат файла очень скудно написано. Поясните плиз.
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Формат текстового файла (для задания "Text") следующий:

Text_box_name_1 : value1
Text_box_name_2 : value2
Text_box_name_3 : value3
Text_box_name_4 : value4
:::::::

где:
Text_box_name_1 - название текстового бокса в регионе (*.rgn-файле), в который будет подставляться текст
: - разделитель
value1 - строка, которая будет подставляться в текстовый бокс с названием Text_box_name_1
Пустое значение, о котором вы упоминаете, игнорируется и используется старое значение. Это сделано для того, чтобы не показывать пустоту в случае если текстовый файл к моменту генерации картинки не обновился корректно (допустим, не получены по каким-то причинам данные).
Счищать данные по выходе из программы можно через настройку программы "Clear target image file". Если ее включить, то при выходе будет очищено конечное изображение.
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

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

Странное что-то произошло с FdImageUpdater'ом. На 4-ые сутки работы перестал формировать картинки показаний датчиков. Посмотрел в процессах - слетел процесс HeavyWeather.exe
Пробовал перезапустить FdImageUpdater, не помогло. И заново запускал WS3610Configuration.exe - бесполезно. Помог только ручной запуск HeavyWeather.exe, но теперь она у меня висит не в режиме "hidden", а в обычном окне. Перегружать эфирную машинку нока не очень хочется, подожду дня профилактики, может поможет, а пока так поработаем.
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Странное что-то произошло с FdImageUpdater'ом. На 4-ые сутки работы перестал формировать картинки показаний датчиков.

Вообще-то насчет HeavyWeather.exe - это к разработчикам WS3610. Мы к этому никакого отношения не имеем :)

Тем не менее давайте разбираться.
Посмотрел в процессах - слетел процесс HeavyWeather.exe
Что такое слетел процесс? Что именно вы увидели?
Пробовал перезапустить FdImageUpdater, не помогло...
Нужно убить процесс "slgpiservers.exe", которым пользуется ImageUpdater, а потом запустить ImageUpdater снова. Вполне вероятно, что проблема бы разрешилась.
И заново запускал WS3610Configuration.exe - бесполезно.
Конфигуратор только лишь прописывает в реестр путь к конфиг. файлу и путь к HeavyWeather.exе. Больше он ничего не делает! Естественно и результата никакого вы не получили.
Помог только ручной запуск HeavyWeather.exe, но теперь она у меня висит не в режиме "hidden"...
Сообщите, пожалуйста, если снова возникнут проблемы.
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

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

Даниленко Сергей писал(а):
Посмотрел в процессах - слетел процесс HeavyWeather.exe
Что такое слетел процесс? Что именно вы увидели?
Увидел, что в процессах нет HeavyWeather.exe.
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Краткий отчет о проделанной работе по усовершенствованию поддержки WS3610.

1)Для более удобной работы добавлен новый тип задания - SensorEx
Изображение

2)На следующей странице выбирается регион (rgn-файл), который может содержать несколько текстовых полей
Изображение

3)На следующей странице необходимо выбрать набор сенсоров, с которыми вы планируете работать
Изображение

и настроить их
Изображение

Среди настроек вы можете выбрать какое значение использовать при работе:
-берется непосредственно из датчика
-берется из датчика, но используется файл текстовых подстановок

Файл текстовых подстановок состоит из набора строк, каждая из которых имеет следующий формат: <граничное значение> <строка текста>

Пример файла подстановок:
22.5 Северный
67.5 Северо-Восточный
112.5 Восточный
157.5 Юго-Восточный
202.5 Южный
247.5 Юго-Западный
292.5 Западный
337.5 Северо-Западный
1000 Северный
Принцип работы с файлом текстовых подстановок прост - если значение, полученное из датчика меньше чем граничное значение, то вместо значения датчика используется соответствующая строка.
Например, если WS3610 возвращает направление ветра 183,5 градуса, то будет выведено значение "Южный"

4)На следующей странице "связываются" текстовые поля из региона (rgn-файл) и те значения сенсоров, которые вы хотите в них видеть.
Изображение

В одно текстовое поле можно выводить значения из нескольких сенсоров
Изображение

Формат строки следующий:
текст1 <#1> текст2 <#2> текст3 <#3>.....
где:
текст - произвольный текст
<#N> - номер сенсора из списка, который был сделан в п.3

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

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

Пока "суд да дело" :D набросал малюсенькую программульку на Дельфях для поддержки этой штуковины.
Чего делает:
1. Через определенный интервал (задается в программе) считывает данные с currdat.lst
2. Переводит все значения из "вражьих" СИ в наши.
3. Формирует текстовые файлы вида:
Температура: 0°C
Давление: 737мм
Влажность: 70%
Ветер: Ю 0.9м/с
Я эти файлы использую в программе FdImageUpdater для вывода значений под логотипом.
4. Из строки шаблона (задается пользователем в программе) формирует *.tga файл для использования его в бегущей строке.
Строка шаблона задается пользователем и имеет примерно такой вид:
Сейчас в городе Энске температура воздуха [outdoor_temperature]°C, атмосферное давление [pressure_absolute] мм рт.ст., влажность воздуха [outdoor_humidity]%, [wind]. [weather_tendency_text]. Телеканал "Тра-та-та" желает вам отличной погоды!
В эту строку вместо подстрок [значение_датчика] подставляются значения соответствующих датчиков и после этого формируется обычный файл *.tga при помощи программы FrwTitle.exe (автоматически).
Результат бегущей строки будет такой:
Сейчас в городе Энске температура воздуха 0°C, атмосферное давление 737 мм рт.ст., влажность воздуха 70%, ветер южный 0,3 м/с. Атмосферное давление растёт. Телеканал "Тра-та-та" желает вам отличной погоды!
5. Поскольку в файле currdat.lst нет значений порывов ветра wind gust, приходится значения скорости ветра и направления хранить в массивчике и его потом анализировать.

Программулька работает уже неделю, полет нормальный.
Единственная проблемка:
В файле журнала проскакивают такие записи:
Warning: 9:54:34.04 titleObjLoad {П} 0:00:35.08 [0.10] E:\Forvard\METEO\Погода.spt Check 24
ErrSignal: 9:54:34.15 titleObjLoad {П} 0:00:36.00 [0.10] E:\Forvard\METEO\Погода.spt Check change 0 0 1
Warning: 9:54:36.44 titleObjLoad {П} 0:00:35.08 [0.10] E:\Forvard\METEO\Погода.spt Check 8
ErrSignal: 9:54:36.55 titleObjLoad {П} 0:00:36.00 [0.10] E:\Forvard\METEO\Погода.spt Check change 0 0 1
Думаю, что это когда моя программка делает файл *.tga, то он в это время недоступен для чтения. Может эту проблему решить так: сначала создавать tmp-шный tga-файл, а затем переименовывать его в нужный?
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Думаю, что это когда моя программка делает файл *.tga, то он в это время недоступен для чтения. Может эту проблему решить так: сначала создавать tmp-шный tga-файл, а затем переименовывать его в нужный?
Именно так и нужно поступать. Причем переименовывать нужно в цикле с паузой (но не в бесконечном) - чтобы не нарваться на ту же проблему, от которой вы пытаетесь избавиться.
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Для НоваяРеальность:
5. Поскольку в файле currdat.lst нет значений порывов ветра wind gust, приходится значения скорости ветра и направления хранить в массивчике и его потом анализировать.
А можно ли поподробнее? Как вы это анализируете? Что именно выдаете?
НоваяРеальность
Сообщения: 117
Зарегистрирован: 17 фев 2004 16:07
Откуда: Шумерля
Контактная информация:

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

Даниленко Сергей писал(а):Для НоваяРеальность:
А можно ли поподробнее? Как вы это анализируете? Что именно выдаете?
Храню N значений направлений ветра и скорости ветра (анализирую последние полчаса). Из массива скорости ветра определяются среднее, минимальное и максимальное значения. Из анализа значений возможны следующие варианты текста:
1. Скорость ветра примерно одинакова (Макс-Мин<=2) и разность среднего и каждого значения в массиве не превышает некоторой константы. Тогда выдаю скорость ветра Ср.значение м/с
2. Ветер порывистый. Выдаю скорость ветра Мин-Макс м/с
3. Ветра нет.

Что касается направлений, то примерно тоже самое. Выдается либо усредненное направление, либо "ветер переменных направлений, преимущественно такой-то".

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

Гораздо большие проблемы возникают с картинкой погоды :(
Так и не разобрался почему врёт. На улице дождь - он иногда ясную погоду показывает, или наоборот. Либо картинка означает не текущую погоду, а ближайший прогноз, либо у меня что-то в настройках станции не впорядке (грешу на значение относительного давления, которое ручками устанавливается для определенной местности).
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

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

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

Даниленко Сергей писал(а):Сейчас заканчивается разработка и после тестирования мы сможем предоставить новую версию программы
А можно ещё пожелание - сделать сворачивание программы в трей.
И места окно не будет занимать во время работы, да и у оператора, который работает с форвардом, но не имеет отношения к этой программе меньше соблазна будет нажать на "крестик". А то уже были прецеденты. Моя программулька висит в трее и не мешает никому, а вот FDImageUpdater уже пару раз "закрывали", хотя открещиваются полностью :D, говорят типа "сама наверное закрылась".
Даниленко Сергей
Сообщения: 7093
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Храню N значений направлений ветра и скорости ветра (анализирую последние полчаса). Из массива скорости ветра определяются среднее, минимальное и максимальное значения. Из анализа значений возможны...
Мне кажется, что это некоторое лукавство - так интерпретировать данные, хотя принцип (см. ниже) правильный. Должны использоваться какие-то узаконенные стандарты, описывающие процедуру получения данного параметра. Попробовал найти какое-нибудь официальное руководство по расчетам.
Кроме вот этого пока ничего не нашел:
Порывистым ветер считается, если скорость и направление ветра за промежуток времени наблюдений (2 минуты) резко меняется: быстро возрастая до некоторого максимума и затем уменьшаясь иногда до полного штиля.
Направление ветра принимается, как постоянное, если на протяжении времени наблюдения (2 минуты) направление ветра удерживается в пределах одного румба.
Полный документ здесь:
http://meteoweb.narod.ru/amn/spotters_guide.html
В общем мы пока, пожалуй, не будем связываться с данным параметром пока не будет ясности в его получении.
Ответить