roboforum.ru

Технический форум по робототехнике.

Arduino CW+GPS+SD

Arduino CW+GPS+SD

DJ_Wever » 12 июл 2016, 17:32

Это QRPp CW-маяк, работающий на 160/80/40-метровом диапазоне. Автор скетча Клименко Максим.

Есть желание доработать этот скетч для вставки GPS-координат в текст посылки и параллельного логирования координат и времени фиксации на SD-карту.

Что скажите господа?

Код: Выделить всёРазвернуть
// Arduino simply CW beacon
// (c) 2012 Max Klimenko
// emaster [at] mail.ru

// Beacon message
const char message[] = "VVV CQ CQ CQ DX DE BEACON BAND 40M 8000KHZ";

// Period of single point (ms)
const int point_time = 80;

// Carrier frequency divider.
// Carrier freq. (MHz) = 16 / (2 * (1 + freq_div))
const unsigned char freq_div = 1;

//////////////////////////////////////////////////////////////////
struct s_abc
{
        char letter;
        char sign[7];
};

const s_abc abc[] = {
        'A',".-", 'B',"-...", 'W',".--", 'G',"--.", 'D',"-..",
        'E',".", 'V',"...-", 'Z',"--..", 'I',"..",
        'J',".---", 'K',"-.-", 'L',".-..", 'M',"--", 'N',"-.",
        'O',"---", 'P',".--.", 'R',".-.", 'S',"...",
        'T',"-", 'U',"..-", 'F',"..-.", 'H',"....", 'C',"-.-.",
        'Q',"--.-", 'Y',"-.--", 'X',"-..-", '1',".----",
        '2',"..---", '3',"...--", '4',"....-", '5',".....",
        '6',"-....", '7',"--...", '8',"---..", '9',"----.",
        '0',"-----", '.',"......", ',',".-.-.-", ':',"---...",
        ';',"-.-.-.", '(',"-.--.-", '`',".----.",
        '"',".-..-.", '-',"-....-", '/',"-..-.", '?',"..--..",
        '!',"--..--", '@',".--.-.", '\\',"..-.-" };

unsigned char abc_size = sizeof(abc) / sizeof(abc[0]);

void setup()
{
  PORTB = 0;
  DDRB |= 1<<1;
 
  OCR1A = freq_div;
  TCCR1A = 0x48;
  TCCR1B = 0x09;
 
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);   // set the LED on
}

void send_letter(char l)
{
  if (l == ' ')
  {
    delay(point_time * 7);
    return;
  }
 
  unsigned char idx = 255;
  for (unsigned char i = 0; i < abc_size; i++)
    if (abc[i].letter == l)
    {
      idx = i;
      break;
    }
   
  if (idx == 255) return;
 
  const char *s = abc[idx].sign;
 
  for (unsigned char c = 0; s[c] != 0; c++)
  {
    char q = s[c];
   
    DDRB |= 1<<1;
    digitalWrite(13, HIGH);   // set the LED on
   
    if (q == '.') delay(point_time);
    else delay(point_time * 3);
   
    DDRB &= ~(1<<1);
    digitalWrite(13, LOW);   // set the LED off
   
    delay(point_time);
  }

  delay(point_time * 2);
}

void loop()
{
  for (int n = 0; message[n] != 0; n++)
    send_letter(message[n]);
 
  delay(2000);
}

Re: Arduino CW+GPS+SD

Eruman » 12 июл 2016, 18:30

Дозволяем :)

Re: Arduino CW+GPS+SD

DJ_Wever » 12 июл 2016, 18:42

Вопрос стоит не в реализации, а в востребованности.
Есть-ли желание следить например за своими домашними питомцами или личным автомобилем?!

Re: Arduino CW+GPS+SD

Dmitry__ » 12 июл 2016, 19:29

DJ_Wever писал(а):Есть-ли желание следить например за своими домашними питомцами или личным автомобилем?!

DJ_Wever писал(а):CW-маяк

Так там антенны по 15 метров, может ну его?

Re: Arduino CW+GPS+SD

Madf » 12 июл 2016, 23:24

Для машины не проблема, салон большой, а вот что скажет собачий питомец, когда до хвоста в антене будет... :D

Re: Arduino CW+GPS+SD

DJ_Wever » 13 июл 2016, 00:24

Ну это так скажем не 15 метров, а четверть на 40-метровый диапазон это 10-метров (если быть точнее (300/8)/4 = 9.375 метров).
Так нам и не надо вещать через континенты и переотраженки от ионосферы нас не особо интересуют.
Достаточно 10-40 сантиметров, даже ошейник овчарки среднестатического телосложения имеет шею в обхвате 50-60 сантиметров.
По моим экспериментам 20 сантиметровая PLS-перемычка, давала сигнал на 1,8 км с уверенным приемом на бытовой ширпотребный приемник VITEK VT-3583 и магнитофон Sony CFS-B5LMK2. Дальше просто смысла не было ехать, одного километра и так за глаза.
Декодировал на Android-е с помощью программы Morse Code Reader без единой ошибки.

Чем не замена 433MHz-овым модулям?!

Re: Arduino CW+GPS+SD

Dmitry__ » 13 июл 2016, 01:12

DJ_Wever писал(а):По моим экспериментам 20 сантиметровая PLS-перемычка, давала сигнал на 1,8 км с уверенным приемом на бытовой ширпотребный приемник

Ну если правда, то бомба :)
Тут на форуме elmot до маячков сам не свой. Шарики запускает.
http://roboforum.ru/forum11/topic14674.html

Добавлено спустя 2 минуты 37 секунд:
Еще вопрос в законности, таки надо переползать на 27 мгц. Можно попробовать слепить на шустрых дешевых армах...
На ардуине только с заменой кварца? :cry:

