#1 2016-07-12 16:40:54

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Arduino CW+GPS+SD

Это 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);
}

Неактивний

#2 2016-07-12 17:51:54

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino CW+GPS+SD

привет,
если на батарейке устройство,
и с магнитным креплением - то это незаконно )

Неактивний

#3 2016-07-12 18:02:17

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

Зато законно наблюдать за своим чадом, за домашним питомцем или автомобилем.

Неактивний

#4 2016-07-12 18:04:02

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino CW+GPS+SD

в наше время даже необходимо  (
почему не GSM?
есть в целом адекватные решения, или академический интерес?

Неактивний

#5 2016-07-12 23:39:45

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

Тут интерес больше развлекательно-познавательный.
Есть масса готовых GPS/GSM-трекеров, есть Arduino-шилды с GPS/GSM/SD-слотом на борту, есть приемники и передатчики на 433 MHz,
но это все тленно перед голым Arduino и 10 сантиметровым куском провода с одной стороны и бытовым приемником с другой.

Неактивний

#6 2016-07-13 09:23:14

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino CW+GPS+SD

DJ_Wever, если будете делать сами, помогу советом.
Ваш проект не сложный


вам прийдеться иметь дело  с   такими сообщениями
$GPRMC,125504.049,A,5542.2389,N,03741.6063,E,0.06,25.82,200906,,,*17

хеадер $,  футер *17


для начала  в
карточку пишете как есть (запись текстовой строки в файл примеров немеренно) все сообщения от модуля, мне нравится EB500, там было что то посвежее но уже не смотрел 

вместо
char message[200] = "VVV CQ CQ CQ DX DE BEACON BAND 40M 8000KHZ";
копируете координаты в message, и дальше ловите их в эфире

а Вы первую часть уже сделали? работает? 
сообщение "VVV CQ CQ CQ DX DE BEACON BAND 40M 8000KHZ"; словили? )

Неактивний

#7 2016-07-13 20:17:41

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

С реализацией проблем нет.
Словил, на бытовой приемник, на расстояние 2-х километров.

Остання редакція DJ_Wever (2016-07-13 22:34:58)

Неактивний

#8 2016-07-14 09:32:41

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino CW+GPS+SD

DJ_Wever, что есть?
1. какой GPS
2. какой SD-shield
подскажу, и помогу, но делать будете сами.

проверяйте часть 2
http://arduino-diy.com/arduino-SD-karta

покажите фотку что получилось

Остання редакція NoName (2016-07-14 09:36:45)

Неактивний

#9 2016-07-15 09:46:00

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Arduino CW+GPS+SD

DJ_Wever пише:

С реализацией проблем нет.
Словил, на бытовой приемник, на расстояние 2-х километров.

А разве на бытовой приёмник получится "нормально" принять? Как я понимаю, нужен ещё CW гетеродин, не?

Неактивний

#10 2016-07-15 13:19:39

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

Как видите, принял.
А так ни что не мешать, поставить узкую "керамика" по второй ПЧ, или давить боковую полосу и слушать в SSB.
Для ленивых есть дегены.

Неактивний

#11 2016-07-15 15:42:46

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Arduino CW+GPS+SD

Я тоже вчера принял, но это не значит что все принимают. А если серьёзно, может нужно промодулировать выходной сигнал передачика нч сигналом? Вот тогда примут все.

Неактивний

#12 2016-07-15 19:34:29

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

А зачем его всем принимать? А если серьезно, вам не достаточно, что сигнал промодулирован CW-модуляцией?

Принцип вышеописанного маяка заключается в обычном генераторе прямоугольных (меандр) импульсов, от 16 битного таймера, до половины тактовой частоты, включаемый и выключаемый на определенный промежуток времени (точка-тире-пробел).
МК-ы в принципе нечего другого на своих ногах генерировать не могут, у них всего 2 состояния - высокий и низкий логический уровень. Это не ЦАП!
Стало быть и генерировать на голом МК мы ничего другого кроме меандра не сможем, а значит кроме CW нам не чего не светит.
Нет, есть конечно DDS-генераторы работающие на i2c, их можно использовать как самостоятельно, так и с помощью смесителя подмешивать НЧ, можно задействовав сразу несколько ног, выдавать по таблице ШИМ-импульс каждой ноги в определенный момент и с определенной скважностью, получиться синус, только очень низкой частоты.
Главный вопрос - ЗАЧЕМ?
Для передачи НЧ есть готовые трансиверы, для приема готовые приемники.
Мы эти маяком добились максимальной простоты, повторяемости, автономности и миниатюрности.
Например ATtiny13 в корпусе ssop8, размером меньше ногтя мизинца может генерировать CW с мощностью 20mW.
Без всяких доп.модулей, без обвязки, без отдельных передатчиков или генераторов - ВОТ В ЧЕМ ИЗЮМИНКА!

