FM передатчик
+ стерео кодер

Для начала известная схема передатчика:
Схема маломощного FM-передатчика

Номиналы резисторов некритичны, их как правило можно менять в пределах 30%. Транзистор - любой с граничной частотой порядка 250-500 МГц структуры n-p-n (подойдут КТ306,КТ315,КТ339 и др.) Более низкочастотные могут работать неустойчиво, а у более высокочастотных из-за меньших емкостей переходов - слабая модуляция, приходится увеличивать входной сигнал - больше шума, больше искажений. Пойдут и структуры p-n-p (например KT326,П416), но нужно изменить полярность источника питания и "электролит" C4 включить наоборот. Катушка L1 - наматывается толстым медным проводом диаметра 0.5-1.0 (лучше посеребренным) на каркасе диаметра 5-8 мм 6-8 витков с шагом 1 мм. Можно намотать и без каркаса, но тогда передатчик от ударов будет "бренчать" (попробуйте - сами услышите ;) Конденсатором C3 добиваются устойчивой генерации (желательно емкость взять поменьше), конденсатором C2 - выставляют рабочую частоту в диапазоне 88-108 МГц (лучше поставить подстроечный, но если нет - можно и постоянный, а частоту вгонять раздвигая и сдвигая витки катушки). Емкость C1 на схеме дана для стерео-сигнала, если передавать исключительно моно, то ее можно увеличить до 22-33 nF - шума будет меньше. Если на рядом расположенный приемник поймать несущую не удалось - проверить наличие генерации можно с помощью тестера: включив его в режиме миллиамперметра в цепь питания; при прикосновении рукой (или отверткой) к коллектору транзистора ток должен измениться. Можно также мерить напряжение на базе транзистора - оно тоже немного меняется. Питание можно снять с разъема джойстика - (такой 15-контактной "мамы"), он есть почти на всех звуковых и на большинстве мультиплат: +5 V у него на выводах 1, 9, масса - на 4, 5, 12

На вход подается сигнал амплитудой порядка 250-500 мВ, глубину модуляции можно менять резистором R1. Вообще в приемнике сигнал должен передаваться без искажений, а громкость - сравнима с громкостью других радиостанций.

Дальность действия такого передатчика в прямой видимости 10-50м (в зависимости от напряжения питания), хватает, чтобы свободно ходить в наушниках по квартире; увеличить ее можно подключив антенну - кусок провода длиной 1-1.5м Антенна подключается к коллектору транзистора через разделительный конденсатор малой емкости (не более 1.5-2 pF). При таком подключении частота передатчика может плавать если поднести руку к антенне, пройтись по комнате и т.п. Чтобы этого не было, можно подключить антенну через индуктивную связь - для этого намотать вторую катушку аналогичную первой, но из 2-3 витков, расположить ее рядом с катушкой L1, один конец ее соединить с массой или источником питания, а к другому подключить антенну.

А теперь немного о том как получить стереосигнал. Все радиостанции буржуйского FM-диапазона 88-108 МГц кодируют стереосигнал с помощью поднесущей с частотой 38 кГц. Поднесущая в сигнале полностью подавляется (как правило балансным модулятором), а для того чтобы приемник мог восстановить сигнал - добавляется пилот-тон с частотой равной половине несущей - 19 кГц и синфазный с ней. Математически это выглядит следующим образом:

Fст(t) = 0.5*(Fл(t) + Fп(t)) + 0.5*(Fл(t) - Fп(t))*cos(38000*2*pi*t) + 0.08*cos(19000*2*pi*t)

где:
Fст(t) - комплексный стереосигнал, подаваемый на передатчик;
Fл(t),Fп(t) - соответственно сигнал левого и правого каналов;
pi = 3.141592653589793238462643383... ;)

Таким образом, комплексный стереосигнал состоит из трех составляющих:
Fл(t) + Fп(t) - суммарный сигнал, нормально принимаемый моно приемниками;
(Fл(t) - Fп(t))*cos(38000*2*pi*t) - разностный сигнал, промодулированный поднесущей балансным модулятором;
cos(19000*2*pi*t) - пилот-тон с частотой, равной половине поднесущей и амплитудой 5-10% от максимума.

Схема, реализующая такое преобразование, получается довольно сложной, но при наличии компьютера, ее можно реализовать программно. Для этого понадобится звуковая карта (лучшие результаты получаются на Covox'е; на Sound Blaster'ах стереоэффект хуже из-за того, что они как правило срезают составляющие выше 20 кГц, а здесь нужно не менее 38 кГц). Если частоту дискретизации выбрать равной 76 кГц, т.е. вдвое выше несущей, то формула упрощается:
Fст(t0) = 0.5*(Fл(t0)+Fп(t0))+0.5*(Fл(t0)-Fп(t0))*1+0.08*1=Fл(t0)+0.08
Fст(t1) = 0.5*(Fл(t1)+Fп(t1))+0.5*(Fл(t1)-Fп(t1))*(-1)+0.08*0=Fп(t1)
Fст(t2) = 0.5*(Fл(t2)+Fп(t2))+0.5*(Fл(t2)-Fп(t2))*1+0.08*(-1)=Fл(t2)-0.08
Fст(t3) = 0.5*(Fл(t3)+Fп(t3))+0.5*(Fл(t3)-Fп(t3))*(-1)+0.08*0=Fп(t3)
Fст(t4) = 0.5*(Fл(t4)+Fп(t4))+0.5*(Fл(t4)-Fп(t4))*1+0.08*1=Fл(t4)+0.08
...

Т.е. при построении комплексного стереосигнала берем поочередно то сигнал с левого и правого каналов, прибавляя ко всем "левым" отсчетам константу 0.08 поочередно то со знаком плюс, то со знаком минус. Имеется в виду 0.08 от максимума, т.е. при 8-битном звуке нужно брать 0.08*128=~10 И частота дискретизации должна быть 76 кГц.

При подаче стереосигнала избавиться от лишнего шума довольно трудно, поэтому нужно более тщательно подобрать амплитуду модулирующего сигнала; передатчик лучше вынести подальше от компьютера, необходимо поэкспериментировать с расположением антенны; питание лучше брать отдельно, а если все таки с компьютера - то емкость C4 ставить ОБЯЗАТЕЛЬНО, и параллельно с ней - поставить еще одну емкость 68nF-0.1цF. Если стереоэффект слабый, можно попробовать параллельно с R1 включить емкость порядка 4.7-33 nF.

Можно попробовать поднять поднесущую еще вдвое - до 152 кГц; такую частоту можно получить только на Covox'е. В этом случае сигнал формируется следующим образом:

Fст(t0) = Fл(t0) +0.08
Fст(t1) = 0.5*Fл(t1)+0.5*Fп(t1)+0.05
Fст(t2) = Fп(t2)
Fст(t3) = 0.5*Fл(t3)+0.5*Fп(t3)-0.05
Fст(t4) = Fл(t4) -0.08
Fст(t5) = 0.5*Fл(t5)+0.5*Fп(t5)-0.05
Fст(t6) = Fп(t6)
Fст(t7) = 0.5*Fл(t7)+0.5*Fп(t7)+0.05
...

Я пробовал, наилучший результат у меня был на Covox'е на частоте 76 кГц; на 152 кГц - сигнал более искаженный, а на некратных частотах много шума. А что получилось у Вас? Напишите.


Ниже прилагается программа, которая играет на Blaster'е 4-канальные MOD-файлы в FM-Stereo режиме. Хелп встроенный. Не забудьте включить режим Stereo, а то по умолчанию Mono. Параметры Blaster'а берет с переменной окружения BLASTER, поэтому установите правильные значения:
SET BLASTER=A<port> I<irq> D<dma> H<hi-dma> T<model>
параметры H и T - не обязательны.
например: BLASTER=A220 I5 D1

Про ключ /j забудьте, он врубает 16-битный звук ТОЛЬКО на звуковых картах Media Vision Jazz-16 и совместимых.


И все-таки как сделать аппаратный стереокодер? Вышеприведенные цифровые преобразования сигнала натолкнули меня на идею как сделать довольно простые схемы стереокодеров с частично цифровой обработкой сигнала. Во всех вариантах напряжение питания +5..10 V, вход рассчитан на ~250 mV. На схеме не показаны блокировочные конденсаторы, включаемые параллельно источнику питания: электролит 10цF - 1 шт и 22-100nF по одному около каждой микросхемы.

Вариант 1. Частота дискретизации 76 кГц, 2 микросхемы. FM Stereo coder, вариант 1

На элементах DD1.1, DD1.2 собран генератор на частоту 76 кГц, частота задается элементами R1, C1. DD2.1 делит ее на два, DD2.2 - еще на два. Таким образом, коммутаторы DD1.3, DD1.4 будут переключать выход с левого канала на правый и наоборот с частотой 38 кГц. С вывода 13 DD2 снимается пилот-тон с частотой 19 кГц, который примешивается на выход.

Вариант 2. Частота дискретизации 152 кГц, 2 микросхемы.
Запустить сложнее, чем вариант 1, и по сравнению с ним работает менее устойчиво и больше шумит (на мой взгляд).
FM Stereo coder, вариант 2

На выводах 2,4 DD1 - 76 кГц (симметрично, в противофазе), частота задается элементами R1,C2,C3. Обязательное условие: C2=C3 и R2=R3. На выводах 6,12 DD1 примерно следующие сигналы:
Диаграмма сигналов кодера 2

Таким образом, в нечетные такты на выход подключается поочередно левый и правый каналы, по четным - подключается оба одновременно.

Вариант 3. Частота дискретизации 304 кГц, 3 микросхемы.
Наиболее качественная и довольно простая в настройке схема. FM Stereo coder, вариант 3

Номиналы резисторов r11-r38 приведены в таблице:
rx1rx2 rx3 rx4 rx5 rx6 rx7 rx8
r1x10k12k 20k 68k - 68k 20k 12k
r2x - 68k 20k 12k 10k 12k 20k 68k
r3x - 270k150k110k100k110k150k270k

Схема состоит из тактового генератора на частоту 304 кГц (DD1.1 - DD1.3),двоичного счетчика (DD2), восьмиканального коммутатора (DD3), резисторной матрицы (r11-r38) и схемы управления (J1,DD1.4). В нормальном режиме джампер J1 замкнут, на выводе 6 DD1 - уровень "1", на выводах 5,9 DD2 - "0". На выводе 10 DD1 сигнал с частотой 304 кГц, на выводах 14,13,12, 11 DD2 - соответственно 152 кГц, 76 кГц, 38 кГц, 19 кГц. Коммутатор DD3 последовательно подключает вывод 3 к выводам 1,2,4,5,12-15 в последовательности, указанной на схеме (сверху вниз). На этих выводах с помощью резисторной матрицы r11-r38 сформированы такие сигналы, чтобы на выводе 3 получился комплексный стереосигнал с пилоттоном.

Если контакты джампера разомкнуть, то на выводах 5,9 DD2 установится "1", благодаря чему счетчик перестанет реагировать на тактовые сигналы и установит на всех выходах, кроме 2 (вывод 13) уровень "0", (на выводе 13 - "1"). Благодаря этому коммутатор постоянно соединит вывод 3 с выводом 15, и на выходе будет в равном соотношении сумма левого и правого каналов. Кроме того, появившийся на выводе 11 DD1 уровень "0" остановит генератор, вообще-то это не обязательно, счетчик и так на него не реагирует, но пусть лучше не шумит, когда он не нужен ;)


Как все-таки запустить одну из этих схем? Прежде всего, собрать передатчик и убедиться что он НОРМАЛЬНО работает в моно-режиме. После этого, собрать одну из этих схем (лучше всего вариант 3, затем вариант 1, хуже всего - вариант 2); резистор, задающий частоту тактового генератора (R1 во всех вариантах) ЖЕЛАТЕЛЬНО поставить подстроечный; убедиться, что тактовый генератор работает (если под рукой ничего кроме тестера нет, то можно просто измерить постоянную составляющую напряжения на выходе тактового генератора, она должна быть где-то в пределах 1/3Uп - 2/3Uп (Uп - напряжение питания), а на всех выходах триггеров (варианты 1,2) или счетчика (вариант 3) постоянная составляющая равна 1/2Uп. Далее, подключив выход кодера к передатчику и изменяя частоту тактового генератора (вот зачем подстрочник!) и контролируя по стерео-приемнику, добиться зажигания индикатора стерео (найти два крайних положения движка, при которых индикатор загорается или гаснет, и установить движок посередине между этими положениями). Затем, можно подать сигнал. Не следует давать слишком сильный сигнал - громкости это не добавит, а искажений будет больше. Желательно подобрать амплитуду пилоттона (R6 в варианте 1, R8 в варианте 2, R3 в варианте 3): найти максимальное значение этого сопротивления, при котором индикатор еще устойчиво светится и уменьшить его вдвое.

Ну а если схема все-таки сильно шумит, то можно: запитать ее от отдельного источника питания (лучше всего от батарейки ;) , между кодером и передатчиком можно поставить LC-фильтр:
LC-фильтр

Теоретически частота среза его должна быть около 40 кГц (вычисляется по формуле:
f=1/(2*pi*v(LC))

Т.е, например C=1000 pF, L=15 mH (Я наматывал на кольце K10x6x5 600НН 100 витков проводом ПЭВ-2 0.11)

Для варианта 1 такой фильтр обязателен, для варианта 2 - желателен, а вариант 3 и без него неплохо работает (хотя тоже не помешает). Не забудьте про блокировочные конденсаторы: параллельно выводам питания каждой микросхемы - по 0.047-0.1 цF и один на 10 цF - на всю схему.

Copyright (c) U.P.X

Сайт создан в системе uCoz