Форум

Радиолюбительский форум.

Если у Вас возникли вопросы, задавайте их на форуме.

В сети

Пользователей: 209
Из них просматривают:
Аналоги: 81. Даташиты: 68. Инструкции: 6. Новости: 11. Остальное: 2. Программы: 3. Производители: 1. Профиль пользователя: 6. Расчёты: 1. Форум: 30.
Участников: 2
Гостей: 207

Google , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.

1 2 3 4 5 6 ... 2656


Радио-маяк на Arduino
Технический Директор
Зарегистрирован:
08.02.2009 21:08
Из: Днестровск
Сообщений: 2441
Не в сети
Радио-маяк на основе Arduino. Подключаем антенну (провод длиною 15 метров из окна к дереву «стреляет» до 1 км) к цифровому выводу D9, заливаем скетч и Arduino начинает выдавать в эфир телеграфом сообщение «VVV CQ CQ CQ DX DE BEACON BAND 40M 8000KHZ» на основной частоте 8 МГц. Так как перед антенной нет полосового фильтра, то сигнал будет слышен на высших гармониках, а это: 16, 24, 32 МГц и так далее, вплоть до УКВ диапазона и чуть выше. Мощность такого маяка составляет единицы миливатт.
Автономно работающий маяк, позволяет оценить прохождение радиоволн в конкретное время суток, отметить точные азимуты на корреспондентов, для последующего использования, в частности в соревнованиях.
Маячок был опробован, показал хорошую работу, красивый и чистый сигнал.
Скетч подойдёт для любой платы Arduino:
// Arduino simply CW beacon
// (c) 2012 Max Klimenko
// emaster [at] mail.ru
// <a href="http://max-ter.livejournal.com/571.html" title="http://max-ter.livejournal.com/571.html" rel="nofollow">http://max-ter.livejournal.com/571.html</a>

// It sends beacon at 8 MHz from pin D9

// 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(13OUTPUT);
  
digitalWrite(13HIGH);   // set the LED on
}

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

  
delay(point_time 2);
}

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

В следующем скетче, можно легко менять частоту передачи из предложенных 15-ти вариантов. В отличии от предыдущего маячка, этот не выдаёт сообщение, а только повторяющийся прерывистый сигнал:
/*
The 16 MHz clock is divided by 10 (that is, 1.6 MHz) and that is used to toggle pin 9 at that rate,
giving a frequency of 800 KHz, since one toggle turns the output on, and second toggle turns it off.

If you hold the Arduino near an AM radio tuned to around 800 KHz you should hear a hissing toggling on
and off (like Morse code) as the carrier is turned on and off for 0.5 / 0.3 second intervals.
*/

const byte ANTENNA 9;

void setup()
{
  
// set up Timer 1
  
TCCR1A bit (COM1A0);               // toggle OC1A on Compare Match
  
TCCR1B bit (WGM12) | bit (CS10);   // CTC, no prescaler
  
OCR1A =  1;                          // compare A register value to 10 (zero relative)
}

void loop()
{
  
pinMode (ANTENNAOUTPUT);
  
delay (500);
  
pinMode (ANTENNAINPUT);
  
delay (300);
}

/*
The OCR1A variable is related to the frequency.
The OCR1A variable is one less than the actual divisor.
OCR1A - Frequency
15 - 500 khz
14 - ~530 khz
13 - ~570 khz
12 - ~610 khz
11 - ~670 khz
10 - ~730 khz
9 - 800 khz
8 - ~890 khz
7 - 1000 khz
6 - ~1140 khz
5 - ~1330 khz
4 - 1600 khz
3 - 2000 khz
2 - ~2670 khz
1 - 4000 khz
0 - 8000 khz *would not recommend this setting

The formula is (16÷(OCR1A+1)÷2)×1000 = frequency in khz
*/

Конкретно этот маяк выставлен на основную 4 МГц и его высшие гармоники чередуются с частотой 4 МГц, то есть сигнал слышен на 8, 12, 16, 20, 24, 28 МГц и так далее, до УКВ диапазона.

