Программа управления спутниковой поворотной антенной от порта СОМ

Управление спутниковой антенной от порта СОМ

В статье описывается программа управления спутниковой поворотной антенной от последовательного порта СОМ компьютера для совместного использования с телевизионными компьютерными устройствами. Компьютерные платы спутниковых телевизоров и внешние компьютерные телевизоры с управлением по интерфейсу USB производятся несколькими фирмами. Также существует около десятка различных программ для управления спутниковыми ТВ платами, не считая тех, что поставляются в комплекте. Рассматривать их достоинства и недостатки не является задачей этой статьи. Автор приобрел плату ТВ исходя из следующих соображений:

- поддержка платой как старого стандарта DVB-S, так и нового DVB-S2

- производитель платы должен быть достаточно известным и имеющим хорошую репутацию

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

В результате была приобретена плата Technotrend TT budget 1600 S2, это тоже самое, что и TT budget 3200 S2, только без поддержки карт доступа к кодированным каналам CI. Сколько бы не искать информацию в сети, все равно не найдешь описания всех тонкостей, пока не проверишь устройство в действии. В результате эксплуатации карты выяснилось, что к самой плате и к установке драйверов претензий нет, WDM драйвер даже не пытался проверять, поскольку в комплекте поставки есть только драйвер BDA, который хорошо работает. Естественно и как часто бывает, программное обеспечение, поставляемое в комплекте, оказалось низкого качества. Авторы уделили много внимания раскраске интерфейса программы, забыв, что зритель смотрит телепрограмму, а не украшения интерфейса. Программа потребляет много системных ресурсов, в два-три раза больше, чем, например, DVBViewer и кроме того часто зависает при переключении каналов. Пришлось поискать и опробовать все остальные широко известные в сети программы, AltDVB, DVBDream, DVBViewer, ProgDVB, MediaPortal, FastSatFinder и другие, все проверил. Оказалось, что несмотря на заявления авторов о поддержке устройств Technotrend с драйвером BDA, с задачей справилась одна единственная программа DVBViewer, причем очень неплохо с точки зрения потребления ресурсов компьютера и надежности функционирования. Все проверки производились под Windows XP SP2, компьютер имеет следующие технические данные:

- процессор P4 3000 c технологией HT, 2-х канальная память 1500 Mgb, видеокарта ATI Radeon 4650 8хAGP 1Gb, плата ASUSP4P800 SE.

Все остальные программы либо отказались работать с картой TT budget 1600 S2, либо работали через пень-колоду. Может быть, если попытаться установить WDM драйвер для budget 1600, то какая то из программ и заработала бы, но не захотелось тратить на это время, поскольку выяснилась более глобальная проблема.

Проблема заключается в том, что многие, а может быть и все карты спутникового ТВ страдают от отсутствия хорошо проработанного решения управления поворотной спутниковой антенной. Во всяком случае нареканий в сети много. Казалось бы есть стандарт DiSEqC 1.2, микросхема демодулятора STV0903 имеет в своем составе менеджер DiSEqC 2.0, осталось написать в драйвере блок выдачи команд позиционеру и все. Да, и еще предупредить пользователя об опасности подключения поворотной антенны напрямую, без позиционера, поскольку значительный ток, потреблямый двигателем антенны может вызвать выход из строя платы, а то и большие проблемы. Однако, ни одна программа не пожелала работать с позиционером, который прекрасно работает со стационарным спутниковым приемником. Потратил некоторое время на выяснение причин такого явления и пришел к выводу, что либо менеджер DiSEqC 2.0 в STV0903 не доработан, либо драйвер, искать причину не имея подробной информации на микросхемы платы себе дороже. В описании фирмы Technotrend на плату сказано, что осуществляется поддержка только DiSEqC 1.0, таким образом следует считать, что поддержка DiSEqC 1.2, которая заявлена в datasheet на STV0903 не реализована, драйвер не работает с протоколом DiSEqC 1.2 и не управляет поворотной антенной. В результате ни одна программа не работала в связке TT budget 1600 S2 и позиционер. В DVBViewer есть режим управления позиционером с прописыванием команд RAW, но не получилось. В целом мое мнение такое, если есть стандарт DiSEqC 1.2 и стационарные приемники работают с ним без проблем, то причина заключается в некачественных драйверах, при условии правильного исполнения аппаратной части микросхемы демодулятора STV0903. Если же с аппаратной частью проблемы, то не стоит вообще вводить режим управления поворотной антенной и нужно предупредить об этом потребителя, иначе складывается впечатление, что драйвер не доработан.

Поискал еще, интересно стало, есть ли хотя бы одна карта с этим набором микросхем, в которой была бы осуществлена настройка и использование позиционера. Нашел одну, фирма Prof и ее карты Red Series 7300 PCI DVB-S2. Карты этой фирмы применяют те же микросхемы демодуляторов STV0903. На сайте есть раздел с инструкцией по работе с позиционером для программы DVBDream, похоже, что другие не работают с позиционером вообще. Почитал этот раздел http://www.prof-tuners.com/rus/install_dvbdream_rotor.html, бегло, и решил, что проще вообще избавиться от этой проблемы раз и навсегда, чем вникать в подобные инструкции. Можете почитать и посмотреть и Вы.

Если сделать управление мотором антенны от порта СОМ с помощью отдельной программы и устройства сопряжения с портом, то все проблеммы отпадут сами собой, выводи антенну на нужный спутник и смотри с помощью любой программы и любого приемника, хочешь PCI, хочешь USB. Отпадают все проблемы с драйверами карт, с аппаратной частью карт и с настройкой программы просмотра. Что и было сделано. Первое решение предполагало очень простое аппаратное сопряжение с антенной, два управляемых транзисторами реле и буферная микросхема MAX232 для связи с портом. Макет уже работал, когда выявилось неприятное явление, при выключении компьютера или при переводе его в спящий(ждущий) режим, на выходах порта СОМ состояние сигналов несколько раз неуправляемо изменяется. Если устройство предварительно не выключить, то антенна меняет положение и при последующем включении приходится повторять всю настройку сначала. Это сводило на нет всю работу, требовалось другое решение. После некоторых размышлений, пришел к выводу, что самое простое аппаратное решение будет если использовать доступный коммутатор DS2413 (datasheet), что дает следующие преимущества:

- цена решения возрастает незначительно,

- появляется возможность распознавать устройство по уникальному номеру DS2413,

- исключается любое влияние на устройство при выключении компьютера,

- схема устройства усложняется незначительно.

Подробное описание устройства найдете на этой странице.

Описание программы управления

Условие закачки программы найдете по адресу http://www.plati.ru/asp/pay.asp?idd=1091648

Запуск программы

Перед запуском программы следует включить устройство управления, если устройство выключено, программа выдает предупреждение и завершается. При запуске программа ищет устройства 1-wire на одном из портов СОМ1-СОМ4. Если на этих портах есть другие устройства 1-wire, то тогда запрашивается номер порта, на который подключено устройство управления антенной. После первого запуска номер DS2413 будет записан в файле PLC.ini для последующего опознавания на любом из портов СОМ1-СОМ4 и при повторных запусках программы никакие вопросы не задаются. Если других устройств 1-wire нет, номер DS2413 будет записан без запроса. Если DS2413 был заменен в процессе эксплуатации, программа запросит разрешения за его коррекцию или это можно сделать вручную, предварительно определив номер с помощью утилиты UTERMO.

Окно программы PLC

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

Рис 1.

В левом списке отображаются все спутники. Любую строку можно удалить клавишей Del, если она выделена. Можно редактировать список, изменяя параметры существующих спутников, добавлять новые, удалять записи. Редактирование производится в строке после двойного щелчка по ней. На этой строке появится окно редактирования, ввод данных в которое завершается клавишей Enter, как в любом редакторе.

satcom3При внесении изменений нельзя изменять форму записи долготы спутника, можно только изменить цифры долготы и букву E или W на противоположную. Имя спутника произвольно. Все изменения записываются в файл при закрытии программы, после вывода антенны на новую позицию или при нажатии на клавишу Save.

 

 

satcom2Добавить новый спутник в список можно, нажав на заголовок, в результате появиться запись ниже выделенной строки с шаблонным текстом, в который нужно внести исправления, не изменяя cтруктуры самой записи, также как в предыдущем случае.

Для удаления следует выделить строку и нажать Del.

После завершения редактирования автоматически производится сортировка списка по возрастанию долготы спутника и по двум группам, группа восточных спутников (E) и группа западных спутников (W). Спутники, которые будут использоваться, необходимо перенести в список избранных спутников с помощью клавиши .

Второй список для избранных спутников предназначен для перевода антенны на новую позицию, а также автоматического определения позиции нового спутника в условных единицах положения, которые соответствуют азимуту спутника умноженному на 10. Методика первичной настройки антенны на спутники будет описана далее. В списке производится сортировка либо по долготе спутника, либо по алфавиту при нажатии на соответствующий заголовок. В качестве условных единиц положения спутника используются импульсы датчика вращения вала двигателя антенны. Список позволяет редактировать имя спутника и его позицию, долгота спутника не редактируется. Перевод антенны на новую позицию производится при выборе спутника с помощью переключателя.

Справа в окне находится группа элементов управления, которая используется при первичной настройке антенны и подстройке в процессе эксплуатации. Описание приводится в методике первичной настройки антенны.

Методика первичной настройки антенны.

Для того, чтобы настроится на спутник необходимо развернуть антенну на азимут спутника. Обычно весь механизм привода антенны состоит из актуатора, содержащего мотор и герконового датчика импульсов вращения вала мотора. Таким образом, задача заключается в расчете азимута антенны по известной формуле и установления соответствия между числом импульсов датчика и азимутом антенны. Двигатель актуатора может обеспечить минимальное изменение положения на 2-3 импульса датчика, точнее не получается, повысить точность можно только, применив шаговый двигатель и существенно переделав механику антенны. Однако высокая точность и не нужна, конструкция актуатора позволяет отсчитывать 10-12 импульсов датчика на один градус азимута, что вполне достаточно. Основной метод настройки состоит в установке антенны точно на юг, лучше всего по солнцу, и последующей установке значения текущего положения антенны равного 1800 импульсов датчика мотора, т.е. 180,0° . Затем программа будет рассчитывать азимут спутника при его переносе в список избранных спутников и будет выводить антенну на нужную позицию. Точный вывод может быть обеспечен только при точной установке антенны

Таким образом, для настройки антенны следует:

Условие закачки программы найдете по адресу http://www.plati.ru/asp/pay.asp?idd=1091648

[в начало]

Hosted by uCoz