INT 21h

Hi, I am Vladimir Smagin, SysAdmin and Kaptain. Telegram Email / GIT / RSS / GPG

Как я запустил автоматическую трансляцию новостей с моей 27 МГц радиостанции

№ 5228 В разделах: Радиолюбительство Electronics Programming Sysadmin от June 15th, 2013,
В подшивках:

Сначала нужен маленький компьютер, который будет принимать и отправлять данные на радиостанцию. Для этого я взял компьютер Raspberry Pi, обладающий выводами GPIO, Wifi карточку и USB звуковую карту. Ставим Debian, делаем автоподъем Wifi сети, ставим софт для управления выводами gpio и устанавливаем php скрипт передачи в cron.

Скрипт довольно простой и сводится к пересылке данных между Google TTS и Raspberry Pi.

function say($event) {
    $cmd='mplayer -nolirc -prefer-ipv4 -ao alsa -really-quiet -noconsolecontrols
     "http://translate.google.com/translate_tts?ie=UTF-8&tl=ru&q=\''.$event.'.\'"';
    exec($cmd);
}

#get raw data
$news_raw=file_get_contents('http://news.vtomske.ru/rss/js/5/5/tomsk/');
$termo_raw=file_get_contents('http://termo.tomsk.ru/data.txt -q -O-');

#prepare date
$time=date("G:i");

#prepare termo
$termo=round($termo_raw);
if ($termo>0) $znak="плюс "; 
    elseif ($termo<0) $znak="минус "; 
    else $znak=""; 
$termo_abs=abs($termo);
$termo=" $znak $termo_abs °C";

#prepare news
$news_raw=str_replace("document.write('","",$news_raw);
$news_html=str_replace("');","",$news_raw);
$news=strip_tags($news_html);
$cut=substr($news,0,16);
$news=str_replace($cut,"",$news);
$news=str_replace("(фото)","",$news);
$news_utf8=trim(iconv("cp1251","utf8",$news));
$news_utf8=str_replace("(фото)","",$news_utf8);
$news_array=split("\n",$news_utf8);

#####################################333

say('Томское время '.$time);

say("Температура воздуха".$termo);

say('Последние новости Томска');

foreach($news_array as $event) {
    say($event);
}

say('Температура предоставлена сайтом termo точка tomsk точка ru.');
say('Новости от портала vtomske точка ru .');
say('Общаться между собой, а также с владельцем радиостанции');
say('можно через группу в контакте томск дорога.');
say('Передачи ведутся каждые 30 минут.');

Как видите, все можно писать прямо текстом, а кое где Google даже сам додумывает! Например, с температурой (с помощью знака градуса) и временем. В отличии от первого костыльного скрипта этот настоящий прорыв 🙂 Не забудьте перед началом вашей трансляции включить радиостанцию на передачу, а потом выключить. Жужжать в эфир не хорошо 🙂

Кабель для подключения радиостанции к компьютеру состоит из 2 частей: RX и TX. Если RX это просто выход с радиостанции, подключеный через трансформатор LM-NP-1001-B1 к микрофонному входу звуковой карты, то TX гораздо сложнее. Он должен полностью изображать тангенту и иметь внешнее питание, т.к. сигнальный провод не вытянет сразу 2 реле.

подключение реле через транзистор КТ315

Диод подойдет практически любой. Хоть со старого советского приемника отпаяйте, как сделал я. Это нужно, чтобы по транзистору не долбанул обратный ток.

Теперь нужно найти схему вашей тангенты и воссоздать ее. У меня тангента подойдет к нескольким моделям. Я делаю на MJ-350.

схема тангенты радиостанции

Не забудьте применить трансформатор LM-NP-1001-B1 на место микрофона, чтобы гальванически развязать вашу Raspberry Pi и радиостанцию.

2014-06-05 21.41.55_public 2014-06-05 21.58.46_public

Теперь можно подключать сигнальный провод к GPIO, подключать внешнее питание для реле и втыкать разъемы. Дергать ногой активации передачи можно прямо из консоли при запуске скрипта.

Сейчас на основе этих материалов работает репитер в г. Томск, обслуживая автоканал на 27 МГц. Чтобы при прохождениях передатчик не сгорел к Raspberry Pi подключен датчик температуры, который не даст силовым транзисторам перегреться. Не забудьте, чтобы транзистор передачи не звенел, когда температура будет колебаться около критической нужно ввести полосу бездействия. Например, передачи отключаются при температуре 60 и более градусов, а включаются при температуре 50 и менее.

Схема и исходники
Томский автоканал

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Облачная платформа
Яндекс.Метрика

Fortune cookie: Today's spam: PR.IVACY ALERT! YOU HAVE BEEN DETECTED VISITING AD.ULT WEB SITES!