Прикреплённый файл:



gif  Радио-маяк 8 МГц на Arduino.GIF (20.88 KB)
290_6587454622909.gif 444X440 px


Отредактировано пользователем Kosmonavt 23.12.2023 23:57:39
Отредактировано пользователем Kosmonavt 24.12.2023 0:08:05


Re: QRPp трансивер с Китая
Технический Директор
Зарегистрирован:
08.02.2009 21:08
Из: Днестровск
Сообщений: 2441
Не в сети
Под конкретный кварц вычисляем номиналы в диапазонном полосовом фильтре данного QRPp трансивера.

Прикреплённый файл:



gif  Расчёт ДПФ исходя из кварца в задающем генераторе.gif (26.53 KB)
290_658736d8303d7.gif 354X319 px
zip По кварцу вычисляем ДПФ.zip Размер: 54.72 KB; Просмотры: 41



Re: кто чё делает
Младший сотрудник
Зарегистрирован:
11.12.2010 22:59
Из: Кишинёв
Сообщений: 29
Не в сети
Да, я тоже пришёл к такой конфигурации, но придётся добавить коммутатор сигналов управления, в принципе надо добавить ещё один корпус 74HC4053.



Re: кто чё делает
Модератор
Зарегистрирован:
26.01.2010 23:26
Из: Тирасполь
Сообщений: 3926
Не в сети
Я вообще планирую коммутацию сделать на аналоговых ключах- импульсы с 5351 на высоких частотах и со счетчика Джонсона на низких.



Re: кто чё делает
Младший сотрудник
Зарегистрирован:
11.12.2010 22:59
Из: Кишинёв
Сообщений: 29
Не в сети
Нашёл интересную статью Генерация сигналов с фазовым сдвигом при помощи Si5351

Учитывая, что RDivider’s недоступны, минимальное значение Fpll составляет 600 МГц, а максимальное значение CLKx_PHOFF равно 127, мы никак не можем получить частоту, скажем, 3.5 МГц.
Для решения этой проблемы в коде есть небольшой хак. Для частот в интервале 1.4-4.725 МГц используется частота Fpll ниже 600 МГц.
Эксперименты показали, что PLL срывает, когда он работает на частотах ниже 177 МГц. Это дает минимальную частоту 177 / 127 = 1.4 МГц.

Думаю если нужны частоты ниже - можно и на D-триггерах сделать, на низких частотах они приемлемо работают.
Но главное:

Из хорошего — схема демонстрирует стабильную работу на частотах до 100 МГц. Это максимальная частота, которую мой драйвер Si5351 может генерировать с фазовым сдвигом 90°. В отличие от D-триггеров, Si5351 прекрасно справляется с задачей на высоких частотах.



Re: кто чё делает
Младший сотрудник
Зарегистрирован:
11.12.2010 22:59
Из: Кишинёв
Сообщений: 29
Не в сети
Цитата:

Kosmonavt пишет:
Рекомендую к сборке вот такой SDR-приёмник.


Тут вот люди провели исследование и выяснилось что схема на двух триггерах( как в представленной вами схеме) даёт самую большую ошибку разбаланса уже на 14 мГц. Склонен верить, поэтому отказался от такого варианта.
Открыть изображение в новом окне


Цитата:

evildesign пишет:
О проблемах квадратурных сигналов у Si5351 пишет Дмитрий Руднев:


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



Re: кто чё делает
Модератор
Зарегистрирован:
26.01.2010 23:26
Из: Тирасполь
Сообщений: 3926
Не в сети
О проблемах квадратурных сигналов у Si5351 пишет Дмитрий Руднев:

Теперь заострим внимание на том, что с квадратурным сигналом гетеродина на выходах CLK0 и CLK1 не всё так просто, как может показаться.
Минимальная частота, на которой мы реально наблюдаем осциллографом квадратурный сигнал на выходах CLK0 и CLK1, находится в районе 1500 кГц. Согласно официальной документации на микросхему Si5351 это невозможно, и сейчас объясню почему.
Чтобы сформировать на одном из пары выходов синтезатора Si5351 сигнал с фазовым сдвигом 90° относительно другого, надо записать в соответствующий регистр этого выхода целочисленное значение от 4 до 127 при условии, что частота выходных сигналов этой пары равна частному рабочей частоты PLL и этого целочисленного значения. Наименьший фазовый шум выходных сигналов обеспечивается при чётных значениях делителя.
Согласно официальной документации PLL синтезатора Si5351 работает в диапазоне частот от 600 до 900 МГц. Берём нижнюю границу этого диапазона и делим 600 МГц на 127. В результате получаем нижнюю границу частот «квадратурного» гетеродина, равную 4.724 МГц. Это, в принципе, неплохо: мы «перекрываем» все любительские КВ-диапазоны кроме 160 и 80 м, а также вещательные диапазоны от 60 м и выше.
Но лучшее – враг хорошего, а энтузиазм – непобедим. Радиолюбители экспериментальным путём определили, что потенциал микросхем Si5351 их разработчиками был раскрыт не полностью. Оказалось, что нижнюю границу диапазона рабочих частот PLL этих микросхем можно сдвинуть до значения 380 МГц. Что, кстати, справедливо и для китайских аналогов MS5351M, отличить от оригинальных которые можно по маркировке на корпусе «5351M».
Таким образом, нижняя граница частот квадратурного гетеродина на Si5351 понизилась уже до 3.2 МГц. Это позволило «открыть» любительский диапазон 80 м, а также вещательные диапазоны 90 и 75 м.
Это было только начало, дальше – больше. Оказалось, что нижнюю границу диапазона рабочих частот PLL микросхем Si5351 «rev. B» возможно опустить ещё ниже! Она для этой версии кристалла составляет 189 МГц, и это позволяет получить на выходах синтезатора квадратурный сигнал на частотах не ниже 1.49 МГц.
Для применения в трансивере нужно заказывать микросхемы типа Si5351A-B-GT или Si5351A-Bxxxxxx-GT и знать, что они имеют на корпусе ту же маркировку «5351», что и не формирующие квадратурный сигнал на частотах ниже 3.2 МГц микросхемы Si5351A-A-GT, и что буква «B» ниже надписи «5351» относится к номеру партии.



Re: кто чё делает
Технический Директор
Зарегистрирован:
08.02.2009 21:08
Из: Днестровск
Сообщений: 2441
Не в сети
Рекомендую к сборке вот такой SDR-приёмник. Его повторил evildesign, с той разницей, что применил микросхемы с более высокими характеристиками. Этот приёмник теперь у меня и должен сказать, что работает он просто превосходно. Надеюсь у меня появятся силы и желание расписать о нём более подробно.
Открыть изображение в новом окне








Re: кто чё делает
Младший сотрудник
Зарегистрирован:
11.12.2010 22:59
Из: Кишинёв
Сообщений: 29
Не в сети
По теме SDR.
Изучал эту тему, основная проблема это разбаланс фаз управления квадратурным детектором, выше 10 мГц проблемы у всех простых схем. Можно добиться баланса на одной частоте, но не в широком диапазоне. Но у SI5351 три независимых канала, что легко позволяет реализовать гибридную схему. Преобразование вверх - первая промежуточная 38мГц ( SAW TV фильтр-ПЧ ) за ним SDR идеально настроенный на одну частоту - 38мГц.
И я нашёл такой проект.



Re: кто чё делает
Младший сотрудник
Зарегистрирован:
11.12.2010 22:59
Из: Кишинёв
Сообщений: 29
Не в сети
Цитата:

Появилась потребность в трехфазном генераторе с возможностью регулировки фаз (вперед\назад), желательно на ардуино.

Нужен синус или меандр? Мало информации - какой двигатель, есть ли какие-то схемы того что с сейчас.
На вскидку - есть проект BLDC на Ардуине, там три фазы, и обратная связь.
Вот ещё проект, проще некуда.


Отредактировано пользователем ken 19.12.2023 0:28:56



1 2 3 4 5 6 ... 2656




Разное

Интересно

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