Добавлено спустя 6 минут 18 секунд:
Опс, тут кварц штатный, это я вопрос задал, смотря на сайт радиосканера...

Re: Arduino CW+GPS+SD

DJ_Wever » 13 июл 2016, 01:55

А почему-бы не работать на 40-метровом диапазоне, с мощность 20 милливатт мы вряд ли кому помешаем, дальность не более 3 км, плюс бытовые приемники не имеют 10-метрового диапазона.

Re: Arduino CW+GPS+SD

Dmitry__ » 13 июл 2016, 04:53

DJ_Wever писал(а):А почему-бы не работать на 40-метровом диапазоне, с мощность 20 милливатт мы вряд ли кому помешаем

На самом деле, наверно, это больше мои страхи, никогда не работал на передачу на этих диапазонах, минимальное что пробовал 27 мгц.
Про мощность, я даже себе представить не могу сколько нановатт потребляет антенна 20см. на частоте 7мгц при прямом подкл. к пину авр. Если при такой мощности получается 2км, то это оч круто. А если что, то можно сделать элементарный согласующий каскад, для отнятия большей мощности от пина авр. Буду пробовать...
DJ_Wever писал(а):плюс бытовые приемники не имеют 10-метрового диапазона.

Ради такого случая можно и деген купить (как по ссылке). Это просто потрясающий приемник, правда я его подарил хорошему человеку. Но у меня еще есть Tecsun PL-600 :roll:
Если я ничего не забыл, то на 7 мгц ночью делать нечего, там весь мир слышно. Не получится собачку искать, только днем. 27 мгц. в этом плане лучше, мало кто мешает.

Re: Arduino CW+GPS+SD

Myp » 13 июл 2016, 09:51

выб хоть ссылку вставили о чём речь
это что-то про ардуино и радио?

Re: Arduino CW+GPS+SD

Madf » 13 июл 2016, 12:23

я уже не знаю какую тему читать, определитесь уже)

Добавлено спустя 11 минут 27 секунд:
глянул первоисточник...ммм...у меня такого и радио нет вовсе (по диапазону)...есть маленькие приемники/модули на этот диапазон у китайцев?
если это 27 или 40 МГц, то проблема, ибо все китайские игрушки работают в этом диапазоне
вообще, если это свой маяк, то он может работать на любой частоте, главное чтобы приёмник его понимал

Re: Arduino CW+GPS+SD

Dmitry__ » 13 июл 2016, 16:09

Myp писал(а):это что-то про ардуино и радио?

Это как из ардуины сделать передатчик, да еще с кодированием данных. Нет никаких доп в/ч деталей, просто дуина и провод на пин в виде антенны, потрясная идея :)
Madf писал(а):.есть маленькие приемники/модули на этот диапазон у китайцев?

Каждый электрониколюбитель должен быть радиолюбителем, а значит иметь приемник :), который может принимать ssb/am/fm. тем более кетайцы сейчас делают кучу разных хороших приемников. Деген, который по ссылке, это DEGEN DE-1103, просто СУПЕРСКИЙ! приемник, при цене 60$ работает как дорогущие трансиверы с овер 1000$.
Можно купить более дешевые приемники, главное в них - синтезатор и перекрытие всех диапазонов без пропуска. А современные еще и с dsp
http://www.zeondigital.ru/catalog/tecsun-pl-360-black.html?_openstat=bWFya2V0LnlhbmRleC5ydTtUZWNzdW4gUEwtMzYwIEJsYWNrO0M2Ql8wTmxJeVNieVYxanEwcnpLVkE7&ymclid=68411392011405811880003

Re: Arduino CW+GPS+SD

Madf » 13 июл 2016, 17:23

Спасибо конечно, может оно и дешево, но я-то думал принимаемые данные в дальнейшем обрабатывать на том же МК, чтобы не пипи слушать, а стрелочки и циферки смотреть (не говоря уже о распознавании сигнала).

Re: Arduino CW+GPS+SD

DJ_Wever » 13 июл 2016, 21:07

Согласование не поможет, так-как по даташитам на ATmega328 (Arduino UNO/Nano/ProMini), каждая нога GPIO имеет ограничение в 40 миллиампер. Выходит даже с идеальным согласованием мы имеем не более 0.2 Ватта (5 вольт * 40 миллиампер = 20 милливатт).
Тут либо "четвертушка" (ground plane) и ферритовых колечек побольше, либо "керамику" на выходе и УВЧ на одном транзисторе с четвертьволновым трансформатором.
Но я бы не стал так заморачиваться с мощность и дальностью, одного километра для такой поделки за глаза, дальше мы только всем мешать начнем.
И лучше для готового изделия не мучить ардуинку, а пустить например 13-ю "тиньку" и по UART давать текст посылки с отдельного контроллера.

Добавлено спустя 2 минуты 24 секунды:
"Народный" Degen DE-1103 и у меня есть, еще есть Yaesu FT-450 и Yaesu FT-817ND.
Но у других его нет!

Добавлено спустя 6 минут 7 секунд:
Слушать "пипи" иногда полезно - расширяет кругозор!
А вообще не что не мешает завести линейный выход бытового приемника на АЦП ардуинки и декодировать, а дальше хоть на экран, хоть на карточку пиши.

Re: Arduino CW+GPS+SD

Madf » 13 июл 2016, 22:28

Ну да, вначале экономим на копеешных маяках, но зато потом в приеёмник вкладываем от 4К рублей...не, я пока не готов на такие жертвы (есть вещи пока поинтереснее в эти суммы). ;)


Rambler\'s Top100 Mail.ru counter