Arduino CW+GPS+SD

Как собрать и запрограммировать робота на Arduino(Freeduino, Roboduino, Seeduino ...). Используем Wiring и Processing.

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);
}
DJ_Wever
 
Сообщения: 18
Зарегистрирован: 23 окт 2014, 19:17

Re: Arduino CW+GPS+SD

Сообщение Eruman » 12 июл 2016, 18:30

Дозволяем :)
Соединяй и здравствуй.
Аватара пользователя
Eruman
 
Сообщения: 897
Зарегистрирован: 12 авг 2010, 15:10
Откуда: Астраханская обл.

Re: Arduino CW+GPS+SD

Сообщение DJ_Wever » 12 июл 2016, 18:42

Вопрос стоит не в реализации, а в востребованности.
Есть-ли желание следить например за своими домашними питомцами или личным автомобилем?!
DJ_Wever
 
Сообщения: 18
Зарегистрирован: 23 окт 2014, 19:17

Re: Arduino CW+GPS+SD

Сообщение Dmitry__ » 12 июл 2016, 19:29

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

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

Так там антенны по 15 метров, может ну его?
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Arduino CW+GPS+SD

Сообщение Madf » 12 июл 2016, 23:24

Для машины не проблема, салон большой, а вот что скажет собачий питомец, когда до хвоста в антене будет... :D
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

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-овым модулям?!
DJ_Wever
 
Сообщения: 18
Зарегистрирован: 23 окт 2014, 19:17

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 секунд:
Опс, тут кварц штатный, это я вопрос задал, смотря на сайт радиосканера...
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Arduino CW+GPS+SD

Сообщение DJ_Wever » 13 июл 2016, 01:55

А почему-бы не работать на 40-метровом диапазоне, с мощность 20 милливатт мы вряд ли кому помешаем, дальность не более 3 км, плюс бытовые приемники не имеют 10-метрового диапазона.
DJ_Wever
 
Сообщения: 18
Зарегистрирован: 23 окт 2014, 19:17

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 мгц. в этом плане лучше, мало кто мешает.
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Arduino CW+GPS+SD

Сообщение Myp » 13 июл 2016, 09:51

выб хоть ссылку вставили о чём речь
это что-то про ардуино и радио?
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Arduino CW+GPS+SD

Сообщение Madf » 13 июл 2016, 12:23

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

Добавлено спустя 11 минут 27 секунд:
глянул первоисточник...ммм...у меня такого и радио нет вовсе (по диапазону)...есть маленькие приемники/модули на этот диапазон у китайцев?
если это 27 или 40 МГц, то проблема, ибо все китайские игрушки работают в этом диапазоне
вообще, если это свой маяк, то он может работать на любой частоте, главное чтобы приёмник его понимал
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

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
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Arduino CW+GPS+SD

Сообщение Madf » 13 июл 2016, 17:23

Спасибо конечно, может оно и дешево, но я-то думал принимаемые данные в дальнейшем обрабатывать на том же МК, чтобы не пипи слушать, а стрелочки и циферки смотреть (не говоря уже о распознавании сигнала).
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

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 секунд:
Слушать "пипи" иногда полезно - расширяет кругозор!
А вообще не что не мешает завести линейный выход бытового приемника на АЦП ардуинки и декодировать, а дальше хоть на экран, хоть на карточку пиши.
DJ_Wever
 
Сообщения: 18
Зарегистрирован: 23 окт 2014, 19:17

Re: Arduino CW+GPS+SD

Сообщение Madf » 13 июл 2016, 22:28

Ну да, вначале экономим на копеешных маяках, но зато потом в приеёмник вкладываем от 4К рублей...не, я пока не готов на такие жертвы (есть вещи пока поинтереснее в эти суммы). ;)
Madf
 
Сообщения: 3298
Зарегистрирован: 03 янв 2012, 12:55
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...

След.

Вернуться в Arduino и другие Xduino

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14