Неактивний

#13 2016-07-15 20:43:49

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Arduino CW+GPS+SD

Это всё понятно. Только Вы говорили о бытовом приёмнике... А на бытовом приёмнике CW (на слух) принимать неудобно/сложно, модуляции то нет, согласны? Но ничто не мешает промудулировать его на передающей стороне. На голом МК, без ничего! С тем что бы принимать на слух на бытовом приёмнике не изгаляясь. Именно ЗАТЕМ, я доходчиво объяснил?

Неактивний

#14 2016-07-15 20:48:27

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Arduino CW+GPS+SD

Точки и тире модулировать ещё 1-м кГц, к примеру. Ага?

Неактивний

#15 2016-07-15 21:11:51

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

Во-первых, на голом МК сделать это не получиться.
Во-вторых, повторюсь - все можно услышать на бытовой приемник, если вас не устраивает непромодулированный сигнал (пи-пи не 1кГц), паяйте на приемник свой гетеродин (навесным монтажом дело 5 минут). И пи-пи для вас будет любой частоты + сможете принимать радиолюбителей в SSB.
Принципы CW-модуляции надеюсь вам не надо разъяснять?

Неактивний

#16 2016-07-15 21:41:05

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Arduino CW+GPS+SD

DJ_Wever пише:

Во-первых, на голом МК сделать это не получиться.

"Я ему про Фому, а он мне про Ерёму!"))
Почему не получится? CW модуляция получается, а ещё одна нет?)) Не вижу никаких проблем.
Удачи!

Неактивний

#17 2016-07-16 12:21:28

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

Да потому-что, я вам еще раз объясняю, то что МК генерирует меандр, это вообще нештатный режим контроллера, потому-что использования 16 битного таймера при постоянной составляющей одной инструкции дает 100 загрузку и лишь прерываниями мы исполняем смену этой-же самой инструкции на такую-же, только с другим периодом. Ни о какой НЧ модуляции и речи быть не может!
Мы здесь можем только изменить частоту генератора меандра, скважность и включить или выключить с разным периодом времени. И на этом ВСЕ!!!

Чувствую вы вообще не представляйте что такое CW-модуляция.
Настоящая морзянка ни-когда и не чем не модулировалась, это простая несушка.
Хотите на бытовом приемнике "пищалку" в 1кГц, ставьте в него соответствующий НЧ-генератор и подключайте к АМ-детектору.
Arduino не всесильна и вам не будет по щучьему велению модулировать АМ с НЧ сигналом в 1 кГц.

Остання редакція DJ_Wever (2016-07-16 12:25:38)

Неактивний

#18 2016-07-17 20:59:47

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino CW+GPS+SD

уйдите лучше в демагогию как DJить для соседей в  FM, в дороге и на дому, 3-8 станции, ясен пень одновременно до 50 м

Неактивний

#19 2016-07-18 12:27:23

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Arduino CW+GPS+SD

и убедительная просьбе
давайте источники

страница Макса  Клименко
http://max-ter.livejournal.com/571.html
возможная схема
morze.jpg

этот пост надыхнул Макса  на создание этой прошивки
http://www.radioscanner.ru/forum/topic32713.html

Неактивний

#20 2016-07-18 20:25:49

DJ_Wever
Учасник
Зареєстрований: 2014-10-31
Повідомлень: 11

Re: Arduino CW+GPS+SD

NoName, внимательней пожалуйста к моему первому посту - внимательней!

Неактивний

#21 2017-02-05 10:08:08

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Arduino CW+GPS+SD

DJ_Wever пише:

Чувствую вы вообще не представляйте что такое CW-модуляция.

Вот только не надо, Ди-джей, меня учить CW-молуляции.)) Ибо имею МС именно по этой модуляции.)))
Ну вспомнил, и чо!)))))

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму