Text
                    Фредрик Янссон

Радио.
Эксперименты
с невидимыми волнами


Radio. Hands-on adventures in the hidden universe of radio waves Fredrik Jansson
Радио. Эксперименты с невидимыми волнами Фредрик Янссон
УДК 621.37+621.396 ББК 32.84 Я65 Я65 Фредрик Янссон Радио. Эксперименты с невидимыми волнами / пер. с англ. Ю. В. Ревича. – Алматы.: Books.kz, 2025. – 278 с.: ил. ISBN 978-601-81034-6-9 В этой книге читателю предлагается исследовать мир радиоволн, создавая несложные проекты на основе простых и доступных компонентов, а также популярного и недорогого микрокомпьютера Raspberry Pi Pico. Вы узнаете, как передавать информацию без проводов при помощи радиосигнала, изучите различные конструкции приемников и передатчиков и познакомитесь с историей радио. Книга адресована любителям технического творчества, желающим освоить основные принципы работы радио на наглядных примерах. УДК 621.37+621.396 ББК 32.84 © 2024 «Books.kz» Limited Liability Partnership Authorized Russian translation of the English edition of Make: Radio ISBN 9781680456776 © 2024 Fredrik Jansson This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. ISBN (анг.) 978-1-68045-677-6 ISBN (казах.) 978-601-81034-6-9 Copyright © 2024 by Fredrik Jansson © Оформление, издание, перевод, Books.kz, 2025
Оглавление Предисловие от издательства ........................................................ 12 Благодарности ................................................................................... 13 Об авторах ......................................................................................... 14 Предисловие от Чарльза Платта .................................................... 15 ПРОЛОГ ............................................................................................. 22 ВВЕДЕНИЕ ........................................................................................ 23 Прежде чем начать .....................................................................................23 Процесс обучения .......................................................................................23 Подготовка ..................................................................................................24 Принципиальные схемы, макеты и фотографии .....................................24 Если что-то не работает .............................................................................28 Сообщите об ошибке .................................................................................29 Общественное обсуждение ........................................................................30 ЭКСПЕРИМЕНТ 1 ЭНЕРГИЯ ЧЕРЕЗ НИЧТО .............................................................. 31 Все об аудио ................................................................................................33 Качество звука ............................................................................................35 Частота и длина волны ...............................................................................37 Несущая волна ............................................................................................38 Местный прием ..........................................................................................41 Как это работает .........................................................................................49 Основы резонанса ......................................................................................52 Катушки и конденсаторы...........................................................................52 Расчет ..........................................................................................................54 Международный прием .............................................................................54 Тестирование… ...........................................................................................58 Несколько слов о Тесле ...............................................................................59 Оглавление 5
Почему я не использовал «бутылочную» версию Make: Electronics? ......60 Настройка AMR1 .........................................................................................60 Дополнительные источники ......................................................................62 Что дальше? ................................................................................................62 ЭКСПЕРИМЕНТ 2 НАСТОЯЩЕЕ РАДИО ..................................................................... 63 Конструкция с двойной катушкой ............................................................65 Расчет трансформатора..............................................................................69 Трансформация энергии ............................................................................69 Настройка AMR2 .........................................................................................70 Тестирование приемника АМР2 ................................................................74 Если что-то не работает… ..........................................................................75 Как это работает .........................................................................................77 Добавление аудиоусилителя ......................................................................78 Дополнительные источники ......................................................................79 Что дальше? ................................................................................................80 ЭКСПЕРИМЕНТ 3 НАСТОЯЩИЙ АМ - ПЕРЕДАТЧИК ............................................... 81 Замечания по компонентам ......................................................................83 Создание несущей ......................................................................................83 Добавление аудиовхода .............................................................................87 Синусоида ...................................................................................................89 Разбираемся со схемой AMT1 ....................................................................92 Качество звука и перемодуляция ..............................................................94 Увеличение дальности ...............................................................................95 Дополнительные источники ......................................................................95 Что дальше? ................................................................................................96 ЭКСПЕРИМЕНТ 4 RASPBERRY PI PICO ...................................................................... 97 Замечания по компонентам ......................................................................99 Написание скетчей .....................................................................................99 Почему Pico? .............................................................................................100 О терминах ................................................................................................101 Почему Arduino IDE? ................................................................................101 C/С++ SDK ..............................................................................................102 MicroPython ..........................................................................................102 Arduino IDE ...........................................................................................102 Скетчи и библиотеки............................................................................103 6 Оглавление
Поиск документации................................................................................103 Установка Arduino IDE ..............................................................................103 Установка Windows ...................................................................................104 Установка в Linux ......................................................................................106 Установка в MacOS....................................................................................106 Добавление кода для Pico.........................................................................107 Ваш первый скетч для Pico ......................................................................109 Устранение неисправностей ....................................................................112 Устранение неполадок в ранних версиях IDE ........................................112 Особенности платы Pico ..........................................................................114 Подключение ЖК-дисплея .......................................................................115 Тест дисплея ..............................................................................................117 Если это не работает.................................................................................119 Разбираемся в скетче ...............................................................................119 Что дальше? ..............................................................................................122 ЭКСПЕРИМЕНТ 5 ТЕСТОВЫЙ ПЕРЕДАТЧИК НА ОСНОВЕ PICO ......................123 Тестируем сигнал......................................................................................125 Разбираемся в скетче ...............................................................................127 Широтно-импульсная модуляция ...........................................................131 Дополнительные источники ....................................................................132 Что дальше? ..............................................................................................132 ЭКСПЕРИМЕНТ 6 ПЕРЕДАЧА АУДИО С ПОМОЩЬЮ PICO.................................133 Конструкция..............................................................................................135 Как это работает .......................................................................................136 АМ-выход с помощью ШИМ ....................................................................139 Разбираемся в скетче ...............................................................................140 Увеличение дальности и фильтрация .....................................................143 Конструкция..............................................................................................143 Увеличиваем мощность ...........................................................................146 Что дальше? ..............................................................................................148 ЭКСПЕРИМЕНТ 7 ПОДСЧЕТ ИМПУЛЬСОВ С ПОМОЩЬЮ PICO .......................149 Измерение частоты ..................................................................................151 Конструкция..............................................................................................151 Как это работает .......................................................................................154 Оглавление 7
Что происходит на высоких частотах? ....................................................155 Прерывания Pico.......................................................................................156 Проведение измерений............................................................................158 Схема приемника .....................................................................................160 Измерение частоты АМТ1 ........................................................................161 Что дальше? ..............................................................................................162 ЭКСПЕРИМЕНТ 8 FM - ПРИЕМНИК .............................................................................163 Частота и дальность..................................................................................165 Модуль FM-приемника на основе SI4703 ...............................................165 Конструкция..............................................................................................167 Как это работает .......................................................................................171 Частотная модуляция ...........................................................................171 Стереозвук ............................................................................................172 Разбираемся в скетче ...........................................................................172 Что можно улучшить? ..............................................................................174 Портативный приемник ......................................................................174 Добавление динамиков ........................................................................175 Выбор диапазона настройки ...............................................................176 Дополнительные источники ....................................................................176 Что дальше? ..............................................................................................176 ЭКСПЕРИМЕНТ 9 ДИСТАНЦИОННОЕ УПРАВЛЕНИЕ .......................................... 177 Отправка сигнала .....................................................................................179 Подключаем больше кнопок....................................................................182 Как это работает .......................................................................................186 Разбираемся в скетчах .............................................................................187 Скетч передатчика ...............................................................................187 Скетч приемника ..................................................................................187 Коммерческие пульты .............................................................................188 Прослушать код ........................................................................................188 Коммерческие приемники.......................................................................188 Изучение кодов разных пультов .............................................................190 Клонирование пульта дистанционного управления .............................191 Беспроводной приемник дверного звонка.............................................191 Музыкальный дверной звонок ................................................................195 Как это работает .......................................................................................197 Синтез звука .........................................................................................197 Разбираемся в скетче ...........................................................................197 Музыкальные ноты ..............................................................................200 8 Оглавление
Другие модули и добавление проволочных антенн ..............................200 Что дальше? ..............................................................................................202 ЭКСПЕРИМЕНТ 10 РЕГЕНЕРАТИВНЫЙ АМ - ПРИЕМНИК......................................203 Регенеративная схема ..............................................................................205 Как это работает .......................................................................................207 Короткие волны ........................................................................................208 Дополнительные источники ....................................................................211 Что дальше? ..............................................................................................212 ЭКСПЕРИМЕНТ 11 МЕТАЛЛОДЕТЕКТОР...................................................................213 Два генератора и смеситель ....................................................................215 Добавление сигнальной катушки ............................................................215 Поиск сигнала ...........................................................................................217 Как это работает .......................................................................................217 Измерение частоты генераторов ............................................................220 Датчик металла и магнитных материалов .............................................221 Устранение неполадок .............................................................................222 Расширение диапазона чувствительности .............................................222 Что дальше? ..............................................................................................223 ЭКСПЕРИМЕНТ 12 ПРИЕМНИК ПРЯМОГО ПРЕОБРАЗОВАНИЯ ........................225 Конструкция..............................................................................................227 Антенна .....................................................................................................227 Слушаем эфир ...........................................................................................228 Прием азбуки Морзе ................................................................................229 Контроль частоты .....................................................................................229 Прием аудиопередач ................................................................................229 Помехи от вещательных станций ............................................................230 Как это работает .......................................................................................230 Генератор ..............................................................................................230 Фильтр ...................................................................................................231 Смеситель .............................................................................................231 Прием кода Морзе ................................................................................233 Передача аудио с SSB-модуляцией .....................................................234 Эффективность .........................................................................................235 Дополнительные источники ...................................................................236 Что дальше? ..............................................................................................236 Оглавление 9
ЭКСПЕРИМЕНТ 13 ДАЛЬНЕЙШИЙ ПУТЬ .................................................................. 237 Любительское радио.................................................................................239 Лицензирование ...................................................................................239 Позывные .............................................................................................240 Протокол связи .....................................................................................240 QSL-карточки ........................................................................................241 Диапазоны частот.................................................................................242 Обзаводимся радиостанцией ..............................................................243 Программно-определяемая радиостанция ............................................243 Аппаратура ...........................................................................................244 Программное обеспечение ..................................................................244 Антенна .................................................................................................244 Испытательное оборудование .................................................................245 Физика и математика...............................................................................247 Беспроводная передача данных микроконтроллерами ........................247 Создание радиосхем.................................................................................248 ПРИЛОЖЕНИЕ А. ХАРАКТЕРИСТИКИ КОМПОНЕНТОВ ....................................252 Резисторы .............................................................................................252 Подстроечные резисторы ....................................................................253 Керамические конденсаторы ..............................................................253 Электролитические конденсаторы .....................................................254 Индуктивности .....................................................................................254 Ферритовый стержень..........................................................................254 Переменный конденсатор ...................................................................255 Клеммная колодка ................................................................................255 Полупроводники...................................................................................255 Интегральные схемы ............................................................................255 Ползунковый выключатель .................................................................256 Тактовая кнопка ...................................................................................256 Динамик ................................................................................................256 Макетная плата.....................................................................................256 Монтажный провод ..............................................................................256 Проводные перемычки ........................................................................257 Высокоимпедансные наушники..........................................................257 Микроконтроллер Raspberry PI Pico ....................................................257 ЖК-дисплей ..........................................................................................258 Модуль FM-приемника SI4703 .............................................................258 Модули дистанционного управления 433 МГц...................................258 Список радиокомпонентов..................................................................259 Список радиокомпонентов (продолжение) ........................................260 10 Оглавление
ПРИЛОЖЕНИЕ Б. ИСТОЧНИКИ КОМПОНЕНТОВ, ОБОРУДОВАНИЯ И ИНСТРУМЕНТОВ .....................................................................262 ПРИЛОЖЕНИЕ В. МАРКИРОВКА РЕЗИСТОРОВ И КОНДЕНСАТОРОВ ..........264 Резисторы..............................................................................................264 Конденсаторы .......................................................................................267 Индуктивности .....................................................................................268 ПРИЛОЖЕНИЕ Г. ЗНАКОМСТВО С ОСЦИЛЛОГРАФАМИ ..................................269 Разновидности осциллографов ...........................................................269 Настройка..............................................................................................271 Основные понятия ...............................................................................272 Терминология .......................................................................................274 Предметный указатель ..................................................................276
Предисловие от издательства Отзывы и пОжелания Мы всегда рады отзывам наших читателей. Расскажите нам, что вы думаете об этой книге – что понравилось или, может быть, не понравилось. Отзывы важны для нас, чтобы выпускать книги, которые будут для вас максимально полезны. Вы можете написать отзыв на нашем сайте www.dmkpress.com, зайдя на страницу книги и оставив комментарий в разделе «Отзывы и рецензии». Также можно послать письмо главному редактору по адресу dmkpress@gmail.com; при этом укажите название книги в теме письма. Если вы являетесь экспертом в какой-либо области и заинтересованы в написании новой книги, заполните форму на нашем сайте по адресу http://dmkpress.com/ authors/publish_book/ или напишите в издательство по адресу dmkpress@gmail.com. списОк ОпечатОк Хотя мы приняли все возможные меры для того, чтобы обеспечить высокое качество наших текстов, ошибки все равно случаются. Если вы найдете ошибку в одной из наших книг – возможно, ошибку в основном тексте или программном коде, – мы будем очень благодарны, если вы сообщите нам о ней. Сделав это, вы избавите других читателей от недопонимания и поможете нам улучшить последующие издания этой книги. Если вы найдете какие-либо ошибки в коде, пожалуйста, сообщите о них главному редактору по адресу dmkpress@gmail.com, и мы исправим это в следующих тиражах. нарушение автОрских прав Пиратство в интернете по-прежнему остается насущной проблемой. Издательство «ДМК Пресс» очень серьезно относится к вопросам защиты авторских прав и лицензирования. Если вы столкнетесь в интернете с незаконной публикацией какой-либо из наших книг, пожалуйста, пришлите нам ссылку на интернет-ресурс, чтобы мы могли применить санкции. Ссылку на подозрительные материалы можно прислать по адресу dmkpress@gmail.com. Мы высоко ценим любую помощь по защите наших авторов, благодаря которой мы можем предоставлять вам качественные материалы.
Благодарности Я благодарен всем, кто внес свой вклад в создание этой книги. Чарльз Платт, помимо рисования иллюстраций и написания предисловия, помог мне в структурировании книги и всему проекту в целом. Редактор София Смит с ее острым вниманием к деталям помогла сделать книгу последовательной и выверенной как по языку, так и по терминологии. Дизайнер Джулиан Браун разработала макет с четким и понятным дизайном и привлекательным внешним видом, что делает книгу гораздо более красивой работой, чем я мог себе представить, пока писал. Редактор Кевин Тояма руководил процессом производства книги и терпеливо помог довести книгу до финиша. Он с энтузиазмом предложил ценную помощь, поддерживал экспериментирование, сам тестировал некоторые схемы и поделился своим опытом. Я многому научился, работая со всеми вами, и вы превратили этот проект в книгу, превосходящую все мои ожидания. Андреа Клеттке, Бернардо Диас, Людовика Гварнери, Марк Ботэм, Томас Бауэр, Том Хукстра и Винсент Мондамер очень помогли с построением тестов и улучшением инструкций. Это было поучительно и очень весело – строить вместе и видеть, как проекты из этой книги воплощаются в жизнь. Наконец, я благодарен Йоханне Грёнквист за организацию тестовых мероприятий и за ее поддержку на протяжении всего проекта.
Об авторах Фредрик Янссон (Fredrik Jansson) любит возиться с электроникой и является лицензированным радиолюбителем. Он работает исследователем по физике облаков в университете Delft University of Technology и разрабатывает модели погоды, которые работают на суперкомпьютерах. Он получил докторскую степень по физике в университете Åbo Akademi в Финляндии, живет в Амстердаме. Чарльз Платт (Charles Platt) – пишущий редактор и постоянный обозреватель Make, журнала об электронике и инструментах. Платт был ведущим сотрудником журнала Wired, является автором различных компьютерных книг. Он увлекается электроникой с 15 лет, когда собрал телефонный автоответчик из магнитофона и списанных военных реле. Платт живет в дикой местности Северной Аризоны, где у него есть собственная мастерская по изготовлению прототипов и готовых устройств, о которых он пишет для журнала Make.
Предисловие от Чарльза Платта Т айна и магия радиО Радиоволны окружают нас повсюду и передают фантастическое разнообразие данных на тысячах различных частот. Всякий раз, когда некоторое электронное оборудование обменивается данными посредством электромагнитного излучения, мы видим пример использования радио.  Ваш мобильный телефон излучает радиосигнал, когда вы говорите в него.  Спасатели обмениваются радиосообщениями через рации.  Ethernet-маршрутизатор, использующий Wi-Fi для подключения к вашему компьютеру, представляет собой разновидность радиосвязи.  Bluetooth – это радиосвязь между такими устройствами, как телефон и беспроводные наушники.  Если в вашей машине есть небольшая пластиковая коробочка, которая открывает дверь гаража при нажатии кнопки, значит, в ней находится радиопередатчик.  Если в вашем доме есть телевизионная антенна, вы принимаете радиопередачи со спутника, который находится, вероятно, на расстоянии 22 000 миль.  Низкоорбитальные спутники связи, такие как сеть Starlink, взаимодействуют с наземными антеннами посредством радиоволн. Каким-то образом радиоволны передают энергию от передатчика к приемнику. Мы воспринимаем это как нечто само собой разумеющееся, но существует ощущение тайны в том, как информация путешествует по воздуху без необходимости переносить ее электронами. Эта книга поможет вам понять это явление на практике: вы будете создавать собственные передатчики и приемники, используя небольшое количество доступных компонентов. Вы узнаете, как звук добавляется к несущей волне, что FM-радио кодирует свои сигналы совершенно иначе, чем AM-радио, и как микроконтроллер можно использовать для радиопередачи с одновременным показом информации о принимаемых сигналах. Чтобы лучше понять современный мир радио, полезно представить, каким мир был без него. Предисловие от Чарльза Платта 15
Отправка информации В XIX веке единственным способом доставить рукописное сообщение на большое расстояние в Соединенных Штатах было написать письмо и отправить его через почтовую службу US Postal Service. Более того, поскольку автомобили еще не были изобретены, а железные дороги в Соединенных Штатах не были построены от побережья до побережья, письма, пересекавшие страну, часть расстояния перевозились на гужевых повозках или верхом на лошадях. Если вы жили в Нью-Йорке и хотели знать, что происходит с родственниками, переехавшими в Калифорнию, вам, возможно, пришлось бы подождать пару месяцев. В 1840-х годах были разработаны телеграфные системы, обычно с использованием одного провода, натянутого вдоль железной дороги, со стальными путями, замыкающими цепь. По проводу передавались электрические сигналы в коде Морзе – системе коротких и длинных импульсов, изобретенной Сэмюэлем Морзе. Телеграфист отправлял импульсы вручную, постукивая по рычагу, замыкавшему пару контактов. На приемном конце электромагнит тянул иглу, которая оставляла отпечатки на бумажной ленте. Затем оператор переписывал код на английском языке от руки, и стенограмма доставлялась в виде телеграммы посыльным, часто ехавшим на велосипеде. На рис. В.1 показаны мальчики-посыльные того периода. Первая трансконтинентальная телеграфная линия была построена в США в 1861 году. К этому времени был разработан печатающий телеграф, и телеграммы приобрели формат, который оставался неизменным на протяжении многих десятилетий. Текст печатался на узких бумажных лентах и наклеивался на бланк, как показано на рис. В.2. Хотя сейчас задача общения посредством телеграммы кажется нам примитивной и трудоемкой, она создала возможность быстро отправлять важные новости, что в то время казалось чудом. В 1880-е годы появилось еще более впечатляющее чудо: телефонная связь. Теперь вы действительно могли услышать чей-то голос на расстоянии – если расстояние не было слишком большим и вы слушали очень внимательно. Звуки были слабыми: усилители еще не были разработаны. Еще оставалось одно серьезное препятствие: мировые океаны. Телеграфные кабели были проложены через Атлантику, но они по-прежнему ограничивались азбукой Морзе и обслуживались стационарными станциями на суше (см. рис. В.3.) Для отправки сообщения с корабля на корабль или с берега на берег требовалось мигать сигнальной лампой, пока человек, получающий сообщение, наблюдал за ним в подзорную трубу. Максимальная дальность составляла всего около пяти миль, поскольку кривизна Земли уводила далекий корабль ниже линии горизонта. Если бы адмирал на суше захотел послать новые приказы капитану на море, он не смог бы этого сделать. 16 Предисловие от Чарльза Платта
Рис. В.1. Мальчики-посыльные Western Union до изобретения телефона Рис. В.2. Телеграмма Western Union (США), включая аннотации о попытках доставки. В сообщении предлагается поздравление с рождением четвертого сына. Несмотря на то что телеграмма была отправлена в 1959 году, формат был установлен почти столетием ранее Предисловие от Чарльза Платта 17
Рис. В.3. Подводные трансатлантические кабели, 1900 год Появление радио В 1895 году Гульельмо Маркони был студентом университета, изучавшим физику в Италии. Когда его наставник упомянул, что Генрих Герц доказал существование электромагнитного излучения, генерируя электрические искры и обнаруживая их в противоположной части комнаты, Маркони был поражен тем, что никто не пытался разработать концепцию связи, чтобы заработать на ней деньги. Он воображал, что электрическая связь по воздуху может быть столь же важной и прибыльной, как и передача сообщений по проводам. Он не был особенно одаренным ученым, но вырос в богатой семье, которая научила его тонкому пониманию роли денег. Он также был предприимчивым и настойчивым новатором и начал экспериментировать. Маркони быстро обнаружил, что более длинные антенные провода на передатчике и приемнике значительно расширяют их радиус действия. Он также обнаружил, что дальность действия увеличивается, если заземлить передатчик и приемник. Сообщения, которые он передавал, состояли лишь из небольших всплесков элект­ рического шума, но их было достаточно, чтобы использовать азбуку Морзе. Усилителей тогда еще не существовало, поэтому были необходимы наушники. В возрасте 22 лет Маркони проводил демонстрации в Лондоне, пытаясь привлечь интерес и финансирование со стороны военных. Год спустя ему удалось передать сигнал на расстояние четырех миль, используя антенны, переносимые на воздушных шарах. Его усилия получили известность, а известность привлекла инвестиционный капитал, который он использовал для усовершен18 Предисловие от Чарльза Платта
ствования своего оборудования. К 1900 году он смог послать сигнал между двумя кораблями, находившимися на расстоянии почти 60 миль друг от друга. Он проницательно добавил престижа своему предприятию, наняв на работу некоторых из самых выдающихся ученых мира, в том числе лорда Кельвина, знаменитого формулировкой основных законов термодинамики, и Джона Амб­роуза Флеминга, который позже изобрел первую термоэлектронную вакуумную лампу. Конечная цель Маркони заключалась в том, чтобы послать сигнал через Атлантический океан между юго-западной Англией и Массачусетсом. Это должна была быть самая впечатляющая демонстрация его концепции, и он рискнул опубликовать ее заранее. Были возведены огромные передающие башни, но они были разрушены сильным ветром. После других неудач, пока мир ждал, сможет ли Маркони оправдать свои предсказания, он установил более простые антенны для отправки заранее оговоренного сигнала на не столь большое расстояние, в Ньюфаундленд, где он установил приемную станцию. В течение двух назначенных дней он и его помощник часами слушали наушники, пытаясь уловить щелкающие звуки среди радиопомех. Дважды они утверждали, что слышали сигнал. Ученые были настроены скептически, потому что радиоволны, как и световые волны, должны блокироваться кривизной Земли. Однако инженер-электрик А. Э. Кеннелли и физик Оливер Хевисайд, работая независимо друг от друга, предположили, что ионизированный слой в атмосфере может отражать радиосигналы на поверхность планеты. Маркони понравилась их теория, поскольку она подтвердила его утверждения. Существование явления, ныне известного под названием слоя Хевисайда, было подтверждено лишь много лет спустя. Однако резонанс, вызванный трансатлантическим экспериментом Маркони, позволил ему собрать больше денег. Он запатентовал все ключевые концепции, и основанная им компания стала доминирующим международным производителем беспроводных станций. Первоначально его оборудование использовалось в основном для военных и морских сообщений, поскольку обычные люди не проявляли особого интереса к прослушиванию сигналов азбуки Морзе. Но блес­ тящий инженер-электрик по имени Эдвин Армстронг выдвинул идеи, которые улучшили качество радиоприема до такой степени, что можно было передавать и принимать речь и музыку, и тогда началась настоящая радиореволюция. Во-первых, Армстронг изобрел регенеративную схему, в которой использовалась положительная обратная связь через вакуумную лампу, что позволило людям слушать радио через громкоговоритель вместо наушников. Армстронг подал патент, описывающий эту концепцию, в 1913 году, затем ему пришла в голову идея схемы, которую он назвал супергетеродинной, имеющей лучшую избирательность и стабильность и создающую меньше шума. Он подал заявку на патент на это изобретение в 1919 году. Радиочастотный спектр был распределен на международном уровне в 1912 году, но любой энтузиаст мог установить передатчик, а некоторые люди использовали детекторные приемники для прослушивания радиоволн, просто чтобы посмотреть, что они смогут найти. Затем в 1934 году федеральное правительство США приняло закон о связи, который позволял компаниям передавать сигналы без риска создания помех друг другу. Предисловие от Чарльза Платта 19
Рис. В.4. Настольный радиоприемник с отделкой из натурального шпона ценных древесных пород, типичный для того времени Рис. В.5. В 1930-е годы такой приемник мог занимать центральное положение в гостиной 20 Предисловие от Чарльза Платта Это открыло новую эру вещания. Радио больше не ограничивалось связью между двумя точками; передачи передавались с радиостанции тысячам или даже миллионам слушателей, которые принимали их одновременно. Финансируемое рекламой в Соединенных Штатах (и государственными деньгами во многих других странах), радио принесло в наши гостиные музыку больших оркестров, выступления комиков, драмы, спортивные трансляции, политические речи и дикторов-комментаторов. Семьи с удовольствием собирались вокруг радио­ приемников, слушая далекие станции, транслирующие их любимые передачи. Ранние радиоприемники размещались в причудливых шкафах, что свидетельствует о важности волшебства, связанного с путешествующими по воздуху голосами и музыкой. Примеры показаны на рис. В.4 и В.5. Радио стало основным средством развлечения в Америке и конкурировало с газетами как источник информации. Оно сохраняло этот статус до тех пор, пока телевидение не произвело новую революцию, и эпоха, когда миллионы людей сидели и слушали комедии или драмы, постепенно подошла к концу. Прошли десятилетия, прежде чем радио было вновь адаптировано для небольших расстояний, например для разблокировки автомобиля при нажатии кнопки на пульте дистанционного управления или передачи музыки с телефона на пару наушников. Эта книга не только покажет вам, как принимать сигналы AM- и FM-станций, которые до сих пор транслируют музыку и голоса по всему миру, но также научит вас передавать собственные радиосигналы. Со временем вы сможете приобрести собственную лицензию на коротковолновый диапазон, если захотите. Я думаю, вы обнаружите, что это захватывающее путешествие.
Дополнительные источники  www.elon.edu/u/imagining/time-capsule/150-years/ back-1830-1860/.  www.historyofinformation.com/detail.php?entryid=580.  https://lemelson.mit.edu/resources/samuel-morse.  www.loc.gov/resource/g9101p.ct003867/ ?r=0.103,0.116,0.777,0.577,0.  История электроники в книге: Hans Camenzind «Much Ado About Almost Nothing» (Faraday Press, 2023).  http://museumsanfernandovalley.blogspot.com/2008/10/ butterfield-stage-onvalleys-el-camino.html.  www.smithsonianmag.com/smithsonian-institution/briefhistory-unitedstates-postal-service-180975627/.  www.telegraph-history.org/transcontinental-telegraph/.
ПРОЛОГ В детстве я разбирал радиоприемники и электронные устройства. Я находил печатные платы с прикрепленными к ним загадочными штучками или – если радио было очень старым – электронными лампами из стекла с крошечными металлическими конструкциями внутри. Я хотел узнать, как они работают, и построить свои собственные электронные схемы, и это заставило меня прочитать об электронике в книгах в местной библиотеке. Радио меня особенно увлекает, возможно, потому, что оно сочетает в себе абстрактную физику радиоволн (явления электромагнетизма) и практические занятия электроникой. Я понял, что, собрав правильную схему, я смогу генерировать или обнаруживать радиоволны, а это означало, что я смогу отправлять или получать сообщения на расстоянии. Однако на практике осуществить такое радиостроение оказалось непросто. В основном я находил книги по электронике для радиолюбителей, посвященные построению передатчиков и приемников: проблема в том, что для передачи на любительских частотах требуется лицензия. Часто в них также использовались компоненты, которые я не мог достать, потому что они были устаревшими или потому, что в местном магазине электроники их не было на складе. Сегодня компоненты стали гораздо доступнее, так как их можно заказать онлайн в самых разных магазинах. Моя цель в этой книге – представить эксперименты с радио, которые можно провести с помощью доступных компонентов и использовать без лицензии. Я старался сделать схемы простыми (иногда в ущерб функциям или производительности), полагая, что можно больше узнать, построив простую радиосхему, чем просто спланировав сложную. В конце концов я получил лицензию радиолюбителя, и этот аспект радио мне тоже очень понравился. В последней главе книги даются некоторые советы о том, как получить лицензию, а также о других способах продолжать заниматься радио в качестве хобби.
ВВЕДЕНИЕ прежде чем начать Цель этого введения – дать краткую ориентировку в отношении необходимых вам знаний и компонентов, которые вы будете использовать для практической работы на протяжении всей книги. Если вам нужна более подробная информация о компонентах, инструментах, расходных материалах и основных понятиях, вы можете найти ее в приложениях A, Б, В и Г. Я надеюсь, что вы уже знаете некоторые основы электроники, например следующие темы:  как размещать компоненты на макетной плате;  как изготовить перемычки для макета, обрезав соединительный провод и сняв изоляцию с концов;  для чего нужны резисторы;  как выглядит интегральная микросхема;  как использовать мультиметр для измерения напряжения, тока, сопротивления и (в идеале) емкости. Если вы незнакомы с этими концепциями, вы все равно сможете построить схемы из этой книги, следуя моим инструкциям. Но ваш опыт обучения будет более значимым, если вы поймете, что делаете, и для этой цели я рекомендую руководство начального уровня, такое как Make: Electronics Чарльза Платта1. прОцесс Обучения Мне нравится обучение через открытия. Это значит, что вместо того, чтобы я рассказывал вам, как все работает, вы проводите эксперименты и стараетесь делать собственные выводы. Практический опыт объединения компонентов и наблюдения за тем, что происходит, – лучший способ обучения, к тому же доставляющий массу удовольствия. Имея это в виду, я надеюсь, что вы построите схемы в этой книге, используя компоненты, перечисленные в приложении А. В приложении Б перечислены некоторые рекомендуемые источники этих компонентов. Если вы предпочитаете не ходить по магазинам, были разрабо1 Русский перевод: Платт Ч. Электроника для начинающих / пер. с англ. 2-е изд. СПб.: БХВ-Петербург, 2017. – Здесь и далее прим. перев. Введение 23
таны наборы специально для проектов, описанных в этой книге. Вы найдете их на сайте www.protechtrader.com. Все мои схемы можно собрать с помощью одной или двух беспаечных макетных плат. Однако если вы хотите сохранить схему для постоянного использования, вы можете выполнить паяные соединения. У меня здесь нет места, чтобы научить вас пайке, но если вы захотите попробовать, имеется множество руководств. Подготовка Проекты, описанные в этой книге, потребуют от вас наличия основательного рабочего места на верстаке или столе. Оборудование такого места будет включать в себя некоторые инструменты и расходные материалы, перечисленные ниже.  Беспаечная макетная плата.  Источник питания: батарея 9 В или адаптер переменного тока с выходом 9 В постоянного тока. (Для некоторых проектов можно использовать только батарею на 9 В или качественный настольный источник питания, поскольку адаптер переменного тока может создавать радиопомехи1.)  Сплошной соединительный провод 0,6 –0,7 мм (AWG22)2 красного, зеленого, желтого, а также синего или черного цвета.  Мультиметр.  Длинногубцы, кусачки и инструменты для зачистки проводов.  Набор миниатюрных отверток.  Различные перемычки. Их можно сделать самостоятельно или купить готовые. Принципиальные схемы, макеты и фотографии В этой книге вы найдете три типа иллюстраций. Фотографии показывают, как выглядят компоненты и как должна выглядеть готовая схема. Однако у них есть ограничения, поскольку вы не всегда можете видеть наименования компонентов, а некоторые из них будут частично скрыты другими. Вместо этого будут представлены графические изображения макетов с использованием символов, показанных на рис. 0.1. Обратите внимание: маленькие розовые точки на изображении компонентов указывают расположение контактов, скрытых под компонентом. 1 2 Для питания аналоговых генераторных и усилительных схем, в том числе и приведенных в этой книге, следует выбирать адаптер переменного тока с аналоговой стабилизацией (в названии не должно быть слова «импульсный», см. также разъяснения https://static.chipdip.ru/lib/417/DOC005417185.pdf). Альтернативой таким адаптерам являются качественные источники постоянного тока, относительно дорогие универсальные лабораторные (https://www.chipdip.ru/product0/8019895865) или бескорпусные для установки на плату (например, https://www.chipdip.ru/product/bpl30d). В дальнейшем сечение провода по американскому стандарту AWG, приводимое автором, указывается в скобках для справки. Диаметр в метрических единицах округ­ ленно соответствует наиболее близкой величине сечения согласно отечественным стандартам. 24 Введение
Резисторы (0,25 Вт) Перемычки на макетной плате Ползунковый переключатель Электролитические конденсаторы (синий минус – отрицательный вывод) Подстроечный резистор Керамические конденсаторы 74HC01 Зажимы «крокодил» Катушка с ферритовым сердечником Интегральная схема Тактовая кнопка Диоды (синий минус – отрицательный вывод, катод) Светодиод (красный плюс – положительный вывод, анод) Транзистор Рис. 0.1. Графические изображения компонентов, используемые в этой книге В графических изображениях макетов постарайтесь запомнить использование цвета перемычек:  красные провода подключены к положительному источнику питания;  синие провода подключены к отрицательному заземлению;  остальные провода зеленые или желтые. Когда я хочу объяснить, как работает схема, я использую принципиальные схемы с символами, примеры которых показаны на рис. 0.2. Также помните такие правила:  если проводник в схеме образует электрическое соединение с другим проводником, они всегда соединяются точкой;  если проводник пересекает другой проводник без точки, между ними нет связи. Введение 25
Нормально разомкнутые контакты (выключатель) Переключающие контакты Сдвоенный выключатель Нормально разомкнутая кнопка Нормально замкнутая кнопка Резистор Переменный или подстроечный резистор Неполярный конденсатор Электролитический конденсатор Переменный конденсатор Диод Светодиод (LED) Биполярный транзистор NPN Биполярный транзистор PNP Фототранзистор Антенна Заземление (общий провод) Катушка с ферритовым сердечником Положительный вывод источника питания Отрицательный вывод источника питания Источник переменного тока Динамик LM7805 Батарейка или аккумулятор Микрофон Стабилизатор питания Рис. 0.2. Основные обозначения компонентов на принципиальных схемах Если вы посмотрите принципиальные схемы в других книгах или в интернете, то обнаружите, что они обычно показывают положительный вывод источника питания вверху и отрицательный вывод (заземление1) внизу, тогда 1 В англоязычной литературе общий провод схемы принято называть «заземлением» (ground, сокращенно GND). Это не всегда верно для обычных электронных схем, в которых общий провод с настоящей электротехнической землей, как правило, не соединяется (более того, такое соединение в ряде случаев противопоказано). Однако как раз в радиотехнических схемах часто используется насто- 26 Введение
как вход схемы будет слева, а выход – справа. Это особенно актуально, когда речь идет о схемах радиоприемников. Я решил следовать этому соглашению, потому что оно почти универсально. Проблема в том, что если вы строите схему с использованием макетной платы в ее вертикальной ориентации, питание подается по бокам платы, а сигнал течет сверху вниз. Вы столкнетесь с непрос­ той умственной задачей, если посмотрите на принципиальную схему и попытаетесь преобразовать ее в макет. Учитывая это соображение, макеты в данной книге изображены горизонтально. Вы всегда можете повернуть книгу на 90 градусов, если макет в вертикальной ориентации вам более привычен. На рис. 0.3 показан стандартный тип макетной платы с 830 отверстиями1, которую я буду использовать в этой книге. Две пары длинных горизонтальных рядов отверстий с цветными полосками рядом с ними называются шинами, и мы постараемся использовать только верхнюю положительную (красную) шину и нижнюю отрицательную (синюю) шину, в соответствии с планом протекания обычного тока сверху вниз. Рис. 0.3. Такой тип макетной платы используется в этой книге Некоторые макетные платы имеют разрыв посередине каждой шины питания, поэтому вам придется перекрыть эти зазоры перемычками. Если вы хотите убедиться, что на вашей макетной плате именно целые шины, вы можете вставить кусок соединительного провода или перемычку на каждом конце шины, настроить мультиметр на «прозвонку» и убедиться, что шина не имеет разрывов от начала до конца. Если это не так, добавьте перемычки, чтобы перекрыть зазоры в шинах. 1 ящее заземление (см. разъяснения на стр. 56–57). В дальнейшем при переводе использовался термин «заземление» в случаях, когда подразумевается соединение с землей, и термин «общий провод» в остальных случаях, когда настоящее заземление необязательно или противопоказано. Общепринятое сокращение GND используется во всех случаях. В отечественных интернет-магазинах обычно указываются геометрические размеры: полноразмерная макетная плата, как на рисунке автора, имеет длину 175–180 мм, ширину 55–68 мм и около 800 контактных гнезд в 60+ столбцах. Предупреждение: не приобретайте макетные платы в дешевых магазинах или у неизвестных продавцов на Ali Express, качество контактов может оказаться неудовлетворительным. Введение 27
На рис. 0.4 показана конфигурация металлических проводников, спрятанных внутри макетной платы. Эти проводники соединяют контакты в отверстиях в каждом столбце и в каждой шине. Рис. 0.4. Проводники, спрятанные внутри макетной платы, соединяют компоненты, вставленные в отверстия На каждой схеме компоненты будут обозначаться такими сокращениями, как R1 и R2 (для резисторов) или C1 и C2 (для конденсаторов), чтобы мы могли легко обращаться к деталям. Обозначения для часто используемых компонентов следующие:  R: резистор;  P: переменный или подстроечный резистор;  C: конденсатор;  IC: интегральная микросхема;  Q: транзистор;  D: диод (в том числе светодиод);  L: катушка;  S: переключатель или кнопка;  LS: громкоговоритель (динамик). На макетных схемах я показываю фактические значения компонентов, чтобы помочь вам при самостоятельном построении схемы. Если что-то не работает Обычно схема будет работать только в том случае, если вы построите ее без каких-либо ошибок. К сожалению, все мы совершаем ошибки, поэтому если вы не будете действовать методично, шансы будут против вас. Я знаю, как это неприятно, когда компоненты просто стоят и ничего не делают, но если вы создадите схему, которая не работает, раздражение от этого на самом деле снизит вероятность того, что вы быстро найдете неисправность. Лучший способ обнаружить проблему – набраться терпения и систематически изучать каждую деталь. Вот перечисление наиболее вероятных проблем.  Вы допустили ошибку соединений. Это случается со всеми, в том числе и со мной. Ваши шансы увидеть ошибку повысятся, если вы отойдете от 28 Введение
рабочего стола на полчаса и сделаете что-нибудь еще, прежде чем вернуться и еще раз все проверить.  Возможно, вы перегрузили какой-либо компонент, например транзис­ тор или микросхему, и он больше не работает. Постарайтесь иметь запасные на всякий случай. Узнайте, как проверять транзисторы с помощью мультиметра.  Вероятно, вы вставили не тот компонент. Например, резистор сопротивлением 100 Ом легко спутать с резистором номиналом 1 кОм, поскольку только одна полоска имеет другой цвет. Вы можете сэкономить время, если сначала потратите немного времени на проверку каждого компонента с помощью мультиметра, прежде чем вставлять его в плату.  Может быть, между компонентом и металлическим зажимом внутри макетной платы плохой контакт. Попробуйте пошевелить незакрепленные компоненты, измерить напряжение и, при необходимости, переместить ключевые компоненты в другое место на плате.  Возможно, вы вставили компонент в ряд отверстий, смежный с правильным рядом. Это очень распространенная ошибка. Если вы в отчаянии, то можете написать мне по электронной почте с просьбой о помощи, но сначала попробуйте все остальное и наберитесь терпения, ожидая ответа. Иногда вы получаете ответ в тот же день, особенно если сообщаете о допущенной мной ошибке. В других случаях вам, возможно, придется подождать несколько дней. Помните следующие советы:  прикрепите фотографии любого неработающего проекта. Я должен иметь возможность видеть такие детали, как цвета полосок на резис­ торах;  четко определите, над каким проектом вы работали и о какой книге вы говорите. Укажите номер рисунка любой схемы или фотографии, которую вы использовали;  четко опишите проблему, в том же стиле, как если бы вы описывали врачу физический симптом и спрашивали о диагнозе. Отправьте сообщение на адрес fjansson@abo.fi и укажите «HELP» в строке темы. Сообщите об ошибке Независимо от того, сколько раз я перечитываю текст этой книги и проверяю иллюстрации, я пропускаю некоторые мелкие ошибки. Если вы найдете таковую, пожалуйста, сообщите об этом. Для этой цели вы можете использовать мой адрес электронной почты или перейти на страницу исправлений, поддерживаемую компанией O’Reilly and Associates, которая распространяет эту книгу. Преимущество отправки по электронной почте в том, что при необходимости мы можем обсудить проблему. Преимущество системы O’Reilly в том, что вы можете прочитать отчеты других людей и посмотреть, решена ли уже ваша проблема. Кроме того, после того как вы отправите отчет на веб-сайт O’Reilly, его смогут прочитать другие люди. Введение 29
Страница с исправлениями для этой книги на сайте O’Reilly находится по адресу: www.oreilly.com/catalog/ errata.csp?isbn=9781680456776. Общественное обсуждение Если у вас возникла какая-то проблема, вы можете пожаловаться на нее. Один из способов, которым люди жалуются, – это отзывы читателей в интернете. Естественно, я уважаю ваше право на самовыражение, но если вы чем-то раздражены, пожалуйста, сначала свяжитесь со мной, чтобы дать мне возможность разрешить вашу жалобу. Помните о силе, которой вы обладаете как читатель, и, пожалуйста, используйте ее справедливо. Один отрицательный отзыв может произвести больший эффект, чем вы думаете. Это может перевесить полдюжины положительных отзывов. Мои звездные рейтинги очень ценны для меня!
Эксперимент 1 ЭНЕРГИЯ ЧЕРЕЗ НИЧТО
Что вам понадобится • • • • • • • • • • • • • • • • • • • • • • 1 2 Разъем для батареи 9 В (1 шт.) или проводные зажимы типа «крокодил» для захвата клемм батареи (2 шт.). Батарея 9 В (1 шт.). Переключатель с контактами, расположенными на расстоянии 2,54 мм, для вставки в макетную плату (1 шт.). Микросхема 7555 (2 шт.). Колодка клеммная европейского типа с 12 парами клемм, расположенных на расстоянии 8 мм (1 шт.). Провод 0,6–0,7 мм (AWG22) для перемычек (красный, зеленый, желтый, синий или черный; по 25 см каждого цвета. Медь внутри изоляции должна быть сплошной, а не многожильной)1. Провод 0,6–0,7 мм (AWG22) для антенны и заземления (примерно 12 м, любого цвета; можно соединить более короткие отрезки, бывшие в употреблении). Провод диаметром 0,4 мм (AWG26) для катушки (около 1,2 м). Медь внутри изоляции должна быть сплошной, а не многожильной2. Ферритовый стержень диаметром 10 мм и длиной 160 мм (1 шт.). Допускается использование более длинного стержня. Немного более короткий стержень может работать, но будет менее эффективен. Конденсатор переменной емкости (КПЕ) 200 пФ типа 223P (1 шт.). Также может называться подстроечным конденсатором (см. рис. 1.19 далее). Следует добавить плас­ тиковое колесо настройки (рис. 1.20). Диод Шоттки BAT48 (1 шт., см. также описание на стр. 45). Резисторы: 100 Ом (1 шт.), 330 Ом (1 шт.), 2,2 кОм (2 шт.), 10 кОм (2 шт.). Подстроечный резистор 500 кОм (1 шт.). Конфигурации контактов подстроечников могут различаться и должны соответствовать вашему макету. Керамические конденсаторы: 10 пФ (1 шт.), 100 пФ (1 шт.), 10 нФ (3 шт.), 0,1 мкФ (1 шт.). Электролитический конденсатор 100 мкФ (1 шт.). Динамик диаметром 5–7 см (1 шт.) и сопротивлением 8 Ом. Высокоомные наушники (1 шт.). Вместо них подойдет пассивный пьезодинамик (1 шт.). Подробности см. в приложении А. Небольшой кусочек картона (см. стр. 42). Клейкая лента. Опционально: корпус для установки динамика (1 шт.). Опционально: деревянный брусок размером примерно 10×10×5 см (1 шт.) и винты с полукруглой головкой длиной 20 мм (2 шт.). Опционально: самый дешевый портативный транзисторный радиоприемник для проверки сигнала (1 шт.). Он должен принимать AM-передачи в средневолновом диапазоне. На дисплее настройки радио должны появиться буквы AM с цифрами с интервалом от 530 до чуть ниже 1700. Конечно, провод удобнее заменить на набор готовых перемычек «штырь-штырь» разной длины (см., например, https://www.chipdip.ru/product/bbj-65). Но автор совершенно правильно делает акцент на самостоятельном их изготовлении: так соединения можно провести по наикратчайшему пути, а радиочастотные схемы очень чувствительны к излишне длинным провисающим проводникам. Для намотки катушек выпускают специальные лакированные провода типа ПЭВ (ПЭВ-2 и др.), ассортимент диаметров которых намного больше, чем для обычных одножильных проводов в виниловой изоляции, среди них проще подобрать необходимый диаметр. См. также описание намотки катушки на стр. 42–43.
В озможно, вы думаете о радиопередатчике как о башне высотой 200 футов, стоящей где-то в поле, или о мощном военном устройстве на боевой машине. Но передатчик не обязательно должен быть большим, сложным или дорогим. Вы можете использовать всего лишь дюжину дешевых компонентов на кухонном столе, чтобы обеспечить радиопередачу. В этом первом эксперименте две микросхемы таймера 7555 будут создавать сигнал и несущую волну, которые являются двумя наиболее важными понятиями в радиосвязи. После того как вы подадите питание на схему, вы сможете настроиться на ее передачу, используя самый дешевый портативный AM-радиоприемник, или вы можете построить свой собственный крошечный приемник, для которого потребуется всего пять компонентов. Попутно мы разберемся в разнице между частотой и длиной волны, познакомимся с конденсатором переменной емкости, катушкой индуктивности и диодом, а также намотаем проволоку на ферритовый стержень для получения компактной и универсальной антенны. Пока мы не будем заниматься голосовыми передачами, но вы узнаете о фундаментальных идеях, которые составляют основу радио. все Об аудиО Понятия частоты и длины волны являются основополагающими в радиосвязи, поэтому я начну с быстрой демонстрации, чтобы развеять распространенные заблуждения. Помните, что на протяжении всей книги я буду показывать макетные платы горизонтально, поскольку на схемах ток обычно показывается текущим сверху вниз, а сигналы в схемах обычно показаны текущими слева направо. На рис. 1.1 представлен макет для проверки генератора звука, постро10 нФ енного на основе таймера 7555. Это 10 кОм очень распространенная схема, но мы 10 кОм будем использовать ее необычным +9 В способом. Компоненты размещены 500 кОм достаточно плотно, поэтому внимательно считайте отверстия в плате, 7555 10 нФ когда будете вставлять выводы. (Если 7555 100 мкФ вы задались вопросом, почему мы не используем положительную шину 100 в верхней части платы, позже увидите, что мы все-таки ее используем.) 0,1 мкФ На рис. 1.2 показана принципиальная схема генератора. Обратите внимание, что S1 работает как выключатель питания; ничего не произойдет, пока вы не сдвинете ползунок влево. К динамику Необходимость в выключателе станет очевидной позже, когда вы добавите схему приемника. Пока просто Рис. 1.1. Базовая схема генерации звуковых частот на макетной плате поверьте: выключатель необходим! Эксперимент 1. Энергия через ничто 33
S1 P1 R1A R2A 9VDC C1A C2 8 7 6 5 1 2 3 4 IC1 R3 C4 LS1 C3 Компоненты S1 Ползунковый выключатель R1A Времязадающий резистор, 10 кОм R2A Времязадающий резистор, 10 кОм R3 Ограничитель тока, 100 Ом Components C1A Времязадающий S1 Slide switch, SPDT конденсатор, 10 нФ R1A Timing resistor, 10K C2 Шунтирующий конденсатор, R2A Timing resistor, 10K 10 нФ R3 Current limiting, 100 ohms C3 Шунтирующий конденсатор, C1A Timing capacitor, 10nF 0,1 мкФ C2 Bypass capacitor, 10nF C4 Блокировка постоянной C3 Bypass capacitor, 0.1µF составляющей, 100 мкФ C4 DC blocking, 100µF IC1 Микросхема таймера 7555 IC1 7555 timer chip LS1 8-омный динамик LS1 8-ohm speaker, 2" minimum диаметром 5 см Рис. 1.2. Принципиальная схема макета по рис. 1.1 СОВЕТ: в приложении А содер- жится подробное описание компонентов, а в приложении Б – их источники. Проверьте приложение В, если вы не совсем знакомы с единицами сопротивления и емкости, а также с такими сокращениями, как кОм, мкФ, нФ и пФ. Углубление или точка Выемка 1 8 Плюс питания Триггер 2 7 Разряд Выход 3 6 Порог Сброс 4 5 Управление 555 or 7555 Минус питания (GND) Рис. 1.3. Названия выводов микросхемы таймера 555 или 7555 Микросхема 7555 (на схеме обозначена IC1) – это немного более новая версия старого таймера 555, который является наиболее широко используемым и самым долговечным чипом из когда-либо созданных. Исходный 555-й здесь не подходит, поскольку он генерирует шум на выходе и работает недостаточно быстро для расширений схемы, которые мы будем добавлять. Спецификации микросхем 7555 немного меняются от одного производителя к другому, но, насколько мне известно, все разновидности 7555 будут работать в схеме в этом эксперименте. На рис. 1.1 квадратный синий объект с белым кругом и крестом на нем представляет собой подстроечный резистор 500 кОм, то есть переменное сопротивление, которое вы можете регулировать, поворачивая крес­тообразный винт в верхней части так, чтобы его сопротивление изменялось от 0 Ом до 500 000 Ом. Резистор обозначен как P1 на рис. 1.2. Поскольку я буду называть некоторые выводы таймера 7555 по имени, я суммировал их названия на рис. 1.3. 34 Радио. Эксперименты с невидимыми волнами
Я также буду называть контакты номерами, поэтому помните: если смотреть на корпус сверху и полукруглая выемка на корпусе смотрит вверх, то выводы микросхем всегда нумеруются против часовой стрелки, начиная с верхнего левого угла. Как только вы подаете на схему напряжение 9 В постоянного тока и включаете ее, таймер начинает выдавать поток импульсов со своего выходного вывода. В схеме импульсы на пути к динамику проходят через резистор сопротивлением 100 Ом (для ограничения тока) и электролитический конденсатор емкостью 100 мкФ (блокирующий постоянную составляющую). Длительность каждого положительного импульса определяется тремя сопротивлениями: R1A, R2A и P1. Промежутки между импульсами определяются R2A и P1. Номинал конденсатора С1А также определяет длительность импульсов и промежутки между ними. Более высокое значение сопротивлений и/или бóльшая емкость будут генерировать более длинные импульсы и промежутки, поэтому резистор будет регулировать частоту импульсов. Если вы хотите знать, как рассчитать значения сопротивлений и конденсатора при использовании микросхемы 555 или 7555, введите следующий запрос в поисковую систему по вашему выбору: «555 timer калькулятор». Многие калькуляторы доступны в интернете, при этом расчеты для таймера 555 будут давать те же значения, что и при использовании таймера 7555. При вращении переменного резистора P1 вы должны услышать звуки, охватывающие бóльшую часть диапазона человеческого слуха. Почему вам нужно это сделать? Поскольку звук часто передается по радио, для тестирования вам понадобится его источник. Кроме того, знание того, как частота и длина волны характеризуют аудиосигнал, важно для понимания радиоволн. Между прочим, некоторые переменные резисторы не предназначены для использования с макетными платами. Короткие выводы таких разновидностей изогнуты, поэтому их может быть трудно вставить полностью, и резистор может выскочить из платы. Вы можете преодолеть этот недостаток, используя плоскогубцы для выпрямления или поворота выводов. Качество звука Когда вы слышите звук из открытого динамика, лежащего на рабочем столе, волны давления воздуха исходят как из задней, так и из передней части динамика. Волны спереди и сзади имеют тенденцию нейтрализовать друг друга, поэтому низкие частоты воспроизводятся не очень хорошо, а общая громкость динамика снижается. Вы можете радикально улучшить качество звука, установив динамик в корпус. Некоторые небольшие динамики продаются в коробках, специально предназначенных для этой цели. Например, динамик в корпусе, показанный на рис. 1.4, я нашел в хозяйственном магазине: он предназначен для Рис. 1.4. Небольшой динамик, упакованный в корпус 10×10 см Эксперимент 1. Энергия через ничто 35
Рис. 1.5. 3-дюймовый динамик, установленный в монтажной коробке Рис. 1.6. Более красивый корпус динамика Рис. 1.7. Шаблон для сверления отверстий в крышке корпуса использования с дверным звонком. Конечно, вы можете изготовить его самостоятельно. Поищите в интернете по запросу «корпус для динамика». Для нашего проекта вы можете купить самый дешевый корпус, достаточный по размерам для имеющегося динамика. Даже небольшая картонная коробка обеспечит заметное улучшение качества звука. Просверлите отверстия в крышке и закрепите динамик внутри с помощью клея или небольших гаек и болтов, как показано на рис. 1.5. Вам нужно будет прикрепить провода к клеммам динамика, и лучший способ сделать это – пайка, но вы можете прос­ то обернуть несколько витков провода вокруг клемм динамика и с помощью плоскогубцев плотно зажать провода в нужном положении. Также можно использовать зажимы типа «крокодил». Если вы предпочитаете что-то, что выглядит солиднее, вы можете немного потратиться на корпус, подобный тому, что показан на рис. 1.6. Схема отверстий диаметром 6 мм в крышке была создана с помощью программы рисования и распечатана на бумаге, как показано на рис. 1.7. Шаблон был закреп­лен на крышке, и с помощью шила отмечался центр каждого отверстия. Лучше всего сверлить отверстия в мягком пластике с помощью цент­ рового сверла, но если у вас есть только обычные спиральные сверла, сначала сделайте небольшие отверстия, а затем увеличьте их. Для этой цели можно использовать зенкер. Если вы начнете сразу с большого сверла, оно будет кромсать пластик и создавать неровные отверстия. Установка динамика в корпусе может показаться ненужным отвлечением от темы радио, но многие проекты в этой книге имеют аудиовыход, и он будет звучать намного лучше, если вы сразу поместите динамик в корпус. 36 Радио. Эксперименты с невидимыми волнами
Частота и длина волны Теперь немного займемся теорией по части аудиовыхода. Эта теория вам пока не нужна, но она понадобится позже. На рис. 1.8 показан фактический выходной сигнал таймера, отображаемый на экране осциллографа. Если вы сразу хотите узнать больше об осциллографах, обратитесь к приложению Г. Для построения и тестирования схем он необязателен, но будет чрезвычайно полезен, а некоторые осциллографы сейчас почти так же дешевы, как хорошие мультиметры. 10 8 6 4 volts 2 0 -2 -4 -6 -8 -10 0 1 2 3 4 5 milliseconds 6 7 8 9 10 Рис. 1.8. Прямоугольный сигнал на выходе таймера 7555, работающего в автоколебательном режиме Несмотря на то что выходные данные на рис. 1.8 состоят из прямых линий, они являются одной из форм волновых колебаний. В данном случае это колебание прямоугольной формы, но вы можете просмотреть подборку разных форм, например по адресу: http://robotosha.ru/electronics/electrical-waveforms.html. Вскоре мы будем обсуждать радиоволны, так что неплохо было бы ознакомиться с этой концепцией. Вертикальная шкала слева на рис. 1.8 показывает, что выходное напряжение 7555 колеблется почти точно от 0 В до 9 В, когда вы используете источник питания 9 В постоянного тока. Это напряжение будет несколько понижено, если к выходу микросхемы подключить нагрузку, скажем динамик. Осциллограмма, показанная на рис. 1.8, была получена без нагрузки. Период выходного сигнала – это измерение времени от начала одного импульса до начала следующего. Другими словами, период – это длительность импульса плюс длительность промежутка между ним и началом следующего импульса. В этом примере период измеряется в миллисекундах (мс). Миллисекунда равна 1/1000 секунды. Когда сигнал от 7555 проходит через динамик, конус (мембрана) динамика вибрирует и преобразует каждый импульс в волну давления в воздухе. МемЭксперимент 1. Энергия через ничто 37
брана в вашем ухе реагирует на эти импульсы, а ваш мозг интерпретирует этот раздражитель как звук. Частота сигнала – это количество импульсов в секунду. Частота измеряется в герцах, названных в честь пионера электротехники Густава Людвига Герца, и сокращается до Гц (пишется с заглавной буквы, поскольку относится к имени ученого). Частота 100 импульсов в секунду записывается как 100 Гц, 1000 импульсов в секунду составит 1 килогерц (сокращенно 1 кГц), а 1 000 000 импульсов в секунду равно 1 мегагерцу (1 МГц). Заглавная М означает «мега» («м» в нижнем регистре в метрической системе означает «милли», поэтому не путайте «М» и «м»). Человеческий слух может различать звуки в диапазоне от 20 Гц до максимум 20 кГц, хотя пожилым людям может быть трудно слышать звуки выше 10 кГц, а у людей, у которых слух поврежден в результате шума окружающей среды (или посещения рок-концертов), могут быть ограничения ниже 5 кГц. Звуковая волна, состоящая из чередующихся областей с высоким и низким давлениями, распространяется по воздуху со скоростью примерно 350 м/с на уровне моря (на больших высотах звук распространяется медленнее). Расстоя­ ние от начала области высокого давления до начала следующей области высокого давления называется длиной волны. Помните, что период – это мера времени, а длина волны – это мера расстояния. Если f – частота звука, измеряемая в герцах, p – период в секундах, w – длина волны в метрах, а s – скорость в метрах в секунду, то эти величины связаны друг с другом двумя простыми формулами: f = 1 / p, s = w * f. (В этой книге мы будем использовать символ «/» в качестве знака деления, а символ «*» – в качестве знака умножения.) По горизонтальной шкале внизу рис. 1.8 вы можете видеть, что период показанного звукового колебания составляет около 3,5 миллисекунды, или 0,0035 секунды. По первой из формул, приведенных выше, частота этого звука будет равна 1/0,0035 = 286 Гц (приблизительно). Если переписать вторую формулу как w = s / f, то вы можете подсчитать, что длина волны здесь будет равна 350/286, что составляет около 1,25 м. Несущая волна Теоретически вы можете отключить динамик от схемы и заменить его куском провода, который будет функционировать как передающая антенна. Схема будет излучать небольшое количество энергии, которую вы сможете уловить, используя другую схему с приемной антенной. На практике более высокие частоты могут передавать бóльшую мощность на бóльшие расстояния. В любом 38 Радио. Эксперименты с невидимыми волнами
случае, если бы все радиостанции мира передавали звуковые частоты, у нас не было бы возможности разделить их и слушать только один источник в данный момент времени. Ответ на обе эти проблемы состоит в том, чтобы добавить звуковую частоту к гораздо более высокой частоте, называемой несущей. Тогда каждая радиостанция сможет использовать разную несущую частоту, чтобы вы могли отфильтровать те, которые не хотите слышать. Если вы посмотрите на шкалу настройки AM на радиоприемнике, вы увидите цифры в диапазоне от 540 кГц до 1600 кГц, которые и являются несущими частотами. Чтобы добавить звуковую волну к несущей, все, что вам нужно сделать в этом эксперименте, – это подключить второй таймер 7555, работающий на более высокой частоте. Странный факт: 7555 может работать на частоте до 2 МГц (что соответствует 2000 кГц), поэтому он вполне способен передавать радиосигнал в средневолновом диапазоне волн, хотя обычно не используется для этой цели. Сначала удалите динамик из схемы, которую вы только что построили. Также можно удалить резистор R3 и конденсатор С4. Затем добавьте дополнительный таймер 7555, как показано на рис. 1.9 и 1.10. Компоненты, которые вы разместили на макете ранее, все еще существуют и будут необходимы, хотя сейчас они неактивны. Новые значения компонентов в этой схеме будут генерировать несущую частоту около 800 кГц. Дуга желтого провода на рис. 1.9, подключенная через резистор сопротивлением 330 Ом к выходу IC2, представляет собой петлю диаметром около 5 см, которая будет функционировать как передающая антенна. Резистор на 330 Ом предотвращает перегрузку IC2. 2,2 кОм +9 В 2,2 кОм 100 пФ 10 нФ 7555 Антенна 7555 330 Рис. 1.9. Добавление второго таймера, работающего на радиочастоте Вот как работает схема: вывод 4 таймера 7555 является выводом сброса, который выключает таймер, если напряжение на нем близко к нулю (подключен к отрицательному выводу питания), но позволяет таймеру работать, когда на него подается напряжение, близкое к положительному напряжению питания. ОбратиЭксперимент 1. Энергия через ничто 39
те внимание на горизонтальный желтый провод на рис. 1.9, который соединяет выход IC1 (выв. 3) со сбросом IC2 (выв. 4). Это означает, что выход IC1 включает и выключает IC2. Помните, что IC1 работает на звуковой частоте. IC2 не против быстрого включения и выключения, даже на частоте в несколько килогерц. R2B 9VDC R1B C1B 8 7 6 5 8 7 6 5 1 2 3 4 1 2 3 4 C5 R4 Антенна IC2 Дополнительные компоненты R1B Времязадающий резистор, 2,2 кОм R2B Времязадающий резистор, 2,2 кОм R4 Ограничитель тока, 330 Ом C1B Времязадающий конденсатор, 100 пФ C5 Шунтирующий конденсатор, 10 нФ IC2 Микросхема таймера 7555 Рис. 1.10. Принципиальная схема макета по рис. 1.9 Обратите внимание, что конденсатор C1B, который вы можете видеть на рис. 1.10, равен 100 пФ. (Это пикофарады (пФ), а не нанофарады (нФ)!. Будьте осторожны, чтобы не перепутать буквы «п» и «н»1.) При подаче питания на схему вы ничего не услышите, поскольку динамик отсутствует. Антенна просто транслирует сигнал, причем периодически. Я покажу вам далее, как сделать так, чтобы он был слышен. Пока ваша новая схема работает, IC2 генерирует несущую частоту около 800 кГц, которую включает и выключает IC1. На рис. 1.11 осциллограф подключен к выходу IC2, чтобы вы могли увидеть, как это происходит. (В действительности в каждом пакете будет до 1000 колебаний, а не дюжина или около того, как показано на рис. 1.11. Осциллограф понижает разрешение по периоду, чтобы вы могли видеть, что происходит.) 1 Особенно легко перепутать нанофарады с пикофарадами в русскоязычных сокращениях. В англоязычном (международном) написании «nF» и «pF» различаются лучше. 40 Радио. Эксперименты с невидимыми волнами
10 8 6 4 volts 2 0 -2 -4 -6 -8 -10 0 1 2 3 4 5 milliseconds 6 7 8 9 10 Рис. 1.11. Выход второго таймера. Осциллограф понизил разрешение по периоду, чтобы сделать колебания видимыми по отдельности Что делать, если у вас нет осциллографа? Как вы узнаете, что IC2 действительно что-то излучает? Если у вас есть портативное AM-радио, попробуйте медленно перестраивать его по всему диапазону, держа рядом с желтой полукруглой антенной на макетной плате. В какой-то момент вы должны услышать, как радио четко принимает звуковую частоту. Поздравляем! Вы только что продемонстрировали радиопередатчик. Но не интереснее ли было бы построить настоящий приемник самостоятельно? Это легко сделать. Местный прием Сегодня радиостанциями используются два основных типа передачи: частотно-модулированная (сокращенно FM) и амплитудно-модулированная (сокращенно AM). Самые ранние радиопередачи также были AM: это означает, что громкость звука, исходящего из радиоприемника, пропорциональна амплитуде (напряжению) принимаемого сигнала. Об FM-радио я расскажу позже в этой книге. Прямо сейчас мы соберем AMR1, свой первый AM-радиоприемник. Давным-давно этот тип радиоприемников назывался детекторным, поскольку в нем использовался полупроводниковый выпрямительный кристалл, называемый детектором, еще до того, как полупроводниковые диоды стали доступны в качестве компонентов1. 1 В англоязычных странах для детекторных приемников принято название «crystal radio» или «crystal set» (и то, и другое переводится как «кристаллический радиоприемник»), так как основная деталь такого устройства – кристалл полупроводника. Эксперимент 1. Энергия через ничто 41
Для его сборки вам понадобится всего пять компонентов: подходящая катушка, подходящий конденсатор, подходящий диод, подходящий резистор и подходящий наушник. Сначала вы соберете компоненты и используете их для настройки таймеров 7555, чтобы убедиться, что все работает правильно. Потом объясню, как все это работает. Катушка в AMR1 представляет собой отрезок провода, аккуратно обернутый вокруг ферритового стержня, показанного на рис. 1.12. Феррит – это вещество, которое усиливает магнитное поле, создаваемое катушкой с проводом. Для катушек в этой книге мы будем использовать провод 0,4 мм (AWG26) (не употребляйте обычный для нас AWG22!), так как мы хотим уложить витки провода близко друг к другу. Цвет изоляции не имеет значения, но убедитесь, что медь внутри изоляции цельная, а не многопроволочная. Вы можете использовать специальный обмоточный провод – медный провод с максимально тонкой изоляцией1. Это может увеличить эффективность катушки, поскольку она может быть очень плотно упакована, но требует дополнительных затрат на приобретение такого провода. Вам также будет сложнее подключать катушку, так как изоляцию придется соскабливать ножом или снимать мелкой наж­дачной бумагой. Вам нужно будет намотать катушку на втулку из тонкого картона, который может скользить вверх и вниз по стержню, чтобы вы могли регулировать эффективность катушки. Обертывание картона вокруг ферРис. 1.12. Ферритовый стержень диамет­ ритового стержня можно выполнить ром не менее 10 мм в четыре этапа: Рис. 1.13. Шаг 1 при создании катушки – изготовление картонной втулки для обертывания вокруг ферритового стержня 1 2  сначала отрежьте от картона2 кусок размером 7,5×4 см. Добавьте отрезок клейкой ленты вдоль одного из длинных краев. На рис. 1.13 мы использовали черную изоленту, но прозрачный скотч будет удерживать карту более прочно;  затем плотно оберните картонку вокруг любого тонкого стержня, например стержня отвертки, как показано на рис. 1.14, но не позволяйте ленте прилипать. Вы просто создаете виток на картоне; По поводу выбора провода для катушки см. сноску 2 на стр. 32. Для изготовления тонких картонных втулок очень хорошо подходит упаковка от чая или коробочки от лекарственных препаратов. 42 Радио. Эксперименты с невидимыми волнами
 теперь поместите ферритовый стержень внутрь картонного витка, как показано на рис. 1.15. Обтяните картон вокруг стержня, а затем дайте ему чуть-чуть ослабнуть, чтобы можно было свободно перемещать втулку. Закрепите виток липкой лентой, как показано на рис. 1.16. Используйте еще один кусок липкой ленты, чтобы закрепить обмоточный провод на одном конце втулки, оставив свободным конец длиной 15 см. Теперь оберните вокруг втулки 40 витков провода. Будет проще всего, если вы сможете зажать один конец стержня в тисках – но не слишком сильно, учитывая, что стержень хрупкий и может сломаться. Лучше всего использовать тиски с пластиковыми губками. В конце используйте еще один отрезок липкой ленты, чтобы закрепить катушку на втулке, также оставив на конце 15 см проволоки свободно свисать. Если вы сделаете это аккуратно, результат должен выглядеть примерно так, как показано на рис. 1.17. Далее вам понадобится конденсатор переменной емкости (КПЕ), также называемый просто переменным конденсатором. Если вы когда-нибудь видели большой старый AM-радиоприемник, в нем вы можете найти конденсатор переменной емкости, состоящий из жестких алюминиевых пластин, как показано на рис. 1.18. Один набор пластин зафиксирован, а другой вращается при повороте ручки настройки. Степень перекрытия между наборами плас­ тин может варьироваться от почти 0 % до почти 100 %. Конденсаторы старого образца такого типа до сих пор можно приобре- Рис. 1.14. Формование витка на картоне Рис. 1.15. Обер­ тывание картона вокруг ферритового стержня Рис. 1.16. Втулка обернута вокруг стержня с небольшим зазором, чтобы она могла сдвигаться вдоль стержня Рис. 1.17. Готовая катушка Эксперимент 1. Энергия через ничто 43
Рис. 1.18. Конденсатор переменной емкости классического типа Рис. 1.19. Меньший по размерам и менее дорогой переменный конденсатор, рекомендуемый для проектов в этой книге сти на барахолках1. Их иногда называют конденсаторами с воздушным зазором, поскольку пластины разделены воздухом. Они могут быть дорогими, и продавец может не знать, каков диапазон емкости. Тот тип КПЕ, который я предлагаю использовать, показан на рис. 1.19. Он гораздо дешевле и компактнее. Он содержит очень тонкие гибкие металлические пластины, разделенные тонкими пластиковыми пластинами и запечатанные внутри пластикового корпуса. Этот конкретный компонент доступен в нескольких источниках и фактически содержит два конденсатора на одном валу с максимальными значениями 140 пФ и 60 пФ. Его обозначение типа 223P; не заказывайте по ошибке 223F, так как последний имеет меньшую емкость2. Мы подключим внутренние конденсаторы параллельно, чтобы получить максимальную емкость 200 пФ. Колесико, установленное на валу, облегчит использование конденсатора. Если оно отсутствует в комплекте с конденсатором, колесико можно приобрести как отдельный аксессуар. Насадите его на вал, а затем закрепите винтом, как показано на рис. 1.20. (На остальных фотографиях здесь колесико не показано, потому что оно не позволяет увидеть подключения конденсатора.) На задней стороне конденсатора вы найдете четыре маленькие гайки, крепящие корпус, и два винтика. Каждый винтик соединен с крошечным полукруглым подстроечным конденсатором, видимым через прозрачную оболочку компонента. Вы можете 1 Рис. 1.20. Колесико позволяет легче настраивать конденсатор 2 44 Радио. Эксперименты с невидимыми волнами  России самое известное такое мес­ В то – сайт avito.ru. КПЕ 223P легкодоступен в отечественных интернет-магазинах.
увидеть их на рис. 1.21. Каждый подстроечник можно использовать для регулировки диапазона настройки. С помощью небольшой плоской отвертки установите их минимальное перекрытие, как на фотографии. Теперь вам понадобится диод, который пропускает ток в одном направлении и блокирует его в другом. В современной электронике обычно используются кремниевые диоды, но для них требуется минимум 0,7 В напряжения, чего прос­ тейший приемник AMR1 не может обеспечить, поскольку у него нет Рис. 1.21. Регулировки на нижней стороне усилителя и собственного источконденсатора ника питания. Вам понадобится диод Шоттки или германиевый диод, любой из которых будет работать при напряжении от 0,3 В1. Два примера показаны на рис. 1.22. (Имейте в виду, длина каждого из них составляет всего около 6 мм.) Хотя диоды сильно различаются по внешнему виду, один их конец всегРис. 1.22. Два типа диодов, каждый длиной да отмечен полосой, которая может около 6 мм быть светлой или темной, но всегда означает одно и то же. Это конец, из которого вытекает ток в обычно принятом направлении (от положительного к отрицательному полюсу). Другими словами, диод проводит, когда маркированный конец диода «более отрицателен», чем немаркированный конец. Низкое напряжение в AMR1 накладывает еще одно требование: вам нужны наушники с высоким импедансом. Наушники, которые люди используют с музыкальным плеером или телефоном, имеют низкий импеданс и здесь не подойдут. (Термин «импеданс» относится к изменяющемуся сопротивлению, которое компонент может оказывать переменному току.) Полное описание наушников приведено в списке покупок в приложении А. Вы можете использовать пассивный пьезопреобразователь (пьезоизлучатель), если у вас возникли трудности при поиске наушников с высоким сопротивлением. Схема приемника AMR1 показана на рис. 1.23. Я предлагаю не монтировать компоненты на макетную плату, поскольку мы хотим продемонстрировать, что этот радиоприемник работает без источника питания. Мы также хотим упростить использование переменного настроечного конденсатора, имеющего плоские контакты, не помещающиеся в макетную плату. Ответом на 1 Кроме указанного в списке на стр. 32 типа BAT48, подойдут диоды Шоттки BAT43, BAT46 и др. маломощные, а также отечественные германиевые диоды Д18/Д20. Эксперимент 1. Энергия через ничто 45
D1 L1 R1 C1 LS1 Компоненты LI Катушка, 40 витков на ферритовом стержне C1 Переменный конденсатор, 200 пФ D1 Диод Шоттки BAT48 или аналогичный R1 Резистор 10 кОм LS1 Высокоомный наушник Рис. 1.23. Схема детекторного приемника AMR1 Рис. 1.24. Эта клеммная колодка соединяет белый провод с черным проводом и желтый провод с красным Рис. 1.25. Чтобы разрезать клеммную колодку на сегменты, можно воспользоваться канцелярским ножом Рис. 1.26. Вам понадобятся эти сегменты клеммной колодки эти проблемы является клеммная колодка европейского типа, показанная на рис. 1.24. Нам нужно три пары клемм, каждая из которых оснащена парой винтов (по одному на клемму), которые можно затянуть небольшой отверткой. На фотографии в демонстрационных целях белый провод подключен через колодку к черному проводу, а желтый провод – к красному. Корпус изолирует каждую пару проводов от другой пары. Для наших проектов в итоге понадобится двенадцать пар соединений. К счастью, вы можете купить клеммную колодку большой длины, которую можно разрезать на нужные куски канцелярским ножом, как показано на рис. 1.25. Вам нужно будет разрезать блок на три части: одну с тремя парами клемм, одну с четырьмя и одну с пятью парами, как показано на рис. 1.26. В этом эксперименте вы будете использовать пятиконтактный сегмент, но сохраните остальные части для использования в следующих экспериментах. Клеммные колодки бывают разных стилей и размеров, но у той, которая вам нужна, клеммы расположены на расстоянии 8 мм, чтобы соответствовать расстоянию между контактами переменного конденсатора. (Расстояние между клеммами в блоке можно назвать номинальным шагом колодки.) На рис. 1.27 показано, как соединить катушку, переменный конденсатор, резистор 10 кОм, диод и наушники через блок с пятью парами клемм. Если вы сравните этот рисунок со схемой на рис. 1.23, то увидите, что провода были передвинуты, однако связи те же самые. Ваша цель – просунуть два или три провода в каждое отверстие блока и затянуть винты, чтобы скрепить все вместе. Это звучит до- 46 Радио. Эксперименты с невидимыми волнами
статочно просто, но, к сожалению, провода имеют обыкновение ослабевать, особенно если вы переносите AMR1 из одного места в другое1. Чтобы закрепить провода, вы можете скрутить их вместе, прежде чем вставлять в клеммное гнездо. Рассмотрим этот процесс шаг за шагом. Сначала разберемся с переменным конденсатором. К его клеммам необходимо добавить пару проводов по причинам, которые я объясню позже (см. рис. 1.28). Чтобы обеспечить действительно надежное соединение, прежде чем накручивать провода, сожмите контакты конденсатора плос­ когубцами. На рис. 1.29 показаны контакты, после того как они были отформованы. На рис. 1.30 показано, как конец соединительного провода обвит вокруг одного из контактов. На рис. 1.31 показаны остальные соединения. Назначение красного провода – соединить два конденсатора, находящихся внутри КПЕ. Назначение синего провода станет ясным далее. На рис. 1.32 показан конденсатор и его провода, установленные в клеммной колодке. Обратите внимание, что на рис. 1.27 синий провод соединяет клеммы A и C, а красный провод соединяет клеммы B и D. На рис. 1.32 показана фактическая сборка. Теперь о соединениях на другой стороне блока. Вы можете скрутить провода вместе, как показано на рис. 1.33, чтобы соединения были такими же, как на схеме рис. 1.27. 1 Винтовые зажимы клеммных колодок рассчитаны на подключение одного провода или нескольких проводов строго одинаковых сечений. Поэтому при подключении разнокалиберных проводников к одному клеммному гнезду следует их тщательно скручивать друг с другом, как указано далее. A B C D E Рис. 1.27. Подключение компонентов AMR1 Рис. 1.28. Подготовка к подключению переменного конденсатора Рис. 1.29. Сожмите контакты так, чтобы вокруг них можно было легко обмотать провод Эксперимент 1. Энергия через ничто 47
Рис. 1.30. Обматываем провод вокруг одного из контактов Рис. 1.31. Готов к установке в клеммную колодку Рис. 1.32. Установка на одной стороне клеммной колодки Рис. 1.33. Компоненты, подготовленные для установки на другой стороне клеммной колодки Черные провода идут к наушнику, зеленые – к созданной вами катушке, резистор – с номиналом 10 кОм (с коричневой, черной и оранжевой полосками). Диод должен иметь маркированный конец, обращенный вправо, но наушник, катушку и резистор можно подключить в любом направлении. Будьте осторожны, чтобы не закоротить провода, идущие к резистору, на провода под ним. Полная сборка показана на рис. 1.34. Клеммная колодка прикручена к деревянному бруску парой шурупов 2,5–3 мм – так со всем этим проще обращаться. Если в вашем местном хозяйственном магазине не найдется таких тонких шурупов, вы можете использовать двусторонний скотч или клей. Верхняя половина каждой клеммы A и B не используется, но после того, как вы проверите схему, у них появится свое назначение. Нижняя половина клеммы E также пуста, и она останется такой, потому что мы просто использовали ее верхнюю половину как удобный способ соединения трех проводов. Вернитесь к схеме передатчика и убедитесь, что на него подается питание. Это должно выглядеть так, как показано на рис. 1.35, на котором петля из желтого провода является передающей антенной. 48 Радио. Эксперименты с невидимыми волнами
Рис. 1.34. Полная схема приемника AMR1 Рис. 1.35. Макетная схема передатчика Вставьте наушник в ухо. Не пытайтесь подать питание на узел AMR1, потому что оно ему не нужно. Просто возьмите ферритовый стержень с обмоткой вокруг него и вставьте его в петлю из желтого провода на передатчике. Вращайте ось переменного конденсатора, и около середины его шкалы вы должны услышать звук, генерируемый микросхемой IC1. Вращая подстроечный резистор P1 на макете передатчика, убедитесь, что слышен весь диапазон звуковых частот. Вытащите ферритовый стержень с катушкой из петли антенны, и громкость звука уменьшится. Она также уменьшится, если вы сдвинете катушку от цент­ ра стержня. Эта простая демонстрация рассказывает кое-что очень важное: энергия действительно распространяется по воздуху. Выходной сигнал IC2 вашей макетной схемы составляет всего чуть более 200 милливатт (30 миллиампер при напряжении 7,5 В), но каким-то образом он выходит из антенны (проволочной петли) по воздуху и попадает в катушку на ферритовом стержне. Оттуда он проходит через диод в наушник, где вызывает вибрацию диафрагмы с достаточной энергией, чтобы вы могли его услышать. Вы можете поэкспериментировать, заменив конденсатор C1B емкостью 100 пФ на емкость 10 пФ в схеме передатчика (рис. 1.10). Это увеличит несущую частоту, и вы обнаружите, что переменный конденсатор вашего приемника теперь работает ближе к концу своего диапазона. (Портативное радио тоже придется перестроить.) Это важное открытие: переменный конденсатор настраивает приемную цепь так, чтобы она соответствовала несущей частоте передающей цепи. Следующим шагом будет модификация AMR1, чтобы он мог принимать передачи от радиопередатчиков, которые могут находиться на расстоянии многих километров. Однако прежде чем мы перейдем к этому шагу, необходимо объяснить пару особенностей работы схемы. Как это работает Во-первых, на схеме на рис. 1.23 имеется диод, обозначенный D1. Для чего он нужен? Вернитесь к рис. 1.11, на котором показан выходной сигнал IC2. Это сигнал, который поступает в проводную петлю, выступающую в роли передающей анЭксперимент 1. Энергия через ничто 49
тенны. Осциллограмма показывает, что выходное напряжение IC2 варьируется от 0 В до примерно 7,5 В постоянного тока. Теперь взгляните на рис. 1.36. Это картинка напряжений между двумя проводами на концах приемной катушки AMR1 (винты C и D в клеммной колодке, показанной на рис. 1.27). Каким-то образом катушка улавливает передачу и преобразует ее в напряжение, которое меняется от –0,35 В до +0,35 В. Почему напряжение теперь отображается как меняющееся между положительным и отрицательным значениями? 0.5 0.4 0.3 0.2 volts 0.1 0 -0.1 -0.2 -0.3 -0.4 -0.5 0 1 2 3 4 5 milliseconds 6 7 8 9 10 Рис. 1.36. Напряжение на катушке в приемнике AMR1 Потому что напряжение – относительная величина1, и от передатчика к приемнику передаются только его изменения. Поэтому сигнал с катушки в ферритовом стержне колеблется около 0 В. Что бы мы услышали, если бы в схеме не было диода? Ничего! Вы можете проверить это самостоятельно, закоротив диод куском провода между винтами D и E (рис. 1.27). Мембрана наушника не может вибрировать на несущей частоте радиоволны. Такие колебания слишком быстры – и даже если бы наушники могли их воспроизвести, они слишком быстры, чтобы ухо могло распознать их как звук. Причем колебания одинаковые в положительную и отрицательную стороны, а среднее значение равно нулю. Когда вы пропускаете выходной сигнал катушки через диод, он блокирует отрицательную половину каждого колебания, и через него проходит только положительная часть. Этот процесс, позволяющий току течь только в одном направлении, известен как выпрямление сигнала2. 1 2 Имеется в виду, что напряжение по определению является разностью потенциалов. На раннем этапе развития радиосвязи этот процесс назывался детектированием (по сути – выделение из спектра сигнала низкочастотной составляющей), диодный компонент схемы – соответственно детектором, потому все устройство носит название детекторного приемника. 50 Радио. Эксперименты с невидимыми волнами
Вы можете представить себе пачку крошечных, быстрых, положительных импульсов несущей частоты, толкающих диафрагму наушника в одном направлении. Затем наступает пауза (длительностью доли секунды), и диафрагма расслабляется. Это происходит от 200 до 3000 раз в секунду на звуковой частоте, установленной таймером IC1. Вы можете увидеть это на рис. 1.37, где осциллограмма сделана между проводами к наушникам (винты C и E на рис. 1.27). Наушники воспринимают пики каждого всплеска несущей частоты. Следующий вопрос: как переменный конденсатор согласовывает частоту работы приемника с частотой несущей волны? Объяснение включает в себя концепцию явления электрического резонанса. Комбинация катушки индуктивности и конденсатора будет резонировать на определенной частоте, и когда эта частота совпадает с частотой передатчика, принимаемый сигнал резко увеличивается по амплитуде. Простая аналогия может прояснить это. 1 0.8 0.6 0.4 volts 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 1 2 3 4 5 milliseconds 6 7 8 9 10 Рис. 1.37. Напряжение на наушнике в схеме AMR1 после прохождения сигнала через диод (детектор), блокирующий отрицательные колебания A B Рис. 1.38. Эксперимент по демонстрации резонанса Эксперимент 1. Энергия через ничто 51
Основы резонанса Вам не нужно электричество, чтобы увидеть пример резонанса. Пара гирь и несколько кусков веревки обеспечат демонстрацию. Гири могут быть сделаны из чего угодно; я предлагаю использовать пластиковые бутылки с водой, наполненные как минимум наполовину. Натяните веревку горизонтально между спинками двух стульев, как показано на рис. 1.38, и подвесьте бутылки за вертикальные веревки. Подтолкните одну из бутылок, чтобы она начала раскачиваться, и если другая бутылка будет висеть на веревке другой длины, она почти не отреагирует. Теперь отрегулируйте длины вертикальных веревок так, чтобы они были равны, и движение первой бутылки заставит вторую бутылку покачиваться синхронно. Вторая бутылка резонирует с первой. В электронике мы можем использовать катушку и конденсатор для создания резонансного контура, который будет колебаться с определенной частотой, как бутылка, подвешенная на веревке определенной длины. В схеме приемника, которую вы только что построили, значения катушки и конденсатора были подобраны так, чтобы резонировать с частотой выхода IC1 на макетной плате передатчика. Если поменять конденсатор С1В, заменив его емкостью 10 пФ, то несущая частота изменится, приемник больше не будет с ней резонировать, и вы ничего не услышите. Но как именно резонирует электронная схема? Катушки и конденсаторы Когда ток проходит через катушку, он создает магнитное поле вокруг катушки. Кажется, что магнитное поле возникает мгновенно, но на самом деле существует небольшая задержка, определяемая размером катушки и количеством витков провода. Во время этой задержки ток не будет проходить через катушку, поскольку электрическая энергия используется для создания магнитного поля. Конденсатор ведет себя противоположным образом. Первоначальный импульс тока проходит через конденсатор, прежде чем конденсатор создаст стабильный заряд на своих обкладках. Начальный импульс иногда называют током смещения. В результате:  катушка имеет тенденцию сначала блокировать ток, а затем пропускать его;  конденсатор сначала пропускает ток, а затем блокирует его. Что, если подключить катушку параллельно конденсатору, как показано на рис. 1.39? Именно так в AMR1 подключены переменный конденсатор и катушка с ферритовым стержнем внутри. Эту базовую схему называют резонансной LCцепью, или LC-контуром. В аббревиатуре LC буква C относится к емкости, а L относится к индуктивности (обозначается по первой букве фамилии физика Генриха Ленца, который первым начал понимать индуктивность в 1800-х годах1). 1 Один из основоположников электротехники Генрих Фридрих Эмиль Ленц (1804 – 1865) родился на востоке Германии (г. Дерпт, современный Тарту в Эстонии), но в возрасте 20 лет переехал в Санкт-Петербург, где до конца жизни работал на разных должностях в Санкт-Петербургском университете. В России принял имя Эмилий Христианович, под которым и известен в нашей стране (в частности, его сына физика Рудольфа Ленца, родившегося уже в России, звали Роберт Эмильевич). 52 Радио. Эксперименты с невидимыми волнами
В схеме, показанной на рис. 1.39, если вы очень-очень коротко нажмете и отпустите кнопочный выключатель, конденсатор будет заряжаться, пока катушка занята созданием магнитного поля. Затем катушка позволяет току течь, поэтому конденсатор разряжается через нее, но когда у конденсатора заканчивается энергия, магнитное поле в катушке Рис. 1.39. Электронная резонансная схема исчезает, что высвобождает элект­ рическое поле, и это перезаряжает конденсатор с противоположной полярностью. Таким образом, в цепи возникают колебания, при этом электрический ток и напряжение колеблются, как вода, плещущаяся из стороны в сторону в резервуаре. В конце концов, после того как вы отпустите кнопку, колебания исчезнут, поскольку цепь имеет некоторое сопротивление. На рис. 1.40 показано, что происходит, когда осциллограф подключен к катушке LC-цепи приемника AMR1 после приложения кратковременного скачка напряжения. 1 0.8 0.6 0.4 volts 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 1 2 3 4 5 microseconds 6 7 8 9 10 Рис. 1.40. Колебания в резонансном контуре Вы можете сравнить это с моделью, которую я описал ранее, в которой две гири висят на веревке одинаковой длины. Когда вы подталкиваете один груз, его движение передается другому. Но если вы не обеспечите непрерывное подталкивание, колебания гирь будут постепенно уменьшаться из-за сопротивления воздуха и других факторов. Но предположим, что вы могли бы многократно нажимать на кнопку по рис. 1.39 со сверхчеловеческой скоростью, синхронно с собственными колеЭксперимент 1. Энергия через ничто 53
баниями схемы. Вы можете продолжать подталкивать колебания, чтобы они продолжались. С другой стороны, если вы нажмете на переключатель несинхронно с колебаниями, вы им только помешаете, и они прекратятся. Расчет Вам интересно, как можно выбрать номиналы катушки и конденсатора, чтобы они резонировали на определенной частоте? Существует формула, позволяющая это рассчитать. В приведенной ниже формуле L используется для обозначения индуктивности, которая измеряется в генри и названа в честь Джозефа Генри, еще одного пионера электротехники. C представляет емкость в фарадах, а f – резонансную частоту в герцах. Термин sqrt означает «извлечь квадратный корень из функции, указанной в скобках». Число pi – это то же значение, которое используется для расчета длины окружности или площади круга: примерно 3,142. f = 1 / (2 * pi * sqrt(L * C)). Напоминаю, что на протяжении всей книги «*» используется в качестве знака умножения, чтобы не перепутать его с переменной x, а знак «/» означает деление. В любой формуле, содержащей круглые скобки, сначала выполняются вычисления внутри скобок. Если внутри другой пары также есть пара круг­ лых скобок, сначала выполняем вычисления внутри самой глубоко вложенной пары и последовательно двигаемся наружу. Так как в области радио используются высокие частоты, формула будет более практичной, если обе части умножить на 1 000 000. Теперь f – частота в МГц. В правой части, поскольку значения стоят в знаменателе дроби и под корнем, L теперь представляет собой индуктивность в мкГн (микрогенри), а C – емкость в мкФ (микрофарадах). Но как узнать, сколько витков провода нужно использовать и каким должен быть их диаметр, чтобы создать необходимую индуктивность для обеспечения нужной частоты? Для этого тоже есть формула, но она приблизительная. Она известна как приближение Уиллера и показана на рис. 1.41 (воспроизведено с сайта Make: Electronics). На этом рисунке также показаны некоторые примеры индуктивности с использованием различных витков провода на катушке определенного размера. Имейте в виду, что эти цифры применимы только в том случае, если катушка имеет открытый сердечник и намотана на немагнитный каркас. Как только вы вставите ферритовый стержень, индуктивность увеличится. Международный прием Теперь, когда вы убедились, что ваша маленькая схема AMR1 может принимать сигнал, генерируемый таймерами в тестовой схеме, пришло время настроиться на настоящие радиосигналы. Не так много людей сейчас слушают AM-радио, но станции все еще существуют и вещают. Единственная проблема в том, что приемник AMR1 недостаточно чувствителен, чтобы услышать их в своей нынешней форме. Мы должны это исправить. 54 Радио. Эксперименты с невидимыми волнами
30 R1 R2 25 10 5 0 20 = W W W Тысячи микрогенри 15 0. 5" 20 = 1" .5" = 1 = 2" W W R1 = 0.5" R2 = 1" 0 30 0 40 0 50 0 60 0 70 0 80 0 90 00 10 N = Number of turns of wire Из приближенной формулы Уиллера: Микрогенри = 0.8 * A * A * N * N , (6 * A) + (9 * W) + (10 * D) где A (средний радиус намотки) = R1 + R2 2 и D (разность радиусов) = R2 – R1 Рис. 1.41. Несколько примеров индуктивности при четырех различных длинах намотки и приблизительная формула. Все размеры указаны в дюймах Слово «антенна» сбивает с толку, поскольку антенна может либо передавать радиоволны, либо принимать их. Ранее в нашей тестовой схеме мы использовали передающую антенну, состоящую из одной петли провода. Теперь нам нужно подключить гораздо более длинный кусок провода к цепи приемника в качестве приемной антенны. Должен заранее предупредить, что с детекторным приемником AMR1 это не всегда работает, поскольку мы еще не добавили усилитель сигнала. Вам нужно находиться достаточно близко к AM-радиостанции, и у вас будет гораздо больше шансов поймать сигнал ночью, поскольку после захода Солнца AM-сигнал распространяется дальше. Однако когда это действительно работает, это может показаться чудом. (Если вам интересно, почему Солнце мешает радиоприему: потому, что оно подавляет наши передачи своим собственным электромагнитным излучением.) Эксперимент 1. Энергия через ничто 55
Наша приемная антенна должна быть как можно длиннее. Я думаю, что 10 м вполне подойдет, и с более толстой проволокой можно добиться лучших результатов, чем с более тонкой. Если у вас есть провод сечением 2–2,5 кв. мм (AWG14-13), который продается для использования в качестве сетевой проводки в вашем доме, это будет идеально, и его можно приобрести в любом хозяйственном магазине. Он может быть многожильный или цельный; оба подойдут. Если у вас есть только монтажный провод 0,6 мм в диаметре (AWG22), попробуйте его. Если у вас несколько коротких отрезков проволоки, вы можете зачистить концы и соединить их последовательно. Антенна не должна касаться каких-либо предметов, которые будут стремиться электрически соединить ее с землей. (Я говорю о реальном физическом заземлении – соединении с грунтом планеты Земля, а не о отрицательном «общем проводе» печатной платы1.) В идеале вам следует провести этот эксперимент где-нибудь на природе, что должно быть легко, поскольку AMR1 не требует питания. (Если вы живете в городе, сходите в парк.) Привяжите груз к веревке, а другой конец веревки привяжите к проводу, который вы будете использовать в качестве антенны. Бросьте груз на дерево и расположите антенну так, чтобы провод не касался дерева. (Для этого нужна веревка.) Нижний конец антенны следует подключить к приемнику AMR1 (см. далее). ВНИМАНИЕ: Никогда не вывешивайте антенну снаружи, если существует опасность грозы. Бенджамин Франклин выжил, запустив воздушного змея в грозовое облако. Ему повезло. Возможно, вам так не повезет. Поражение молнией чрезвычайно опасно для жизни. Если вы хотите провести эксперимент в помещении, то можете повесить антенный провод на куски веревки, прикрепленные к осветительным приборам или оконным шторам. Вам также понадобится заземляющий провод – и здесь я снова имею в виду настоящее заземление. В идеале, если вы находитесь на улице, подсоедините провод к металлической трубе, которую следует вбить в мягкую влажную землю. Или поищите любой большой металлический предмет, который соединяется с землей (забор из сетки рабицы подошел бы идеально, но не в том случае, если металл покрыт пластиком). Если вы находитесь в помещении, вы можете заземлить приемник, прикрепив провод к любому металлическому предмету, который имеет соединение, в конечном итоге с землей снаружи. Например, вы можете использовать стальную или медную водопроводную трубу (пластиковые водопроводные трубы, конечно, не подойдут). В качестве альтернативы вы можете прикрепить заземляющий провод к стальному корпусу такого прибора, как стиральная машина, который заземляется через электрическую систему вашего дома. Точно так же аудиоресивер высокого класса может быть в стальном корпусе и иметь клемму заземления сзади. Чтобы выполнить соединение с устройством, возможно, вам понадобится найти винт, крепящий стальной корпус к внутреннему шасси бытового при1 Подробнее см. сноску во введении на стр. 26. 56 Радио. Эксперименты с невидимыми волнами
бора. Вы можете ослабить этот винт и прикрепить под ним заземляющий провод. Или вы можете просверлить небольшое отверстие и вставить собственный винт (возможно, стоит посоветоваться с домашними, прежде чем начинать сверлить отверстия в бытовой технике.) Вероятно, вы думаете, что все электрические розетки в вашем доме заземлены. Действительно, это правда: именно для этого и предназначено маленькое круглое отверстие в розетке, хотя в странах за пределами США это может быть маленькое прямоугольное отверстие или открытый металлический контакт. Проблема в том, что в каждой розетке есть контакт под напряжением, размещенный очень близко к заземлению, и это потенциально смертельно. Я не хочу, чтобы вы рисковали, чтобы высокое напряжение пошло по проводу к наушникам и поджарило вам мозг. Несчастные случаи могут произойти, и поэтому давайте договоримся:1 Приемная антенна ВНИМАНИЕ: Никогда не заземляйте приемник через розетку1! A B C D E К земле Рис. 1.42. Добавление антенны и заземления к приемнику AM 1 Действительно, вместо разборки бытовой техники гораздо проще и надежнее выполнить заземление, просто подключившись к третьему «заземляющему» проводу в бытовой розетке. Однако в этом случае опасность даже не в близко расположенных шинах переменного тока, о которых говорит автор (конструкции розеток исключают их взаимное замыкание вполне надежно). Сложность – в необходимости точно знать, что заземляющие клеммы розеток вашего жилища действительно имеют соединение с общедомовой заземляющей шиной, т. к. во многих российских домах старой постройки, давно не подвергавшихся капремонту, это не так – третий провод попросту отсутствует. А при подключении к такому блоку розеток устройства с мощным импульсным источником питания (вроде стационарного компьютера-десктопа, но не только его) напряжение на этом проводе окажется неопределенно-плавающим около середины сетевого, т. е. опасным как минимум для электронных схем. Эта проб­лема существует не только для стран на территории бывшего СССР, потому безопаснее просто отказаться от розеток как источника заземления. Эксперимент 1. Энергия через ничто 57
Далее, предположим, у вас есть антенна и заземляющий провод, где их подсоединять к приемнику AMR1? Взгляните на рис. 1.42. Теперь вы можете понять, почему я оставил пустые гнезда, обозначенные A и B. Кроме того, вы понимаете, почему ранее использовался провод красного цвета: это источник питания всей схемы, получаемый из принимаемого вами радиосигнала. А синий провод соединяется с землей (с настоящей землей, с почвой планеты Земля). Схема на рис. 1.43 представляет эти изменения с помощью символа антенны (выглядящего как вывернутый наизнанку зонтик) и символа заземления (в нижней части схемы). Это не единственно возможные символы, используемые для обозначения антенны и земли, но они признаны во многих странах. Обратите внимание, что в некоторых странах, особенно в Великобритании, заземляющее соединение называется не «ground», как в США, а «earth», то есть «планетой Земля» в прямом смысле. Сравните рис. 1.43 с рис. 1.39. Ага! Теперь вы видите, что если радиосигнал имеет частоту, соответствующую LC-цепи, контур будет с ним резонировать. Тестирование… Если вы пытаетесь принимать радиостанции с помощью приемника AMR1 внутри своего дома, следующим шагом будет убедиться, что на него не влияют нежелательные электрические шумы. Выключите тестовую схему передатчика, построенную на основе таймеров 7555, и учтите, что некоторые приборы могут создавать помехи. Например, диммер для регулирования света лампы может внести в проводку вашего дома частоту, которую приемник AMR1 уловит как жужжащий звук. Люминесцентные лампы также создают помехи. Любое жужжание в наушниках, подключенных к радиоприемнику, вероятно, исходит от бытовой техники. Чтобы избавиться от жужжания, вам придется выключать устройства по очереди до тех пор, пока вы не перестанете его слышать. D1 L1 R1 C1 LS1 Компоненты LI Катушка, 40 витков на ферритовом стержне C1 Переменный конденсатор, 200 пФ D1 Диод Шоттки или германиевый R1 Резистор 10 кОм LS1 Высокоомный наушник Рис. 1.43. В схему AMR1 добавлены символы антенны и заземления 58 Радио. Эксперименты с невидимыми волнами
Теперь, вставив наушник в ухо, медленно проворачивайте переменный конденсатор по всему диапазону и помните, что ваши шансы услышать что-то будут намного выше после захода Солнца. Поскольку многие радиостанции AM транслируют устные программы, вы, скорее всего, услышите человеческий голос. Кто-то, вероятно, за много миль от вашего дома, говорит в микрофон в студии. Его голос усиливается на радиостанции и сливается с несущей радиоволной, суммарный сигнал поднимается на высокую стальную передающую вышку. Оттуда загадочный полевой эффект переносит энергию по воздуху, где она индуцирует в вашей антенне ток, достаточный для вибрации мембраны наушников, без необходимости использования дополнительного питания. Несколько слов о Тесле Легко представить, как Никола Тесла совершил интуитивный скачок и захотел запустить радиопередачу, чтобы она транслировала серьезную электрическую мощность. В его самой амбициозной установке в Колорадо-Спрингс использовалась катушка диаметром 100 футов (30 м), которая создавала потенциал до 12 млн вольт. Установка излучала достаточную мощность, чтобы засветить люминесцентную лампу, оснащенную антенной, на расстоянии 25 миль. Он также пугал лошадей, вызывая удары током в железных подковах на их копытах. Это было время (1890-е годы), когда некоторые аспекты электричества и физики не были до конца поняты и существовали конкурирующие теории, объясняющие их. К сожалению, Тесла возлагал надежды на теории, которые оказались ошибочными. Он считал, что пустое пространство на самом деле не пусто, а заполнено невидимой, загадочной субстанцией, известной как эфир. Он надеялся, что если он подключится к эфиру на нужной частоте, ему станет доступна бесконечная энергия. Это оказалось не так. Если бы он посвятил меньше времени и усилий своей мечте о бесконечной электроэнергии, возможно, он смог бы выиграть гонку по передаче радиосообщения через Атлантику. Маркони в итоге добился этого достижения, но у Теслы был более мощный передатчик, антенна большего размера и более совершенный приемник. Он просто не думал, что радиосообщения так же интересны, как бесплатное электричество1. 1 Возможно, отечественного читателя удивит, что автор уделяет столько внимания Николе Тесле, более известному у нас своими электротехническими открытиями и изобретениями, но почти не известному в контексте изобретения радио. Исторически сложилось так, что в разных регионах мира основными изобретателями радио считают разных ученых и инженеров: в Италии – Гульельмо Маркони, в Германии – Фердинада Брауна, в США – Николу Тесла, в Великобритании – сэра Оливера Лоджа, в России – Александра Попова. Истина заключается в том, что все названные ученые и изобретатели (наряду со многими другими вроде Оливера Хевисайда и Эдвина Армстронга, упомянутых в предисловии Платта, или итальянца Аугусто Ричи) внесли свой вклад в создание радиосвязи: Оливел Лодж заложил теоретические основы и разработал конструкцию приемника, Никола Тесла разработал основы применения антенн, Александр Попов усовершенствовал приемник Лоджа–Ричи, Маркони на этой основе создал коммерческую радиосвязь, а благодаря Фердинанду Брауну она приняла современные черты с разделением по час­ тотам с использованием резонансных контуров. Напомним, что лауреатами Нобелевской премии 1909 года по физике за изобретение радио стали Маркони и Браун, что, как не раз случалось в истории этой премии, следует считать не вполне справедливым. Эксперимент 1. Энергия через ничто 59
Почему я не использовал «бутылочную» версию Make: Electronics? Я не хочу раздражать вас, снова упомянув Make: Electronics Чарльза Платта, но, поскольку вы можете быть с этой книгой знакомы, мне придется объяснить, почему я не построил приемник AMR1 таким же образом, как проект детекторного радиоприемника в этой книге. В том проекте катушка была намотана вокруг пластиковой бутылки и ферритовый стержень не употреблялся. Более того, не было переменного конденсатора. Поскольку это кажется проще, почему я не использовал здесь этот способ? Причина в том, что ферритовый стержень в AMR1 в сочетании с переменным конденсатором дает гораздо более надежные результаты. Я проРис. 1.44. «Бутылочное радио» проще, чем тестировал способ с «бутылочным» AMR1, но работает не так хорошо радиоприемником, и звук AMR1 оказался громче и четче. Но как работает «бутылочное» радио без конденсатора? Ответ в том, что длинная антенна создает собственную емкость между собой и землей. Однако такая конструкция не регулируется, поэтому катушка радиоприемника «на бутылке» имеет отводы, состоящие из маленьких петель на проводе. Это позволяет вам переключаться между катушками, создавая примитивную систему настройки радио. Пример радиоприемника «на бутылке» показан на рис. 1.44. Я добавил Рис. 1.45. Схема «бутылочного» радиоприемника, представленного на рис. 1.44 его сюда, так как вы могли бы задаться вопросом, почему я не упомянул об этом. Соответствующая схема представлена на рис. 1.45. Отводы показаны на катушке в виде маленьких точек. Настройка AMR1 Поскольку AMR1 работает на пределе возможностей, вам, возможно, придется немного настроить его, чтобы он работал хорошо. 60 Радио. Эксперименты с невидимыми волнами
Антенна добавит емкости в зависимости от ее длины и ориентации. Это смес­тит чувствительность приемника в сторону более низких частот. Вы можете компенсировать это, уменьшив индуктивность катушки: просто сдвиньте катушку к одному концу ферритового стержня (или даже слегка за его пределы). Используя катушку, состоящую из 40 витков провода 0,4 мм (AWG26) на ферритовом стержне 16 см, и 10-метровую антенну, я обнаружил, что приемник чувствителен в следующих диапазонах: Диапазон частот (кГц) Позиция катушки 650–970 Посередине стержня 744–1100 На конце стержня 1200–1650 1/3 от края Частота AM-вещания в Америке варьируется от чуть выше 530 кГц до чуть ниже 1700 кГц1. Кстати, некоторые ранние радиоприемники настраивались путем перемещения ферритового сердечника внутри катушки. Вы также можете регулировать количество витков катушки, имея в виду, что при добавлении витков индуктивность увеличивается и снижает резонансную частоту. Вы можете попробовать разные диоды. В месте, которое находится относительно далеко от AM-передатчиков, диод Шоттки BAT48 и германиевый диод AA119 работают одинаково. Когда я использовал кремниевый диод 1N4148, ничего не было слышно, что неудивительно из-за его более высокого порогового напряжения. При использовании другого типа диода Шоттки, 1N5817, ничего не было слышно, поэтому очевидно, что не все диоды Шоттки взаимозаменяемы2. Если вы находитесь в городской местности, вы можете услышать несколько радиостанций, сигналы которых сливаются, поскольку приемник AMR1 не очень избирателен. Если вы живете в сельской местности, у вас могут вообще возникнуть трудности с улавливанием каких-либо сигналов, хотя вам следует попробовать двигать катушку вверх и вниз по ферритовому стержню, одновременно регулируя переменный конденсатор, и не забывайте слушать после захода Солнца3. 1 2 3 То, что автор здесь и далее называет диапазоном AM-вещания, соответствует части диапазона СВ (средних волн, 300 кГц – 3 МГц). У диода Шоттки 1N5817 намного (примерно в 40 раз) больше обратный ток утечки, чем у BAT48, потому он гораздо менее эффективен в качестве выпрямителя при малых токах. У германиевого диода AA119 ток утечки предельно мал (меньше даже, чем у многих кремниевых) и составляет единицы микроампер при малых напряжениях. Российские германиевые диоды Д18/Д20 имеют ток утечки больше, чем AA119, и больше, чем указанный диод Шоттки BAT48, но также должны работать в качестве детектора в подобных схемах. Круглосуточно вещающих АМ-станций в России в настоящее время нет (так как они требуют передатчиков мощностью во многие киловатты, которые в гражданских целях перестали выпускаться серийно), но можно попробовать поймать нерегулярные передачи, а в западных районах европейской части – зарубежные станции, особенно если в ночное время выехать за пределы городской черты. Вряд ли удастся что-либо поймать с помощью детекторного приемника AMR1, но с приемником прямого усиления AMR2 из следующей главы это уже гораздо вероятнее. Эксперимент 1. Энергия через ничто 61
Удивительно то, что AMR1 вообще воспроизводит какой-то звук, несмотря на отсутствие источника питания и наушники, которые полностью управляются радиоволнами. Поскольку детекторный приемник получает питание от радиоволны, означает ли это, что он фактически увеличивает нагрузку на передатчик на станции? Ответ – да, но в такой незначительной степени, что никто не заметит разницы. дОпОлнительные истОчники Вы можете попробовать использовать выходной трансформатор, чтобы согласовать выходной сигнал LC-контура с наушниками. Примером может служить Eagle P631M (ранее называвшийся LT-44). В интернете можно найти описания других радиосхем без питания, в том числе:  web.archive.org/web/20211217082237/makearadio.com/;  crystal-radio.eu/index.html;  hobbytech.com/crystalradio/crystalradio.htm;  www.usefulcomponents.com/main_contents/projects/choccy_block_crystal_radio/ choccy_block_crystal_radio.html. чтО дальше? Каково положение дел на данный момент и что будет дальше? Эта глава началась с демонстрации понятий частоты и длины волны с использованием простой схемы генератора для генерации звуковых частот и другого генератора для создания несущей волны. Вы узнали о ферритовых стержнях, катушках ручной работы, конденсаторах переменной емкости, диодах и о том, как объединить эти компоненты для создания базового детекторного приемника без питания под названием AMR1. Он продемонстрировал концепцию резонанса в электронике. Это все, что мы можем сделать с AMR1. Следующим шагом является создание приемника AMR2, который будет использовать энергию батареи и транзисторы для достижения трех целей: выхода на динамик, улучшения чувствительности к удаленным сигналам и лучшей избирательности при выборе одного из них.
Эксперимент 2 НАСТОЯЩЕЕ РАДИО
Что вам понадобится Сохраните компоненты, которые вы использовали в эксперименте 1. Вам все равно понадобится та же батарея, соединительные блоки, динамик, ферритовый стержень, переменный конденсатор и наушники, а также резисторы, конденсаторы и таймеры 7555 из предыдущего эксперимента. Приведенный ниже список дополняет компоненты эксперимента 1: 1 • Одножильный (около 5 м)1. провод диаметром 0,4 мм (AWG26), любого цвета • Обычный красный светодиод (1 шт.). • Биполярные NPN-транзисторы 2N3904 (3 шт.). • Микросхема усилителя LM386, производства Texas Instruments или National Semiconductor (1 шт.). • Подстроечный резистор, 10 кОм (1 шт.). • Резисторы: 22 Ом (1 шт.), 100 Ом (2 шт.), 2,2 К (2 шт.), 6,8 кОм (2 шт.), 10 кОм (2 шт.), 47 кОм (5 шт.). • Керамические конденсаторы: 4,7 нФ (1 шт.), 10 нФ (5 шт.), 47 нФ (1 шт.), 0,1 мкФ (3 шт.). • Электролитические конденсаторы: 10 мкФ (2 шт.), 100 мкФ (1 шт.), 470 мкФ (2 шт.). • Кусочек картона размером 6,5×4 см. • Прозрачная клейкая лента. Как указывалось в сноске 2 на стр. 32, провод для катушки лучше заменить на специальный обмоточный, хотя паять его сложнее (см. описание намотки на стр. 42–43).
В эксперименте 1 маленький приемник, который мы назвали AMR1, годился только для демонстрационных целей. Он обнаружил передатчик на вашем столе и мог принимать местные радиостанции, но не мог настроиться на передачи издалека. Чтобы сделать эти отдаленные сигналы слышимыми, вам понадобится более сложная схема, в которой сигнал претерпевает некоторое усиление. Самый простой способ добиться этого – использовать обычные биполярные транзис­ торы. Если вы не совсем знакомы с транзисторами, далее излагаются соответствующие понятия. Вы также узнаете, как две катушки на одном ферритовом стержне могут действовать как трансформатор. Затем, если вы хотите слышать звук через динамик, а не в наушниках, вам нужно еще немного усилить сигнал. Самый простой способ добиться этого – добавить простую интегральную микросхему звукового усилителя, известную как LM386. К концу этого эксперимента вы создадите приемник прямого усиления AMR2, «настоящее радио», способное принимать станции на расстоянии до 350 км. Что мы услышим? Чтобы узнать это, вам придется настроиться на диапазон волн AM. Радиоспектр полон сюрпризов! Рис. 2.1. Первый слой провода состоит из 31 витка, закрепленного лентой с обоих концов Рис. 2.2. Добавление второго слоя Рис. 2.3. Первая катушка готова Рис. 2.4. Вторая катушка наматывается непосредственно на ферритовый стержень, так как эта катушка не будет скользить Конструкция с двойной катушкой Конструкция приемника AMR2 устранит необходимость в антенном и заземляющем проводах. Тот же ферритовый стержень, который вы использовали ранее, теперь будет вашей антенной, а транзисторное усиление компенсирует его меньшую выходную мощность. Эксперимент 2. Настоящее радио 65
Вам понадобятся две отдельные катушки, которые будут взаимодействовать друг с другом. Чтобы понять, как это работает, вы можете выполнить быстрый и простой тест. Сначала удалите провод, который вы намотали на ферритовый стержень в предыдущем эксперименте. Теперь вам понадобится катушка большего размера, состоящая из 63 витков провода 0,4 мм (AWG26). Чтобы катушка не занимала слишком много места, мы намотаем ее в два слоя. Вы обнаружите, что на 63 витка должно быть достаточно 3 м провода, а при необходимости можно сделать катушку из двух отдельных отрезков, скрученных между собой зачищенными концами. Поскольку будет необходимо перемещать катушку по стержню, придется намотать ее на новой втулке из тонкого картона, аналогичной той, которую вы сделали раньше. На этот раз кусок картона должен иметь размеры 6,5×4 см, и его необходимо обмотать вокруг ферритового стержня так, чтобы длинный край картонки был параллелен стержню. Закрепите его липкой лентой, оставив зазор, чтобы катушка могла скользить по стержню, как и раньше. Отступите на 15 см от конца провода и используйте кусочек липкой ленты размером 1 см, чтобы прикрепить провод к картону. Теперь начните наматывать витки как можно аккуратнее. Когда вы намотаете 32 витка, закрепите провод еще одним кусочком ленты, чтобы витки не разматывались. Этот этап показан на рис. 2.1. Теперь продолжайте наматывать проволоку в том же направлении, но в новом слое поверх первого, возвращаясь к исходной точке, как показано на рис. 2.2. В завершение наклейте еще один кусочек ленты, как представлено на рис. 2.3. Второй слой должен содержать 31 виток провода. Для изготовления обещанной двойной катушки теперь понадобится вторая катушка, состоящая из 31 витка того же провода 0,4 мм. Она плотно наматывается на тот же стержень, что и первая катушка, но как можно ближе к противоположному концу, как показано на рис. 2.4. (Не имеет значения, направлены ли витки катушек в одном и том же направлении.) Вы не будете ее сдвигать, поэтому не потребуется втулка из картона. Если после намотки вы туго скрутите изолированные концы вместе, вам, скорее всего, даже не понадобится липкая лента, чтобы удерживать катушку на месте. Полутора метров провода будет достаточно, включая хвостик 15 см на каждом конце. Теперь вы можете использовать тестовую схему передатчика из предыдущего эксперимента, чтобы продемонстрировать, как одна катушка может взаи­ модействовать с другой. Взаимодействие лучше работает на высокой частоте, поэтому вам понадобится только IC2, а не IC1. Для ясности мы показали небольшую схему на рис. 2.5. Вы можете сравнить это с рис. 1.10, на котором показаны IC1 и IC2. Но IC1 не будет использоваться и должна быть отключена от IC2. Просто отсоедините желтый провод, который шел к выводу 4 IC2, как показано на рис. 2.6. Вы также должны удалить желтую антенну из эксперимента 1 (по крайней мере временно). Поскольку IC1 не будет использоваться и отключена от IC2, на рис. 2.5 и 2.6 показывается только измененная часть схемы. Более короткая катушка (31 виток) на ферритовом стержне вставлена на место желтой антенны, а более длинная (63 витка) катушка соединена только со светодиодом. 66 Радио. Эксперименты с невидимыми волнами
Компоненты +9 В R2B R1B C1B 8 7 6 C5 5 R1B Времязадающий резистор, 2,2 кОм R2B Времязадающий резистор, 2,2 кОм R4 Ограничитель тока, 330 Ом C1B C5 Времязадающий конденсатор, 100 пФ Шунтирующий конденсатор, 10 нФ IC2 Микросхема таймера 7555 L1 31 виток провода 0,4 мм L2 63 витка провода 0,4 мм D1 Обычный светодиод IC2 1 2 3 4 D1 R4 L1 L2 Рис. 2.5. Тестовая схема, демонстрирующая связь одной катушки с другой 2,2 кОм +9 В 2,2 кОм 100 пФ 10 нФ 7555 7555 330 Рис. 2.6. IC1 не связан с IC2 в этой схеме Эксперимент 2. Настоящее радио 67
2,2 кОм 2,2 кОм +9 В 100 пФ 10 нФ 7555 7555 330 Рис. 2.7. Ферритовый стержень переворачивается, поэтому катушки меняются местами в цепи Светодиод можно вставить в плату любым способом, поскольку он отрезает половину колебаний, как это делал детектирующий диод в эксперименте 1. Напряжение не будет достаточным, чтобы повредить светодиод, когда он блокирует обратный ток1. Если вы сдвинете 63-витковую катушку вверх и вниз по стержню, светодиод будет становиться ярче или тусклее в зависимости от взаимодействия второй катушки с первой катушкой. Одна катушка на стержне индуцирует напряжение и ток в другой катушке, при мощности, достаточной для свечения светодиода. Теперь отсоедините катушки, переверните ферритовый стержень и снова подключите катушки, как показано на рис. 2.7. Катушка с 63 витками сейчас подключена к выходу IC2, а катушка с 31 витком питает светодиод. И ничего не происходит! Первая конфигурация обеспечивала достаточное напряжение для светодиода, тогда как противоположная конфигурация не могла обеспечить минимальное напряжение, необходимое для свечения светодиода. К сожалению, проверить это мультиметром не получится, так как он не будет реагировать на столь высокочастотное напряжение, даже если вы настроите его на измерение переменного тока. Тем не менее светодиод покажет все, что вам нужно знать. 1 Обратите также внимание, что светодиод включен в катушку напрямую, без токо­ ограничивающего сопротивления. Это вызвано малостью выходного сигнала, неспособного обеспечить сколько-нибудь значительный ток, повреждающий светодиод. См. также разъяснение далее по тексту. 68 Радио. Эксперименты с невидимыми волнами
Расчет трансформатора Какую бы катушку вы ни подключили к выходу IC2, она в данном случае является первичной обмоткой, а катушка, управляющая светодиодом, – вторичной обмоткой. Мы будем использовать некоторые сокращения для написания формулы, к которой вы, возможно, захотите обратиться позже:  TP: количество витков провода в первичной обмотке;  TS: количество витков провода во вторичной обмотке;  VP: напряжение, приложенное к первичной обмотке;  VS: напряжение, измеренное во вторичной обмотке. А теперь формула: TP / TS = VP / VS. Другими словами, если количество витков первичной обмотки относительно вторичной составляет 1:2, как показано на рис. 2.6, соотношение напряжений будет таким же. Вдвое большее количество витков во вторичной обмотке должно вызвать вдвое большее напряжение. Означает ли это, что вы получаете что-то даром? Нет, потому что есть другая формула, объясняющая, как ведет себя ток.  IP: ток, проходящий через первичную обмотку;  IS: ток, потребляемый из вторичной обмотки. TP / TS = IS / IP. Другими словами, вы можете получить в два раза большее напряжение, но оно обеспечит вполовину меньший ток. Общая мощность, подаваемая на первичную катушку, такая же, как мощность, получаемая от вторичной катушки, поскольку мощность можно определить как напряжение, умноженное на ток. Хотя подождите минутку. В эксперименте, который вы только что провели, каждый импульс, подаваемый на первичную обмотку, будет иметь напряжение около 9 В, поскольку таймер имеет источник питания 9 В. Таким образом, если к выходу таймера подключена 31-витковая катушка, вторичная обмотка в 63 витка должна была выдавать 18 В. Почему он не испарился, наш светодиод? Потому что формула дает вам удвоенное напряжение только теоретически. В действительности эффективность преобразования намного ниже 100 %. Даже если вы использовали десятки или сотни витков плотно упакованного провода, вы не достигнете 100%-ной эффективности. Несколько десятков витков провода, возможно, эффективны всего на 5 %, но их достаточно, чтобы выявить следующую закономерность: соотношение витков первичной и вторичной обмоток 1:2 обеспечит достаточное напряжение для свечения светодиода. Соотношения 2:1 будет недостаточно. Трансформация энергии Когда у вас есть две катушки с общим сердечником и они повышают (или понижают) напряжение, они действуют как трансформатор. Эксперимент 2. Настоящее радио 69
Мир, каким мы его знаем, не мог бы существовать без трансформаторов. Электричество распределяется по магистральным линиям электропередачи напряжением 25 000 В или даже выше. Затем это напряжение понижается в несколько этапов до тех пор, пока напряжение, распределяемое по проводам на столбах в сельской местности, не достигнет нескольких тысяч вольт, после чего один оконечный трансформатор подает 220 В в жилой дом. Эта система используется потому, что она экономит деньги. Возможно, вы помните закон Ома. Если V представляет напряжение, измеренное в вольтах, i представляет ток в амперах, а R представляет сопротивление в омах: V = i * R. Возможно, вы также помните формулу мощности1. Если W представляет мощность в ваттах, V – напряжение в вольтах, а i – ток в амперах, то: W = i * V. В этой формуле мы можем вместо V подставить i*R из первой формулы: W = i * i * R. Если электроэнергия передается по проводу сопротивлением R, то мощность W, теряемая в проводе, пропорциональна квадрату силы тока. Эта мощность теряется в виде тепла. Очевидно, было бы неплохо передавать мощность с как можно меньшим током. Как можно это сделать? Очевидный способ – повысить напряжение. На этом закончим экскурс в теорию трансформаторов. Итак, зачем нам трансформатор в радиоприемнике? Потому что ток выходной катушки вашей антенны должен быть достаточно велик, чтобы удовлетворить требованиям транзисторов, которые мы собираемся использовать для усиления сигнала. Настройка AMR2 Вы можете оставить только что созданную первую катушку с 63 витками, но меньшая катушка с 31 витком для радиоприемника не подойдет. Размотайте ее и повторно используйте часть провода, чтобы оставить небольшую катушку всего из 7 витков возле одного конца стержня, как показано на рис. 2.8. Катушка из 63 витков должна по-прежнему иметь возможность перемещаться назад и вперед. (Напомним, что не имеет значения, направлены ли витки катушек в одном и том же направлении.) Маленькая катушка также может быть подвижной, если она не намотана слишком туго. Идея состоит в том, что вы можете перемещать большую катушку, чтобы установить диапазон настройки, а затем перемещать маленькую катушку, чтобы оптимизировать мощность сигнала. Для слабых сигналов перемещение маленькой катушки рядом с большой катушкой увеличивает мощность сигнала за счет избирательности; для сильных сигналов перемещение маленькой катушки в сторону увеличивает селективность за счет меньшего нарушения резонансного контура. 1 Так называемый закон Джоуля–Ленца. 70 Радио. Эксперименты с невидимыми волнами
Рис. 2.8. Катушка 31 виток заменена на катушку 7 витков При соотношении витков катушки 63:7 вы можете видеть, что если большая катушка используется в качестве антенны, а выход маленькой катушки поступает на транзисторный усилитель, такая схема увеличит ток в 9:1 раз, что необходимо для транзисторов в схеме. Схема приемника AMR2 показана на рис. 2.9. Тестовая схема передатчика, состоящая из двух таймеров, не показана на этой схеме, но она все равно должна быть на макетной плате, потому что вы скоро будете ее использовать. На рис. 2.9 показаны только новые дополнительные компоненты, поскольку они не связаны электрически со старыми компонентами. Компоновка макетной платы показана на рис. 2.10, тестовая схема передатчика выделена серым цветом. Другие компоненты Конденсаторы L1 7 витков провода 0,4 мм C5 100 пФ L2 63 витка провода 0,4 мм C6 0,1 пФ VC1 Переменный конденсатор, 200pF C7 10 нФ D1 Обычный светодиод (красный) C8 10 нФ Q1,2,3 Биполярный транзистор 2N3904 P2 Подстроечный резистор, 10 кОм LS1 Высокоомный наушник R4 Резисторы R7 R6 R9 D1 VC1 Cl1 10 нФ C12 0,1 пФ C13 10 мкФ R13 47 кОм C14 4,7 нФ R14 47 кОм R15 10 кОм R12 R10 P2 L1 L2 Q3 Q2 R8 R15 R13 R14 R11 C8 47 кОм 10 нФ C9 Q1 2,2 кОм R12 10 нФ C11 C7 R11 C9 C13 C6 100 10 кОм 47 кОм 6,8 кОм 2,2 кОм 47 кОм 6,8 кОм C10 R5 C5 R4 R5 R6 R7 R8 R9 R10 C10 LS1 C12 C14 Рис. 2.9. Схема приемника прямого усиления AMR2 Эксперимент 2. Настоящее радио 71
100 мкФ 100 10 кОм 0,1 мкФ 10 нФ 10 кОм 2N3904 47 кОм 2N3904 10 нФ 2,2 кОм 2N3904 10 нФ 47 кОм 10 нФ 10 нФ 2,2 кОм 6,8 кОм 10 мкФ 4,7 нФ 47 кОм 6,8 кОм 7555 47 кОм 7555 0,1 мкФ 47 кОм +9 В К подстроечному конденсатору Рис. 2.10. Тестовая схема передатчика не связана с радиосхемой приемника, поскольку ее улавливает 63-витковая катушка на ферритовом стержне Обратите внимание, что антенна была возвращена туда, где она была на рис. 1.9, вместе с перемычкой между контактом 3 IC1 и контактом 4 IC2. Теперь два таймера 7555 готовы передать тестовый сигнал из контура на ферритовый стержень, который будет работать как приемная антенна. Сейчас вы можете понять, почему раньше мы не использовали положительную шину на макетной плате. Мы сохраняли ее для AMR2. (Я предполагаю, что ваш макет имеет положительные и отрицательные шины, идущие от конца до конца платы без разрыва посередине. Если соединение в шинах не распространяется из конца в конец, вам нужно будет добавить перемычки посередине.) Обратите внимание на резистор сопротивлением 100 Ом вверху слева, обозначенный R4 на рис. 2.9. Он обеспечивает подачу питания через шину к новым компонентам в середине платы. R4 работает вместе с конденсатором C5, обеспечивая фильтрованное питание для транзисторов и предотвращая возникновение колебаний. В схеме усилителя колебания могут возникать, если выходной сигнал может влиять на входной, даже через источник питания. Не забывайте про резистор R4! Поскольку 63-витковая катушка (обозначенная как L2) теперь используется в качестве антенны, она подключается параллельно переменному конденсатору емкостью 200 пФ (обозначенному как VC1) для регулировки резонанса схемы при поиске радиостанций. L2 не подключена к макетной плате; она просто увеличивает ток через L1, которая через небольшой разделительный конденсатор подключается к первому транзистору Q1, начинающему процесс усиления радиосигналов. L2 подключается к переменному конденсатору, как показано на рис. 2.11 на следующей странице. Я предполагаю, что вы отсоединили переменный конденсатор от его предыдущей роли в эксперименте 1. Теперь вы можете подключить его через трехконтактную клеммную колодку, как это было сделано ранее. 72 Радио. Эксперименты с невидимыми волнами
Вы можете зафиксироваить ферритовый стержень, переменный конденсатор и макетную плату на куске пластика или фанеры, чтобы надежно закрепить их. В противном случае, если стержень и конденсатор будут болтаться, они, скорее всего, выдернут провода из макетной платы. На рис. 2.12 в левом нижнем углу добавлен дополнительный блок, состоящий из четырех пар клемм, для подключения источника питания и выхода на наушники. К усилительной схеме на макетной плате 63 витка провода 0,4 мм 7 витков провода 0,4 мм Рис. 2.11. Вам необходимо добавить конденсатор для регулировки резонанса катушки Рис. 2.12. Готовый проект с компонентами, для удобства закреп­ленными на прямоугольнике из пластика Эксперимент 2. Настоящее радио 73
Тестирование приемника АМР2 Не ждите, что AMR2 будет питаться от обычного адаптера переменного тока. Если вы попытаетесь, вы, скорее всего, услышите визг или гудение, поскольку адаптеры, как правило, имеют шумный выходной сигнал, который будет улавливаться ферритовой антенной и усиливаться транзисторами в этой схеме. При тестировании AMR2 всегда начинайте с батареи напряжением 9 В. К счастью, радио не потребляет много энергии; оно должно непрерывно работать пару дней от одной батареи. Подайте напряжение батареи на конец платы, как показано на рис. 2.10. Поверните подстроечный резистор P2, показанный на рис. 2.9, до упора против часовой стрелки. Теперь используйте ползунковый выключатель на левом конце платы, чтобы включить два таймера 7555. Убедитесь, что выход IC1 (контакт 3) подключен к контакту сброса IC2 (контакт 4), а выход IC2 (контакт 3) подключен к проводной антенне. Вставьте наушник в ухо и вращайте P2 по часовой стрелке. Это ваш регулятор громкости. Вы должны услышать тестовый сигнал, который улавливается большой катушкой L2. С помощью резистора P1 вы должны воспроизвести полный диапазон тестовых аудиочастот. Поворачивая переменный конденсатор (обозначенный как C15), вы должны четко услышать тестовый сигнал в тот момент, когда приемник настроен на ту же частоту, что и IC2. Если все работает так, как должно, отключите тестовую схему передатчика, которая вам больше не понадобится. Вы можете увеличить громкость до максимума и начать поиск радиостанций. В дневное время их может быть не так много. Примерно через час после захода Солнца все начинает меняться. Если вы будете медленно поворачивать переменный конденсатор, вы, скорее всего, поймаете как минимум две или три станции1. Имейте в виду, что ферритовый стержень работает направленно. Для достижения наилучших результатов стержень должен находиться под углом 90 градусов к направлению, откуда к вам доходит радиопередача. Через три-четыре часа после захода Солнца уровень радиоприема достигнет максимума. Вы можете обнаружить, что некоторые станции начинают медленно появляться и исчезать. Это связано с тем, что удаленный сигнал может приходить к вам по нескольким путям, поскольку он отражается от верхнего уровня атмосферы, известного как слой Хевисайда (см. стр. 19). Если один путь немного длиннее другого, фазы передачи могут меняться, мешая друг другу. Затем условия в атмосфере немного меняются, и эффект пропадает, позволяя звуку радиостанции вернуться. Это часть опыта прослушивания AM, поскольку сигналы от удаленных источников с трудом достигают вашей антенны. Возможно, это кажется недостатком по сравнению с FM, но FM-передачи имеют гораздо меньший радиус действия – всего от 40 до 60 км. AM может достичь вас с расстояния, раз в десять большего, в зависимости от мощности передатчика. Хороший AM-приемник с подходящей антенной может принимать радиостанции среднего диапазона волн на расстоянии в тысячи километров. 1 Замечания по поводу отечественного АМ-вещания см. сноску 3 на стр. 61. 74 Радио. Эксперименты с невидимыми волнами
Если что-то не работает… Во-первых, подождите, пока стемнеет. В удаленном месте вы можете вообще не слышать радиостанций в светлое время суток (именно поэтому мы включали тестовую схему передатчика, чтобы убедиться, что наше радио работает). Во-вторых, не забудьте отключить источники помех вокруг себя. Теперь, когда вы усиливаете радиосигналы, помехи тоже будут усиливаться вместе с ними. Фактически они могут заглушить радиосигналы. Даже при выключенной светодиодной настольной лампе трансформатор-выпрямитель, питающий ее, все равно может генерировать шипение или гудение. Возможно, вам придется полностью отключить все устройства такого типа, если они близко расположены к приемнику AMR2. Люминесцентные лампы также являются источником радиошума: например, кольцевые лампы с увеличительным стеклом в центре, популярные среди людей, собирающих небольшие детали на верстаке. Декоративные электролюминесцентные светильники также могут создавать помехи. В-третьих, если сигнал в наушниках недостаточно громкий, удалите резис­ тор R15 и замените его перемычкой. При поиске радиостанций начните с положения катушки L2 максимально близко к L1 на ферритовом стержне, точно так же, как когда вы использовали две катушки для подсветки светодиода. Эта более сильная связь обеспечивает более сильный сигнал для радио. К сожалению, более сильная связь делает резонансный контур менее избирательным, поэтому может оказаться, что некоторые станции перекрываются. В общем, вам нужна самая слабая связь, обеспечивающая достаточную мощность сигнала, чтобы сохранить как можно более высокую селективность. Если вы переместите катушку L2, вам, возможно, придется перенастроить переменный конденсатор VC1 для компенсации. Что, если вы вообще ничего не слышите, даже сигнал от тестового генератора? Вероятно, вы допустили ошибку в монтаже, но вам также следует поискать плохие соединения между перемычками и металлическими зажимами внутри макетной платы. (Печально, но поскольку с годами цены на макетные платы упали, их качество, похоже, ухудшилось.) Настройте свой мультиметр на измерение напряжения постоянного тока и подключите черный провод к отрицательному заземлению на макетной плате (при необходимости используйте тестовые провода типа «крокодил»). Затем проверьте напряжения на выводах транзисторов. На рис. 2.13 показаны значения напряжений постоянного тока, которые я обнаружил при использовании источника питания с напряжением 8,92 В. Если ваши значения значительно отличаются, возможно, вы допустили ошибку в проводке или подставили резистор с неправильным сопротивлением. Вы также можете проверить транзисторы с помощью мультиметра, запомнив, что обозначение К (или латинское C) обозначает коллектор, Б (латинское B) – базу, а Э (латинское E) – эмиттер. На рис. 2.14 показаны выводы транзистора 2N3904, а на рис. 2.15 представлено подключение к мультиметру тестируемого транзистора. Это может сбить с толку, так как вам, возможно, придется повернуть транзистор, чтобы правильно подключить выводы. Эксперимент 2. Настоящее радио 75
5,83 В 1,55 В 1,55 В 5,83 В 0, 93 В 0,93 В 4,29 В 8,73 В 3,70 В Рис. 2.13. Это приблизительные значения напряжений по постоянному току (относительно отрицательного общего провода), которые вы должны получить, если не допустили ошибок при подключении C Коллектор (C) База (В) Эмиттер (E) В E Рис. 2.14. Названия выводов транзистора 2N3904 Не забудьте настроить мультиметр на проверку транзистора типа NPN (не PNP!). Если вы вставите выводы в правильные отверстия, на дисплее вы увидите значение около 200. Это коэффициент усиления транзистора, также известный как его коэффициент «бета»1. Если ваш Рис. 2.15. Проверка 2N3904 с помощью измеритель подает звуковой сигмультиметра нал или вы получаете сообщение об ошибке, или значение ниже 1002, значит, либо вы неправильно вставили транзистор, либо он каким-то образом поврежден. Обратите внимание, что светодиод в этой схеме – это не просто индикатор питания. Вместе с R5 и C6 его основная функция – обеспечение постоянного напряжения около 1,6 В для питания базовых цепей усилительных транзисто1 2 Коэффициент усиления транзистора («бета»), также обозначается следующим сложным образом: h21e. Это справедливо для современных транзисторов малой мощности, подобных 2N3904. Обычные транзисторы средней и большой мощности имеют коэффициент усиления всего в несколько десятков. 76 Радио. Эксперименты с невидимыми волнами
ров. Пока схема работала, я измерил напряжение 1,68 В на правом выводе светодиода, который отмечен знаком + на рис. 2.10. Если вы вставите светодиод неправильно (длинным выводом справа, а не слева), схема не будет работать. Что делать, если вы слышите радиостанции, но все они находятся на одном конце диапазона переменного конденсатора? Попробуйте снять его с клеммной колодки и отрегулировать крошечные подстроечные конденсаторы внизу (два винта, показанные на рис. 1.21). Вы также можете изменить количество витков провода на ферритовом стержне. Индуктивность каждой катушки пропорциональна числу витков в квадрате, которое было выбрано для попадания в диапазон частот средневолнового диапазона AM-вещания, но это может быть неоптимально для вашего конкретного ферритового стержня и выбранного вами провода при намотке катушек. Если вам трудно слышать радиостанции в нижнем диапазоне частот AM, попробуйте убрать несколько витков с катушки. Имейте в виду, что в схеме пока нет усилителя мощности! Мы добавим его на следующем и последнем этапе этого эксперимента. Эта добавка может существенно улучшить способность приемника ловить радиостанции. Как это работает Если вы посмотрите на схему на рис. 2.9, то увидите, что первые два транзис­ тора, Q1 и Q2, действуют как усилители напряжения и что расположение компонентов вокруг каждого из них идентично. Если вы подумали, что Q1 создает некоторое начальное усиление, а Q2 увеличивает его еще больше, вы правы. Третий транзистор Q3 действует как пиковый детектор и демодулирует AMсигнал. (Ранее в AMR1 для этой цели мы использовали диод-детектор.) Способ подключения Q1 и Q2 известен как конфигурация с общим эмиттером. В каждом транзисторе эмиттер является общим выводом для входа и выхода. Можно представить себе работу транзистора следующим образом: когда напряжение, приложенное к базе, увеличивается, некое эффективное внутреннее сопротивление транзистора уменьшается, и ток в цепи коллектора и эмиттера увеличивается. Таким образом, транзистор сам по себе является усилителем тока, но давайте рассмотрим его вместе с остальными элементами схемы. Коллектор теперь имеет меньшее сопротивление между собой и общим проводом, поэтому напряжение на нем падает. Но если напряжение на базе будет уменьшаться, эффективное сопротивление транзистора увеличивается, и напряжение на его коллекторе растет1. Таким образом, если выходной сигнал снимается с коллектора, он имеет более высокий диапазон напряжения, чем диапазон, приложенный к базе. 1 В реальности представление о некоем «сопротивлении внутри коллектора», которое меняется в зависимости от потенциала на базе, есть наглядный, но неверный способ описания процессов внутри биполярного транзистора. В нем увеличение потенциала базы (на очень небольшую величину, измеряющуюся милливольтами) ведет именно к увеличению тока (то есть потока носителей заряда) в коллекторной цепи. Представление транзистора как управляемого сопротивления характерно для полевых транзисторов (и электронных ламп), которые действительно можно описать как сопротивление, управляемое напряжением на затворе (или сетке в электронных лампах – аналогах базы). Эксперимент 2. Настоящее радио 77
Поскольку эта схема работает с быстро меняющимися радиосигналами, используются разделительные конденсаторы, такие как C7, C9, C11 и C13, которые блокируют постоянный уровень напряжения, но пропускают переменную составляющую, а это как раз то, что нам нужно. (Проектирование транзисторных усилителей – сложная тема, о которой написаны целые книги. Поскольку это книга о радио, а место ограничено, мы не будем далее углубляться в нее.) C14 и R15 образуют фильтр нижних частот, который удаляет высокие частоты из аудиосигнала, прежде чем он достигнет наушников или усилителя звука. Это снижает шум и особый высокий звук, который может возникнуть, когда разные AM-станции создают помехи друг другу. Вы можете поэкспериментировать с разными значениями C14, например 2,2 нФ или 10 нФ, либо попробовать полностью удалить его. Добавление аудиоусилителя Хотя транзисторы, которые вы установили в схему, обеспечивают некоторое усиление, они не обеспечивают достаточной мощности для управления динамиком. Для этой цели теперь вы можете завершить схему приемника AMR2, добавив LM386 – старинную микросхему аудиоусилителя, которая может усиливать входной сигнал в 200 раз. Добавить LM386 очень просто: просто отсоедините наушники и подключите новый горизонтальный желтый провод, показанный справа на рис. 2.16. 0,1 мкФ 100 22 470 мкФ +9 В 7555 7555 10 мкФ LM386 47 нФ 470 мкФ К динамику Рис. 2.16. Добавлена микросхема звукового усилителя LM386. Горизонтальный желтый провод соединяет ее вход с остальной частью схемы Обратите внимание на длинный красный провод питания на этом рисунке, который необходим, поскольку положительная шина зарезервирована для фильтрованного питания транзисторов радиоусилителя. Вывод 6 LM386 является контактом питания, вывод 5 – выходом, а вывод 3 – входом. На рис. 2.17 показано, как LM386 добавляется к предыдущей схеме. R17 и C18 на схеме являются необязательными; они шунтируют динамик, чтобы уменьшить количество шипения, которое обычно слышно при AM-передаче. 78 Радио. Эксперименты с невидимыми волнами
Вы можете поэкспериментировать, удалив эти компоненты. R18 ограничивает ток через динамик, C19 защищает динамик от постоянного напряжения, С17 устраняет колебания в питании. С15 – развязывающий конденсатор для фильтрации помех. Дополнительные компоненты C15 R17 P2 C16 R16 C14 Керамический конденсатор 0,1 мкФ Электролитический Cl6 конденсатор 10 мкФ Электролитический Cl7 конденсатор 470 мкФ Керамический C18 конденсатор 47 нФ Электролитический Cl9 конденсатор 470 мкФ R17 22 Ом Cl5 +9 В C13 8 7 6 5 1 2 3 4 R18 IC3 C18 C17 C19 LS2 Рис. 2.17. Принципиальная схема макета, представленного на рис. 2.16 R18 100 Ом IC3 Микросхема LM386 LS2 Небольшой динамик (8 Ом) Интересной особенностью LM386 является то, что она позволяет регулировать коэффициент усиления, добавляя компоненты между контактами 1 и 8. Если эти контакты остаются неподключенными, коэффициент усиления по умолчанию составляет 20:1. Если вставить конденсатор C16 емкостью 10 мкФ (как показано на рис. 2.17), усиление увеличится до 200:1. Промежуточные значения C16, применяемые последовательно с сопротивлениями, позволяют использовать разные значения усиления. Если вас это интересует, документация по LM386 содержит более подробную информацию и некоторые примеры схем. дОпОлнительные истОчники При создании трехтранзисторной конструкции приемника прямого усиления AMR2 меня вдохновили два источника: 1) статья Henry J. Walmsley «Breadboard Six Transistor Radio BBRK-1» (Генри Дж. Уолмсли. Макет шеститранзисторного радиоприемника BBRK-1), с которой можно ознакомиться по адресу: www.usefulcomponents.com/main_contents/projects/breadboard_trf_radio/breadboard_trf_radio.html; 2) а также книга: Ronald Quan «Build Your Own Transistor Radios» (Рональд Куан. Создайте свои собственные транзисторные радиоприемники)1. Для получения дополнительной информации о теории и процессе проектирования транзисторных усилителей я рекомендую дополнительные источники: 1 Ronald Quan, «Build Your Own Transistor Radios», McGraw-Hill, 2013 (https://lib-king. ru/300080-build-your-own-transistor-radios.html). Эксперимент 2. Настоящее радио 79
3) Paul Scherz, Simon Monk «Practical Electronics for Inventors»1 содержит короткий, но хороший раздел, посвященный транзисторным усилителям; 4) книга Paul Horowitz, Winfield Hill «The Art of Electronics»2 также содержит необходимую теорию, но она более обширна. Из интернет-ресурсов рекомендуется: www.electronics-tutorials.ws/amplifier/amp_2.html. В этой статье содержится несколько схем усилителей и теория их работы. Книга рецептов схем на биполярных транзисторах, опубликованная в нескольких частях на веб-сайте Nutsvolts.com, помимо многих других транзисторных схем, содержит и усилители: www.nutsvolts.com/magazine/article/bipolar_transistor_cookbook_part_3. чтО дальше? Эта глава началась с объяснения взаимодействия катушек индуктивности для изменения тока и напряжения. Вы также могли видеть, как одна катушка может передать на другую достаточно энергии, чтобы зажечь светодиод. Этот основной принцип используется в трансформаторах электросети, доставляющих электричество в ваш дом, а также в радиоприемниках, где сигнал должен быть преобразован в соответствии с потребностями транзисторов. На примере конструкции приемника прямого усиления AMR2 вы видели, как биполярные транзисторы могут усиливать радиосигнал таким образом, что он становится достаточно мощным для управления динамиком. Теперь, когда у вас есть вполне функциональное радио, пришло время для следующего шага: создать передатчик, транслирующий музыку, голос и другие звуки, которые сможет принимать AMR2. 1 2 Русский перевод: Монк С., Шерц П. Электроника. Теория и практика. 4-е изд. СПб.: БХВ, 2018 (https://bhv.ru/product/elektronika-teoriya-i-praktika/). Русский перевод, наиболее отвечающий 2-му изданию оригинала: Хоровиц П., Хилл У. Искусство схемотехники: в 3 т. / пер. с англ. 4-е изд., перераб. и доп. М.: Мир, 1993 (https://djvu.online/file/nprpYtupYnR7E?ysclid=m2ydf1skpm999824246). В изд-ве БХВ в 2022 году вышел перевод современного дополнения за авторством Томаса К. Хейса и Пола Хоровица «Искусство схемотехники. Теория и практика» (https://bhv.ru/product/ iskusstvo-shemotehniki-teoriya-i-praktika/).
Эксперимент 3 НАСТОЯЩИЙ АМ-ПЕРЕДАТЧИК
Что вам понадобится Для этого эксперимента вам понадобятся некоторые новые компоненты, описание которых вы можете найти в приложении A и приложении C: • индуктивность 22 мкГн, максимальный ток 40 мА (1 шт.); • аудиокабель длиной не менее 1 м со штыревым аудиоразъемом 3,5 мм на каждом конце (1 шт.); • аудиогнездо 3,5 мм для макета (1 шт.), имеющее гибкие выводы, которые можно подключить к макетной плате, или винтовые клеммы, к которым можно подключить провода-перемычки для макетной платы1; • любое аудиоустройство, имеющее выход для наушников через разъем 3,5 мм (1 шт.). Если вы успели разобрать схемы, построенные в экспериментах 1 и 2, то можете повторно использовать компоненты из них, и вам понадобится всего лишь несколько дополнений: • резисторы: 1 кОм (3 шт.), 4,7 кОм (2 шт.); • керамические конденсаторы: 2,2 нФ (1 шт.), 47 нФ (1 шт.), 1 мкФ (1 шт.); • AM-радиоприемник (1 шт.). Ранее я упоминал его как вариант, но если вы успели разобрать схему AMR2, понадобится какой-то другой способ приема радиосигналов AM, которые вы будете передавать в этом эксперименте, и портативный радиоприемник – самый простой вариант. Если вы не желаете разбирать предыдущую схему и собираетесь повторно использовать компоненты, можете игнорировать приведенный выше список. Можно использовать AMR2 в качестве радиоприемника, но для приема AMT1 вам потребуются следующие компоненты: 1 • вторая макетная плата (1 шт.); • дополнительный переменный конденсатор 200 пФ типа 223P (1 шт.); • резисторы: 1 кОм (3 шт.), 4,7 кОм (2 шт.), 10 кОм (1 шт.); • керамические конденсаторы: 2,2 нФ (1 шт.), 47 нФ (1 шт.), 0,1 мкФ (1 шт.), 1 мкФ (1 шт.); • электролитический конденсатор 10 мкФ (1 шт.); • биполярный NPN-транзистор 2N3904 (1 шт.); • дополнительно 60 см провода с диаметром жилы 0,4–0,6 мм (AWG22 или AWG26) для создания 10-сантиметровой рамочной антенны. Все перечисленные аудиокомпоненты – стерео.
П ередатчик, который мы построили в эксперименте 1, представлял собой простое устройство, способное отправлять только тестовые сигналы. Вы можете считать эту конструкцию передатчиком нулевого уровня AMT0. Теперь пришло время более совершенного передатчика AMT1, который будет построен только на одном транзисторе, но сможет передавать речь и музыку. Его сигнал можно принять с помощью готового радиоприемника или с помощью приемника AMR2, построенного нами в эксперименте 2 (пока вы не успели поменять компоненты в его схеме). Мощность самодельного передатчика ограничена правилами, которые различаются в разных странах. В этом эксперименте она также ограничена использованием одного транзистора. Тем не менее если у вас когда-либо возникало желание стать семейным диджеем, транслируя радиопрограммы, которые другие люди могли бы слушать дома, данное устройство станет первым шагом к этой цели. Шаг небольшой, но он демонстрирует потенциальные возможности. замечания пО кОмпОнентам Индуктивность выглядит как резистор, но содержит крошечную катушку. Сокращение Гн (международное H) означает единицу индуктивности «генри». Обычно оперируют миллионными долями, или «микрогенри» (мкГн, µH). Для всех индуктивностей указывается максимально допустимый непрерывный ток, который они могут пропускать. Вы можете заменить индуктивность на имеющую более высокий максимально допустимый ток, но не на более низкий, чем тот, который указан в описании схемы. Об источниках звука: вы можете использовать практически любое устройство, имеющее разъем для наушников, в качестве источника звука для передатчика в этом проекте. Для этой цели подойдет портативный компьютер, MP3-плеер, переносной музыкальный центр (бумбокс) или, возможно, старый мобильный телефон. Многие современные устройства больше не имеют разъемов для наушников; вам придется проверить. Если вы купите что-нибудь подешевле на распродаже, например проигрыватель компактдисков или даже древний кассетный проигрыватель, это будет идеальным вариантом. сОздание несущей В эксперименте 1 я упомянул, что передатчику нужна несущая частота от 530 кГц до 1700 кГц, чтобы его можно было классифицировать как радио, работающее в AM-диапазоне. Мы использовали таймер 7555 для генерации несущей, но он выдает прямоугольный сигнал, что не очень хорошо. Несущая волна должна быть синусоидальной. Я объясню это различие подробно чуть позже, а пока вот самые важные основы.  LC-цепь может работать как генератор и генерировать синусоидальную волну.  LC-цепь также может обнаруживать синусоидальную волну, резонируя с ней. Эксперимент 3. Настоящий АМ-передатчик 83
Юридические тонкости Поскольку спектр AM-радио является ограниченным ресурсом, правительственные учреждения предпочитают его нормировать. В зависимости от страны, в которой вы живете, вы можете обнаружить, что существуют строгие правила, ограничивающие мощность и дальность действия любого передатчика, который вы создаете. В США самодельным передатчикам для АМ-диапазона разрешено вещать с мощностью до 100 мВт, что исчезающе мало по сравнению с 50 000 Вт некоторых «настоящих» радиостанций. Кроме того, ваша антенна (включая провод к ней и любой провод к земле) не может быть длиннее 3 м. Если хотите узнать все подробности (о США), поищите в интернете часть 15 «Правил FCC». Наша схема для AMT1 использует только небольшую рамочную антенну и питает ее мощностью гораздо меньше 100 мВт, поэтому мы считаем, что это должно быть полностью законно в Соединенных Штатах. В некоторых других странах правила могут быть более строгими. Я не могу проверить их все, поэтому предлагаю вам поискать в интернете, если вас беспокоит этот вопрос1. Конечно, ничто не мешает вам купить компоненты и собрать из них любой передатчик по вашему желанию. Ваши проблемы начнутся только в том случае, если вы включите его и будете им пользоваться, особенно если вы мешаете радиоприему других людей. Я покажу вам, как свести к минимуму риск этого, но я не несу никакой ответственности, если вы решите выйти за рамки. Это зависит от вас. Вернитесь к рис. 1.40, на котором показана синусоидальная волна, созданная в LC-цепи начальным импульсом напряжения. Чтобы использовать ее в качестве несущей, необходимо поддерживать эти колебания достаточным количеством энергии, дабы генератор мог работать бесконечно. Как это можно сделать? Транзистор, подключенный в качестве усилителя, может это сделать. Если вам интересно, как это работает, рассмотрите систему из микрофона, подключенного к дешевой акустической системе. Если микрофон ловит слишком много звука из динамиков, возникает вой, свист или визг, который обычно называют акустической обратной связью2. Именно этого мы и хотим в данном случае, только частоту возбуждения необходимо точно устанавливать, и нужен способ не допустить выхода колебаний из-под контроля. Я предполагаю, что в этом эксперименте вы начинаете с чистой макетной платы, либо используя новую, либо удалив все старые компоненты, которые использовались в экспериментах 1 и 2. На рис. 3.1 показан макет простой схемы генератора, который станет основой передатчика AMT1, а на рис. 3.2 показана его принципиальная схема. 1 2 Законодательство по части разрешенной мощности безлицензионных передатчиков – очень запутанная область, так как требования для различных диапазонов и их отдельных участков сильно различаются. В России это усугубляется тем, что в последние десятилетия требования неоднократно менялись. Но можно не тратить времени на попытки в этом разобраться: средневолновый АМ-передатчик мощностью до 100 мВт, подобный описываемому здесь, имеет радиус действия в единицы-десятки метров, что никому не помешает и наверняка не вызовет конфликтов с соответствующими службами даже в городской застройке. Явление так и называется – «микрофонный эффект». 84 Радио. Эксперименты с невидимыми волнами
Батарея +9 В 4,7 кОм 10 кОм Передающая антенна представляет собой петлю диаметром около 10 см, состоящую из двух витков провода толщиной 0,6 или 0,4 мм (AWG22 или AWG26). Для этого вам понадобится кусок провода длиной чуть более 60 см. Чтобы скрепить витки вместе, можно использовать кусочки липкой ленты. Такая антенна называется рамочной. Индуктивность 1 мкФ 22 мкФ 2,2 нФ 2N3904 Антенна диаметром 10 см 47 нФ 1 кОм 4,7 кОм 0,1 мкФ Светодиод только для теста Рис. 3.1. Первый шаг в макетировании AMT1 Питание осуществляется от батареи напряжением 9 В. Когда мы создавали приемник AMR2, я упоминал, что адаптер переменного тока будет создавать помехи, мешающие радиоприему. AC-адаптер также будет мешать радиопередаче, если его выходной сигнал не будет тщательно сглажен. Когда вы посмотрите на схему, сможете заметить, что входной сигнал отсутствует. Это потому, что схема только генерирует несущую волну. Аудиовход будет добавлен на следующем шаге. Вы также увидите, что в этой схеме нет ни слышимого, ни видимого выхода, кроме антенны, которая передает несущую волну с частотой почти 1 МГц. Так как же узнать, работает ли это? Если у вас есть осциллограф, подключите его между точкой А на схеме и отрицательным выводом питания (заземлением). Вы должны увидеть красивую гладкую синусоидальную волну, подобную той, что показана на рис. 3.3. Если у вас нет осциллографа, вы можете проверить схему двумя другими способами. Сначала подключите светодиод, как указано на макете и схеме. Светодиод должен загораться при подаче питания на цепь. Это не гарантирует, что схема работает, но дает некоторую уверенность. Теперь удалите светодиод. Пока питание подается на схему AMT1, включите AMR1, AMR2 или любой другой имеющийся в наличии AM-радиоприемник. Если поблизости есть источники радиопомех, их следует отключить. Эксперимент 3. Настоящий АМ-передатчик 85
Резисторы Батарея +9 В R1 R3 L1 Светодиод только A для тестирования C1 Q1 C2 R4 R2 R1 10 кОм R2 4,7 кОм R3 4,7 кОм R4 1 кОм Конденсаторы С1 1 пФ C2 2,2 нФ СЗ 0,1 мкФ C4 47 нФ LI Индуктивность 22 мкГн D1 Светодиод красный D1 C4 Другие компоненты C3 Q1 Биполярный транзистор 2N3904 Рис. 3.2. Принципиальная схема макета, представленного на рис. 3.1 20 16 12 8 volts 4 0 −4 −8 −12 −16 −20 0 0.5 1.0 1.5 2.0 2.5 3.0 microseconds 3.5 4.0 4.5 5.0 Рис. 3.3. Осцилограмма несущей волны, генерируемой AMT1 Держите радио рядом с рамочной антенной и очень медленно поворачивайте конденсатор приемника в области 650–750 кГц. Покрутив ручку настройки, вы обнаружите, что шипение помех, которое вы обычно слышите в AM-радио, исчезает, и радио замолкает. На этом этапе вы настроились на несущую волну вашего передатчика. Звука нет, потому что мы еще не добавили звук в передатчике. Настроив радио на тишину, отключите питание передатчика. Теперь помехи в динамике радио возобновляются. Снова подключите питание к схеме передатчика, и шум опять исчезнет. 86 Радио. Эксперименты с невидимыми волнами
дОбавление аудиОвхОда Следующим шагом является добавление аудиовхода и конденсатора настройки, как показано на рис. 3.4 и 3.5. Переменный конденсатор того же типа, который мы использовали раньше, мы добавляем для возможности регулировать частоту передачи на тот случай, если недалеко окажется радиостанция, частоты которой пересекутся с вашими. Батарея +9 В Аудиовыход R L 1 кОм 1 кОм T S R 10 мкФ Конденсатор настройки Рис. 3.4. Добавление аудиовхода и возможности настройки J1 9VDC battery R5 R6 C6 C5 Дополнительные компоненты J1 Аудиоразъем 3,5 мм R5 Резистор 1 кОм R6 Резистор 1 кОм C5 Конденсатор 10 пФ C6 Переменный конденсатор, 200 пФ Рис. 3.5. Принципиальная схема макета, представленного на рис. 3.4 Эксперимент 3. Настоящий АМ-передатчик 87
Компонент на левом конце макетной платы представляет собой адаптер аудиоразъема с тремя винтовыми клеммами. На клеммах большинства таких адаптеров имеются обозначения L (левый канал), R (правый канал) и символ заземления. Некоторые адаптеры имеют винты с маркировкой T, S и R (означают наконечник, втулку и кольцо на вилке). Эти винты имеют те же функции: T аналогично L, S – заземлению и R – выводу R. На рис. 3.4 показан адаптер этого типа с той же цветовой маркировкой проводов, что и у более распространенного типа выше. Используя аудиокабель со штекером 3,5 мм на каждом конце, подключите источник звука к адаптеру. Источник, скорее всего, будет стереофоническим, а штекер на конце вашего аудиокабеля почти наверняка будет стереоразъ­ емом. Поскольку наш передатчик работает только в моно, мы используем R5 и R6, чтобы связать два канала вместе. Затем быстрые колебания аудиосигнала проходят через C5 к базе транзистора Q1. Не испортит ли ваш источник звука подключение к этой цепи? Естественно, я предпринял шаги, чтобы минимизировать любой риск.  Схема питается только от батареи напряжением 9 В.  C5 изолирует аудиоустройство от напряжения постоянного тока в схеме AMT1.  В качестве меры предосторожности перед подключением аудиокабеля можно вставить мультиметр между аккумулятором и макетной платой, чтобы измерить потребляемый ток. Если он намного больше 3 мА, это может говорить о том, что вы допустили ошибку в схеме.  Выходы для наушников на аудиоустройствах, как правило, более надежны по сравнению с более современными интерфейсами, такими как порты USB.  Резисторы 1 кОм, подключенные к аудиовходу нашего устройства, обес­ печивают дополнительную защиту. Когда аудиокабель подключается к выходу для наушников музыкального центра или другого музыкального проигрывателя, это обычно выключает выходной сигнал собственного динамика проигрывателя. Подайте питание на передатчик AMT1, включите радиостанцию и расположите вблизи приемник, как вы это делали раньше. Если необходимо, подкрутите конденсатор настройки, и радио должно поймать музыку, которую вы транслируете. Большинство AM-радиоприемников содержат направленную антенну с ферритовым стержнем. Вы можете покрутить его корпус, чтобы оптимизировать прием. Вы также можете увеличить громкость источника звука, дабы создать более мощный входной сигнал, но после определенного момента принимаемая музыка станет искажаться. Звуковая волна как бы срезается по вершинам, когда входной сигнал начинает превышать усиливающую способность транзистора. Попробуйте отодвинуть радиостанцию подальше, чтобы узнать, какой радиус действия вы сможете получить. Мне удалось уловить сигнал с расстояния в пару метров. Вроде не так уж и много, но этот передатчик работает только с одним транзистором и 10-сантиметровой рамочной антенной. AMT1 на самом деле и предназначен только для демонстрационных целей, чтобы показать возможности. 88 Радио. Эксперименты с невидимыми волнами
Синусоида Более 2000 лет назад древние люди разделили круг на 360 градусов, возможно, потому, что каждый год содержит около 360 дней. Четверть круга имеет центральный угол, равный 90 градусам, который называют еще прямым углом. Если две стороны треугольника, прилегающие к прямому углу, различаются по длине, он будет выглядеть примерно так, как показано на рис. 3.6. Что делать, если вы хотите узнать размер угла А? Вы можете сделать это, очень тщательно измерив две стороны треугольника, например сторону O (катет, противоположный углу) и сторону H (гипотенузу – длинную сторону Эквивалент напротив прямого угла). Затем раздеугла вращения лите O/H. Результат называют синусом угла, что определяет его однозначно. Математически это записывается так: Сторона O Не забудьте отключить батарею питания после завершения теста. Теперь необходимо кое-что объяснить, начиная с концепции синусоидальной волны. Ст о 90 градусов ро на H Угол А Синус угла A = 0 H Рис. 3.6. Как можно измерить угол А? Эквивалент угла вращения sin(A) = O / H. (Обозначение sin повсеместно используется в формулах этого типа.) Результат деления O на H предЭквивалент интервалов времени ставляет собой число, которое колеблется от почти нуля (когда угол Рис. 3.7. Построение синусоиды очень мал, а сторона O очень коротка) до почти 1 (когда угол почти 90 градусов, а длина стороны O почти равна длине стороны H). Теперь представьте, что объект, привязанный к концу веревки, вращается вокруг неподвижной точки, как показано на рис. 3.7. Мы можем нарисовать серию треугольников, в которых сторона O, показанная красными линиями, меняется в зависимости от угла в центре. На рис. 3.7 эти значения показаны с интервалом в 15 градусов, поскольку 15 точно делится на 360. Вы можете видеть, что длина O начинается с нуля и растет по мере увеличения угла, а затем снова уменьшается, когда объект выходит за пределы средней точки. Эксперимент 3. Настоящий АМ-передатчик 89
На графике рис. 3.7 значения стороны O были поставлены через равные промежутки времени, поэтому вы можете подумать о горизонтальном расстоянии как о шкале времени. Поскольку высота каждой линии пропорциональна синусу угла, который ее создал, плавная кривая, проходящая через верхние концы линий, называется синусоидой. y = sin(x) y 0 x 90 180 270 360 Рис. 3.8. Классическая синусоида из учебников На рис. 3.8 показан один полный период синусоидальной кривой в стиле, который вы часто встретите в учебниках, с вертикальной осью с именем y, горизонтальной осью с именем x и формулой, создающей кривую. y = sin(x). Если вы зайдете в поисковую систему в интернете и введете эту формулу, вы должны увидеть на экране синусоиду. Ее можно разделить на интервалы по 90, 180, 270 и 360 градусов, что соответствует значениям угла наверху рис. 3.7, когда объект, вращающийся вокруг точки, совершает полный оборот и возвращается в то место, откуда он начал. Почему это важно? Во-первых, колебания в форме синусоиды появляются повсюду.  Если вы нагружаете вертикально подвешенную пружину тяжелым предметом, а затем позволяете ему подпрыгивать на конце пружины, вы можете представить его движение как синусоиду.  Движение качающегося маятника можно выразить в виде синусоиды (при условии что он не раскачивается слишком широко). 90 Радио. Эксперименты с невидимыми волнами
 Если вы возьмете пустую или почти пустую бутылку из-под газировки и слегка подуете через открытое горлышко, воздух внутри бутылки начнет резонировать, создавая волны давления, которые вы услышите как красивый мягкий звук. Если вы построите график этих быстрых изменений давления воздуха с течением времени, они образуют синусоиду.  Если вы нарисуете график напряжения переменного тока в вашей домашней розетке за определенный период времени, он образует синусоиду.  Напряжение в LC-цепи можно представить в виде синусоиды, как это было продемонстрировано на рис. 1.40. Для нас здесь важен последний пункт в этом списке. Поскольку LC-цепь естественным образом колеблется таким образом, вы можете использовать ее в приемнике для резонанса с синусоидальной волной соответствующей частоты. Это приводит к важному выводу: LC-контур в радиоприемнике может обнаруживать соответствующую несущую частоту передатчика, игнорируя при этом другие частоты, пока несущая является синусоидальной. Эта способность действительно поразительна, если принять во внимание тысячи или миллионы радиосигналов в электромагнитном спектре. Средневолновое AM-радио – лишь крошечный фрагмент этого спектра. Коротковолновый диапазон, FM-радио, старомодные аналоговые телепередачи, УКВ-передачи, передачи сотовых телефонов, спутниковые сигналы – электромагнитная какофония продолжается днем и ночью повсюду вокруг вас. Но простая схема, подобная той, которую мы использовали в приемнике AMR2, отфильтрует все, кроме несущей волны в одной узкой полосе частот. Чтобы получить представление об этом процессе, необходимо знать, что волна сложной формы, подобная той, что изображена зеленым вверху на рис. 3.9, на самом деле представляет собой сумму двух волн (красной и голубой), показанных под ней. LC-цепь может извлечь из суммарной волны любую из них, блокируя при этом остальные. Что, если передатчик выдает прямоугольную волну? Странный факт: можно построить прямоугольную волну, суммировав множество синусоид возрастающей частоты. Это показано на рис. 3.10, где жирная красная кривая является результатом сложения всех остальных волн разных цветов. Чем больше синусоид более высоких частот вы добавите, тем ближе красная кривая к прямоугольной. (Конечно, амплитуда каждой дополнительной волны должна соответствовать необходимому значению, и существует формула, которая определяет эти значения, но здесь Рис. 3.9. LC-цепь способна выделять отмы не будем с этим разбираться.) дельную синусоиду из их сложной смеси Эксперимент 3. Настоящий АМ-передатчик 91
Рис. 3.10. Математически можно показать, что прямоугольная волна, выделенная красным, может быть создана суммированием множества синусоидальных волн, показанных здесь другими цветами Кривые более высокой частоты известны как гармоники основной частоты колебания. Поскольку LC-контур в радиоприемнике резонирует с синусоидальными составляющими, он будет рассматривать прямоугольную волну как состоящую из нескольких синусоидальных. Следовательно, если вы используете прямоугольную несущую, она будет присутствовать во всем радиоспектре, вызывая помехи и путаницу. В нашей первой демонстрации мы использовали прямоугольный сигнал, потому что он удобен при использовании таймеров 7555, а мощность передачи была настолько мала, что не вызывала никаких проблем. Вот важный принцип, который следует запомнить:  в мире радио все несущие волны являются синусоидальными. Теперь вам, наверное, будет интересно: как простая схема генератора в AMT1 создает синусоидальный выходной сигнал? Разбираемся со схемой AMT1 Для начала вспомним, как работает транзистор: напряжение, приложенное к его базе, управляет током, протекающим через коллектор и выходящим через эмиттер – при условии что напряжение базы хотя бы на 0,6 В выше напряжения эмиттера. Резисторы R1 и R2 на рис. 3.2 подают напряжение смещения на базу, так что база остается в активном диапазоне напряжений. R3 и R4 помогают установить подходящие напряжения покоя на коллекторе и эмиттере. 92 Радио. Эксперименты с невидимыми волнами
R3 обеспечивает выходное напряжение в точке А, так как это напряжение по закону Ома зависит от тока через R3, а транзистор управляет этим током. Теперь рассмотрим конденсаторы С1, С2 и С4. Если вы проследите за их соединениями через положительный провод питания наверху схемы, то обнаружите, что путь проходит через антенну и катушку L1. Это похоже на базовую LC-схему, которую мы представили на рис. 1.39, но не совсем то же самое. Конденсатор С1 имеет относительно большую емкость, поэтому он не играет очень активной роли, но позволяет циркулировать высокочастотному переменному току. Роль транзистора Q1 состоит в том, чтобы воспринимать колебания в LCконтуре (при подключении к нижней пластине C2) и увеличивать напряжение на верхней пластине C2 в нужные моменты времени, дабы поддерживать колебания – как будто толкаешь ребенка на качели. Вы можете думать об этом как о петле положительной обратной связи – точно так же, как обратная связь от динамиков к микрофону создает «микрофонный эффект» в аудитории. Конденсатор C3 на базе транзистора выполняет две роли: во-первых, он стабилизирует напряжение базы и необходим для поддержания работы генератора. Во-вторых, стабилизируя напряжение базы, он отфильтровывает высокие частоты из аудиосигнала, подаваемого на базу. Вместе с R5 и R6 (см. рис. 3.5) он образует фильтр нижних частот. Технически это пример схемы усилителя с общей базой, поскольку на базе транзистора поддерживается постоянное напряжение. Эту схему сложно понять, потому что вход на самом деле находится на эмиттере, а колебания тока, текущего по горизонтальному проводу к эмиттеру, управляют колебаниями в катушке, соединенной с коллектором. Этот тип усилителя встречается не так часто, как усилитель с общим эмиттером того типа, который мы использовали в схеме AMR2, но одно свойство делает его особенно полезным в схеме генератора: он неинвертирующий. Усилитель с общим эмиттером инвертирует сигнал: когда напряжение базы увеличивается, выходное напряжение на коллекторе падает, и это усложняет организацию положительной обратной связи, необходимой для генерации. Схема AMT1 также является примером генератора Колпитца, отличительной особенностью которого является то, что одна катушка используется с двумя конденсаторами (C2 и C4) для создания резонансного контура с обратной связью, извлекаемой из точки между двумя конденсаторами. Если вы посмотрите на расширенную схему на рис. 3.5, то увидите, что аудио­вход подключен через конденсатор C5 к базе транзистора. Следовательно, пока схема выдает высокочастотные колебания, изменяющееся напряжение на базе модулирует амплитуду этих колебаний. (По сложным причинам изменение напряжения базы в усилителе с общей базой влияет на коэффициент усиления усилителя, который определяет размах выходного сигнала. Мы можем использовать этот факт для управления амплитудой сигнала, создаваемого генератором.) Когда я перенастроил свой осциллограф так, чтобы он показывал частоту в килогерцах, а не в мегагерцах, выходной сигнал передатчика (измеренный Эксперимент 3. Настоящий АМ-передатчик 93
в точке А схемы на рис. 3.2) выглядел, как показано на рис. 3.11. Фактически это изображение было создано записью звука бас-гитары. Осциллограф не совсем точно фиксирует колебания, поскольку частота дискретизации сигнала слишком низкая. Трудно показать AM-сигналы с помощью цифровых осциллографов, так как временны́е масштабы несущей волны и звуковых частот слишком сильно различаются. 20 16 12 8 volts 4 0 −4 −8 −12 −16 −20 0 10 20 30 40 50 60 milliseconds 70 80 90 100 Рис. 3.11. Аудиосигнал добавляется к выходу AMT1 Качество звука и перемодуляция При отсутствии аудиосигнала на входе генератор выдает высокочастотный синусоидальный сигнал с постоянной амплитудой, как показано на рис. 3.3. При добавлении аудиосигнала амплитуда высокочастотного сигнала меняется в зависимости от мгновенного напряжения поданного аудиосигнала: когда аудиосигнал положительный, амплитуда больше, а когда аудиосигнал отрицательный, амплитуда меньше. Увеличение амплитуды аудиосигнала на его источнике (возможно, имеющем регулятор громкости) увеличивает размер колебаний амплитуды на выходе. Что произойдет, если продолжать увеличивать амплитуду аудиовхода? Прежде всего проблематичными оказываются отрицательные части аудиосигнала, поскольку если напряжение на базе транзистора слишком низкое, генератор просто остановится. В этом случае выходной сигнал начинает больше походить на прямоугольную волну и представляет собой проблему, так как снижает качество звука вашей передачи и вызывает помехи на соседних частотах. Определить, когда происходит такая перемодуляция, без осциллографа может быть сложно. Я выбирал номиналы компонентов в схеме, позволяющие 94 Радио. Эксперименты с невидимыми волнами
избежать перемодуляции сигнала стандартного линейного выхода на полной громкости, но поскольку выходы аудиооборудования могут быть разными, этого может быть недостаточно. Небольшое уменьшение громкости источника звука добавляет некоторый запас прочности. Увеличение дальности Если вы используете рамочную антенну большего диаметра или если она содержит больше витков провода, вы можете увеличить дальность передачи. Не стесняйтесь экспериментировать, но помните, что в США максимальная длина провода антенны в средневолновом диапазоне – 10 футов (около 3 м), а в других странах действуют свои собственные правила. Также имейте в виду, что изменение нагрузки контура приведет к изменению частоты передатчика. Частота тоже может измениться, если рядом с AMT1 находятся большие магнитные объекты или объекты, которые могут намагничиваться. Они могут влиять на индуктивность или емкость контура. В идеале частота передачи должна устанавливаться с помощью LC-цепи, размещенной внутри экрана – металлического корпуса, защищенного от внешнего воздействия. Старое радиооборудование часто содержит небольшие металлические коробочки вокруг чувствительных частей схемы, а в современном оборудовании экраны можно обнаружить припаянными к печатной плате. Для еще большей стабильности вы можете вместо LC-контура использовать для установки частоты кварцевый кристалл. Современные радиосхемы почти всегда так и делают. Кристаллы кварца также часто используются в микроконт­ роллерах для точной установки тактовой частоты. Raspberry Pi Pico, который мы будем использовать в следующем эксперименте, использует кристалл с час­тотой 12 МГц, из которого он генерирует все используемые тактовые сигналы (с точностью до 30 миллионных долей). Дополнительные источники Здесь используется LC-генератор, описанный в книге «Собери свои собственные транзисторные радиоприемники» (см. п. 2 в списке «Дополнительные источники» предыдущей главы). Вы также можете прочитать больше о генераторах в книге по биполярным транзисторам на сайте Nutsvolts.com, часть 5: www.nutsvolts.com/magazine/article/bipolar_transistor_cookbook_part_5. Более серьезный AM-передатчик с пояснением описан в следующей статье: www.geojohn.org/Radios/MyRadios/AMXmitr/AMXmtr.html. Вы можете узнать больше о теории транзисторов, в том числе о том, как на усиление усилителя влияет ток эмиттера, в книге «Практическая электроника для изобретателей» Пола Шерца и Саймона Монка (см. п. 3 в списке «Дополнительные источники» предыдущей главы). Эксперимент 3. Настоящий АМ-передатчик 95
чтО дальше? Вы узнали, как передавать и принимать сигналы с амплитудной модуляцией, и попутно познакомились с такими понятиями, как синусоидальные волны, гармоники, перемодуляция и необходимость использования разделительного конденсатора при подключении источника звука к усилителю. Диапазон и качество AMT1 оставляют много возможностей для улучшения, но если вы хотите быть диджеем, не только транслируя музыку, но и добавляя свои собственные комментарии, это можно легко сделать, используя компьютер в качестве источника музыки и микшируя ее со своим голосом, подключив гарнитуру к USB-порту. Далее я представлю Raspberry Pi Pico, мощный микроконтроллер, который, как оказалось, находит неожиданные, но важные применения в радиосвязи.
Эксперимент 4 RASPBERRY PI PICO
М икроконтроллер – это программируемая микросхема, предназначенная для управления другими устройствами. Какое это имеет отношение к радио? Микроконтроллер, который я рекомендую, возможно, не был разработан именно для радиосвязи, но он работает достаточно быстро, чтобы генерировать несущую волну, а также может при этом точно измерять частоты. Он называется Raspberry Pi Pico. В этом эксперименте вы узнаете, как настроить Pico на своем компьютере, использующем любую из трех основных операционных систем: Windows, Mac или Linux. Вы узнаете, как использовать программное обеспечение, известное как интегрированная среда разработки (IDE), и я покажу некоторые способы устранения неполадок, если все работает не так, как ожидалось. Вы добавите к Pico небольшой ЖК-дисплей, на котором будут отображаться сообщения о состоянии и полезная информация, например о радиочастотах. Затем вы установите программу (в этом случае называемую скетчем). Все скетчи в этой книге легкодоступны в интернете, поэтому вы можете открыть их из среды IDE или скопировать и вставить в ее окно. К концу этого эксперимента вы будете готовы расширить свой опыт создания радиоприемников и передатчиков на современной основе. Что вам понадобится 1 2 • Плата Raspberry Pi Pico (1 шт.). Рекомендую оригинальную марку производителя с логотипом Raspberry1. • USB-кабель с вилкой типа A на одном конце и вилкой Micro USB на другом (1 шт.). • Модель ЖК-дисплея 1602 с интерфейсом I2C (1 шт.). Доступен от нескольких производителей2. • Диоды Шоттки BAT48 (2 шт.). Это тот же тип диода, который вы использовали в эксперименте 1, но теперь вам понадобится два экземпляра. • Тактовая кнопка (1 шт.). • Соединительные провода-перемычки (длиной не менее 10– 15 см, разных цветов) с разъемами типа вилка (штырь) на одном конце и розетка (гнездо) на другом (см. рис. 4.3). В России оригинальную отладочную плату Raspberry Pi Pico можно приобрести, например, здесь: https://www.chipdip.ru/product/ raspberry-pi-pico-2?from=suggest_ product. ЖК-дисплей типа 1602 с интерфейсом I2C можно приобрести в сборе (например, здесь: https:// www.chipdip.ru/product/iic-i2c-twi1602-lcd-blue), но целесообразно отдельно покупать дисплей 1602 со стандартным параллельным интерфейсом hd44780 и отдельно интерфейсную I2C-плату для него: в этом случае выбор дисплеев будет намного больше. Причем лучше сразу приобрести такой дисплей с питанием 3,3 В – и подключение будет проще, и будет меньше проблем с автономным питанием (см. по этому поводу сноску на стр. 174).
Замечания по компонентам Pico доступен в четырех форматах: Plain Pico или Pico W Wireless (без припаянного разъема) и Pico H или Pico WH (с припаянным разъемом). Разъем необходим для подключения платы Pico к макетной плате, поэтому если вы покупаете плату Pico без разъема, вам придется покупать его отдельно и припаивать самостоятельно. Вы потратите всего пару дополнительных долларов на плату Pico с уже установленными разъемами, поэтому я предлагаю вам поступить именно так. Для нашего эксперимента нам не нужны беспроводные возможности версий W или WH, поэтому мы будем ориентироваться на версию Pico H. Pico подключается к компьютеру с помощью USB-кабеля со штекерами типа A и Micro USB, как показано на рис. 4.2. Это должен быть кабель для передачи данных, а не просто кабель для зарядки смартфонов. Вам потребуются гибкие проводаперемычки с вилкой на одном конце и гнездом на другом, как показано на рис. 4.3. Не совершайте ошибку, покупая перемычки с одинаковыми разъемами на обоих концах. Рис. 4.1. Плата Raspberry Pi Pico с припаянными разъемами Рис. 4.2. USB-кабель с разъемом типа A на одном конце и разъемом Micro USB на другом Написание скетчей Микроконтроллеру Pico нужны инструкции, которые предоставляются ему в виде программы. Среди людей, использующих микроконтроллеры под брендом Arduino, программы называются скетчами, и здесь мы также будем использовать этот термин. Написание скетча требует некоторых знаний языка программирования, но если вы не хотите заниматься его изучением, то можете просто выйти в интернет, найти там подходя- Рис. 4.3. Гибкая перемычка со вилкой на одном конце и гнездом на другом Эксперимент 4. Raspberry Pi Pico 99
щий скетч, написанный кем-то другим, и загрузить его в микроконтроллер. Собственно, все скетчи, которые понадобятся для этой книги, можно найти на GitHub, веб-сайте для разработки и публикации программного обеспечения, по адресу https://github.com/fjansson/MakeRadio. После перехода на указанную веб-страницу выполните следующие действия:  щелкните имя нужной папки;  щелкните имя нужного скетча;  нажмите <Ctrl+A> (<Command+A> на Mac), чтобы выделить весь текст;  нажмите <Ctrl+C> (<Command+C> на Mac), чтобы его скопировать. После этого вы сможете вставить текст на своем компьютере в приложение под названием интегрированная среда разработки (IDE). Текст в виде скетча будет загружен в микроконтроллер через USB-кабель. Осталось узнать, как получить IDE – программное обеспечение, которое делает все это возможным. Далее мы вместе выполним необходимые действия. Почему Pico? Выпущенный в 2021 году, Raspberry Pi Pico является мощным, но недорогим микроконтроллером. Мы будем использовать его для управления мик­ росхемой FM-приемника, для измерения частот сигналов и для генерации сигналов на точно известных частотах с одновременным отображением информации на ЖК-дисплее. Pico достаточно быстр, чтобы генерировать сигналы в диапазоне AM-вещания, и мы будем использовать его для создания AM-передатчика с лучшим качеством звука, чем тот, который мы построили в эксперименте 3. Некоторые читатели могут задаться вопросом: почему бы нам не использовать более простой Arduino? По сравнению с традиционными моделями Arduino (такими как Arduino UNO на основе микроконтроллера Atmel ATmega 328P), Pico гораздо мощнее и при этом дешевле. Существуют и другие платы Arduino с большей вычислительной мощностью и различными функциями, но большое количество моделей сбивает с толку, и мне будет сложно протестировать их все и определить, какие из них будут делать именно то, что мы хотим. Pico быстро стал популярным среди производителей, и я уверен, что он будет популярен еще долгое время. Вы можете запрограммировать его со своего компьютера, используя Arduino IDE, интерфейс которой очень хорошо знаком многим людям и позволяет использовать огромное количество библиотек, доступных в интернете. Несколько плат микроконтроллера производятся сторонними производителями с использованием одного и того же чипа RP2040, разработанного Raspberry Pi. Мой программный код может работать на этих сторонних платах, но я не могу протестировать их все, тем более что к тому времени, как вы это прочтете, будут выпущены новые версии. Поэтому предлагаю ограничиться оригинальной платой Raspberry Pi Pico с фирменным логотипом Raspberry. 100 Радио. Эксперименты с невидимыми волнами
О терминах Плата Pico представляет собой зеленый прямоугольник с золочеными разъемами по краям. Микроконтроллер RP2040 представляет собой микросхему, установленную в центре платы, как показано на рис. 4.4. Когда люди говорят о Pico, иногда они имеют в виду плату, а иногда – сам микроконтроллер на этой плате. Я постараюсь различать эти два понятия. Микроконтроллер RP2040 Порт USB Светодиод на плате Кнопка выбора загрузки (BOOTSEL) Плата Pico Рис. 4.4. Некоторые необходимые детали на плате Pico RP2040 использует архитектуру ARM. Процессоры ARM разных видов и с разными характеристиками встречаются в большинстве смартфонов, в одноплатных компьютерах Raspberry Pi и даже в японском компьютере Fugaku, который на данный момент является самым быстрым компьютером в мире1. Чип RP2040 представляет собой 32-битный микроконтроллер, то есть в его основных операциях используются числа длиной в 32 двоичных разряда. Микроконтроллер содержит 264 килобайта оперативной памяти для хранения переменных и 2 мегабайта энергонезависимой флеш-памяти для хранения скетчей. Он работает на частоте до 133 МГц и имеет два ядра, что означает, что он может выполнять две задачи параллельно. По стандартам микроконтроллеров это очень мощное устройство. Почему Arduino IDE? Вы можете пропустить этот раздел, если причины моего выбора языка и среды вам не интересны. Я включил его на случай, если некоторые читатели зададутся вопросом о причинах сделанного выбора. 1 Очевидно, эти строки относятся к 2020–2021 годам, когда суперкомпьютер Fugaku корпорации Fujitsu ненадолго возглавил рейтинг Toп-500 самых быстрых суперкомпьютеров. На момент выпуска американского оригинала книги в июле 2024 года Fugaku в этом рейтинге занимал четвертую строчку (оставаясь единственным суперкомпьютером в первой десятке, основанным на процессорах с архитектурой ARM). Эксперимент 4. Raspberry Pi Pico 101
Сначала нужно было выбрать, какой язык программирования использовать. Язык C – это старая школа, быстрый, но не очень удобный для пользователя, тогда как Python был разработан совсем недавно и должен был быть проще в изучении, чем C. Мне также пришлось выбирать среду разработки, которая влияет на то, какие программные библиотеки будут доступны. Я рассмотрел следующие четыре варианта программирования Pico: C/С++ SDK Аббревиатура SDK означает «software development kit» (т. е. «комплект для разработки программного обеспечения»). Данный пакет опубликован самой Raspberry Pi, хорошо документирован и содержит функции для доступа к различным аппаратным модулям, содержащимся в микроконтроллере RP2040. Процедура установки довольно сложна, особенно в Windows. Использование будет знакомо тем, кто программировал в Linux, но для других существует некоторый порог освоения. MicroPython Это версия языка программирования Python, разработанная для микроконт­ роллеров. Я ценю его простоту настройки и программирования, но он не включает поддержку всего необходимого оборудования (например, ЖК-дисплея и модулей FM-радио). Мы могли бы добавить сторонние языковые модули, чтобы обеспечить недостающие возможности, но управление ими сложно и, вероятно, изменится по мере выпуска новых версий. По этим причинам я решил не использовать Python (как и CircuitPython, версию языка, разработанную Adafruit). Arduino IDE Среда Arduino IDE разработана для языка C/C++. Платы микроконтроллеров Arduino и среда программирования Arduino IDE пользуются популярностью среди любителей уже более пятнадцати лет, и в результате было опубликовано множество библиотек, которые позволяют Arduino взаимодействовать с различными аппаратными средствами. Хорошей новостью является то, что многие библиотеки Arduino IDE также работают на Pico без каких-либо изменений. Плохая новость заключается в том, что вам придется выполнить некоторые дополнительные настройки в Arduino IDE, чтобы добавить поддержку Pico. Я решил, что такая настройка приемлема, поэтому выбрал Arduino IDE. У нее есть три преимущества:  для оборудования, которое мы будем использовать, доступны библиотеки, установка которых достаточно проста;  поскольку среда основана на C++, язык знаком многим людям, и я ожидаю, что он останется доступным в течение многих лет;  доступны специальные функции Pico из пакета C/C++ SDK, что позволяет нам в полной мере использовать аппаратное обеспечение Pico. Поскольку мы будем использовать версию C/С++ для Arduino, есть большая вероятность, что вы сможете запустить некоторые скетчи на традиционных 102 Радио. Эксперименты с невидимыми волнами
платах Arduino в тех случаях, когда мы не используем какие-либо функции, специфичные для Pico, или если нам не требуется мощный микроконтроллер. Однако я не могу гарантировать, что это всегда сработает. Скетчи и библиотеки Мы используем слово «скетчи» для обозначения кода, который создается для выполнения на микроконтроллерах, чтобы отличить его от программ, работающих на вашем ПК, таких как Arduino IDE. Библиотеки содержат готовые блоки кода для микроконтроллера. Вы можете использовать их, например, для выполнения таких задач, как управление ЖК-дисплеем. Некоторые библиотеки доступны на веб-сайте Arduino, а некоторые написаны отдельными людьми и находятся в свободном доступе для всех желающих. Поиск документации В этой книге нет места для подробного разъяснения всех особенностей Pico SDK, языка C или функций Arduino. Я буду включать документацию только для наших конкретных проектов. Если вы хотите узнать больше, можно просмот­ реть следующие источники. Официальную документацию Raspberry Pi Pico можно найти по адресу www.raspberrypi.com/documentation/microcontrollers/. Документация по языку программирования Arduino находится по адресу1 www.arduino.cc/reference/. Подробности об использовании системы Arduino для Pico вы найдете на сайте https://arduino-pico.readthedocs.io. В качестве справочного руководства по языку C++ я предлагаю справочник Кайла Лоудона (Kyle Loudon, «C++ Pocket Reference», O'Reilly Media, 2008)2. Установка Arduino IDE Первый шаг – установить Arduino IDE на ваш компьютер. Помните, что IDE – это среда разработки, позволяющая редактировать и писать скетчи. Вы можете думать об этом как о текстовом редакторе, разработанном специально для программирования. Если вы ранее использовали микроконтроллер Arduino, вероятно, у вас уже установлена версия Arduino IDE. Если это версия 2.0.0 или более поздняя, вы сможете использовать ее для платы Pico, если будете следовать моим инструкциям в разделе «Добавление кода для Pico» ниже. Мои инструкции проверены с версией 2.2.1. Если вы хотите свести к минимуму риск возникновения несо1 2 На русском языке наиболее полное описание языка Arduino находится на украинском сайте по адресу https://doc.arduino.ua/ru/prog/. На русском языке одно из самых популярных изложений языка C++ представляет книга: Герберт Шилдт. C++. Базовый курс. М.: Диалектика, 2019. Эксперимент 4. Raspberry Pi Pico 103
вместимости, используйте эту версию. Если на веб-сайте Arduino вам предложат более позднюю версию, вы сможете там разыскать заархивированные предыдущие версии, которые можно скачать. Установка IDE различается для разных операционных систем. Я предоставляю инструкции для Windows, Linux и macOS. Вы можете сразу перейти к разделу, который вам подходит. Пока не подключайте плату Pico! Установка Windows Не устанавливайте Arduino IDE через магазин Microsoft, поскольку имеющаяся там версия, как сообщается, несовместима с Pico. 1. Посетите сайт www.arduino.cc. Компания Arduino может изменить внешний вид и текст своего веб-сайта, но я считаю, что основные параметры останутся прежними. 2. Если вас попросят принять файлы cookie, выберите любой вариант, который вам подходит. 3. В строке меню сайта нажмите Software (Программное обеспечение). На этой странице в разделе Downloads (Загрузки) рядом с пунктом «Arduino IDE 2.2.1» (или более поздней версии) вы увидите раздел Download Options (Параметры загрузки). 4. Лучше всего подходит вариант Windows Win 10 and newer, 64 bits (Windows Win 10 и новее, 64-разрядная версия). Обратите внимание, что в Windows 7 я столкнулся с известной ошибкой, мешавшей установке, и не знаю, исправлена она для Windows 7 или нет, так как Win 7 больше не поддерживается ни Arduino, ни Microsoft1. Все мои тесты на компьютерах с Windows проводились с Windows 10. 5. После того как вы выберете нужную вам версию, вас могут спросить, хотите ли вы поддержать разработку Arduino IDE пожертвованием. Это необязательно. Вы можете нажать Just Download (Просто скачать). 6. После завершения загрузки на вашем компьютере должен появиться файл с именем arduino-ide_2.2.1_Windows_64bit.exe (или аналогичный). Это установщик для Arduino IDE. Как теперь найти файл? В зависимости от браузера и версии Windows в строке состояния загрузки может быть значок, означающий Show in Folder (Показать в папке) для только что загруженного файла. Иначе в строке меню может быть символ загрузки, показывающий стрелку вниз и линию. Нажмите эту опцию, если она появится; в противном случае найдите файл в папке Downloads (Загрузки) или на рабочем столе, в зависимости от настроек вашей системы. 1 Версии Arduino IDE 2 и более поздние ориентированы на Windows 10/11. В Windows 7 и более ранних работают Arduino IDE с первой цифрой 1 в номере версии, но, как свидетельствует автор, в Windows они не подходят для использования с Pico (в отличие от версий для Linux, см. далее). 104 Радио. Эксперименты с невидимыми волнами
Когда вы найдете загруженный файл, дважды щелкните его, чтобы открыть установщик, который предложит ряд вопросов и указаний. а. L  icense Agreement (Лицензионное соглашение). Вам необходимо нажать I Agree (Я согласен). б. M  ake the software available to all users or just yourself? (Сделать программное обеспечение доступным для всех пользователей или только для себя?) Это зависит от вашего желания. в. C  hoose Install Location (Выбор места установки). По умолчанию все в порядке – установка в системной папке пользователя. Нажмите Install (Установить). Начинается установка. Это может занять три или четыре минуты. 7. По завершении установки нажмите кнопку Finish (Готово). Вам должно быть предложено запустить IDE. Если предложение не появляется, найдите показанный на рис. 4.5 ярлык Arduino IDE, который был размещен на рабочем столе, если вы разрешили установщику сделать это. Дважды щелкните ярлык. Если вы не можете найти ярлык, запустите IDE из списка программ в меню Windows на вашем компьютере. Он будет указан в алфавитном порядке как «Arduino IDE». Рис. 4.5. Ярлык для Arduino IDE Если вы устанавливаете Arduino IDE впервые, вам может потребоваться выполнить некоторые дополнительные действия. 8. Microsoft может спросить вас, разрешите ли вы вносить изменения в ваше устройство. Можно смело согласиться. Вы также можете получить вопрос от «Защитника Windows», хотите ли вы разрешить подключение к интернету. Установите флажок для private networks (частных сетей) и снимите флажок для public networks (общедоступных сетей). Затем нажмите Allow Access (Разрешить доступ). 9. Вас могут попросить разрешить установку программного обеспечения от Adafruit Industries. Нажмите Install (Установить). 10. Вас могут попросить разрешить установку USB-драйвера Arduino. Нажмите Install (Установить). (Спросить могут дважды.) 11. Вас могут попросить разрешить установку Genuino USB Driver. Нажмите Install (Установить). Теперь Arduino IDE должна запуститься, в ее окне будет показан минимальный шаблон скетча, как видно на рис. 4.6. Обратите внимание, что в черной области внизу окна отображаются сообщения о состоянии, включая сообщения об ошибках. Вы можете вернуться к этому рисунку для справки. Пользователи Windows могут пропустить следующие два подраздела, описывающие установку в Linux и MacOS. Эксперимент 4. Raspberry Pi Pico 105
Кнопка загрузки Выпадающее меню плат Кнопка менеджера плат Кнопка менеджера библиотек Скетч Окно статуса Рис. 4.6. Начальный экран Arduino IDE с указанием некоторых функций, которые вам могут понадобиться Установка в Linux Самый простой способ установить Arduino в Linux – это, вероятно, использовать менеджер пакетов вашего дистрибутива Linux. Например, в Ubuntu или Debian это можно сделать, выполнив в терминале следующую команду: sudo apt install arduino Если вас спросят, хотите ли вы, чтобы ваша текущая учетная запись была добавлена в группу dialout (удаленного доступа), сделайте это. Это необходимо для разрешения доступа к последовательным портам. В настоящее время приведенная выше команда устанавливает старую версию Arduino IDE 1.8. Я успешно использовал эту версию с Pico и примерами в данной книге. Вы можете следовать приведенным ниже инструкциям, единственное отличие заключается в том, что Library Manager (Менеджер библио­ тек) и Boards Manager (Менеджер плат) запускаются только через меню в верхней части главного окна. Вы также можете выполнить шаги 1–3 из приведенных выше инструкций по установке в Windows и загрузить с сайта последнюю версию Arduino для Linux. Установка в MacOS Посетите сайт www.arduino.cc и перейдите на вкладку Software (Программное обес­ печение). Прокрутите до раздела Downloads (Загрузки) и в строке с указанием версии «Arduino IDE 2.2.1» (или более высокой) выберите macOS Intel или macOS Apple Silicon, в зависимости от процессора вашего компьютера. Будет загружен файл образа с расширением .dmg. Сохраните его, например, на рабочем столе. 106 Радио. Эксперименты с невидимыми волнами
Дважды щелкните файл. Откроется окно, в котором вам нужно перетащить файл с именем Arduino IDE.app в папку Applications (Приложения), чтобы установить его. Когда установка завершится, можете закрыть это окно. Теперь вы можете найти Arduino IDE среди своих приложений на панели запуска. Дважды щелкните его, чтобы запустить, и когда вас спросят, хотите ли вы запус­ тить программу, загруженную из интернета, нажмите Open (Открыть). Когда вы получите приглашение «Arduino IDE.app would like to access files in your Documents folder» (Arduino IDE.app хочет получить доступ к файлам в вашей папке Документы), нажмите ОК. Добавление кода для Pico Оставшаяся часть процедуры установки должна быть одинаковой для всех операционных систем. Ваш следующий шаг – установить библиотеку, позволяющую работать с платой Pico библиотекам Arduino, например для ЖК-дисплея, который вы будете использовать. В среде Arduino IDE имеется функция Boards Manager (Менеджер плат), которая установит за вас необходимый код. 1. Оставьте окно IDE открытым, но вернитесь в окно браузера, где вы посетите следующий репозиторий GitHub, поддерживаемый программистом по имени Earle E. Philhower III: https://github.com/earlephilhower/arduino-pico. 2. Прокрутите страницу вниз до раздела Installing via Arduino Boards Manager (Установка через менеджер плат Arduino) и перейдите к подразделу Installation (Установка). Вы увидите длинный URL-адрес, который выглядит следующим образом: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json. Не нажимайте на этот URL. Вместо этого выделите адрес мышью и нажмите <Ctrl+C> (<Command+C> на Mac), чтобы скопировать его. Обязательно скопируйте всю строку целиком. 3. Вернитесь в окно Arduino IDE, которое все еще должно быть открыто. Выберите меню File > Preferences (Файл > Настройки). (На Mac оно может называться Arduino IDE > Preferences). После чего откроется окно, подобное показанному на рис. 4.7. 4. При необходимости прокрутите вниз и щелкните поле Additional Boards Manager URLs (Дополнительные ссылки Менеджера плат, обведено красным на рис. 4.7). Если в нем уже есть текст, переместите курсор в конец текста и введите запятую. 5. Нажмите <Ctrl+V> (<Command+V> на Mac), чтобы вставить только что скопированный URL-адрес, как показано на рис. 4.7. 6. Нажмите ОК. Кажется, в этот момент ничего не происходит. Вы можете не увидеть подтверждение того, что введенный вами URL-адрес действителен, но это нормально. Эксперимент 4. Raspberry Pi Pico 107
Рис. 4.7. Окно Preferences (Настройки) Arduino IDE 7. В окне Arduino IDE выберите Tools > Board > Boards Manager (Инструменты > Плата > Менеджер плат) или нажмите кнопку Boards Manager (Диспетчер плат), показанную на рис. 4.6. 8. Подождите, пока список заполнится. Если у вас медленное подключение к интернету, это может занять некоторое время. Затем в строке поиска вверху диспетчера плат введите «Raspberry Pi Pico». 9. Теперь вы должны увидеть пункт под названием «Raspberry Pi Pico/RP2040, by Earle F. Philhower III», обведенный красным на рис. 4.8. Возможно, вам придется прокрутить вниз, если ему предшествует другой текст. Если вы не можете найти нужную запись, проверьте черное окно статуса в нижней части Arduino IDE на наличие сообщений об ошибках. Если длинный URL-адрес, который вы вставили, недействителен, вы должны получить сообщение об ошибке. Тогда вернитесь в окно браузера, снова скопируйте URL-адрес и повторите операцию вставки в окне Boards Manager. 10. Установите последнюю версию кода для платы Pico, нажав кнопку Install (Установить). (Возможно, вам придется прокрутить страницу вниз, чтобы найти ее.) Имеется индикатор процесса выполнения установки. Обратите внимание: если вы когда-либо устанавливали код библиотек ранее, а затем удалили Arduino IDE, код не будет удален, и вам не нужно будет его переустанавливать, хотя у вас может быть возможность обновить его. 108 Радио. Эксперименты с невидимыми волнами
Рис. 4.8. Найдите код для Raspberry Pi Pico за авторством Earle E. Philhower III и нажмите кнопку Install (Установить) 11. После завершения загрузки закройте Boards Manager, нажав кнопку в левой стороне окна. 12. Теперь плата Pico должна быть совместима с Arduino IDE. Чтобы убедиться, что вы можете выбрать ее в Arduino IDE, наведите курсор на окошко с выпадающим меню плат или щелкните пункт: Tools > Board > Raspberry Pi Pico/RP2040 > Raspberry Pi Pico. Если вы используете другую версию IDE, может оказаться меньше разделов, прежде чем вы дойдете до того, который включает «Raspberry Pi Pico». Имейте в виду, что в Arduino IDE меню Tools > Board (Инструменты > Плата) меняет свое содержимое в зависимости от выбранной в данный момент платы. Просто перейдите к последнему меню из серии и выберите Pico. На этом вы закончили процедуру настройки Arduino IDE под плату Raspberry Pi Pico. Ваш первый скетч для Pico Чтобы протестировать плату Pico, вы можете использовать скетч под названием Blink, который включен в качестве стандартной функции в Arduino IDE. Он просто мигает крошечным светодиодом, расположенным на плате Pico. Эксперимент 4. Raspberry Pi Pico 109
1. Если вы еще не подключили плату Pico к макетной плате, вы можете сделать это сейчас, как показано на рис. 4.9. Один из способов сделать это, не повредив руку или плату, – положить на плату Pico комок сложенных салфеток, а затем плотно и равномерно надавить ладонью. 2. Подключите плату Pico к USB-порту компьютера с помощью соответствующего кабеля. Напоминание: необходимо использовать полнофункциональный USB-кабель, способный передавать данные, а не только кабель для зарядки телефона. Когда вы купили Pico, возможно, он был поставлен с кабелем нужного типа. Маленький конец, представляющий собой разъем Micro USB, вставляется в металлическое гнездо, видимое на рис. 4.9 на левом конце платы. Обратите внимание, что этот тип вилки подходит только в одном положении; возможно, вам придется ее перевернуть. Рис. 4.9. Разместите плату Pico на макетной плате так, как показано на рисунке 3. Компьютеры Windows и Mac могут отображать уведомление о подключении нового диска. Вы можете игнорировать его. Если открылось новое окно, закройте его. 4. Чтобы загрузить скетч Blink в Pico, в меню IDE File > Examples (Файл > Примеры) выберите пункт 01.Basics > Blink. Скетч откроется в новом окне. Проверьте, что указана плата Pico: в меню Tools > Board (Инструменты > Плата) должно быть выбрано "Raspberry Pi Pico" > Raspberry Pi Pico/ RP2040 > Raspberry Pi Pico. Если нет, исправьте. Теперь нужно выбрать порт на вашем компьютере для передачи данных. Для совершенно нового Pico, который ранее не был запрограммирован, правильным вариантом будет Tools > Port > UF2 Board (Инструменты > Порт > UF2 Board). Pico, который ранее был запрограммирован из Arduino IDE, будет отображаться как последовательный порт, например COM1, COM2, COM3 110 Радио. Эксперименты с невидимыми волнами
или COM4. Если вы видите в списке несколько последовательных портов, выберите порт с наибольшим номером1. Если IDE распознает плату Pico и готова к обмену данными с ней, вы должны увидеть символ USB рядом с названием платы, обведенный красным на рис. 4.10. 5. Нажмите кнопку Upload (Загрузить) в Arduino IDE. Это маленькая стрелка, указывающая вправо, выделена на рис. 4.6. В процессе загрузки скетч компилируется в машинный язык, затем загружается в микроконтроллер через USB-кабель и запускается автоматически. Возможно, вам придется набраться терпения: процесс компиляции может занять несколько минут. Рис. 4.10. Если в главном окне IDE около платы Pico отображается символ USB (обведено красным), вы можете загрузить свой скетч в Pico На Mac вы можете увидеть сообщение: «"Arduino IDE.app" would like to access files on a removable volume» («"Arduino IDE.app" хочет получить доступ к файлам на съемном томе»). Если вы получили это сообщение, нажмите ОК. Теперь вы должны увидеть, как встроенный светодиод Pico медленно мигает. (Если вы забыли, где расположен светодиод, обратитесь к рис. 4.4.) Если все в порядке, то можете пропустить оставшуюся часть этого раздела и перейти к следующему, в котором рассказывается, как подключить ЖК-дисплей к Pico. 1 Номер COM-порта зависит от установленного и подключенного к компьютеру оборудования. Наверняка убедиться, что вы подключаетесь к нужному порту, в Windows можно следующим образом: через Панель управления запустите Диспетчер устройств и, наблюдая за списком подключенного оборудования, выдерните USBразъем из платы контроллера и снова вставьте его. Название порта, который при этом будет автоматически исчезать и вновь появляться в списке, соответствует подключаемой плате. То же самое можно делать, наблюдая за списком портов в меню Arduino IDE Tools > Port (Инструменты > Порт). Это может не касаться новой, ни разу не программировавшейся платы Pico (см. далее). Эксперимент 4. Raspberry Pi Pico 111
Устранение неисправностей Вы можете в окне IDE получить сообщение об ошибке следующего содержания: «Upload Error: Failed Uploading: no upload port provided» (Ошибка загрузки: не удалось загрузить: не указан порт загрузки). При первом программировании нового микроконтроллера Pico он не отображается на компьютере как последовательный порт. Выберите в меню Tools > Port (Инструменты > Порт) пункт UF2 Board и повторите попытку. Если вы уже программировали Pico, в меню Tools > Port должны быть показаны доступные COM-порты, как указывалось ранее. В некоторых случаях вам может потребоваться повторно выбрать COM-порт, а затем использовать раскрывающееся меню, чтобы повторно выбрать Raspberry Pi Pico. Если светодиод на плате Pico начнет мигать после загрузки скетча Blink, ваш первый скетч работает. Вы можете закрыть окно со скетчем и пропустить рекомендации по устранению неполадок. Устранение неполадок в ранних версиях IDE Если вы используете более раннюю версию IDE, например 1.8, и первая загрузка скетча не удалась, возможно, вам придется выполнить некоторые действия по устранению неполадок, перечисленные ниже. 1. Если скетч Blink еще не открыт, вернитесь к меню File (Файл) и откройте его снова. 2. Cохраните скетч под новым именем, например blink_copy, поскольку скетчи примеров нельзя изменять под исходными именами. 3. Перейдите в пункт меню Sketch > Export Compiled Binary (Скетч > Экспорт двоичного файла). Скетч скомпилируется и сохранится. 4. Перейдите в меню Sketch > Show Sketch Folder (Скетч > Показать папку скетча). Откроется окно, в котором вы увидите сохраненный скетч blink_copy. Если есть папка с именем build, откройте ее, а затем откройте содержащуюся в ней папку, имя которой начинается с rp2040. Найдите файл с расширением .uf2. (Windows по умолчанию может скрывать расширения файлов.) Этот файл содержит ваш скетч в формате, подходящем для загрузки в Pico. 5. В Windows 10 щелкните значок USB в углу панели задач. (Значок выглядит как небольшой USB-разъем. Он может быть скрыт, пока вы не нажмете на стрелку.) 6. Вы должны увидеть опцию Open Devices and Printers (Открыть устройства и принтеры). Нажмите эту опцию и в открывшемся окне найдите внешний диск, указанный под таким именем, как RP1 или RP2. (На Mac вы вместо этого открываете Finder и находите съемный диск RPI-RP2 в левой части окна.) 7. Щелкните этот диск, чтобы открыть для него окно. 8. Если вы его не нашли, отсоедините USB-кабель от Pico. Нажмите и удерживайте кнопку BOOTSEL на плате Pico (см. рис. 4.4), пока снова подклю112 Радио. Эксперименты с невидимыми волнами
GP16 GP17 GND GP18 GP19 GP20 GP21 GND GP22 RUN GP26 ADC0 GP27 ADC1 GND GP28 ADC2 ADC_VREF 3V3(OUT) 3V3_EN GND VSYS VBUS чаете USB-кабель. Отпустите кнопку BOOTSEL, когда USB подключен. Теперь должно открыться окно микроконтроллера Pico. 9. Перетащите файл blink_copy с расширением .uf2 в окно Pico. Это должно загрузить скетч в микроконтроллер Pico и запустить мигание светодиодом. Теперь, когда IDE выяснила, как найти Pico, плата Pico должна появиться в меню Tools > Port (Инструменты > Порт) IDE и в раскрывающемся меню в верхней части окна IDE1. Вы можете выбрать ее там. С этого момента Arduino IDE должна иметь возможность по умолчанию загружать скетчи непосредственно в Pico. Вы можете попробовать это, нажав кнопку со стрелкой Upload (Загрузить). Скетч должен автоматически скомпилироваться и загрузиться в микроконтроллер, перезаписав предыдущую копию, а светодиод должен продолжать мигать. GP2 GP3 I2C0 SDA GP4 I2C0 SCL GP5 GND GP6 GP15 GND GP14 GP1 10 11 12 13 14 15 16 17 18 19 20 GND 9 GP13 8 GP12 7 GP11 6 GP10 5 GND 4 GP9 3 GP8 2 GP7 1 GP0 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Рис. 4.11. Функции выводов на плате Pico 1 Заметим, что выпадающее меню с перечислением плат в старых версиях Arduino IDE (до 1.8.x включительно) отсутствует, оно появилось лишь начиная с версии 2. Список плат в старых версиях доступен только через меню Tools > Board (Инструменты > Плата). Эксперимент 4. Raspberry Pi Pico 113
Особенности платы Pico Чтобы познакомиться с Pico и подготовиться к следующим проектам, я хочу, чтобы вы подключили Pico к ЖК-дисплею. Я буду называть площадки для пайки по краям платы Pico, показанные крупным планом на фотографии платы (рис. 4.11), выводами – к ним припаиваются контакты штыревого разъема, соединяющие Pico с макетной платой. Выводы имеют номера, а также обозначаются сокращениями, представляющими их функции. По ходу дела я буду объяснять эти сокращения подробнее, но сейчас просто перечислим, что они означают1. Вывод 39 VSYS – это напряжение питания всей системы, равное 5 В постоянного тока. Плата Pico принимает 5 В постоянного тока через USB-кабель от подключенного компьютера и направляет часть его на этот вывод, чтобы вы могли питать от него внешние устройства. Не подключайте батарею или адаптер переменного тока к плате Pico. Ваш компьютер обеспечивает всю необходимую ему мощность. GND – это отрицательный вывод питания (общий провод схемы), подключенный к корпусу компьютера (а также к заземлению, если оно необходимо2). Для вашего удобства на плате Pico имеется несколько выводов GND. Все эти выводы соединены друг с другом внутри платы. 22 23 24 25 27 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 Разъем USB 2 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico 5В 1 USB-кабель от компьютера 39 40 5В к ЖК-дисплею Кнопка Reset К выв. SCL платы дисплея К выв. SDA платы дисплея Диод Шоттки BAT48 К выв. GND платы дисплея 3, 3 В Рис. 4.12. Схема подключения ЖК-дисплея к плате Pico Выводы 6 и 7, обозначенные на рис. 4.11 I2C03, позволяют плате взаимодействовать с внешними устройствами, такими как ЖК-дисплей. I2C – это название протокола связи, который часто используется микроконтроллерами. 1 2 3 Указанные на рис. 4.11 названия функций выводов нанесены непосредственно на плату Raspberry Pi Pico с нижней стороны. Подробнее о выводах, обозначенных сокращением GND, см. сноску во введении на стр. 26. На плате с нижней стороны они обозначены только как GP4 и GP5. 114 Радио. Эксперименты с невидимыми волнами
Выводы, обозначенные GP с цифрами в конце, являются выводами общего назначения (General Pirpose), которые настраиваются с помощью команд в скетче, загруженном в микроконтроллер. Вывод 36, обозначенный как 3V3 (out), обеспечивает питание 3,3 В для любого внешнего компонента, которому это необходимо. Микроконтроллер Pico на самом деле представляет собой устройство с напряжением питания 3,3 В. В плату встроен стабилизатор напряжения, который преобразует 5 В от USBразъема в 3,3 В для микроконтроллера и внешних устройств. Обратите внимание, что микроконтроллер может быть поврежден, если случайно подать напряжение 5 В на любой из контактов платы1. Будьте осторожны при выполнении соединений! Поскольку в этой книге я использую макетные платы, ориентированные горизонтально, и указываю на их верхний, нижний и левый края, то советую вам ориентировать макет таким же образом. Плата Pico должна быть подключена так, чтобы она находилась на расстоянии двух столбцов отверстий от левого края макетной платы, как показано на рис. 4.9. пОдключение жк-дисплея На рис. 4.12 показана схема простой схемы с использованием перемычек для соединения платы Pico с маленькой интерфейсной платой на задней панели ЖК-дисплея. Эта же схема графически показана на рис. 4.13. 5 В к выв. VCC ЖК-дисплея USB-кабель от компьютера К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея К выв. GND ЖК-дисплея 3,3 В Рис. 4.13. Соединения на макетной плате от платы Pico к ЖК-дисплею 1 Исключение представляет вывод общего питания VSYS, который при отключении USB-кабеля может подключаться к внешнему питанию до 5,5 В. Подробнее см. сноску на стр. 174. Эксперимент 4. Raspberry Pi Pico 115
Перемычка подсветки Подстроечный резистор Соединения от макетной платы Рис. 4.14 Интерфейсная мини-плата на задней панели ЖК-дисплея Прежде чем приступить к созданию этой схемы, отключите USB-соединение. Первый шаг – выполнить четыре соединения между макетом и мини-платой на задней панели ЖК-дисплея. Я настоятельно рекомендую выполнить эти соединения цветными проводами. Для этой цели вы можете использовать перемычки «вилка-гнездо». Каждый из этих проводов имеет одноконтактную вилку на одном конце, которую вы вставляете в макетную плату, и гнездо на другом конце, которое вы надеваете на один из четырех соединительных контактов интерфейсной платы ЖК-дисплея на задней панели. Красный провод подает питание 5 В от платы Pico на ЖК-дисплей, синий провод подключается к общему проводу (GND). Зеленый и желтый провода будут отправлять данные на ЖК-дисплей по протоколу I2C. Трехбуквенные сокращения (SCL и SDA) на рис. 4.13 должны соответствовать надписям рядом с контактами на плате ЖК-дисплея, как вы можете видеть на рис. 4.14. На схеме рис. 4.12 и на макете на рис. 4.13 вы видите два диода между контактами 6 и 7 и красной нижней шиной на макете, подключенной к напряжению 3,3 В от вывода 36 платы Pico. Эти диоды включены для защиты платы Pico от перенапряжения, которое может поступить с ЖК-дисплея. ЖК-дисплей – это устройство с напряжением питания 5 В, но входы на плате Pico никогда не должны подключаться к напряжению выше 3,3 В. Красный проводник 3,3 В на рис. 4.12 и 4.13 показан пунктирной линией, чтобы напомнить вам, что он имеет напряжение 3,3 В, а не 5 В. Обратите внимание, что на наших схемах провод сплошного красного цвета означает напряжение питания 5 В, а красного с черным пунктиром – 3,3 В1. 1 Чтобы не путать проводники питания между собой, целесообразно нанести на провод 3,3 В пометки черным маркером или выбрать для одного из питаний другой цвет провода, например оранжевый, который также обычно присутствует в наборах перемычек. 116 Радио. Эксперименты с невидимыми волнами
Если напряжение на зеленом или желтом проводе интерфейса ЖК-дисплея превышает 3,3 В, диод шунтирует это избыточное напряжение, отводя ток на шину положительного питания. Может показаться запутанным, что отрицательный вывод (катод) каждого диода подключен к положительной шине, но помните: мы хотим, чтобы диод проводил ток только в том случае, если зеленый или желтый провод несет напряжение более 3,3 В. В этом случае шина с напряжением 3,3 В будет «более отрицательной», чем провод. Для этой цели мы используем диоды Шоттки, поскольку они имеют более низкое пороговое напряжение, чем обычные кремниевые диоды, такие как 1N41481. Замыкающая кнопка подключена между контактом 30 и отрицательной шиной в нижней части платы. Нажатие на кнопку подключает вывод 30 и сбрасывает Pico2. Внутри платы Pico имеется подтягивающий резистор для кнопки, поэтому вам не нужно добавлять его самостоятельно. Тест дисплея Вы уже почти готовы отправить текст на ЖК-дисплей. Остался еще один шаг: загрузить код библиотеки, который позволит плате Pico взаимодействовать с дисплеем. (Вы можете представлять такую библиотеку как подобие драйвера принтера на ПК.) Чтобы получить такой код, сначала вы должны найти его в интернете и загрузить на свой компьютер. 1. В окне IDE выберите Sketch > Include Library > Manage Libraries... (Скетч > Подключить библиотеку > Управление библиотеками...) или нажмите кнопку Library Manager (Диспетчер библиотек), чтобы открыть панель установщика библиотек. 2. В поле поиска под заголовком окна Library Manager (Диспетчер библио­ тек) введите «hd44780». Результат, который вам нужен, не будет первым в списке. Возможно, вам придется прокрутить список вниз, пока не найдете название «hd44780 by Bill Perry». Оно обведено красным на рис. 4.15. 3. Нажмите Install (Установить). 4. После завершения установки закройте панель установщика библиотек, еще раз нажав кнопку Library Manager (Диспетчер библиотек). 1 2 Как указано в разделе 5.2.3 описания микроконтроллера RP2040 (https://datasheets. raspberrypi.com/rp2040/rp2040-datasheet.pdf), максимально допустимое внешнее напряжение на любом выводе микросхемы равно Vdd+0,5 В, где Vdd – напряжение питания (3,63 В максимум). Таким образом, обычный кремниевый диод в качестве ограничителя действительно формально не проходит, т. к. у него падение напряжения равно 0,6–0,7 В, что превышает указанную величину. Указанный тип диода Шоттки BAT48 можно заменить на любой другой маломощный с гибкими выводами и допустимым током не менее 100 мА (например, 1N5818/1N5819, BAT41, BAT46 и т. д.). Почему-то для контроллера RP2040 этот вывод вопреки обычаю называется не Reset (сброс), а RUN (запуск), см. рис. 4.11. Эксперимент 4. Raspberry Pi Pico 117
Рис. 4.15. Для управления ЖК-дисплеем необходимо установить библиотеку, обведенную красным 5. В библиотеку включена стандартная тестовая программа Hello World. Теперь вы можете найти ее в меню IDE File > Examples (Файл > Примеры) в пункте hd44780 > ioClass > hd44780_I2Cexp > HelloWorld. (В меню Examples пункт hd44780 может находиться внизу списка, хотя остальная часть списка расположена в алфавитном порядке.) Теперь скетч появится в новом окне IDE. 6. В главном окне IDE вернитесь в меню Tools > Board (Инструменты > Плата) и убедитесь, что все еще выбрана Raspberry Pi Pico/RP2040 > Raspberry Pi Pico. 7. В окне скетча Hello World щелкните стрелку Upload (Загрузить), чтобы отправить скетч в микроконтроллер. Скетч начнет работать, но на дисплее вы можете пока ничего не увидеть. 8. На задней стороне ЖК-дисплея находится подстроечный резистор, регулирующий яркость экрана (обведен на рис. 4.14). Чтобы вращать его, вам понадобится очень маленькая плоская отвертка. Вставьте отвертку и удерживайте ее на месте, перевернув плату так, чтобы видеть ее переднюю часть. Поверните отвертку в одну или другую сторону, и вы найдете золотую середину, при которой экран не слишком яркий и не слишком темный, и вы увидите текст «Hello, World!». 118 Радио. Эксперименты с невидимыми волнами
Если это не работает На рис. 4.14 я обвел небольшую черную перемычку, соединяющую два контакта на задней стороне платы ЖК-дисплея. Эта перемычка должна присутствовать для активации подсветки ЖК-экрана. Если перемычка отсутствует, экран не будет подсвечиваться. Вам придется закоротить контакты между собой. Это можно сделать с помощью пинцета, зажима «крокодил» или, осторожно обернув кусок проволоки вокруг двух контактных штырьков, сжать его острогубцами. Если дисплей не подключен должным образом, возможно, из-за ошибки соединений, библиотека ЖК-дисплея заметит, что соединение I2C не удалось, и сообщит об ошибке, мигнув встроенным светодиодом Pico четыре раза подряд, затем установив более длительную паузу, после чего последовательность мигания повторяется. Разбираемся в скетче Скетч Hello World содержит комментарии, объясняющие действия инструкций в тексте скетча. Более подробную документацию по библиотеке можно найти в Arduino IDE в разделе File > Examples > hd44780 > Documentation (Файл > Примеры > hd44780 > Документация). Пример скетча, аналогичный только что запущенному примеру Hello World, показан на рис. 4.161. Ниже я включил краткое описание его функций. Если вас не очень интересует, как работает соединение I2C, поскольку вам не терпится начать использовать Pico для радиопроектов, смело пропустите остальную часть этой главы. Вы всегда можете вернуться к нему позже. Библиотека Wire, включенная во вторую строку скетча на рис. 4.16, управляет связью по интерфейсу I2C. По умолчанию он использует выводы Pico 6 и 7 для линии тактовой частоты SCL и линии передачи данных SDA шины I2C. Следующие две строки включают библиотеку дисплея. В строке 15 вызов функции status = lcd.begin(LCD_COLS, LCD_ROWS); инициализирует дисплей и сообщает библиотеке его размер. Наш ЖКдисплей имеет формат «1602», что означает, что он имеет 16 столбцов (column) и 2 строки (row). Функция lcd.begin возвращает 0, если дисплей был успешно инициализирован, и это проверяется в строке 16. Вызов функции lcd.setCursor(column, row); в строке 24 позволяет переместить курсор в указанную позицию на дисплее. Номера строк и столбцов начинаются с 0,0 для верхнего левого угла. Курсор не виден (если он не включен специальной командой), но указывает место, с которого будущая команда вывода начнет размещать свой текст. Для вывода текста или значений переменных на дисплее используется функция lcd.print(). При отправке текста на ЖКдисплей любые символы, уже находящиеся на экране в позициях, выходящих за пределы отправленного текста, остаются неизменными, что может 1 Отметим, что скетч на рис. 4.16 выводит другой текст, указывающий на использование строк по отдельности (см. далее). Эксперимент 4. Raspberry Pi Pico 119
đ1 đ2 đ3 đ4 đ đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 // Wire.h #include #include #include modules is a library for I2C and is part of Arduino <Wire.h> <hd44780.h> // the general LCD library <hd44780ioClass/hd44780_I2Cexp.h> // LCD library for I2C-equipped LCD hd44780_I2Cexp lcd ; // define the size of the display const int LCD_COLS = 16 ; const int LCD_ROWS = 2; void setup () { int status ; status = lcd .begin (LCD_COLS , LCD_ROWS ); if (status ) // non zero status means it was unsuccessful { hd44780 :: fatalError (status ); // does not return } // Print a message to the LCD lcd .print ("First row." ); // Go to the second row lcd .setCursor (0, 1); // Print another message lcd .print ("Second row." ); } void loop () { } Рис. 4.16. Пример кода для использования ЖК-дисплея с Pico привести к путанице. Чтобы очистить отдельные позиции на дисплее, можно отправлять строки, дополненные пробелами, или использовать функцию lcd.clear(); для очистки дисплея целиком. Используемый здесь ЖК-дисплей содержит стандартный чип контроллера ЖК-дисплея под названием HD44780. Сам дисплей состоит из сетки пикселей, каждый из которых может быть включенным или выключенным (темным или светлым). Чип контроллера посылает сигналы на дисплей для включения или выключения пикселей, быстро сканируя ряды пикселей. Конт­роллер имеет внутреннюю оперативную память для символов, которая 120 Радио. Эксперименты с невидимыми волнами
отображается на постоянное запоминающее устройство, содержащее таблицы символов – шаблоны конфигураций пикселей, соответствующие каждому символу. Вы можете отправлять команды типа «поместить символ b в текущую позицию курсора» без необходимости указывать, какие именно пиксели необходимы для отображения b. Также можно определить до восьми пользовательских символов. Контроллер HD44780 сам по себе имеет параллельный интерфейс, то есть данные передаются на него по четырем или восьми линиям передачи данных и некоторым линиям управления. В техническом описании HD44780 подробно объясняется, как отправлять текст на дисплей и размещать его. Там также объясняется, какие доступны символы, а также как применить некоторые специальные эффекты: инвертированный текст, мигающий текст или мигающий курсор. Чтобы сэкономить на количестве соединений и занятых выводов микроконт­ роллера, мы используем дисплей с адаптером I2C. Адаптер широко доступен в интернет-магазинах и нередко продается вместе с ЖК-модулями. Целесо­ образно приобрести ЖК-дисплей с уже припаянным адаптером интерфейса I2C. Работающий ЖК-дисплей с адаптером, подключенный к макетной плате, показан на рис. 4.17. Рис. 4.17. Успешное завершение программы тестирования ЖК-дисплея Эксперимент 4. Raspberry Pi Pico 121
чтО дальше? Этот эксперимент почти полностью представлял собой описание процесса настройки, необходимой для обретения некоторых возможностей, которые вам понадобятся в оставшейся части книги. Вы должны были получить основы знаний об использовании микроконтроллера и увидеть, как он может отображать сообщения на подключенном ЖК-дисплее. Действия по подготовке Pico к работе могут оказаться полезными, если вы решите использовать его в том числе и для целей, не связанных с радиосвязью. Далее мы узнаем об использовании Pico в качестве основы для радиопередатчика.
Эксперимент 5 ТЕСТОВЫЙ ПЕРЕДАТЧИК НА ОСНОВЕ PICO
Т еперь, после настройки Pico, вы обнаружите, что он легко может работать как радиопередатчик. Это связано с тем, что соответствующий скетч может заставить Pico создавать широкий диапазон частот, вплоть до 10 МГц (мегагерц, а не килогерц!). Фактически Pico может делать две вещи одновременно: генерировать несущую волну и модулировать ее звуковой частотой. Более того, он может делать это с большой точностью, в отличие от таймеров 555, которые вы использовали в эксперименте 1 и которые невозможно настроить точно. Требуется всего около 40 строк кода, чтобы сообщить микроконтроллеру, как выполнять эти задачи. После того как вы загрузите этот код, мы просмотрим его построчно, чтобы объяснить, как он работает. Придется изучить некоторые элементы программирования, чтобы можно было изменить скетч или написать свой собственный. Вы также увидите, как встроенная в Pico функция, известная как широтно-импульсная модуляция, может быть адаптирована для передачи тестовых тонов посредством радиопередачи. Что вам понадобится • • • • • Любой недорогой стандартный AM-радиоприемник. Можно использовать AMR2, макет AMприемника, который мы построили в эксперименте 2. Если вы используете AMR2, вам понадобятся две макетные платы: одна для AMR2, а другая для схемы Pico с дисплеем, построенной в эксперименте 4 (см. рис. 4.17), которую мы будем модифицировать в этом эксперименте. Компоненты, перечисленные в начале эксперимента 4, а также следующие дополнительные компоненты: подстроечный резистор, 10 кОм (1 шт.); керамический конденсатор, 1 мкФ (1 шт.); резистор, 100 Ом (1 шт.).
3,3 В 1 мкФ 5В к ЖК-дисплею 22 23 24 25 27 21 20 19 18 17 16 15 13 12 11 10 9 8 7 6 5 4 3 2 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico Разъем USB 14 5В 1 USB-кабель от компьютера 39 40 10 кОм Кнопка Reset К выв. SCL платы дисплея 100 К выв. SDA платы дисплея Диод Шоттки BAT48 К выв. GND платы дисплея 3,3 В Рис. 5.1. Схема создана добавлением компонентов в схему рис. 4.12 3,3 В 5 В к выв. VCC ЖК-дисплея 1 мкФ 10 кОм USB-кабель от компьютера К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея 100 К выв. GND ЖК-дисплея 3,3 В Рис. 5.2. Схема по рис. 5.1 на макетной плате тестируем сигнал Схема на рис. 5.1 и 5.2 получена добавлением трех компонентов в схему по рис. 4.12 и 4.13. Это все, что нужно, чтобы превратить Pico в передатчик, потому что новый скетч, который вы загрузите в Pico, сделает все остальное. Подстроечный резистор 10 кОм будет регулировать частоту передачи, а синяя петля из провода (около 15 см) в нижней части платы является антенной, Эксперимент 5. Тестовый передатчик на основе Pico 125
передающей сигнал на любой ближайший AM-приемник. Скетч под названием 5-PWM_frequency_generator, показанный на рис. 5.3, можно получить со страницы GitHub по адресу https://github.com/fjansson/MakeRadio и загрузить его в Pico. При этом он автоматически перезапишет (заменит) скетч, который до этого был записан в памяти Pico. đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 #include #include #include <Wire.h> <hd44780.h> <hd44780ioClass/hd44780_I2Cexp.h> hd44780_I2Cexp lcd ; const int LCD_COLS = 16 ; const int LCD_ROWS = 2; const int output_pin = 15 ; void setup () { int status ; status = lcd .begin (LCD_COLS , LCD_ROWS ); if (status ) // non-zero status means it was unsuccessful { hd44780 :: fatalError (status ); } } void loop () { float trimmer = analogRead (A0 )/1023.0 ; int frequency = trimmer *1500000 + 500000 ; lcd .clear (); lcd .print (frequency /1000 ); lcd .print (" kHz" ); analogWriteFreq (frequency ); analogWriteRange (4); int i; for ( i = 0; i < 100 ; i++ ) // 200 ms tone { analogWrite (output_pin , 0); // duty cycle 0% - output no carrier delay (1); analogWrite (output_pin , 2); // duty cycle 50% - output carrier wave delay (1); } delay (100 ); // 100 ms silence } Рис. 5.3. Скетч для превращения Pico в радиопередатчик 126 Радио. Эксперименты с невидимыми волнами
Как только загрузка завершится, Pico начнет выполнять инструкции скетча, и на ЖК-дисплее вы увидите число, обозначающее несущую частоту в кГц. Вращайте подстроечный резистор, и частота должна изменяться от 500 кГц до 2000 кГц, с некоторым запасом охватывая диапазон AM-вещания. Установите подстроечный резистор в середину диапазона. Теперь вы можете принять сигнал с помощью любого портативного радиоприемника или схемы AMR2, которую мы построили ранее. (Во избежание путаницы не забудьте отключить генератор тестовых сигналов на микросхемах 555 в старой конфигурации.) Дальность вашей передачи должна составлять около 1 м. Когда настроитесь на нужную частоту, вы услышите серию быстрых звуковых сигналов. Pico делает три вещи:  генерирует несущую частоту;  для создания звукового сигнала быстро включает и выключает несущую;  добавляет небольшие паузы в звук для создания прерывистого сигнала. Если вы используете AMR2, теперь вы можете узнать, каков на самом деле его диапазон частот. Полностью поверните конденсатор настройки AMR2 против часовой стрелки, а затем поворачивайте подстроечный резистор на передатчике Pico до тех пор, пока звуковые сигналы не станут максимально громкими. AMR2 и ваш тестовый передатчик теперь настроены на одну и ту же частоту, которая отображается в виде числа на ЖК-экране. Запишите его. Если вам сложно найти положение подстроечника, при котором звуковые сигналы принимаются с наибольшей громкостью, попробуйте отодвинуть приемник от передатчика. Повторите процедуру, полностью 1100 1200 повернув колесико переменного кон1000 денсатора на AMR2 по часовой стрелке, 1300 900 и вращайте подстроечный резистор, пока сигнал не станет максимально громким. Запишите новый номер на 800 1400 ЖК-экране. Теперь вы можете откалибровать AMR2. Вращайте подстроечный резистор на схеме Pico с шагом 700 1500 50 кГц, согласно показаниям на ЖКдисплее. Отрегулируйте переменный 600 конденсатор на AMR2 так, чтобы он 1600 Килогерц соответствовал, и вы сможете сделать шкалу настройки для AMR2, аналогичРис. 5.4. Шкала настройки радиоприемника AMR2. Фактический диапазон частот ную той, что показана на рис. 5.4. Разбираемся в скетче и интервалы, с которыми они распределяются по циферблату, будут зависеть от конкретных компонентов В строках 1, 2 и 3 скетча (рис. 5.3) указано включение библиотеки для ЖК-экрана. Эта библиотека по-прежнему должна находиться в Arduino IDE, куда вы загрузили ее в эксперименте 4. Вам необходимо успешно завершить эксперимент 4, чтобы все остальные скетчи в этой книге распознавали ЖК-экран. В противном случае они не будут работать. Эксперимент 5. Тестовый передатчик на основе Pico 127
В строках 6 и 7 создаются две константы с именами LCD_COLS и LCD_ROWS как целые числа со значениями 16 и 2 соответственно. Это определяет количество столбцов и строк на экране дисплея. Если позже вы воспользуетесь дисплеем с другим экраном, вы можете изменить эти значения.  Константа сохраняет свое значение во время работы программы.  Целое число – это число без дробной части. Строка 9 определяет еще одну константу, выбирающую вывод, который мы выбрали для подключения антенны. Мы используем вывод GP15 контроллера, подключенный к выводу платы 20 (см. рис. 4.11). (Обратите внимание, что номера выводов в скетче не совпадают с номерами выводов платы Pico1.) В продолжение разбора листинга скетча заметим, что все скетчи Arduino содержат две функции, называемые setup() и loop(). (Функция – это последовательность команд под одним именем, заключенных в две фигурные скобки.) Дополнительные функции можно добавлять и вызывать по имени, но в этом скетче нам нужны только setup() и loop(). Термин void в строке 21 просто означает, что данная функция не возвращает результат. В функции setup() выполняются все начальные установки, а функция loop() затем повторяется бесконечно. В данном скетче setup() просто инициализирует ЖК-экран. Затем начинается цикл loop(), который повторяет все команды между фигурными скобками в строках 22 и 43. В строке 23 определяется переменная (variable) с именем trimmer, которая будет представлять положение подстроечного резистора.  Переменная подобна константе – т. е. значению, хранящемуся в памяти, – за исключением того, что скетч позволяет ее значению изменяться. В строке 23 analogRead() – это имя функции, встроенной в Pico2. Он считывает напряжение аналогового входа A0, подключенного к подстроечному резистору. Pico – цифровое устройство, но оно имеет аналоговые входы и может определять напряжение на них. Это напряжение может находиться в диапазоне от 0 В до 3,3 В. В вашей схеме аналоговый вход A0 подключен к подвижному контакту подстроечного резистора, и поскольку последний подключен между шиной положительного питания 3,3 В и общим проводом 0 В, можете быть уверены, что входное напряжение действительно будет находиться в диапазоне от 0 В до 3,3 В. Функция analogRead() не только считывает напряжение, но и автоматически преобразует его в целое число в диапазоне от 0 до 1023. Этот процесс называется аналого-цифровым преобразованием (АЦП). В строке 23 полученное целое число делится на 1023,0, чтобы получить десятичное число в диапазоне от 0 до 1. Например, предположим, что напряжение составляет 1,1 В (если подстроечный резистор повернут на одну треть диапазона). Тогда цифровое значение 1 2 Они совпадают с обозначениями выводов контроллера общего назначения (GPxx), приведенными на рис. 4.11, а также нанесенными на плату Raspberry Pi Pico с нижней стороны. На самом деле это стандартная функция Arduino IDE. Для Pico она, конечно, доработана в соответствии со спецификой данного микроконтроллера и реализацией его функций. 128 Радио. Эксперименты с невидимыми волнами
после АЦП будет равно 341. Разделите на 1023,0 и получите 0,333. Это значение присваивается переменной trimmer. Представление в виде дробного числа облегчает выполнение следующих вычислений. В строке 24 скетч создает целочисленную переменную с именем frequency (частота) путем умножения значения переменной trimmer на 1,5 млн и прибавления 500 000. Это диапазон в герцах, необходимый для генерации несущей радиоволны. Строки с 26 по 28 отображают несущую частоту на ЖК-экране в кГц (после деления значения частоты frequency на 1000). В строках 30 и 31 analogWriteFreq() и analogWriteRange() – это встроенные функции, которые устанавливают частоту и разрешение, которые будут использоваться при будущих вызовах функции analogWrite(). В скетче производится подготовка для построения несущей. В строке 33 устанавливается новая целочисленная переменная с именем i, которая будет использоваться для подсчета количества выполнений нового цикла между строками 35 и 40. Переменная i будет начинаться со значения 0 и отсчитываться до 99, прежде чем Pico выйдет из цикла в строке 40. Что происходит в этом цикле? Вспомните, что output_pin – это константа, значение которой определено в строке 9 скетча. Таким образом, analogWrite() отправит значение 0 через выходной контакт output_pin, что выключит его. Затем delay(1) добавит паузу в 1 миллисекунду (1/1000 секунды). Потом в строке 38 analogWrite() отправит через выходной контакт значение 2, за которым следует еще одна задержка в миллисекунду. Эту процедуру повторяют 100 раз. Его цель – выключать и включать несущую волну 100 раз (с частотой 500 Гц), как показано (приблизительно) на рис. 5.5. Результатом этого является создание звукового тона в радиоприемнике, настроенном на правильную несущую частоту со значением frequency. Но как была установлена частота несущей волны? По значению, присвоенному переменной frequency в строке 24. Подробнее о том, как это происходит, я объясню в следующем разделе, посвященном широтно-импульсной модуляции. После того как цикл повторится 100 раз, строка 42 вставляет паузу длительностью 100 миллисекунд, то есть 1/10 секунды. Это создает промежуток между одним звуковым сигналом и следующим. Частота несущей была установлена в скетче Pico функцией analogWriteFreq(). (На самом деле в секунду происходит больше колебаний, чем показано на рисунке.) Каждый пакет несущей доставляется функцией analogWrite() в скетче Pico с интервалом в 1 мс, за которым следует 1 мс несущей частоты. Интервалы 1 мс задаются функцией delay(). Поскольку несущая частота очень высока, все, что вы слышите, – это звуковая частота 500 Гц. В строке 43 основной цикл заканчивается, но далее автоматически повторяется, так как он начался со специального имени loop() в строке 21. Принцип работы этого скетча аналогичен принципу работы схемы, которую мы построили с парой таймеров 555 в эксперименте 1. В этой схеме быстрый таймер генерировал несущую, а более медленный таймер включал и выключал ее с частотой звукового сигнала. В скетче строки 36–39 делают нечто подобное. Как? С помощью встроенной в Pico функции широтно-импульсной модуляции. Эксперимент 5. Тестовый передатчик на основе Pico 129
Частота несущей была установлена в скетче Pico функцией analogWriteFreq(). (На самом деле в секунду происходит больше колебаний, чем показано на рисунке) 4 Вольты 3 2 1 0 0 1 2 3 4 5 Миллисекунды Каждый пакет несущей доставляется функцией analogWrite() в скетче Pico с интервалом в 1 мс, за которым следует 1 мс несущей частоты. Интервалы 1 мс задаются функцией delay() 4 Вольты 3 2 1 0 0 1 2 3 4 Миллисекунды Поскольку несущая частота очень высока, все, что вы слышите, – это звуковая частота 500 Гц Рис. 5.5. Строки 36–39 скетча создают примерно такой результат работы Pico 130 Радио. Эксперименты с невидимыми волнами 5
Широтно-импульсная модуляция Если у вас есть поток импульсов, похожий на прямоугольную волну, вы можете изменить длину каждого «включенного» импульса, сохраняя при этом частоту. Это может быть полезно, например, для регулировки видимой яркости светодиода. Если импульсы достаточно быстрые, светодиод будет выглядеть так, как будто он светится постоянно, но если импульсы «включены» только половину времени, светодиод будет вдвое тусклее. Это будет коэффициент заполнения 50 %. Коэффициент заполнения для прямоугольной волны – это процент времени, в течение которого выходной сигнал остается на высоком уровне. Если вы уменьшите ширину импульса (при сохранении постоянной час­ тоты) так, чтобы импульсы оставались на высоком уровне только четверть времени, у вас будет коэффициент заполнения 25 % и т. д. Это очень эффективный способ, например, регулирования яркости светодиода. Этот метод известен как широтно-импульсная модуляция, обычно сокращенно ШИМ (PWM), и его также можно использовать для управления некоторыми типами двигателей. На самом деле это настолько распространенная задача для микроконтроллеров, что многие из них включают ее в качестве встроенной функции. В нашем скетче для тестовой схемы радио используется функция ШИМ Pico как удобный способ создания выходного сигнала прямоугольной формы. Это обеспечивается функцией analogWrite(). В ее названии есть слово «analog», потому что в некоторых случаях вам может потребоваться отрегулировать выходное напряжение до уровня где-то между 0 В и 3,3 В, хотя в данном приложении это свойство функции не применяется. Однако нам все равно нужно установить коэффициент заполнения. Сначала функция analogWriteRange(4) в строке 31 установила произвольное число 4. Затем analogWrite(output_pin, 0); в строке 36 задает коэффициент заполнения 0 % (выключение несущей), потом после задержки в 1 миллисекунду AnalogWrite(output_pin, 2); в строке 38 устанавливает коэффициент заполнения несущей волны на 50 % (потому что 2 составляет 50 % от 4, а диапазон изначально был установлен на 4). Далее происходит еще одна задержка в 1 миллисекунду, в течение этого периода несущая сохранялась. Всплески несущей волны создают звуковую частоту. Наконец, строка 42 прервала звуковую частоту, оставив несущую включенной на 100 миллисекунд (1/10 секунды) без каких-либо перерывов. Поскольку амплитуда несущей постоянна, без каких-либо пропусков в ней, вы ничего не слышите в этот промежуток. Несущую лучше удерживать включенной во время этих перерывов, потому что это мешает радиоприемнику принимать другие станции. Это показано на рис. 5.6, где масштаб уменьшен по сравнению с рис. 5.5, поэтому пакеты несущих теперь отображаются в виде сплошных блоков. В результате вы слышите серию небольших звуковых сигналов вместо одного непрерывного сигнала. Эксперимент 5. Тестовый передатчик на основе Pico 131
Аудиосигнал создается пакетами несущих, каждый из которых длится 1 мс с перерывами в 1 мс между ними. (На самом деле существует 100 всплесков и промежутков, а не только те несколько, что показаны здесь) Несущую без каких-либо перерывов не слышно, потому что частота очень высокая Пауза . . . Пауза 100 мс Звук 200 мс Звук 200 мс Рис. 5.6. Всплески несущей частоты здесь отображаются сплошными прямоугольниками дОпОлнительные истОчники Для получения дополнительной информации о том, как функция analogWrite() работает на Pico, найдите раздел «Analog Outputs» в документации Arduino IDE для Pico (https://arduino-pico.readthedocs.io). Чтобы узнать подробности об оборудовании ШИМ (например, какие контакты могут генерировать независимые сигналы ШИМ), см. техническое описание контроллера RP2040 на сайте Raspberry Pi (https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdf). чтО дальше? В этом эксперименте вы узнали, как использовать Pico для генерации прямоугольных волн, и создали тестовый передатчик AM со считыванием частоты на ЖК-экране, что создало возможность калибровки приемника AMR2. Но, возможно, было бы неплохо передать нечто большее, чем гудки. Я обещал, что Pico сможет добавлять звук к несущей волне, и в следующем эксперименте вы увидите, как это сделать. И если помните, ранее упоминалось о необходимости того, чтобы несущая была чистой синусоидой, – далее обнаружится, что мы можем позаботиться и об этом.
Эксперимент 6 ПЕРЕДАЧА АУДИО С ПОМОЩЬЮ PICO
В эксперименте 3 вы построили AMT1, который модулирует несущую волну звуковой частотой и транслирует ее в диапазоне AMвещания. Однако его несущая была не очень стабильной, и у вас не было возможности точно узнать, какова его частота. В эксперименте 5 вы использовали аппаратное обеспечение широтно-импульсной модуляции (ШИМ) Raspberry Pi Pico как лучший способ генерации несущей волны, позволяющий точно установить частоту. Затем вы модулировали его, чтобы создать серию звуковых сигналов. Следующим шагом будет передача речи или музыки через Pico. Он не может синтезировать эти сложные сигналы самостоятельно, но может принимать аналоговый аудиовход от такого источника, как музыкальный проигрыватель, и оцифровывать его. После того как сигнал оцифрован, он может создать модулированную несущую, которая затем фильтруется для формирования довольно хорошей имитации синусоидальной волны. Наконец, у вас будет «настоящий» радиопередатчик, который мы назовем AMT2B. Что вам понадобится • • • • • • • • • • • • Схема из эксперимента 5, которую я теперь буду называть AMT2A, с Pico и ЖК-экраном на макетной плате (1 шт.). Радиоприемник: любой AM или AMR2 из эксперимента 2 (1 шт.). Керамические конденсаторы: 220 пФ (1 шт.), 47 нФ (1 шт.), 1 мкФ (1 шт.). Электролитический конденсатор 10 мкФ (1 шт.). Резисторы: 1 кОм (3 шт.), 10 кОм (2 шт.). Конденсатор переменной емкости (КПЕ) 200 пФ типа 223P (1 шт.). Биполярный NPN-транзистор 2N3904 (1 шт.). Непроводящий и немагнитный цилиндр диаметром около 7–8 см, например пластиковая бутылка или обрезок ПВХ-трубы, для намотки катушек (1 шт.). Провод с диаметром жилы 0,4– 0,6 мм (AWG22 или AWG26) для катушки (10 м). Аудиогнездо 3,5 мм для макета с гибкими выводами или винтовыми клеммами (1 шт.). Аудиокабель со штекерами 3,5 мм на каждом конце, моно или стерео (1 шт.). Источник музыки или устной речи, например музыкальный проигрыватель, телефон или ноутбук (можно тот, на котором программировался Pico) с аудиоразъемом 3,5 мм.
3,3 В R2 R1 5В к ЖКдисплею C1 C2 21 22 23 24 25 27 C3 R3 S1 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 Разъем USB 2 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico 5В 1 USBкабель от компьютера 39 40 P1 R4 К выв. SCL платы дисплея R5 К выв. SDA платы дисплея D1 D2 К выв. GND платы дисплея 3,3 В 10 кОм 10 кОм Рис. 6.1. Схема передатчика AMT2B 3,3 В 1 мкФ 5 В к выв. VCC ЖК-дисплея 10 кОм USB-кабель от компьютера 1 кОм L 1 кОм R Аудиовыход 47 нФ 10 мкФ К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея 100 К выв. GND ЖК-дисплея 3,3 В Рис. 6.2. Передатчик AMT2B на макетной плате кОнструкция Схема передатчика AMT2B показана на рис. 6.1, размещение компонентов на макетной плате – на рис. 6.2. Схема такая же, как и для передатчика тона в предыдущем эксперименте, с добавлением четырех резисторов, двух конденсаторов и гнезда аудиоразъема. Аудиоразъем такой же, как в эксперименте 3. (Две его версии показаны на рис. 3.4.) Будьте осторожны, подключите к общему проводу правильную клемму гнезда. Две другие клеммы можно использовать в любом порядке, поскольку они соединены друг с другом через R3 и R4. Тщательно проверив проводку, подключите Pico к компьютеру с помощью USB-кабеля и загрузите программу под названием 6-AM_PWM, показанную Эксперимент 6. Передача аудио с помощью Pico 135
на рис. 6.3. Ее можно скопировать с моей страницы на GitHub по адресу https://github.com/fjansson/MakeRadio. Чтобы проверить передатчик, вам понадобится источник речи или музыки. Если вы программируете Pico с помощью ноутбука, компьютер, вероятно, имеет аудиовыход, который вы можете использовать для этой цели. Применяются те же предупреждения, что и в эксперименте 3 (см. раздел «Добавление аудио­ входа»), но я не думаю, что с вашим аудиопортом связана какая-либо опасность. Включите музыку на своем источнике звука и увеличьте громкость. Разместите АМ-приемник, например AMR2, рядом с передатчиком. Передатчик AMT2B показывает частоту несущей на ЖК-экране, и вы можете настроить ее на приемнике с помощью подстроечного резистора. Попробуйте поймать передаваемый сигнал на приемнике. Если вы слышите другие станции на той же частоте, настройте передатчик и приемник, пока не найдете менее занятую частоту. На ЖК-экране теперь отображаются три значения. В верхнем ряду указана несущая частота в килогерцах, которую для передатчика можно регулировать с помощью подстроечного резистора. В нижней строке находится значение с надписью «div», к которому мы вскоре вернемся, и значение с пометкой «peak». Пиковое значение – это мера пиковой амплитуды звука в процентах от полного значения шкалы. Отрегулируйте громкость источника звука так, чтобы пиковое значение составляло около 90 % (или, если это затруднительно, просто старайтесь избегать достижения 100 %). Качество звука является лучшим, когда сигнал использует доступный диапазон, но не превышает его. Если аудиосигнал превышает возможности вашей схемы, пиковые значения будут обрезаться, что приведет к ухудшению качества звука. Возможно, вы помните, что это было потенциальной проблемой для AMT1. Когда вы увеличивали громкость слишком сильно, это вызывало искажения, но надежного способа их измерения или прогнозирования не было. Отображая пиковое значение на экране, передатчик Pico позволяет оптимизировать громкость. Когда передатчик и приемник настроены на одну и ту же частоту и диапазон аудиосигнала отрегулирован, разнесите передатчик и приемник, чтобы оценить дальность передачи. На данном этапе она может составлять около 1 м. Увеличить дальность действия можно в два этапа: улучшив антенну и добавив транзисторный усилитель. Прежде чем перейти к этому вопросу, давайте разберемся, как работает передатчик, начиная с поступления аудиосигнала в Pico. Как это работает Как и в AMT1, аудиосигнал подается на передатчик через аудиоразъем, а левый и правый аудиоканалы от аудиоразъема перед объединением проходят через резисторы R3 и R4 сопротивлением 1 кОм. Передатчик передает только моносигнал, созданный суммированием двух каналов. Затем объединенный сигнал проходит через конденсатор C3, который должен передавать звуковые частоты, но не позволяет среднему напряжению аудиосигнала, равному нулю, влиять на делитель напряжения, образованный R1 и R2. Задача делителя – поддерживать среднее напряжение сигнала на уровне половины напряжения питания, чтобы как положительные, так и отрицательные пиковые значения сигнала попадали в диапазон аналогового сигнала Pico от 0 В до 3,3 В. 136 Радио. Эксперименты с невидимыми волнами
đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 #include <Wire.h> #include <hd44780.h> #include <hd44780ioClass/hd44780_I2Cexp.h> #include <hardware/clocks.h> hd44780_I2Cexp lcd ; const int LCD_COLS = 16 ; // LCD geometry const int LCD_ROWS = 2; const int outPin = 15 ; // the output pin we want const float f_min = 530000 ; // low f limit 530 kHz const float f_max = 1700000 ; // high f limit 1700 kHz const float scale = 2.0 ; // volume control float f_sys ; // system clock frequency float peak = 0; // measured peak audio value void setup () { int status = lcd .begin (LCD_COLS , LCD_ROWS ); if (status ) hd44780 :: fatalError (status ); gpio_set_drive_strength (outPin , GPIO_DRIVE_STRENGTH_12MA ); f_sys = clock_get_hz (clk_sys ); // system clock in Hz } void loop () { char str [17 ]; float trimmer = analogRead (A0 )/1023.0 ; float f = f_min + ( f_max -f_min ) * trimmer ; // in Hz int divisor = f_sys / f; f = f_sys / divisor ; // calculate frequency back analogWriteFreq (f); // set frequency analogWriteRange (divisor ); // set analog range lcd .clear (); // clear, cursor to top left snprintf (str , 17 , "%6.1f kHz" , f/1000 ); lcd .print (str ); lcd .setCursor (0, 1); // place cursor on second row snprintf (str , 17 , "div%4d peak%3.0f%%" , divisor , peak *200 ); lcd .print (str ); peak = 0; // reset peak value for ( int i = 0; i < 20000 ; i++ ) { float in = analogRead (A1 ) / 1024.0 ; in = ( in - 0.5 ) * scale + 0.5 ; // scale the input value peak = max (peak , abs (in -0.5 )); // keep track of the peak in = constrain (in , 0, 1); // constrain to range 0..1 // int out = in * 0.5 * divisor; // duty cycle - simple int out = asinf (in ) / M_PI * divisor ; // correction analogWrite (outPin , out ); //delayMicroseconds(5); } } Рис. 6.3. Скетч для AMT2B, AM-передатчика на основе Pico Эксперимент 6. Передача аудио с помощью Pico 137
C2, R1 и R2 образуют фильтр нижних частот, подавляющий частоты выше примерно 7 кГц. Затем аудиосигнал передается на контакт 32 Pico, который внутренне соединяется с одним из аналого-цифровых преобразователей, называемым ADC1. Подстроечный резистор P1 подключен к контакту 31, который внутренне соединяется с аналого-цифровым преобразователем, который вы использовали ранее, с именем ADC0. Это регулирует несущую частоту в зависимости от положения движка подстроечного резистора. Положительное напряжение питания для компонентов аудиовхода берется с контакта 35 (ADC_VREF, см. рис. 4.11), на который подается опорное напряжение 3,3 В для аналого-цифровых преобразователей. Этот вывод обеспечивает питание, которое лучше стабилизировано и менее шумное, чем питание 3,3 В от вывода 36. Вывод 35 не может подавать большой ток, но его достаточно для питания делителя напряжения и подстроечника выбора частоты. В скетче на рис. 6.3, который вы загрузили в Pico, функция analogRead() используется дважды. В строке 23 оператор считывает напряжение подстроечного резистора, управляющего несущей частотой. В строке 38 оператор производит выборку напряжения аудиовхода на выводе 32 примерно 30 000 раз в секунду. Этот процесс дискретизации оцифровывает звуковые волны путем преобразования напряжения в каждый момент времени в число от 0 до 1023. Значения напряжения отбираются с постоянной частотой, как показано на рис. 6.4. 3,3 В Входное напряжение аудиовхода Значения выборок после АЦП 952 747 512 584 225 307 0В Рис. 6.4. Выборка аналогового сигнала. Меняющееся входное напряжение преобразуется в цифровые значения через фиксированные промежутки времени Каждое цифровое устройство, обрабатывающее звук с микрофона, каким-то образом выполняет подобные операции. После преобразования сигнала в последовательность выборочных цифровых значений его можно обрабатывать дальше с помощью математических операций. Такая обработка называется digital signal processing (цифровая обработка сигналов, DSP). При преобразовании аналогового сигнала в цифровой существует правило, известное как теорема выборки Найквиста1. В нем говорится, что сигнал должен 1 Частная формулировка этой теоремы (частота следования импульсного сигнала должна быть меньше удвоенной полосы частот канала связи) впервые была сформулирована американским физиком Гарри Найквистом (1928). В полной формулировке касательно восстановления сигнала при периодическом отборе значений эту теорему опубликовал в 1933 году советский радиофизик Владимир Александрович Котельников. В 1949 году знаменитый Клод Шеннон повторил эту формулировку в контексте создаваемой им теории связи. Поэтому в зарубежной литературе чаще встречаются названия «теорема 138 Радио. Эксперименты с невидимыми волнами
оцифровываться с частотой, по крайней мере в два раза превышающей самую высокую частоту, присутствующую в сигнале. На практике неплохо иметь запас, поэтому в скетче выбрана частота дискретизации значительно выше удвоенной пороговой частоты 7 кГц фильтра нижних частот на входе. Коэффициент заполнения 5 % Коэффициент заполнения 10 % АМ-выход с помощью ШИМ Помните, что для передачи аудиосигнала амплитуда несущей волны, то есть ее напряжение, должна меняться пропорционально напряжению сигнала. Именно так сигнал передается и преобразуется обратно в звук динамиком или наушником в радиоприемнике. Pico – цифровое устройство, и его выходные контакты могут выдавать только два уровня напряжения: 0 В для низкого уровня и 3,3 В для высокого уровня. Таким образом, амплитудная модуляция не представляется возможной. Однако, применив немного электронных хитростей, мы можем использовать цифровые выборки для изменения коэффициента заполнения ШИМ на выходе Pico, а затем применить фильтр нижних частот для преобразования прямо­ угольного сигнала в синусоидальный сигнал на несущей частоте. На рис. 6.5 показано, как работает фильтрация. Общая мощность каждого импульса, показанного черным цветом, распределяется фильтром для создания показанной оранжевым цветом красивой гладкой волны, похожей на синусоидальную. Найквиста» или «теорема Найквиста– Шеннона», а в русскоязычной – «теорема Котельникова» или «теорема Котельникова–Найквиста». Коэффициент заполнения 20 % Коэффициент заполнения 50 % Коэффициент заполнения 80 % 0 1 2 3 4 Время в микросекундах 5 Рис. 6.5. Сигнал ШИМ (черный) преобразуется фильтром таким образом, что мощность каждого импульса перераспределяется в виде плавной кривой (оранжевый). Амплитуда выходного сигнала зависит от коэффициента заполнения ШИМ-сигнала Эксперимент 6. Передача аудио с помощью Pico 139
Моделирование показывает, что отфильтрованный сигнал ШИМ представляет собой синусоиду. Ее частота составляет 1 МГц, как и у сигнала ШИМ, а амплитуда варьируется в зависимости от рабочего цикла ШИМ. Итак, скетчу просто нужно измерить аудиосигнал и использовать его для установки коэффициента заполнения ШИМ. Следующее, что нужно выяснить, – это какой диапазон коэффициента заполнения использовать. Вы можете подумать, что коэффициент 100 % дает самую высокую амплитуду, но на самом деле амплитуда снова снижается после значения 50 % . Следовательно, весь диапазон аудиосигнала должен быть преобразован в значения коэффициента заполнения от 0 % до 50 %. На рис. 6.6 показано, как в скетче производится дискретизация аудиосигнала с помощью аналого-цифрового преобразователя со скоростью около 30 000 выборок в секунду, что показано вертикальными белыми линиями. Для каждого отсчета процент коэффициента заполнения ШИМ устанавливается в соответствии с текущим напряжением на аудиовходе. Третий график показывает результат после фильтрации. В итоге получается высокочастотный сигнал, амплитуда которого меняется в зависимости от аудиосигнала, – т. е. сигнал с амплитудной модуляцией. Удобно, что мы придумали, как заставить ШИМ-систему выполнять одновременно две задачи: генерировать несущую частоту и включать амплитудную модуляцию, изменяя коэффициент заполнения. Это нетипичное использование ШИМ, но оно позволяет нам построить настоящий радиопередатчик, используя минимальное количество компонентов. Разбираемся в скетче Большая часть скетча знакома нам по предыдущему эксперименту. Строки 6–11 определяют константы. Верхний и нижний пределы диапазона настройки – константы f_min и f_max. Константа scale задает уровень входящего аудиосигнала. Функция setup() инициализирует дисплей, как и раньше. Строка 18 устанавливает повышенную мощность выходного контакта outPin (GP15, выв. 20 платы), контролируя, какой ток может подавать вывод. Для него установлено максимальное значение 12 мА, чтобы сделать сигнал максимально сильным. Строка 19 определяет системную тактовую частоту Pico и сохраняет ее в переменной f_sys. (Частота по умолчанию равна 133 МГц, но ее можно изменить в меню Arduino IDE, если мы хотим, чтобы схема работала на разных частотах.) Функция loop() начинается со считывания напряжения подстроечного резистора в строке 23 и преобразования его в частоту f в строке 24. Строки 25–28 настраивают систему ШИМ на генерацию несущей волны с частотой f. Функция analogWrite() обеспечивает настройку системы ШИМ в соответствии с частотой frequency и аналоговым диапазоном range, указанными пользователем. Нам нужна достаточно высокая частота и соответствующий аналоговый диапазон для хорошего качества звука; мы можем добиться этого, запросив нужное сочетание частоты и аналогового диапазона. 140 Радио. Эксперименты с невидимыми волнами
Коэффициент заполнения ШИМ 50 % Оцифрованные значения преобразуются в значения коэффициента заполнения 0% Коэффициент заполнения определяет длительность выходных импульсов ШИМ Частота импульсов – это несущая частота, она намного выше, чем показано здесь Выходное напряжение Pico 3,3 В Отфильтрованное напряжение передатчика 0В Фильтрованный выход ШИМ создает передаваемый AM-сигнал 0В Рис. 6.6. Как Pico преобразует цифровой аудиовход в модулированную несущую синусоидальную волну Эксперимент 6. Передача аудио с помощью Pico 141
Система ШИМ содержит двоичный счетчик, который считает импульсы системных тактов Pico. Счетчик начинается со значения 0, и для каждого тактового импульса его значение увеличивается на 1. Когда счетчик достигает значения, которое соответствует значению переменной divisor, он сбрасывается и начинается снова с 0. Иными словами, счетчик перебирает числа 0, 1, 2 и т. д., пока не достигнет divisor – 1, а затем возобновляется с 0, 1, 2. Значение счетчика передается в двоичный компаратор, который сравнивает значение счетчика с заданным значением уровня (level). Если значение счетчика меньше значения уровня, на выходе компаратора будет 1; в противном случае 0. Идея всего этого заключается в том, что выход компаратора представляет собой сигнал ШИМ. Его частота будет равна f = f_sys / divisor, а коэффициент заполнения (duty) duty = 100 % * level / divisor. Полное описание системы Pico PWM можно найти в техническом описании контроллера RP2040 и в руководстве по SDK Raspberry Pi. В строке 25 находится целочисленное значение переменной divisor, которое дает частоту, максимально близкую к заданной f. В строке 26 вычисляется частота, фактически полученная при использовании этого целочисленного делителя, которая будет близка к заданной. Строки 27 и 28 настраивают систему ШИМ с полученным значением f в качестве частоты и значением divisor в качестве аналогового диапазона. (Значение divisor отображается на экране во время работы программы; вы можете убедиться, что системная тактовая частота, разделенная на величину divisor, равна отображаемой частоте.) В строках 29–34 отображаются частота, значение делителя divisor и пиковая амплитуда звука в процентах от полного диапазона сигнала на экране. Фактический AM-сигнал генерируется в цикле for в строках 37–45. Значение аудиосигнала считывается и масштабируется в диапазоне 0–1. Затем рассчитывается значение коэффициента заполнения и сохраняется в переменной out. Значение аудиосигнала, равное 0, должно давать коэффициент заполнения 0 %, а значение 1 должно давать коэффициент заполнения 50 %. В строке 42 показано, как это можно сделать, при этом коэффициент заполнения пропорционален значению звука. Однако амплитуда синуса не является линейно пропорциональной коэффициенту заполнения, и строка 43 корректирует эту нелинейность, вычисляя выходное значение, в результате чего амплитуда сигнала получается пропорциональной аудиосигналу. Функция asinf является обратной функцией синуса, а последняя буква f в ее имени означает, что мы используем версию функции с плавающей запятой; константа M_PI – это имя числа «пи» на языке C. Выражение выглядит именно так, потому что амплитуда отдельных синусоидальных волн, составляющих сигнал ШИМ (например, показанных на рис. 3.10 для прямоугольной волны), зависит от коэффициента заполнения импульса. Строка 44 отправляет ШИМ с рассчитанным коэффициентом заполнения на выходной контакт. Теперь, когда вы знаете, как работает скетч, пришло время заняться улучшением схемы для увеличения дальности передачи. 142 Радио. Эксперименты с невидимыми волнами
Увеличение дальности и фильтрация Вы можете возразить, что хотя я показываю изображения отфильтрованных сигналов ШИМ, в схеме на выходе передатчика нет фильтра. Это верно! Однако приемник выполняет некоторую фильтрацию. Настройка приемника на определенную частоту означает, что приемник будет принимать сигналы только в узком интервале вокруг этой частоты. Однако это не означает, что передача нефильтрованной прямоугольной волны – хорошая идея. Как отмечалось в эксперименте 3, прямоугольный сигнал содержит обертоны или гармоники, поэтому фактически вы передаете на нескольких частотах одновременно. Это может привести к помехам в работе других радиопередатчиков. Причина, по которой мы чувствовали себя комфортно в этом эксперименте, заключается в том, что дальность передачи с помощью маленькой проволочной петли очень мала. Сейчас наша цель – увеличить диапазон, а это значит, что нам нужно правильно выполнить работу и добавить фильтрацию в AMT2B. Мы можем добиться этого, разработав более совершенную антенну, которая также заодно будет действовать как фильтр. Идея состоит в том, чтобы использовать резонансный контур и настроить его на частоту передачи. Катушка резонансного контура действует как антенна, и поскольку контур настроен на резонанс только с заданной частотой передачи, гармоники будут отфильтровываться. Результатом является более чистый сигнал и большая дальность передачи. Конструкция Схема с новой антенной представлена на рис. 6.7, а ее размещение на макете показано на рис. 6.8. Левая часть схемы осталась прежней, но антенный контур убран и заменен катушкой L1. Рядом с ней находится L2, подключенная к переменному конденсатору. Прежде чем приступить к сборке, проверьте передатчик и приемник и настройте их на одну и ту же частоту около 900 кГц. 3.3V R2 R1 5V to LCD screen C1 C2 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 USB port C3 21 22 23 24 25 27 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico 5V 1 USB cable from computer 39 40 P1 R3 S1 Кнопка Reset R4 To SCL on LCD board Рис. 6.7. Добавление и конденсатоD1 ров для создания лучшей антенны. Левая часть схемы Negative ground неscreen показана, поскольку она to LCD не 3.3V менялась катушек To SDA on LCD board R5 D2 C4 L1 L2 C5 Эксперимент 6. Передача аудио с помощью Pico 143
1 мкФ 10 кОм 1 кОм L 1 кОм R 47 нФ 10 мкФ 100 220 пФ 200 пФ перем. конденсатор Рис. 6.8. Схема по рис. 6.7 на макетной плате Затем отсоедините передатчик от компьютера для выполнения следующих действий и выключите приемник, чтобы сэкономить батарейки. Начнем с намотки катушек L1 и L2. Обе они должны иметь одинаковый диаметр примерно 7–8 см, так что их можно намотать на одном и том же каркасе. Для этого понадобится непроводящий и немагнитный цилиндрический предмет, например пластиковая банка или бутылка. Обрезок ПВХтрубы для водопровода также может подойти. Первая катушка имеет 2 витка, вторая – 27 витков. Начните с катушки, состоящей из 2 витков, с хвостами длиной 15 см на каждом конце. Скрутите изолированные концы вместе и зачистите изоляцию на концах для подключения к макетной плате. Повторите процедуру для катушки из 27 витков, наматывая ее в том же направлении, рядом с предыдущей, без промежутка между ними. При необходимости закрепите катушки скотчем. Реальные катушки показаны на рис. 6.9. Они не расположены друг напротив друга, как представлено на схеме, а намотаны в один ряд; схема так показывает, что две катушки взаимодействуют друг с другом. Подключите двухвитковую катушку к выходу передатчика, как показано на рис. 6.7 и 6.8, вместо проволочной петли, которую вы использовали ранее. Выводы 27-витковой катушки L2 также подключаются к макетной плате к выводам конденсатора C4 емкостью 220 пФ. Он подключен параллельно конденсатору переменной емРис. 6.9. Катушки для повышения кости C5, который вы использовали мощности передатчика АМТ2Б 144 Радио. Эксперименты с невидимыми волнами
ранее для AMR2. (Если вы хотите принимать передачу с использованием AMR2, для этого потребуется еще один конденсатор переменной емкости.) Снова подключите передатчик к источнику звука и включите приемник. Держите передатчик и приемник настроенными на ту же частоту, что и раньше. Отрегулируйте переменный конденсатор С5 передатчика, и вы должны найти настройку, при которой приемник поймает сигнал. Найдите положение, которое дает самый сильный сигнал. Теперь вы настроили резонансный контур антенны на частоту передатчика. Если вы хотите настроить передатчик на верхний предел AM-диапазона, возможно, вам придется удалить C4. Попытайтесь отодвигать приемник от передатчика, пока сигнал не станет слишком слабым для приема. Дальность передачи увеличилась? Добавление резонансной схемы к выходу передатчика имеет два эффекта. Когда частота резонансного контура совпадает с частотой передатчика, они резонируют, и ток, проходящий туда и обратно через L2, увеличивается, а это означает, что магнитное поле от пары таких катушек будет сильнее, чем поле от одной катушки L1 в отдельности. Кроме того, резонансный контур не реагирует на гармоники, присутствующие в сигнале, поэтому они не будут усиливаться. Недостаток этой резонансной схемы заключается в том, что для изменения частоты передачи теперь необходимо настроить два элемента управления: частоту передатчика и резонансную частоту антенны. Обычно антенны работают лучше всего, когда они находятся в резонансе с частотой, которую они передают или принимают, и это все равно может потребовать некоторой настройки. 27 витков кажется довольно много. Причина, по которой нам нужно такое количество витков, заключается в том, что катушка и конденсатор должны иметь возможность резонировать с частотой в радиовещательном диапазоне, а для этого нужна достаточно большая индуктивность. При катушке 100 мкГн и емкости 420 пФ (которую мы получаем из керамического конденсатора емкостью 220 пФ плюс емкость переменного конденсатора 200 пФ, если он установлен на максимальное значение) частота составляет 776 кГц. Этот контур можно настроить на более высокие частоты, примерно до 1 МГц, оставив переменный конденсатор, но удалив конденсатор емкостью 220 пФ. Мы могли бы использовать меньшую индуктивность и большую емкость C4, но тогда диапазон настройки, достижимый с помощью переменного конденсатора, был бы непрактично малым. При большем диаметре катушки вам потребуется меньше витков, а также вы получите бóльшую дальность передачи. Однако количество необходимых витков уменьшается медленнее, чем увеличивается диаметр, поэтому в конечном итоге вам понадобится больше провода для катушки большего размера. Как правило, если вы удваиваете диаметр катушки, вы можете разделить количество витков на квадратный корень из 2, примерно 1,4, чтобы сохранить индуктивность постоянной. Чтобы рассчитать индуктивность катушки, которую вы сконструировали самостоятельно, вы можете использовать приближение Уиллера (описанное в эксперименте 1) или выполнить поиск в интернете по запросу «калькулятор индуктивности катушки». Эксперимент 6. Передача аудио с помощью Pico 145
Увеличиваем мощность Что, если вы хотите еще немного расширить радиус действия передатчика, не выходя при этом за рамки закона? Устранив гармоники прямоугольной волны, теперь можно усилить сигнал с помощью транзистора. Схема на рис. 6.10 и 6.11 (на следующей странице) показывает, как это можно сделать. Обратите внимание, что R5 изменил свое положение, хотя он по-прежнему выполняет ту же функцию, ограничивая ток через L1. R6 был добавлен для ограничения тока через базу транзистора Q1. Полный список компонентов для окончательной версии схемы также показан на рис. 6.10. 3,3 В 5 В к ЖК-дисплею R1 C1 R2 C2 21 22 23 24 25 27 C3 Кнопка Reset R4 К выв. SCL платы дисплея R6 К выв. SDA платы дисплея К выв. GND платы дисплея R3 S1 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 Разъем USB 2 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico 5В 1 USB-кабель от компьютера 39 40 P1 Q1 5В D1 C6 D2 C4 L1 L2 C5 R5 3,3 В Резисторы Конденсаторы R1 10 кОм C1 1 мкФ R2 10 кОм C2 47 нФ R3 1 кОм C3 10 мкФ R4 1 кОм C4 220 пФ R5 100 Ом C5 R6 1 кОм C6 Другие компоненты D1, D2 Диоды Шоттки BAT48 S1 Тактовая кнопка L1 2 витка 7 см в диаметре L2 27 витков 7 см в диаметре 200 пФ P1 Подстроечный резистор, 10 кОм 1 мкФ Q1 Биполярный транзистор 2N3904 Рис. 6.10. Полная схема передатчика АМТ2B, включая транзистор для увеличения мощности Прежде чем вносить изменения, отключите передатчик от источника звука и компьютера. Не меняйте настройку частоты или положение переменного конденсатора, чтобы сохранить настройку радиостанции. После сборки и проверки схемы снова подключите USB-кабель и источник аудиосигнала. Включите приемник и посмотрите, увеличился ли радиус действия. Транзисторный усилитель здесь очень прост, поскольку он имеет дело только с цифровым выходом Pico, который либо включен, либо выключен. Это также делает усилитель эффективным и экономичным, поскольку транзистор либо проводит полностью, либо не проводит вовсе, и в обоих случаях количество электроэнергии, теряемой на нагрев транзистора, невелико. 146 Радио. Эксперименты с невидимыми волнами
3,3 В 5 В к выв. VCC ЖК-дисплея 1 мкФ Кат. 27 витков 7 см в диаметре 10 кОм 10 кОм Кат. 2 витка 7 см в диаметре 1 кОм L 1 кОм R 47 нФ USB-кабель от компьютера К выв. SCL ЖК-дисплея 10 кОм 1 кОм Аудиовход 10 мкФ 100 К выв. SDA ЖК-дисплея 1 мкФ К выв. GND ЖК-дисплея 2N3904 220 пФ 200 пФ перем. конденсатор 3,3 В Рис. 6.11. Окончательная схема приемника на макетной плате В аналоговом усилителе, где транзистор получает переменный входной сигнал и выдает переменный выходной сигнал, потери мощности в транзисторе могут быть значительными, равными или превышающими мощность, подаваемую на выход усилителя. По этой причине многие современные мощные радиовещательные AM-передатчики используют ту или иную форму широтноимпульсной модуляции. Когда на выходе Pico высокий уровень, транзистор проводит и подключает один конец катушки L1 к общему проводу, так что через нее течет ток. Когда на выходе Pico низкий уровень, транзистор не проводит ток, и ток в катушке L1 не течет. L2, C4 и C5, как и раньше, образуют резонансный контур. R5 ограничивает ток как для защиты транзистора, так и для обеспечения того, чтобы сигнал оставался в пределах допустимой мощности. В эксперименте 3 мы упоминали правила, касающиеся передатчиков в Соединенных Штатах1. Вам разрешена максимальная мощность 100 мВт и антенна длиной не более 3 м. В данном случае пределом мощности является полная мощность, подаваемая на транзистор. Можно подсчитать, что это около 0,1 Вт (100 мВт) и есть. Еще одним преимуществом добавления транзисторного усилителя является улучшение качества звука. Передатчик без усиления более шумный. Я думаю, что шум возникает в сигнале аналого-цифрового преобразователя и связан с высокочастотным ШИМ-сигналом, который создает Pico. Когда транзистор установлен, Pico должен выдавать меньший ток, что приводит к меньшим помехам. Это распространенная проблема в схемах, сочетающих цифровые и аналоговые принципы. Шум от цифрового переключения попадает в аналоговые сигналы. Я пробовал разные модификации схемы, чтобы уменьшить шум. Добавление конденсаторов между общим проводом и различными точками подключения положительного напряжения питания, хотя в целом и было хорошей идеей, не дало большого улучшения. Что действительно помогло, так это использование раздельного соединения с общим проводом на Pico для аудио 1 См. также сноску на стр. 84. Эксперимент 6. Передача аудио с помощью Pico 147
и регулирующей части схемы с переменным резистором. Вывод 33 платы Pico обозначен как «аналоговая земля» (AGND). В остальном он аналогичен другим контактам заземления, но плата спроектирована таким образом, что дорожки AGND и аналогового входа проходят рядом для минимальных помех со стороны других частей схемы. Если вы хотите использовать передатчик на постоянной основе для передачи музыки на AM-радио в вашем доме, можно найти частоту, свободную от других станций, и настроить на нее свой передатчик. Измените строку 24 скетча (см. рис. 6.3), чтобы установить f на нужную вам частоту в герцах. Тогда вы избежите небольшого изменения качества звука, которое происходит, если передатчик слегка смещается по частоте в результате незначительного изменения значений переменного резистора. Еще вы можете настроить f_min и f_max ближе к выбранной вами частоте. Тогда у вас останется возможность немного подстроить частоту, но точность настройки будет выше. чтО дальше? В этом эксперименте мы увидели, что Pico может работать достаточно быстро, чтобы разобрать аудиосигнал на ряд цифровых значений, выполняя процесс, известный как аналого-цифровое преобразование. Затем мы узнали, как можно адаптировать оцифрованный сигнал и как его фильтрация может преобразовать прямоугольные волны в синусоидальные. Наконец, мощность передатчика была увеличена за счет транзисторного усиления. Следующим шагом будет использование дополнительных возможностей Pico, чтобы сделать еще больше, поскольку он может подсчитывать импульсы несущей волны.
Эксперимент 7 ПОДСЧЕТ ИМПУЛЬСОВ С ПОМОЩЬЮ PICO
П ри создании AM-передатчика в эксперименте 3 и генератора испытательных сигналов в эксперименте 1 единственным способом определить частоту несущей волны было выполнение некоторых расчетов с использованием номиналов катушек, конденсаторов и резисторов. Затем вы могли приблизительно проверить математику, попытавшись найти сигнал с помощью ручки настройки AM-радио. Однако каждый раз, когда вы занимаетесь передачей радиосигнала, вам действительно нужен более точный способ измерения его частоты. Цифровой мультиметр может иметь измерение частоты в качестве опции, но, скорее всего, ограничен несколькими килогерцами или парой десятков килогерц. В этом эксперименте Pico сможет измерять частоты примерно до 60 МГц, отображая результат на ЖК-экране, который вы использовали в последних экспериментах. Как вы узнали из эксперимента 1, частота сигнала измеряется в герцах – количестве импульсов в секунду. Удобно, что с помощью Pico очень легко подсчитывать импульсы в течение одной секунды. Что вам понадобится • • • • • • Pico на макетной плате, подключенный к ЖК-экрану, как это было показано в экспериментах 4, 5 и 6 (1 шт.). Дополнительно: передатчики AMT0 из эксперимента 1 или AMT1 из эксперимента 3. Керамические конденсаторы: 100 пФ (1 шт.), 10 нФ (1 шт.), 1 мкФ (1 шт.). Резисторы: 1 кОм (1 шт.), 2,2 кОм (2 шт.). Интегральная микросхема 7555 (1 шт.). Диоды Шоттки BAT48 (4 шт.). Два таких диода использовались в предыдущих экспериментах. В этом эксперименте понадобятся еще два.
измерение частОты Вот что должен делать Pico при измерении частоты:  считать поступающие импульсы на вывод IO;  отсчитать интервал в одну секунду;  отобразить подсчитанное количество. Для подсчета импульсов вы можете написать программу, которая будет неоднократно проверять состояние вывода, и каждый раз, когда она увидит переход от низкого уровня к высокому, она будет увеличивать переменную счетчика. Для низких частот это будет работать нормально. Но что, если частота высокая и у программы есть и другая работа, например отслеживание времени? Pico может пропустить импульс, и в этом случае измерение будет неправильным, а вы никак не сможете узнать об этом. Лучшим способом является использование специального аппаратного счетчика, встроенного в большинство микроконтроллеров, включая Pico. Мы увидим, как для этой цели можно использовать систему ШИМ. кОнструкция Постройте схему, показанную на рис. 7.1, используя ранее построенную схему Pico с ЖК-дисплеем. Все, что вам нужно сделать, – это удалить оттуда большую часть компонентов. 22 23 24 25 27 21 S1 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 Разъем USB 2 26 28 29 30 31 32 33 34 35 36 37 38 Raspberry Pi Pico 5В 1 USB-кабель от компьютера 39 40 5В к ЖК-дисплею К выв. SCL платы дисплея К выв. SDA платы дисплея К выв. GND платы дисплея D1 D2 3,3 В Рис. 7.1. Первый шаг к созданию частотомера Теперь загрузите скетч под названием 7-1-Frequency_counter, показанный на рис. 7.2, который вы можете загрузить с моей страницы GitHub по адресу https:// github.com/fjansson/MakeRadio. Вы должны увидеть на экране надпись «0 Hz». Эксперимент 7. Подсчет импульсов с помощью Pico 151
đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 #include <Wire.h> #include <hd44780.h> #include <hd44780ioClass/hd44780_I2Cexp.h> #include "hardware/pwm.h" // pico-specific PWM functions hd44780_I2Cexp lcd ; const int LCD_COLS = 16 , LCD_ROWS = 2; const int input_pin = 15 ; const int output_pin = 16 ; const int divisor = F_CPU / 10000 ; // 10 kHz test signal int slice_num = pwm_gpio_to_slice_num (input_pin ); int output_slice_num = pwm_gpio_to_slice_num (output_pin ); void setup () { int status = lcd .begin (LCD_COLS , LCD_ROWS ); if (status ) hd44780 :: fatalError (status ); gpio_set_function (output_pin , GPIO_FUNC_PWM ); // test signal pwm_set_wrap (output_slice_num , divisor -1 ); pwm_set_gpio_level (output_pin , divisor /2); pwm_set_enabled (output_slice_num , true ); gpio_set_function (input_pin , GPIO_FUNC_PWM ); // input pwm_set_clkdiv_mode (slice_num , PWM_DIV_B_RISING ); } void loop () { pwm_set_counter (slice_num , 0); // reset counter pwm_set_enabled (slice_num , true ); // start counting delay (1000 ); pwm_set_enabled (slice_num , false ); // stop counting int count = pwm_get_counter (slice_num ); lcd .clear (); lcd .print (count ); lcd .print (" Hz" ); } Рис. 7.2. Первый вариант скетча частотомера Как проверить программу, чтобы убедиться, что она работает и точно измеряет частоту? Вы можете использовать сам Pico для вывода известной частоты на другой вывод и ее измерения. Скетч, который вы только что загрузили, делает именно это: он настраивает вывод 21 как выход ШИМ и выводит на него сигнал частотой 10 кГц. Вам просто нужно добавить перемычку от этого контакта ко входу счетчика, который находится на контакте 20, как показано на рис. 7.3 и 7.4. Теперь на ЖК-экране должно отображаться «10 000 Hz». 152 Радио. Эксперименты с невидимыми волнами
К выв. SCL платы дисплея К выв. SDA платы дисплея 22 23 24 25 27 21 S1 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 Разъем USB 2 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico 5В 1 USB-кабель от компьютера 39 40 5В к ЖК-дисплею D1 D2 К выв. GND платы дисплея 3,3 В Рис. 7.3. Между контактами 20 и 21 добавлена перемычка 5 В к выв. VCC ЖК-дисплея USB-кабель от компьютера К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея TК выв. GND ЖК-дисплея 3,3 В Рис. 7.4. Схема рис. 7.3 на макетной плате Как бы вы хотели измерить более высокую частоту, например 1 МГц? Вы можете попробовать это, отредактировав в скетче строку 9 , следующим образом: const int divisor = F_CPU / 1000000; Загрузите скетч еще раз. Теперь на экране читается «16 960 Гц». Но это неправильно – должно отображаться «1 000 000 Гц»! Возможно, скетч не обрабатывает высокие частоты. Чтобы понять, как исправить скетч, нам нужно посмотреть, как он работает, и узнать о программировании с использованием прерываний. Эксперимент 7. Подсчет импульсов с помощью Pico 153
Как это работает В этом скетче аппаратура ШИМ Pico используется для подсчета импульсов, поступающих на вход, и для генерации тестового сигнала1. В экспериментах 5 и 6 вы использовали функцию analogWrite() Arduino для управления счетчиком ШИМ. В этом эксперименте вам придется использовать функции, специфичные для Pico, поскольку функции ШИМ Arduino имеют дело с формой сигнала на выходе, а не с подсчетом импульсов. Команда подключения библиотеки pwm.h в строке 4 позволяет скетчу использовать собственные функции Pico для управления ШИМ. Строки 6–9 определяют константы. Константа input_pin – это номер вывода GP входа счетчика, output_pin – это вывод для выхода тестового сигнала, а делитель divisor устанавливает частоту тестового сигнала. Выходная частота тестового сигнала – это частота системных тактов, деленная на divisor. Pico содержит восемь одинаковых блоков ШИМ, также называемых слайсами (slice), с двумя выходами каждый. Строки 10 и 11 определяют, какие блоки ШИМ связаны с входными и выходными выводами. Один из блоков ШИМ показан на рис. 7.5. Каждый из них содержит 8-битный предварительный делитель (прескалер), 16-битный счетчик и два компаратора. Прескалер можно использовать для деления тактовой частоты на число от 1 до 256. В данном эксперименте он не используется, поэтому тактовые импульсы будут проходить через него без изменений (что аналогично делению входящей частоты на 1). Для генерации сигналов ШИМ 16-битный счетчик считает импульсы системных тактов (переключатель в левой части рис. 7.5 находится в верхнем положении). Когда счетчик достигает максимального значения, он снова начинает считать с нулевого следующего импульса. Каждый из компараторов сравнивает двоичное значение счетчика с заданным значением уровня (level) для каждого выхода. Если значение счетчика меньше значения уровня, на выходе компаратора высокий уровень. Если нет, то выход имеет низкий уровень. Другими словами, коэффициент заполнения выходного сигнала задается значением уровня. Частота выходного сигнала равна тактовой частоте системы, деленной на емкость счетчика плюс 1. Строки 18–21 настраивают выход тестового сигнала. Строка 18 назначает выходной вывод выбранному блоку ШИМ. Строка 19 устанавливает выходную частоту с помощью константы divisor, а строка 20 устанавливает коэффициент заполнения равным 50 %. Наконец, строка 21 включает выход ШИМ. Чтобы использовать блок ШИМ для подсчета импульсов на входном выводе, переключатель слева на рис. 7.5 переводится в нижнее положение. Строка 22 устанавливает входной вывод, подключенный к системе ШИМ, а строка 23 дает команду блоку ШИМ, связанному с этим входом, считать нарастающие (rising) фронты. Это означает, что каждый раз, когда вывод меняет состояние с низкого на высокое, счетчик увеличивается. 1 Пусть вас не удивляет, что в RP2040 подсчетом импульсов и генерацией частот занимается узел ШИМ, а не таймер-счетчик, как в других микроконтроллерах. По сути, это тот же самый процесс, но считается, что в Pico основное занятие таймеров – генерация ШИМ, и весь узел таймеров получил именно такое название. 154 Радио. Эксперименты с невидимыми волнами
Переключатель тактового сигнала 8-битный Системные рескалер такты Делитель Вывод B тактового сигнала 16-битное значение 16-битный счетчик с автоматическим обнулением Компаратор A Уровень A Вывод A Компаратор В Уровень В Вывод В Рис. 7.5. Внутреннее устройство одного из восьми блоков ШИМ в Pico. Выходы A и B могут быть подключены к выводам Pico. Частота на вход слева может поступать либо от системного тактового сигнала (для выхода ШИМ), либо от вывода B (используется как вход для подсчета импульсов) В функции loop() строка 27 устанавливает значение счетчика на 0, чтобы подготовиться к измерению. Строка 28 включает счетчик, чтобы он увеличивался при каждом переходе от низкого к высокому уровню входного сигнала. Строка 29 ждет 1 секунду, а строка 30 снова отключает счетчик. Теперь счетчик содержит количество импульсов, пришедших за одну секунду задержки. Это количество считывается в строке 31 и отображается на ЖК-дисплее в строках 32–34. Схема довольно проста, поскольку работу по распознаванию входящих импульсов и их подсчету выполняет аппаратный счетчик. Единственное сложное в скетче – настройка системы ШИМ. В описании контроллера RP2040 и руководстве Pico SDK объясняется, как устроена система ШИМ и какие функции языка C доступны для ее использования, а также показано, как выводы вводавывода связаны с восемью блоками ШИМ. Что происходит на высоких частотах? Теперь мы можем вернуться к вопросу о том, почему счетчик вышел из строя при входном сигнале 1 МГц. Если счетчик работает одну секунду и импульсы поступают с частотой 1 МГц, он должен был принять один миллион импульсов. Посмотрите еще раз на рис. 7.5. Здесь вы видите, что основной счетчик 16-битный, то есть он может хранить числа от 0 до 216 – 1 = 65 535. После этого количества импульсов счетчик снова начинается с 0, и именно это происходит при поступлении сигнала 1 МГц1. Итак, что нам делать? Мы могли бы позволить счетчику работать в течение более короткого времени, например 10 мс. Но тогда точность будет страдать на низких частотах или нам придется сделать временной интервал регулируемым2. Вместо этого мы расширим диапазон счета с помощью прерываний. 1 2 Для ясности: при поступлении 1 млн импульсов на 16-битный счетчик его емкость (65 536 импульсов) будет превышена в 1 000 000 / 65 536 = 15,2587890625 раза, т.е. 15 раз он переполнится и еще успеет досчитать до 0,2587890625 * 65 536 = 16 960, что и показал дисплей в первом варианте скетча. При счетном интервале 1 с счетчик покажет единицы герц, при 100 мс – десятки герц, при 10 мс – сотни герц, при 1 мс – единицы килогерц. Эксперимент 7. Подсчет импульсов с помощью Pico 155
Прерывания Pico Прерывания – это примерно такой механизм обработки событий компьютерами: «Произошло важное событие! Прервите запущенную программу и запустите вместо нее эту функцию. Как только закончите, вернитесь к обычной программе». Прерывания в микроконтроллерах очень полезны, и обычно их можно настроить для многих целей. Например, следующих:  таймер достигает конца заданного интервала;  входной вывод меняет свое состояние – например, из-за того, что была нажата кнопка:  счетчик ШИМ переполняется и возвращается к 0;  символ принимается через последовательный порт (или USB). Третий пример – счетчик ШИМ обнуляется – это ситуация, которую нам здесь нужно разрешить с помощью прерывания. Каждый раз, когда происходит прерывание, вызывается заданная функция. В этой функции увеличивается еще один счетчик, который отслеживает, сколько раз переполнился аппаратный счетчик ШИМ. Общее количество импульсов можно рассчитать по значениям двух счетчиков1. Окончательная версия скетча под именем 7-2-Frequency_counter, которую вы можете скачать со страницы GitHub по адресу https://github.com/fjansson/ MakeRadio, показана на рис. 7.6. Загрузите ее через IDE, чтобы заменить предыдущую версию. В строке 12 определяется новая переменная счетчика. Ключевое слово volatile указывает компилятору, что значение переменной может изменяться в любой момент (в реальности значение изменяется при возникновении прерываний). Строка 14 определяет новую функцию pwm_interrupt_handler(). Эта функция (обработчик прерывания) вызывается всякий раз, когда происходит прерывание ШИМ. Сама функция делает очень мало; в строке 17 увеличивается переменная counter_wraps, подсчитывая, сколько раз переполнился счетчик ШИМ. В строке 16 вызывается функция pwm_clear_irq(slice_num), очищающая флаг запроса произошедшего прерывания. Сброс флага помечает прерывание как обработанное, поэтому функция обработчика прерывания не вызывается снова немедленно. Если вы пропустите эту строку, то заметите, что Pico заблокируется2. (Удерживая кнопку BOOTSEL на плате Pico, одновременно нажмите и затем отпустите кнопку Reset на макетной плате, чтобы снова включить связь, как описано в эксперименте 4.) 1 2 Математически это равносильно добавлению разрядов к аппаратному счетчику. Если счетчик прерываний также 16-битный типа int (как в скетче далее; тип int в Arduino IDE – 16-битное число со знаком), то суммарная емкость счетчика возрастает до 31 разряда (учитывая то, что старший бит представляет знак). То есть до величины 231 = 2 147 483 648 (2 с лишним миллиарда), чего хватает для подавляющего большинства практических применений. Ее можно повысить еще вдвое, если вместо простого int взять беззнаковый тип unsigned int. Для привыкших к стандартному Arduino следует отметить: в контроллерах Atmel флаг запроса прерывания очищается аппаратно при переходе к функции-обработчику и не требует каких-либо специальных действий со стороны программы; в RP2040, очевидно, это не так. 156 Радио. Эксперименты с невидимыми волнами
đ1 #include <Wire.h> đ2 #include <hd44780.h> đ3 #include <hd44780ioClass/hd44780_I2Cexp.h> đ4 #include "hardware/pwm.h" // pico-specific PWM functions đ5 hd44780_I2Cexp lcd ; đ6 const int LCD_COLS = 16 , LCD_ROWS = 2; đ7 const int input_pin = 15 ; đ8 const int output_pin = 16 ; đ9 const int divisor = F_CPU / 1000000 ; // 1 MHz test signal 10 int slice_num = pwm_gpio_to_slice_num (input_pin ); 11 int output_slice_num = pwm_gpio_to_slice_num (output_pin ); 12 volatile int counter_wraps ; 13 14 void pwm_interrupt_handler () 15 { 16 pwm_clear_irq (slice_num ); 17 counter_wraps ++ ; 18 } 19 void setup () 20 { 21 int status = lcd .begin (LCD_COLS , LCD_ROWS ); 22 if (status ) 23 hd44780 :: fatalError (status ); 24 gpio_set_function (output_pin , GPIO_FUNC_PWM ); // test signal 25 pwm_set_wrap (output_slice_num , divisor -1 ); 26 pwm_set_gpio_level (output_pin , divisor /2); 27 pwm_set_enabled (output_slice_num , true ); 28 gpio_set_function (input_pin , GPIO_FUNC_PWM ); // input 29 pwm_set_clkdiv_mode (slice_num , PWM_DIV_B_RISING ); 30 pwm_clear_irq (slice_num ); 31 pwm_set_irq_enabled (slice_num , true ); 32 irq_set_exclusive_handler (PWM_IRQ_WRAP , pwm_interrupt_handler ); 33 irq_set_enabled (PWM_IRQ_WRAP , true ); 34 } 35 void loop () 36 { 37 counter_wraps = 0; 38 pwm_set_counter (slice_num , 0); // reset counter 39 pwm_set_enabled (slice_num , true ); // start counting 40 delay (1000 ); 41 pwm_set_enabled (slice_num , false ); // stop counting Рис. 7.6. Окончательный скетч счетчика частоты, использующий прерывания для определе42 int count = pwm_get_counter (slice_num ния момента завершения работы);счетчика 43 lcd .clear (); 44 lcd .print (counter_wraps * 65536 + count ); Эксперимент 7. Подсчет импульсов с помощью Pico 157 45 lcd .print (" Hz" ); 46 }
В функции setup()появились новые строки 30–33: они включают прерывание ШИМ. Строка 30 очищает все ожидающие прерывания, строка 31 разрешает прерывания для конкретного блока ШИМ, используемого для подсчета, строка 32 связывает функцию pwm_interrupt_handler() с прерыванием ШИМ, а строка 33 разрешает прерывания для блоков ШИМ в целом. В функции loop() строка 37 сбрасывает счетчик counter_wraps , а код в строке 44 для отображения результата был изменен для расчета количества импульсов с использованием двух счетчиков. С помощью этого скетча мы можем измерять частоты до половины тактовой частоты системы Pico. (Из-за особенностей устройства ШИМ-системы ей необходимо видеть, что сигнал имеет высокий уровень хотя бы в течение одного тактового цикла системы и низкий также в течение как минимум одного тактового цикла.) Когда мы измеряем тестовый сигнал частотой 1 МГц, на дисплее теперь отображается «1 000 001 Hz». Возможно, временной интервал в 1 с удлиняется на 1 микросекунду из-за функции задержки или из-за некоторого количества инструкций, необходимых для включения и отключения счетчика ШИМ1. В любом случае, точность кажется неплохой! Говоря о точности, помните, что тестовый сигнал был сгенерирован тем же Pico, который проводил измерение, потому на дисплее должно быть точно заданное значение. Насколько это точно в абсолютных числах? И тестовый сигнал, и временной интервал подсчета импульсов определяются определенным количеством системных тактов. Эти такты управляются с помощью кварцевого генератора с частотой 12 МГц, который вы можете видеть на рис. 4.11 в виде небольшой прямоугольной металлической детали между выводами 14 и 27. Этот генератор рассчитан на точность 30 долей на миллион. Частоты, которые мы генерируем с помощью системы ШИМ, имеют такую же относительную точность, поэтому сигнал частотой 1 МГц должен иметь абсолютную точность в пределах 30 Гц. Вы можете попробовать проверить эту цифру лабораторным прибором. Проведение измерений Теперь, когда частотомер работает и протестирован на высоких и низких час­ тотах, можно протестировать его на реальной схеме. Удалите перемычку, которую вы добавили между контактами 20 и 21, и добавьте схему, показанную на рис. 7.7 и 7.8. 1 Не рекомендуется таким же образом (с помощью системной функции задержки delay()) организовывать измерительный интервал в более медленных контроллерах, таких как стандартный Arduino. Из-за ряда протекающих параллельно процессов ошибка значительно увеличится и, главное, окажется нестабильной. Для организации подсчета импульсов в счетчиках-таймерах Arduino имеются специальные режимы, позволяющие отмерять измерительный интервал с точностью до такта. 158 Радио. Эксперименты с невидимыми волнами
2,2 кОм 2,2 кОм 5 В к выв. VCC ЖК-дисплея 100 пФ 10 нФ USB-кабель от компьютера 7555 1 мкФ К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея 1 кОм К выв. GND ЖК-дисплея 3,3 В Рис. 7.7. Макет частотомера, измеряющего частоту генератора 7555 5В к ЖКдисплею R2 R3 22 23 24 25 27 21 S1 8 7 6 C3 5 К выв. SDA платы дисплея 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 IC1 2 К выв. SCL платы дисплея 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico Разъем USB 1 USB- 5 В кабель от компьютера 39 40 C2 1 R1 D3 D1 D2 D4 2 3 4 C1 Защита входа К выв. GND платы 3,3 В дисплея Резисторы Конденсаторы R2 2,2 кОм C2 100 пФ R3 2,2 кОм C3 10 нФ Дополнительные компоненты IC1 Таймер 7555 Рис. 7.8. Дополнительные компоненты для схемы измерителя частоты генератора 7555 Вы можете видеть, что компоненты для таймера 7555 такие же, как те, которые вы использовали в эксперименте 2 для тестирования приемников. 7555 может работать от источника питания 3,3 В, что хорошо совмещается со схемой Pico. Подайте питание на схему, подключив USB-кабель к компьютеру. Вы должны увидеть отображение на дисплее значения частоты от 800 кГц до 900 кГц. Показания будут немного меняться между измерениями, и если вы повысите температуру схемы 7555, подув на нее, вы должны увидеть изменение часЭксперимент 7. Подсчет импульсов с помощью Pico 159
тоты в пределах 1 кГц. Номиналы резисторов и конденсатора, определяющего частоту, при изменении температуры незначительно изменяются, а также изменяются свойства самой микросхемы таймера. Эта плохая стабильность час­ тоты является причиной того, что таймеры 555 и 7555 нечасто используются в радиоприложениях – стабильность кварцевых кристаллов, таких как тот, который измеряет время в Pico, намного выше. Схема приемника На рис. 7.8 компоненты в синем прямоугольнике защищают вход Pico от высокого напряжения. Они позволяют измерять сигналы с амплитудой, превышающей диапазон напряжений Pico от 0 В до 3,3 В. Это необходимо в нашей следующей модификации схемы для измерения частоты передатчика АМТ1 из эксперимента 3. На рис. 7.9 и 7.10 компоненты для AMT1 установлены на место 7555 и связанных с ним компонентов. Поскольку передатчику требуется источник питания 9 В, к положительной шине вдоль верхнего края макетной платы была добавлена батарея. Отрицательный вывод батареи подключен к той же отрицательной шине в нижней части макетной платы, что и питание Pico. 5В к ЖКдисплею Батарея +9 В 22 23 24 25 27 21 L1 S1 C7 C5 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 R5 A Raspberry Pi Pico Разъем USB 2 26 28 29 30 31 32 33 34 35 37 36 38 5В 1 USB-кабель от компьютера 39 40 R4 Q1 C6 К выв. SCL платы дисплея К выв. SDA платы дисплея R1 D3 D1 D2 D4 C1 R7 R6 Защита входа C8 C4 К выв. GND платы дисплея 3,3 В Конденсаторы C1 1 мкФ 1 кОм С4 0,1 мкФ R4 10 кОм C5 2,2 нФ R5 4,7 кОм C6 200 пФ R6 4,7 кОм С7 1 мкФ R7 1 кОм C8 47 нФ Резисторы R1 Другие компоненты D1-D4 Диоды Шоттки BAT48 Q1 Биполярный транзистор 2N3904 LI Индуктивность 22 мкГн S1 Тактовая кнопка Рис. 7.9. Компоненты простейшего передатчика AMT1 заменили генератор 7555, чтобы обеспечить входной радиосигнал на Pico Напряжение в точке А передатчика колеблется в среднем около 8 В, и такое напряжение может повредить вход Pico. Конденсатор С1 в счетчике пропускает колебания напряжения и блокирует постоянную составляющую сигнала. 160 Радио. Эксперименты с невидимыми волнами
4,7 кОм 10 кОм 5В к выв. VCC ЖК-дисплея Индуктивность USB-кабель от компьютера 1 мкФ К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея 2,2 нФ 22 мкФ 2N3904 1 мкФ Батарея +9 В Антенна 10 см в диаметре 1 кОм 3,3 В 47 нФ 4,7 кОм К выв. GND ЖК-дисплея 0,1 мкФ 1 кОм 200 пФ перем. конденсатор Рис. 7.10. Макет схемы рис. 7.9 Следующая проблема заключается в том, что амплитуда сигнала на рис. 3.3 составляет 12 В от пика к пику, что слишком много для Pico. Мы разместили диоды Шоттки D3 и D4 от входного вывода 20 к земле и к источнику питания 3,3 В (подобно линиям I2C на выводах 6 и 7), но здесь нам также необходимо защититься от напряжений ниже уровня общего провода. Обратите внимание на полярность диодов. Они повернуты так, что диод на шину +3,3 В проводит ток, если напряжение на выводе выше 3,3 В, а диод на общий провод проводит, когда напряжение на выводе ниже 0 В. Резистор R1 присутствует в схеме для ограничения тока через эти диоды. Конденсатор, резистор сопротивлением 1 кОм и два диода Шоттки образуют входную цепь частотомера. измерение частОты амт1 Не подключайте аудиосигнал ко входу AMT1. На ЖК-экране вы должны увидеть частоту несущей волны передатчика, вероятно, в диапазоне от 750 до 800 кГц. Если поворачивать переменный конденсатор, вы должны увидеть изменение частоты. Даже если вы не прикасаетесь к схеме, вы можете видеть колебания значения частоты. Если подуть на транзистор, чтобы нагреть его, можно также наблюдать, как частота медленно смещается. Это иллюстрация к одному из недостатков AMT1 – как и в случае с таймером 7555, его стабильность частоты не очень хорошая. Когда вы использовали управляемый кварцевым кристаллом Pico для генерации сигналов – как в этом эксперименте для тестового сигнала 1 МГц1, так и в экспериментах 5 и 6 с генератором сигналов, управляемым переменным резистором, – стабильность намного лучше. (Однако я должен отметить, что LC-генераторы, подобные генератору AMT1, можно сделать достаточно стабильными, если их тщательно сконструировать и защитить от внешнего воздействия. До того, как стали доступными кристаллы кварца, в радиоприемниках и передатчиках обычно использовались LC-генераторы.) 1 Эксперимент с тестовым сигналом 1 МГц в данном случае не показатель, так как измеряемая частота и измерительный интервал задаются от одного источника. В этом случае показания были бы стабильными, даже если бы источником выбрали самый неточный RC-генератор, хотя в реальности его частота по массе причин может «гулять» на единицы и десятки процентов. Эксперимент 7. Подсчет импульсов с помощью Pico 161
Теперь у вас есть точный частотомер, который может работать с частотами до 15 МГц. Чего счетчик пока не может, так это справиться со слабыми сигналами. Для этого можно добавить усилитель. Но для проектов в этой книге, когда у нас есть генератор, частоту которого мы хотим измерить, амплитуды сигнала будет достаточно. чтО дальше? В этом эксперименте были даны некоторые советы и рекомендации по измерению частоты несущей волны, а также код, необходимый Pico для выполнения данной задачи. Это заводит нас настолько далеко, насколько нам необходимо углубиться в теорию AM-радио. Амплитудная модуляция – не единственный способ передачи звуковых сигналов на приемник. FM-радио было запатентовано еще в 1933 году и стало доминирующей системой трансляции музыки. В следующем эксперименте я покажу вам, как работает FM-стереовещание, и вы узнаете, как собрать приемник с помощью Pico.
Эксперимент 8 FM-ПРИЕМНИК
В се радиопередачи, которые вы отправляли и получали до сих пор, использовали амплитудную модуляцию, сокращенно AM. Но благодаря работе пионера радио Эдвина Армстронга мы все можем наслаждаться лучшим качеством сигнала благодаря частотной модуляции, известной как FM (frequency modulation). Сегодня большинство радиостанций, передающих музыку, используют FM. В данном эксперименте вы сможете принимать эти передачи с помощью Raspberry Pi Pico, добавив подключаемый FM-модуль – небольшую печатную плату размером примерно 3×2 см. Для этого вам понадобится создать новый скетч, и далее мы детально проследим, как он работает. Вы также узнаете, как питать Pico от батареи, чтобы его можно было отключить от компьютера и носить с собой как портативное радио. Наконец, вы получите несколько рекомендаций по дополнительным ресурсам, которые помогут вам глубже изучить возможности FM-модуля. Что вам понадобится • • • • • • • • • • • • 1 Модуль FM-приемника (1 шт.). SparkFun WRL-12938, HiLetgo Si4703 или аналогичная плата, содержащая FM-чип Si47031. Штыревой разъем типа PLS для WRL-12938 (8 контактов с шагом 2,54 мм) (1 шт.). Паяльник и припой для установки разъема на плате FM-модуля. Raspberry Pi Pico с ЖК-дисплеем, применявшиеся в предыдущих экспериментах (1 шт.). Электролитический конденсатор, 470 мкФ (1 шт.). Керамический конденсатор, 1 мкФ (1 шт.). Диоды Шоттки BAT48 (2 шт.). Любые стереонаушники со штекером 3,5 мм (1 шт.). Тактовые кнопки (3 шт.). Следующие три пункта являются необязательными и необходимы, только если вы решили добавить динамики. Динамики, 8 Ом, диаметром примерно 10 см (2 шт.). Аудиоразъем 3,5 мм с винтовыми клеммами, как и в предыдущих экспериментах (1 шт.). Аудиокабель со штекерами 3,5 мм на обоих концах. В отечественных интернет-магазинах можно приобрести как указанную отладочную плату WRL-12938 от SparkFun, так и ее многочисленные более дешевые аналоги. При приобретении следует ориентироваться на наличие аудиоразъема 3,5 мм для подключения наушников (см. рис. 8.1).
Частота и дальность Хотя FM обеспечивает лучшее качество, он не обеспечивает такого же большого радиуса действия, как AM. Это связано с использованием радиодиапазона VHF (very high frequency, очень высокой частоты)1. В большинстве стран для FM-передач используется диапазон УКВ от 87,5 до 108 МГц (в Японии используется частота от 76 до 95 МГц). Это по частоте значительно превышает AM-диапазон от 540 до 1600 кГц и также выше, чем коротковолновый радиодиапазон от 3 до 30 МГц. Так уж получилось, что сигналы в AM-диапазоне могут передаваться вдоль поверхности Земли и отражаться от слоя Хевисайда в верхних слоях атмо­ сферы, обеспечивая очень большую дальность действия. Но радиоволны УКВдиапазона, как правило, не отражаются в атмосфере, а следовательно, и не могут распространяться за горизонт. У использования этого способа зато есть одно преимущество: вещательные антенны для разных радиостанций могут быть расположены на расстоянии до 150 км друг от друга, используя одну и ту же частоту и не создавая при этом помех друг другу из-за их ограниченного радиуса действия. Следовательно, FM-радио идеально подходит там, где вокруг антенны концентрируется большое количество слушателей, например в городской местности. Модуль FM-приемника на основе SI4703 Высокие частоты можно передавать и принимать с помощью коротких антенн. Одним из нежелательных последствий этого является то, что длинные хвосты проводов в схеме на макетной плате могут электрически мешать друг другу. Вообще говоря, по этой причине макетные платы не подходят для построения FM-схем. Другая проблема с FM-сигналами заключается в том, что их сложнее декодировать, особенно если вы хотите передавать или принимать стереосигналы. Поэтому вместо приемника, построенного из дискретных компонентов, я предлагаю вам использовать плату, содержащую готовую микросхему радио1 Напоминаем (см. эксперимент 1), что AM и FM – это названия способов модуляции, а не диапазонов радиоволн. В принципе, любой из этих способов (а также их модификаций) можно применить в любом радиодиапазоне. Однако AM предпочтительно использовать на сравнительно низких частотах от длинных (ДВ) до коротких (КВ) волн, имеющих низкую информационную емкость, но способных распространяться по всему земному шару. Более информационно емкий способ FM используется на более высоких частотах (УКВ и далее), которые могут приниматься только в пределах прямой видимости. Потому общепринятого термина «AM-диапазон» не существует – в этой книге автор имеет в виду часть средневолнового диапазона (СВ, или, по-английски, MW, 300 кГц – 3 МГц), отведенного в США для передач AMрадиостанций (о диапазонах и их наименованиях см. также в последней главе книги). FM-диапазон – более распространенное наименование, обычно (с некоторыми региональными нюансами, см. далее по тексту) под ним понимают часть метрового диапазона 76–108 МГц, отведенную во всем мире для передач стереозвука с высоким качеством. Именно на этот диапазон рассчитан чип Si4703, лежащий в основе описываемого FM-модуля. Эксперимент 8. FM-приемник 165
Рис. 8.2. Контакты закреплены малярной лентой и готовы к пайке Рис. 8.1. Плата модуля WRL-12938 производства SparkFun содержит микросхему FM-приемника Si4703 Рис. 8.3. Контакты припаяны к плате модуля модуля Si4703, уже оптимизированную как FM-приемник. Поскольку это чип для поверхностного монтажа, он продается производителем предварительно установленным на небольшой плате размером примерно 3×2 см, оснащенной аудиоразъемом 3,5 мм, как показано на рис. 8.1. Данная плата разработана компанией SparkFun (модель WRL-12938), хотя можно найти аналоги, которые имеют те же функции, но стоят дешевле. Плата SparkFun требует установки 8-контактного разъёма (см. список необходимых компонентов выше). На некоторых таких платах разъем предустановлен, вы можете попробовать найти их поисковым запросом «Плата Si4703 с контактами». На рис. 8.2 показаны контакты разъема, вставленного в плату и закрепленного малярной лентой, не оставляющей следов. Я решил припаять разъем с обратной стороны, чтобы обозначения выводов были видны после подключения платы к макетной плате1. На рис. 8.3 показаны контакты после пайки. Процесс пайки упростится, если перед началом работы нанести на плату немного флюса. Вам нужно приложить 1 Именно по этой причине платы модулей лучше покупать с незапаянными разъемами: и направление выводов, и сам тип разъема (прямой или под углом 90°) можно выбрать по вашему желанию. При пайке лучше штыревую часть вставлять в ответное гнездо (типа PBS), приобретенное специально для этой цели, а уже его закреплять липкой лентой перпендикулярно плате – это гарантирует, что в процессе пайки штырьки не сдвинутся относительно друг друга. 166 Радио. Эксперименты с невидимыми волнами
кончик паяльника к каждому контакту на три-четыре секунды, а затем добавить ровно столько припоя, сколько необходимо для соединения. Если вы используете один из аналогов платы, внимательно проверьте расположение выводов (особенно общего провода и питания), используя надписи на оборотной стороне платы. Расположение может отличаться от указанного на моих фотографиях для платы SparkFun. Обратите внимание, что кабель наушников, подключенный к аудиоразъему, установленному на плате, также выполняет функции антенны. Конструкция Схема, показывающая, как плата FM-модуля подключается к Pico, представлена на рис. 8.4. Pico необходим для управления платой FM-модуля, с использованием уже известной нам шины I2C. Эта возможность встроена в Pico. 21 К выв. SCL платы дисплея К выв. SDA платы дисплея Down S2 S3 GP102 GP101 RST SEN SCLK SDIO GND 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 S1 3.3V 22 23 24 25 27 Плата модуля Si4703 Raspberry Pi Pico Разъем USB 2 26 28 29 30 31 32 33 34 35 37 36 38 5В 1 USB-кабель от компьютера 39 40 5В к ЖК-дисплею D1 Up D2 К выв. GND платы дисплея C1 C2 3,3 В Рис. 8.4. Схема FM-приемника. Модуль Si4703 показан здесь обратной стороной с надписями вверх. Обратите внимание, что контакты 3.3V и GND могут быть расположены на вашем модуле по-разному На рис. 8.5 показана та же схема на макетной плате. Соединения между Pico и ЖК-дисплеем такие же, как и в наших предыдущих экспериментах. Мы переместили защитные диоды Шоттки, чтобы освободить место для двух новых подключений той же шины I2C, соединяющих Pico с радиомодулем. Кнопки S2 и S3 были вынесены за пределы платы Pico, поскольку они не могут помещаться непосредственно между контактами 12 и 15 и шиной 3,3 В на макетной плате. Два конденсатора между положительной и отрицательной шинами питания на макетной плате предназначены для снижения шума источника питания, поскольку, как выяснилось, схема приемника чувствительна к шуму. Эксперимент 8. FM-приемник 167
Наушники 5 В к выв. VCC ЖК-дисплея GND 3.3V SDIO SCLK SEN RST GP101 GP102 Плата модуля Si4703 USB-кабель от компьютера К выв. SCL ЖК-дисплея К выв. SDA ЖК-дисплея К выв. GND ЖК-дисплея 100 мкФ 1 мкФ 3,3 В Рис. 8.5. Схема по рис. 8.4 на макетной плате Далее вам необходимо в Arduino IDE установить библиотеку для радиомодуля Si4703. Процедура аналогична той, что вы делали в эксперименте 4 с библиотекой LCD, и ее нужно провести только один раз.  Откройте Arduino IDE на компьютере с доступом в интернет.  Откройте Sketch > Include Library > Manage Libraries... (Скетч > Подключить библиотеку > Управление библиотеками...) или нажмите кнопку Library Manager (Диспетчер библиотек), чтобы открыть панель установщика библиотек.  Введите в поиск «PU2CLR SI470X» и установите библиотеку SI470X Рикардо Лимы Каратти (Ricardo Lima Caratti). (Кстати, PU2CLR – это позывной, обозначающий бразильскую любительскую радиостанцию.) Подключите Pico к компьютеру с помощью USB-кабеля и загрузите скетч, показанный на рис. 8.6a и 8.6b1. Подключите наушники к разъему на плате модуля FM-приемника. Кратковременно нажмите одну из двух кнопок настройки (S1 или S2), чтобы найти станцию. Поиск должен автоматически прекратиться, когда модуль обнаружит сигнал, и вы увидите частоту, отображаемую на ЖК-экране, со значением измеренного уровня сигнала. (Примерно для оценки шкалы: 10 – слабый сигнал, а 30 или выше – сильный.) 1 Скетч под названием 8-FM можно скачать с сайта автора книги по адресу https:// github.com/fjansson/MakeRadio. 168 Радио. Эксперименты с невидимыми волнами
đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 #include <Wire.h> #include <hd44780.h> #include <hd44780ioClass/hd44780_I2Cexp.h> #include <SI470X.h> hd44780_I2Cexp lcd ; SI470X rx ; const int LCD_COLS = 16 ; const int LCD_ROWS = 2; const int seek_down_pin = 9; // seek down button, pin 12 const int seek_up_pin = 11 ; // seek up button, pin 15 const int reset_pin = 14 ; // Si4703 reset, pin 19 const int SDA_pin = 4; // I2C data, pin 6 void setup () { rx .setup (reset_pin , SDA_pin ); int status = lcd .begin (LCD_COLS , LCD_ROWS ); if (status ) hd44780 :: fatalError (status ); // does not return rx .setFrequency (10180 ); // frequency(in MHz) * 100 rx .setAgc (1); // enable automatic gain control rx .setExtendedVolumeRange (1); // set lower volume scale rx .setVolume (10 ); // set volume (range 0..15) // rx.setFmDeemphasis(1); // for the European FM standard rx .setRds (true ); // enables RDS rx .setRdsMode (1); pinMode (seek_down_pin , INPUT_PULLDOWN ); pinMode (seek_up_pin , INPUT_PULLDOWN ); } char str [20 ]; int i = 0; void loop () { //remove comment signs below to wait for a button press //while(!(digitalRead(seek_down_pin)||digitalRead(seek_up_pin))) // delay(5); if ( digitalRead (seek_down_pin ) || digitalRead (seek_up_pin )) { // clear RDS data when changing station rx .clearRdsBuffer (); lcd .clear (); } if ( digitalRead (seek_down_pin )) rx .seek (0, 0); if ( digitalRead (seek_up_pin )) rx .seek (0, 1); Рис. 8.6а. Скетч FM-приемника, часть 1 Эксперимент 8. FM-приемник 169
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 } delay (30 ); if ( rx .getRdsReady ()) { lcd .setCursor (0, 1); // 2nd row lcd .print (rx .getRdsText0A ()); } if ( i++ % 20 == 0) // every 20th time... { // fetch information and display on screen float f = rx .getRealFrequency () / 100.0 ; int rssi = rx .getRssi (); int stereo = rx .isStereo (); snprintf (str , 18 , "%6.2f MHz %2d" , f, rssi ); lcd .setCursor (0, 0); // 1st row lcd .print (str ); if ( stereo ) lcd .print (" S" ); else lcd .print (" " ); } Рис. 8.6b. Скетч FM-приемника, часть 2 Кабель наушников с этим приемным модулем работает так же, как антенна. Я обнаружил, что добавление примерно 1,20 м провода к разъему заземления наушников улучшает прием. Снимите полтора сантиметра изоляции с провода, согните его вокруг внешнего контакта вилки наушников, как показано на рис. 8.7, и зажмите между вилкой наушников и гнездом разъема на радиомодуле, как представлено на рис. 8.8. Рис. 8.7. Подключение антенного провода к разъему наушников Рис. 8.8. Антенный провод должен быть зажат между штекером наушников и гнездом на коммутационной плате 170 Радио. Эксперименты с невидимыми волнами
Некоторые FM-радиостанции передают название станции и другую информацию, используя цифровой протокол, называемый RBDS в США и RDS в других странах. Эти сокращения означают «Система радиовещательных данных» (Radio Broadcast Data System) или «Система радиоданных» (Radio Data System). Если эти данные присутствуют в трансляции и сигнал достаточно сильный, чип приемника обнаруживает его, и скетч отображает название станции на ЖК-экране. Если вы слышите периодический шум при прослушивании слабой станции, я предлагаю отключить отображение названия станции и обновлять его только один раз после смены станции. Для этого посмотрите на строки 36 и 37 эскиза. Две косые черты (//) сообщают компилятору, что любой текст до конца строки следует считать комментарием и игнорировать (в предыдущих скетчах вы видели такие комментарии, содержащие краткие пояснения). Если убрать косые черты из строк 36 и 37, эти строки становятся частью кода, и скетч будет ждать нажатия одной из кнопок настройки, прежде чем приступить к обновлению дисплея. Аналогичным образом вы можете добавить две косые черты к строке 57, чтобы сделать ее неактивной, или, как чаще говорят, закомментировать строку. Вы можете заметить, что вывод названия станции задерживается или что некоторые символы в нем ошибочные. Это происходит, когда шум вызывает сбои в приходящих данных. Протокол RBDS имеет механизм обнаружения и исправления ошибок, но, похоже, ни чип приемника, ни библиотека Arduino при его использовании не обеспечивают идеальную коррекцию ошибок. Как это работает Частотная модуляция Частотная модуляция означает, что для передачи информации, например аудиосигнала, изменяется частота несущей. Пример показан на рис. 8.9. (Вспомните, что при амплитудной модуляции меняется амплитуда несущей, а несущая частота остается постоянной.) Частота, указанная для радиостанции или отображаемая на приемнике, на самом деле является центральной частотой, тогда как фактические мгновенные частоты сигнала, который излучает передатчик, меняются в некотором диапазоне вокруг центральной частоты. Общим стандартом для радиовещательных станций является максимальное отклонение частоты на величину до 75 кГц выше или ниже центральной частоты. Аудиосигнал, 1 кГц 1 0 -1 1 Частотно-модулированная несущая около 15 кГц 0 -1 0,0 0,5 1,0 Время (мс) 1,5 2,0 Рис. 8.9 . Звуковой сигнал (вверху) и соответствующая частотно-модулированная несущая волна (внизу). Несущая частота показана заниженной, а величина частотной модуляции преувеличена, чтобы показать ее более наглядно Эксперимент 8. FM-приемник 171
Стереозвук Для стереозвука требуется два аудио­ канала: один для левого динамика и один для правого. В Stereo FM используется продуманная схема, обеспечивающая совместимость со старыми моноприемниками: вместо передачи сигналов левого (L) и правого (R) каналов отдельно передаются сумма L + R и разность L – R. Моноресиверы принимают только суммарный сигнал, тогда как стереоприемники восстанавливают сигналы L и R из двух сигналов следующим образом. Сложение L + R и L – R дает 2*L, а их вычитание дает 2*R, вот так: 1 L -1 -2 Сумма и разность аудиосигналов 2 1 L+R 0 L-R -1 -2 Поднесущая 38 кГц, модулированная разностью 2 1 (L + R) – (L – R) = 2 * R. 0 Разностный сигнал (L – R) первым делом образует амплитудно-модулированный сигнал поднесущей 38 кГц, затем этот модулированный сигнал добавляется к сигналу L + R. Рисунок 8.10 иллюстрирует этот процесс. Этот объединенный сигнал затем используется для частотной модуляции высокочастотной несущей. Текстовые данные RDS/RBDS передаются с помощью модуляции другой поднесущей на частоте 57 кГц, опять же с идеей, что приемник, не отображающий текст, может просто игнорировать эту частоту. В этом эксперименте всю обработку таких сигналов выполняет радиомодуль, использующий комбинацию методов аналогового радио и цифровой обработки сигналов для демодуляции FM-сигнала и восстановления стереофонического звука с текстовыми данными. -1 Строка 4 (см. начало скетча на рис. 8.6a) подключает установленную R 0 (L + R) + (L – R) = 2 * L; Разбираемся в скетче Аудиосигналы 2 -2 2 Сумма и поднесущая складываются 1 0 -1 -2 0,0 0,2 0,4 0,6 0,8 1,0 Время (мс) Рис. 8.10. Этапы построения стерео-FMсигнала. На первом графике показаны два аудиоканала (L и R). Пусть, например, в обоих каналах присутствует тон 1 кГц. Кроме того, в правом канале присутствует тон 7,6 кГц. На втором графике рассчитываются сумма и разность каналов. Сигнал 38 кГц, поднесущая, модулируется по амплитуде с помощью сигнала L – R (третий график). Модулированная поднесущая добавляется к сигналу L + R (четвертый график). Этот сигнал используется для частотной модуляции конечной несущей волны с частотой в диапазоне FM-вещания около 100 МГц. (Последняя операция не показана, поскольку частота слишком велика, но принцип тот же, что и на рис. 8.9) 172 Радио. Эксперименты с невидимыми волнами
ранее библиотеку SI470X, которую скетч будет использовать для общения с радиомодулем. В строке 6 создается объект с именем rx для управления радиомодулем. Функция setup() в скетче начинается со строки 14 и содержит знакомые функции для инициализации экрана, а также несколько вызовов функций настройки приемника, начинающихся с rx. Строка 16 инициализирует радио. Я обнаружил, что это должно произойти до инициализации ЖК-экрана – в противном случае связь по шине I2C, предназначенная для ЖК-экрана, похоже, сбивает с толку радиомодуль. Строка 20 устанавливает начальную частоту приема в 100 раз больше значения частоты в МГц1. (Здесь вы можете заменить частоту вашей любимой станции.) В строке 21 включается автоматическая регулировка усиления, что, по-видимому, немного улучшает прием. Строка 23 устанавливает начальную громкость звука. Значение громкости представляет собой целое число в диапазоне 0–15, где 0 означает тишину. Строка 22 включает так называемый расширенный диапазон громкости. На обычной шкале громкости, которая активна по умолчанию, даже значение 1 вызывает дискомфорт при прослушивании в наушниках. Расширенный диапазон громкости менее интенсивный и больше подходит для наушников. Строка 24 является необязательной, поскольку она управляет настройкой аудиофильтра, который имеет разные стандартные значения для FM-вещания в разных регионах. Настройка приема по умолчанию подходит для стандарта США, поэтому я оставил эту строку закомментированной. Включение строки 24 установит значение в соответствии с европейским стандартом. На практике разница невелика и незначительно влияет на баланс между низкими и высокими частотами в принимаемом сигнале. Строка 25 включает обработку сообщений данных RDS/RBDS, а строка 26 включает дополнительную проверку ошибок для этих сообщений. Строки 27 и 28 устанавливают входные выводы для двух кнопок, позволяющих выполнять настройку вверх и вниз по частоте. Когда функция настройки доходит до конца, радиомодуль должен принимать частоту, установленную в строке 20. Единственное, что остается делать функции loop(), – обрабатывать нажатия кнопок настройки и отображать информацию на экране. Строки 39–43 проверяют, нажата ли какая-либо из кнопок настройки, и если да, то сбрасываются данные RDS/RBDS, чтобы предотвратить отображение старого названия станции. Строка 44 (см. рис. 8.6b) проверяет, нажата ли кнопка S2 поиска вниз. Если это так, команда поиска в строке 45 дает указание радиомодулю искать следующую станцию на более низкой частоте. Строки 46 и 47 делают то же самое для поиска вверх с помощью кнопки поиска S3. Строка 49 – задержка в 30 миллисекунд, которая гарантирует, что связь с чипом будет осуществляться не слишком часто. Строка 51 проверяет, были ли получены действительные данные через RDS/ RBDS, и если да, то строка 53 перемещает курсор ЖК-дисплея на вторую строку. Строка 54 обрабатывает данные RDS/RBDS и извлекает строку, содержащую на1 Иными словами, частота настройки задается с разрешением в десятки килогерц (значение по умолчанию «10 180» в скетче означает частоту 101,80 МГц в привычных единицах). Эксперимент 8. FM-приемник 173
звание радиостанции. Строки 58–69 образуют блок кода для получения информации из радиомодуля и отображения ее на экране. Строка 57 гарантирует, что этот блок будет выполняться при каждом двадцатом проходе функции loop(). Частое обновление дисплея вызывает заметный шум при приеме, и обновление каждый двадцатый раз снижает шум, но для своевременного отклика этого достаточно. Сообщение, отображаемое на экране, содержит текущую настроенную час­ тоту, число, обозначающее уровень сигнала, и букву S, если приемник обнаруживает, что станция принимается в стереофоническом режиме. RSSI в названии функции означает received signal-strength indicator (индикатор уровня полученного сигнала), что есть принятое название для числа, указывающего уровень сигнала. Закомментированные строки 36 и 37 можно использовать для ожидания нажатия одной из кнопок настройки. Это означает, что дисплей не обновляется во время прослушивания станции, что, как мы уже упоминали, снижает шум при прослушивании слабых станций. Если вы решите их использовать, удалите при этом строку 57 (сделав ее комментарием), чтобы отображение обновлялось один раз за каждую настройку. Что можно улучшить? Далее я предложу некоторые модификации: вы можете попробовать сделать приемник портативным, питая его от батареек, или добавить динамики вмес­ то наушников. Я также покажу вам, как расширить диапазон частот для использования в Японии или других регионах с другим диапазоном FM. Портативный приемник Питание этого проекта от компьютера через USB-порт Pico может быть неидеальным для практического использования. Вы можете использовать модуль питания USB для питания схемы или запитать ее от батарей. На Pico можно безопасно подавать напряжение до 5 В через контакт VSYS (контакт 39), если USB-кабель не подключен1. Три последовательно соединенные батарейки типа АА дают напряжение 4,5 В, чего также достаточно, чтобы ЖК-дисплей давал приличную контрастность. Две последовательно соединенные АА дадут 3 В, чего достаточно для Pico и радиомодуля, но не для ЖК-дисплея. 1 Согласно схеме питания платы Pico (п. 4.4 в описании Raspberry Pi Pico по адресу https://datasheets.raspberrypi.com/pico/pico-datasheet.pdf), на вывод VSYS можно подавать питание до 5,5 В (ограничение со стороны стабилизатора RT6150B-33GQW). При этом диод защищает выход USB (вывод VBUS платы) от перенапряжения извне, а не наоборот. Если на VSYS подать напряжение на несколько десятых вольта ниже питания со стороны USB (в стандартных пределах 4,75–5,25 В), то ток потечет от USB к источнику, подключенному к VSYS. Поэтому временное ошибочное подключение к VSYS адаптера с гарантированным напряжением не ниже 5 В одновременно с USB безопас­но, а вот подключение трех элементов AA (как это делает автор далее) с суммарным напряжением, заведомо более низким, обязательно приведет к электрическому конфликту. Заметим особенность стабилизатора RT6150B-33GQW – при поступлении на вход пониженного напряжения вплоть до 1,8 В напряжение на выходе все равно поддерживается на уровне 3,3 В при токе потребления до 800 мА. 174 Радио. Эксперименты с невидимыми волнами
Потребление тока составляет около 65 мА и упадет до 50 мА, если отключить подсветку ЖК-дисплея, удалив перемычку на задней стороне модуля I2C. Трех щелочных батареек типа АА при токе 50 мА должно хватить примерно на два дня непрерывного использования. Около половины тока поступает на микроконтроллер; другая половина уходит на радиомодуль. Возможно, большую часть времени можно было бы переводить Pico в энергосберегающий спящий режим, поскольку Pico не нужно ничего делать после настройки радиочипа, особенно если вы отключите прием данных RDS/RBDS и вывод на дисплей названия станции. Для миниатюрного радиоприемника вы можете отказаться от ЖК-дисплея и использовать только две батарейки АА последовательно1. Имейте в виду, что приемник чувствителен к помехам источника питания, поэтому в зависимости от качества используемого вами зарядного устройства или источника питания значительное количество шума может мешать при приеме слабых станций. Добавление динамиков Еще одна модификация, которую вы можете рассмотреть, – это добавление подходящих динамиков и превращение схемы в настольное радио. Проверка показала, что усилитель радиомодуля может раскачивать пару небольших динамиков, хотя громкость получается довольно низкая. Чтобы подключить динамики к модулю, можно использовать аудиокабель со штекерами 3,5 мм на каждом конце. Аудиовыход модуля при этом подключается к аудиоразъему с винтовыми клеммами, как мы поступали в эксперименте 3. Затем подключите динамики к этому разъему. Один динамик подключен между выводом L и общим проводом, другой между R и общим проводом. Помните совет из эксперимента 1: динамики звучат намного лучше, если их установить в корпус. Вероятно, вы захотите закомментировать строку 22 скетча и увеличить громкость в строке 23. Напоминаем, что максимальное значение – 15. Возможно, вы захотите добавить регулятор громкости. Для этого вам понадобятся еще две кнопки – одна для увеличения громкости, а другая для ее уменьшения, – подключенные к любым свободным контактам GPIO на Pico. Затем нужно добавить в скетч код для работы с этими кнопками, аналогично тому, как запрограммированы кнопки поиска S2 (вниз) и S3 (вверх). Для изменения громкости используйте функции rx.setVolumeUp() и rx.setVolumeDown(). При таком использовании динамиков аудиокабель по-прежнему действует как антенна. Если прием плохой, можно добавить проводную антенну к аудио­ разъему на радиомодуле, как предлагалось выше, или добавить проводную антенну в общий для обоих динамиков винтовой разъем. 1 По мере исчерпания емкости напряжение на щелочных гальванических элементах снижается от начальных 1,5–1,6 В на элемент до примерно 1,0–1,1 В. То есть три элемента также смогут потянуть обычный 5-вольтовый ЖК-дисплей только в начале срока службы, на двое суток их также не хватит. Для подобных применений целесообразно сразу приобрести ЖК-дисплей с питанием 3,3 В, совместимый по управлению со стандартным интерфейсом hd44780 (например, отечественный MT-16S2H-I компании МЭЛТ, уже имеющий встроенный конвертор I2C-интерфейса). Эксперимент 8. FM-приемник 175
Выбор диапазона настройки В скетче предполагается, что диапазон FM-вещания находится в диапазоне от 87,5 МГц до 108 МГц, что является стандартом в США, Европе и Индии. Если вы находитесь в Японии или другой стране с иным диапазоном FM-вещания, вы можете для диапазона частот от 76 МГц до 108 МГц вставить следующую строку между строками 19 и 20: rx.setBand(1); или для диапазона от 76 МГц до 90 МГц: rx.setBand(2); Дополнительные источники Микросхема приемника Si4703 описана в технической документации (datasheet), а дополнительная информация содержится в документах, называемых замечаниями по применению (application notes). В документации описано, как чипом можно управлять по шине I2C, записывая значения в разные регистры. Радиобиблиотека, использованная в этом эксперименте, задокументирована на сайте GitHub по адресу https://github.com/pu2clr/SI470X, а также на странице https://pu2clr.github.io/SI470X/extras/apidoc/html/. На этих веб-страницах представлена дополнительная информация о функциях, предоставляемых библиотекой. Печатная плата WRL-12938 с чипом Si4703 описана в списке продуктов SparkFun по адресу: https://www.sparkfun.com/products/12938. На вкладке «Documents» на этой странице вы также можете найти схему радиомодуля. Что дальше? Этот эксперимент предоставил вам максимально простое знакомство с FMрадио и позволил принимать передачи с помощью вашего Pico с небольшой дополнительной платой. Остальные эксперименты перейдут от повседневных передач AM и FM к самым разным темам: от коротковолнового радио до металлодетекторов. Но сначала вы узнаете о пультах дистанционного управления, с помощью которых можно активировать практически любое устройство в вашем доме.
Эксперимент 9 ДИСТАНЦИОННОЕ УПРАВЛЕНИЕ
Т ип пульта дистанционного управления, который вы обычно используете для управления телевизором, проигрывателем Blu-ray или акустической системой, используют инфракрасный свет для передачи сигнала. У него есть большое преимущество – низкая стоимость, но есть один очевидный недостаток: гаджеты, которыми вы управляете, должны «видеть» ИК-пульт в вашей руке. Пульты, передающие радиосигналы, гораздо более универсальны. Обычное применение – открыть дверь гаража, когда вы приближаетесь к ней на машине, и существует еще множество ситуаций, когда радиопульты работают лучше, чем инфракрасные. Радиоуправление часто можно встретить в дверных звонках, а также можно самостоятельно запрограммировать такие пульты на включение ламп, аудиосистем и отключаемых розеток. Доступны готовые программируемые пульты дистанционного управления с несколькими кнопками для включения и выключения до 10 устройств по всему дому, и далее вы узнаете о способах кодирования, которые они используют. Вы сможете также подключиться к Pico, чтобы он делал то же самое. Данный эксперимент включает оба варианта, и вы увидите, как легко заставить радиопульт и приемник взаимодействовать друг с другом. Что вам понадобится • • • • • • • • • • • 1 Комплект радиомодулей WPi469, 433 МГц (1 комплект, состоящий из одного передатчика и одного приемника). Продается под торговыми марками Whadda, Velleman или Pimoroni. Доступно из таких источников, как Jameco, RobotShop, AliExpress, eBay и DigiKey1. Дополнительно: вторая макетная плата Raspberry Pi Pico и USBкабель в дополнение к макетной плате Pico с кабелем, которые у вас уже должны быть под рукой. Дополнительно: пульт дистанционного управления, работающий на частоте 433 МГц, с одной или несколькими кнопками. Убедитесь, что он поддерживает один из протоколов EV1527 или PT2262. Ищите по поисковому запросу «433 МГц EV1527». Опционально: кнопка дверного звонка с частотой 433 МГц, поддерживающая один из упомянутых выше протоколов. Замыкающие тактовые кнопки, подходящие для установки на макетную плату (6 шт.). Резисторы: 100 Ом (1 шт.), 330 Ом (1 шт.), 1 кОм (1 шт.), 10 кОм (1 шт.). Керамические конденсаторы 100 нФ (2 шт.). Электролитические конденсаторы 100 мкФ (2 шт.). Стандартный светодиод диаметром 5 мм (2 шт.). Биполярный NPN-транзистор 2N3904 (1 шт.). Динамик или пассивный пьезоизлучатель из эксперимента 1 (1 шт.). В России комплект WPi469 одной из названных торговых марок можно приобрести, например, в «ЧИП и ДИП».
Отправка сигнала Для этого эксперимента потребуется, чтобы передатчик отправил радиокод, а приемник принял его и активировал какое-то устройство. Мы будем использовать предварительно укомплектованный набор модулей, работающих на частоте 433 МГц, которая обычно используется для этой цели. Каждый модуль предназначен для управления микроконтроллером Arduino или Pico. Если вы предпочитаете не покупать второй микроконтроллер, то можете использовать готовый беспроводной дистанционный передатчик, например из показанных на рис. 9.1. Но для декодирования сигнала вам все равно понадобится Pico. Платы производителей Whadda или Velleman, которые рекомендовались выше, показаны на рис. 9.2 (передатчик) и рис. 9.3 (приемник). На каждой плате наклонные дорожки с отверстиями – это антенны; вы можете представить их себе как сплющенные катушки. Переверните каждую плату, чтобы увидеть обратную сторону такой катушки. Поскольку платы часто продаются без какоголибо опознавательного текста, вы можете пометить их T и R, чтобы не перепутать. Каждая плата имеет три контакта, расстояние между которыми соответствует макетной плате. Вывод с маркировкой SIG передает или принимает сигнал, вывод с маркировкой VCC подключается к источнику питания +3,3 В, а GND предназначен для подключения отрицательного общего провода. Используя две макетные платы, поместите Pico на каждую и установите модуль передатчика на одну плату, а модуль приемника – на другую, как представлено на рис. 9.4 и 9.5. Рис. 9.1. Примеры пультов дистанционного управления на 433 МГц: одна кнопка (дверной звонок) и три многокнопочных пульта, подходящих для включения и выключения ламп. Все работает с приемником на основе Pico. На крайнем правом пульте имеется ползунок для выбора одной из четырех групп, что расширяет количество устройств, которыми можно управлять. Рис. 9.2. Плата передатчика Рис. 9.3. Плата приемника Рис. 9.4. Модуль приемника, вставленный в макетную плату рядом с Pico. Проверьте рис. 9.5, чтобы правильно расположить контакты каждого модуля Эксперимент 9. Дистанционное управление 179
На рис. 9.5 показано подключение передатчика (вверху) и приемника (внизу) на макетах. Рисунок 9.6 на следующей странице показывает схему подключений. Кнопки должны иметь только два контакта на замыкание, совместимые с макетными платами по расстоянию между ними. Обратите внимание, что для этого эксперимента не требуется ЖК-дисплей, который вы использовали ранее, поэтому соединения для него были удалены. Теперь вы начинаете с нового размещения перемычек вокруг Pico. 3,3 В 100 мкФ WPi469 модуль передатчика 100 нФ USB-кабель от компьютера 10 кОм 3,3 В 100 мкФ 100 нФ WPi469 модуль передатчика USB-кабель от компьютера 330 Рис. 9.5. Модуль передатчика (вверху) и модуль приемника (внизу) размещены на отдельных макетах Я предполагаю, что на вашем компьютере есть два порта USB. Первоначально каждый порт USB будет использоваться только для подачи напряжения 5 В. Каждая плата Pico преобразует его в напряжение 3,3 В, подающееся с контакта 36 платы (3V3) на передатчик или приемник. В ближайшем будущем оба Pico будут выполнять более интересные задачи, тогда вам придется программировать их раздельно. Сейчас их не нужно программировать скетчами, они просто получают питание от компьютера, поэтому их можно подключать одновременно. 180 Радио. Эксперименты с невидимыми волнами
ПЕРЕДАТЧИК C2 C1 3,3 В S1 GND S2 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 3,3 В SIG 21 22 23 24 25 27 26 28 29 30 31 32 33 34 35 37 36 38 Raspberry Pi Pico Разъем USB 2 5В 1 USB-кабель от компьютера 39 40 WPi469 (передатчик) R1 ПРИЕМНИК C4 C3 3,3 В S3 GND 3,3 В 21 22 23 24 25 26 20 19 18 17 16 15 13 12 11 10 9 8 7 6 5 4 3 2 14 Raspberry Pi Pico Разъем USB 1 SIG 5В USB-кабель от компьютера 27 28 29 30 31 32 33 34 35 36 37 38 39 40 WPi469 (приемник) D1 R2 Рис. 9.6. Схемы подключений для макетов рис. 9.5 После подачи питания на макеты обратите внимание на светодиод на макетной плате приемника. Он может быть включен, выключен или мигать. Если вы нажмете и отпустите кнопку S2 на макетной плате передатчика, светодиод на макетной плате приемника должен среагировать. (В зависимости от приемника вы можете увидеть разные реакции, но я думаю, вы заметите мигание или изменение яркости светодиода при нажатии и отпускании кнопки.) Если у вас есть радиопульт дистанционного управления с частотой 433 МГц, например любой из показанных на рис. 9.1, и вы нажмете одну из его кнопок, светодиод начнет быстро мигать при получении закодированного сигнала. Выходной сигнал приемника становится высоким, когда он обнаруживает передачу, и низким, когда передача отсутствует. Приемник рассчитан на достаточно быстрые импульсы (около 1 кГц) и автоматически подстраивается под уровень фонового шума на частоте приема. Он не будет точно соответствовать медленным сигналам, которые вы можете отправить с помощью кнопки, но этот тест показывает, что приемник реагирует на передатчик. Чтобы передать что-то полезное, нужны более быстрые сигналы. Pico может помочь вам отправлять, получать и декодировать их. Эксперимент 9. Дистанционное управление 181
пОдключаем бОльше кнОпОк На рис. 9.7 и 9.8 показано, как вам нужно модифицировать макеты передатчика и приемника для следующего шага этого эксперимента, чтобы они управлялись каждым из Pico, а не просто питались от него. Обратите внимание на зеленую перемычку, добавленную от контакта 21 каждого Pico к сигнальному контакту каждой платы. В схеме передатчика убрана кнопка S2 и добавлены переключатели S4–S7. (На самом деле вы можете взять S2 из предыдущей схемы и использовать ее как S7.) В схеме приемника R2 и D1 были удалены и добавлены светодиоды D2 и D3. (На самом деле вы можете повторно использовать D1 как D2. Я меняю нумерацию компонентов, чтобы можно было ссылаться в дальнейшем тексте на них без путаницы.) В схеме приемника не забудьте добавить синюю перемычку, соединяющую контакт 3 Pico с отрицательной шиной внизу макетной платы. Это необходимо для подключения светодиодов. 3,3 В 100 мкФ 100 нФ WPi469 (передатчик) USB-кабель от компьютера 10 кОм 3,3 В 100 мкФ 100 нФ WPi469 (приемник) USB-кабель от компьютера Рис. 9.7. Модификация макетов передатчика (вверху) и приемника (внизу) так, чтобы радиомодулями теперь можно было управлять с Pico 182 Радио. Эксперименты с невидимыми волнами
ПЕРЕДАТЧИК C2 C1 3,3 В S1 3,3 В GND GND SIG 3,3 В 21 22 23 24 25 27 26 28 29 30 31 32 33 34 35 37 36 38 ПРИЕМНИК S5 S6 20 19 18 17 16 15 13 12 11 10 9 8 7 6 5 4 3 S4 14 Raspberry Pi Pico Разъем USB 2 5В 1 USB-кабель от компьютера 39 40 WPi469 (передатчик) R1 S7 C4 C3 3,3 В S3 SIG 21 22 23 24 25 26 D2 20 19 18 17 16 15 13 12 11 10 9 8 7 6 5 4 3 14 Raspberry Pi Pico Разъем USB 2 27 28 29 30 31 32 33 34 35 36 37 38 5В 1 USB-кабель от компьютера 39 40 WPi469 (приемник) D3 Рис. 9.8. Схемы подключений для макетов рис. 9.7. До конца эксперимента я буду ссылаться на показанные здесь номера компонентов Каждая из кнопок от S4 до S7 при нажатии подключает свой вывод Pico к общему проводу. Эти кнопки не подключены к отрицательной шине на макетной плате. Мы используем тот удобный факт, что Pico имеет много отдельных выводов общего провода (здесь использованы выводы GND 3, 8, 13 и 18). В модуле передатчика мы сохранили резистор R1, соединяющий сигнальный контакт с общим проводом. Если Pico по какой-либо причине оставляет сигнал данных передатчика плавающим, этот резистор 10 кОм гарантирует, что передатчик останется выключенным. (В противном случае может передаваться случайная последовательность импульсов, что будет создавать помехи для других пультов дистанционного управления.) Теперь вам нужно будет запрограммировать каждый Pico соответствующим скетчем для управления модулями передатчика и приемника. Но прежде чем Эксперимент 9. Дистанционное управление 183
это сделать, необходимо установить библиотеку rc-switch в Arduino IDE на вашем компьютере. Эта библиотека содержит код для кодирования и декодирования последовательностей импульсов, используемых многими пультами дистанционного управления, что сделает схемы приемника и передатчика совместимыми с существующими пультами. Процедура аналогична установке библиотеки ЖК-дисплея в эксперименте 4. Эта процедура не требует подключения какого-либо из ваших Pico к компьютеру.  Запустите Arduino IDE.  Выберите Sketch > Include Library > Manage Libraries... (Скетч > Подключить библиотеку > Управление библиотеками...) или нажмите кнопку Library Manager (Диспетчер библиотек), чтобы открыть панель установщика библиотек.  В поле поиска введите «rcswitch».  Вы должны увидеть название библиотеки «rc-switch by sui77».  Нажмите кнопку Install (Установить). Теперь подключите Pico, который управляет модулем передатчика, и откройте скетч 9-1-transmitter.ino в окне IDE1. Вы должны увидеть листинг, показанный на рис. 9.9. Нажмите стрелку Upload (Загрузить), чтобы установить его в Pico. đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 #include RCSwitch const const const const int int int int <RCSwitch.h> tx = RCSwitch (); tx_pin = 16 ; // pin 21 N = 4; // number of switches pin [] = { 3, 7, 11 , 15 }; code [] = { 1328149 , 1328148 , 1315861 , 1315860 }; // pin 5, 10, 15, 20 void setup () { tx .enableTransmit (tx_pin ); for ( int i = 0; i < N; i++ ) pinMode (pin [i], INPUT_PULLUP ); } void loop () { for ( int i = 0; i < N; i++ ) if ( digitalRead (pin [i]) == 0) tx .send (code [i], 24 ); // number of bits in code } Рис. 9.9. Скетч, управляющий модулем передатчика 1 Скетчи 9-1-transmitter.ino и указанный далее 9-2-receiver.ino можно скачать со страницы автора по адресу https://github.com/fjansson/MakeRadio. 184 Радио. Эксперименты с невидимыми волнами
Когда вы загружаете скетч, то можете увидеть сообщение о том, что библиотека rc-switch может быть несовместима с вашей текущей платой. Я проверил, что библиотека работает на Pico, поэтому можно игнорировать это сообщение. Отключите передатчик Pico и подключите приемник Pico. Откройте в IDE новый скетч с именем 9-2-receiver.ino . Он должен выглядеть так, как показано на рис. 9.10. đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 #include RCSwitch <RCSwitch.h> rx = RCSwitch (); const int rx_pin const int led1_pin const int led2_pin = 16 ; // pin 21 = 13 ; // pin 17 = 15 ; // pin 20 void setup () { Serial .begin (); rx .enableReceive (rx_pin ); pinMode (led1_pin , OUTPUT ); pinMode (led2_pin , OUTPUT ); } void loop () { int code ; if ( rx .available ()) { code = rx .getReceivedValue (); Serial Serial Serial Serial Serial Serial if if if if .print ("Received " ); .print (code ); .print (", " ); .print (rx .getReceivedBitlength ()); .print (" bits, protocol " ); .println (rx .getReceivedProtocol () ); ( code ( code ( code ( code == == == == 1328149 1328148 1315861 1315860 ) ) ) ) digitalWrite digitalWrite digitalWrite digitalWrite (led1_pin (led1_pin (led2_pin (led2_pin , , , , 1); 0); 1); 0); rx .resetAvailable (); } } Рис. 9.10. Скетч для приемника Нажмите стрелку Upload (Загрузить), чтобы установить в Pico скетч, управляющий модулем приемника. Теперь вы можете закрыть IDE. Эксперимент 9. Дистанционное управление 185
Снова подключите передатчик Pico к порту USB, чтобы обе платы теперь получали питание от компьютера. Нажмите кнопку S4, и загорится светодиод D2. Нажмите S5, и светодиод погаснет. Нажмите S6, и загорится светодиод D3. Нажмите S7, и светодиод погаснет. Светодиоды используются только для проверки работоспособности системы. Вы можете использовать выходы приемника Pico для управления практически любым другим устройством, используя транзистор или реле. Кроме того, как только вы поймете, как работают скетчи, вы сможете изменить их для управления более чем двумя устройствами. Далее расскажем подробнее о модулях передатчика и приемника и разберемся в скетчах. Как это работает Используемые здесь модули рассчитаны на частоту 433,92 МГц (хотя часто для краткости указывается 433 МГц ровно). Эта частота используется для маломощных пультов дистанционного управления ближнего действия. Они часто продаются как передатчики и приемники ASK или OOK. ASK означает «амплитудно-сдвиговую манипуляцию» (amplitude-shift keying), что означает, что для передачи сообщения изменяется амплитуда сигнала. Это похоже на амплитудную модуляцию (и это действительно так), но термин ASK обычно используется для цифровых сигналов. OOK означает попросту «включение-выключение» (on-off keying). Для данных передатчиков эти два термина означают одно и то же: сигнал либо включен, либо выключен1. Все эти приемники и передатчики используют одну и ту же частоту, поэтому все они слышат друг друга, если находятся в пределах досягаемости. Дальность передачи может составлять не менее 30 м или даже больше, если передатчик и приемник расположены в прямой видимости друг друга. Итак, как же приемники в разных устройствах узнают, какие сигналы им предназначены? А что, если ваш сосед тоже использует на той же частоте ворота с дистанционным управлением? Ответ в том, что каждый пульт дистанционного управления отправляет свой цифровой код в виде последовательности импульсов. Приемники постоянно прослушивают все сигналы, которые могут найти, но реагируют только на те коды, которые они распознают. Что произойдет, если два передатчика будут осуществлять передачу одновременно? Существует риск того, что ни одно сообщение не будет получено. Предполагается, что такие конфликты сообщений будут редкими, поскольку этому типу радиоустройств разрешено передавать только кратковременно – когда пользователь нажимает кнопку или через заданные интервалы, например когда передатчик отправляет показания температуры. Существуют ограничения на то, как часто может происходить передача и как долго она может продолжаться. 1 В русскоязычной литературе для стиля управления, при котором управляемый элемент либо полностью включен, либо полностью выключен, часто употребляются термины «двухпозиционное» или «релейное управление». 186 Радио. Эксперименты с невидимыми волнами
Разбираемся в скетчах Теперь, когда вы знаете, что делают модули передатчика и приемника, вы можете разобраться в скетчах. Общая идея заключается в том, что передатчик ждет, пока не будет нажата любая из его кнопок. Затем он отправляет код, соответствующий этой кнопке, используя библиотеку rc-switch, которую вы установили. Приемник использует ту же библиотеку для прослушивания действительных кодов. Если найден действительный код и он соответствует одному из предопределенных кодов, скетч обновляет состояние выводов, подключенных (в данном случае) к светодиодам. Скетч приемника также отсылает через последовательный порт USB любой полученный код. Вы можете прочитать эти сообщения с помощью монитора последовательного порта в Arduino IDE и использовать их для изучения кодов, передаваемых другими радиопультами дистанционного управления, которые можете найти. Скетч передатчика Посмотрите на скетч передатчика на рис. 9.9. Строка 1 сообщает компилятору, что скетч будет использовать библиотеку rc-switch (которую вы установили ранее), а строка 2 использует эту библиотеку для объявления объекта с именем tx (распространенное сокращение для передатчика), который мы будем использовать для взаимодействия с радиомодулем. Затем следуют определения некоторых констант: tx_pin в строке 4 – это вывод, подключенный к модулю передатчика, а N в строке 5 – количество подключенных кнопок. Строки 6 и 7 определяют два массива, называемых pin и code. Массив контактов pin содержит номера контактов, подключенных к кнопкам, а массив кодов code содержит коды, которые скетч должен отправлять при нажатии этих кнопок. Функция setup() инициализирует объект tx в строке 11 и сообщает ему, к какому выводу Pico подключен передатчик. Цикл for в строках 13 и 14 объявляет все выводы, подключенные к кнопкам, входами и включает внутренние подтягивающие резисторы. Это означает, что эти выводы будут показывать высокий уровень до тех пор, пока нажатие на кнопку не подключит вывод к отрицательной шине питания. Функция loop() опрашивает каждый вывод, и как только находит вывод с низким уровнем, означающим, что кнопка нажата, передается соответствующий код с помощью функции tx.send(). Этой функции необходимы два параметра: фактический код для отправки и количество содержащихся в нем битов. (24 бита – это обычное число для пультов дистанционного управления. Вероятно, вам не нужно его менять, если вы хотите соответствовать существующему пульту дистанционного управления.) Скетч приемника Теперь посмотрим на скетч приемника на рис. 9.10. Строка 1 также включает библиотеку rc-switch, а строка 2 объявляет объект для взаимодействия с приемником. На этот раз он называется rx, что означает receiver (приемник). Строки с 4 по 6 определяют контакты модуля приемника и двух светодиодов. Функция setup() инициализирует последовательный порт, который в данном случае фактически работает через USB-кабель. Он будет использоваться для передачи сообщений на подключенный компьютер (их можно будет прочитать Эксперимент 9. Дистанционное управление 187
с помощью монитора последовательного порта Arduino IDE). Строка 10 инициа­ лизирует объект rc приемника и сообщает ему, к какому выводу подключен приемник. Строки 11 и 12 устанавливают выводы для светодиодов как выходы. Функция loop() в строке 17 проверяет, было ли получено новое сообщение. Если да, сообщение посылается через последовательный порт в строках с 20 по 25. Строки с 27 по 30 сравнивают полученный код с четырьмя значениями кода, назначенными кнопкам в скетче передатчика. Если код распознан, один из выводов светодиода переключается на высокий или низкий уровень. Наконец, в строке 32 функция rx.resetAvailable() используется, чтобы сообщить библиотеке, что мы закончили обработку сообщения и готовы к новому. Коммерческие пульты На рис. 9.1 приведено несколько готовых пультов дистанционного управления с частотой 433 МГц, совместимых с модулем приемника, подключенного к Pico. Вы можете найти еще много подобных пультов в интернете. Просто введите в поисковую строку, например, «radio remote 433MHz» или, по-русски, «пульт 433 мгц». Хотя все радиопульты, которые вы найдете, используют одну и ту же частоту, они используют разные протоколы – стандарты количества битов (двоичных цифр 0 и 1), отправляемого в сообщениях, и того, как именно биты представлены сигналами разной длины. Библиотека rc-switch может обрабатывать многие протоколы, но не все существующие. Поэтому когда вы покупаете пульты дистанционного управления, лучше всего проверить их описание на наличие протоколов, о которых известно, что они поддерживаются. Хорошо работают протоколы EV1527 и PT2262. Эти названия на самом деле являются обозначениями типов микросхем, называемых энкодерами, которые используются для генерации последовательности импульсов. Два средних пульта дистанционного управления на рис. 9.1 содержат микросхемы EV1527. Прослушать код Если у вас есть наушники с высоким сопротивлением или пассивный пьезопреобразователь из эксперимента 1, вы можете попробовать следующий прос­ той эксперимент: подключите наушники или пейджер между сигнальным контактом модуля приемника (SIG) и общим проводом (см. схему рис. 9.8). Нажимайте кнопки на пультах и слушайте. Каждый пульт дистанционного управления генерирует свой уникальный код. Возможно, вы даже услышите некоторые различия. Коммерческие приемники Вы также можете купить готовый модуль приемника, который можно настроить для реагирования на уникальный код стандартного модуля передатчика. Чтобы убедиться, что вы найдете реле, которое будет переключать устройства в вашем доме, такие как освещение или замки, введите в поиск «receiver module 433MHz relay» или, по-русски, «релейный приемный модуль 433 МГц». 188 Радио. Эксперименты с невидимыми волнами
Реле Светодиод Кнопка обучения Рис. 9.11. Этот небольшой модуль приемника размером примерно 2,5×5 см содержит реле, которое может переключать устройства в вашем доме Антенна Рис. 9.12. Внутренность модуля приемника, показанного на рис. 9.11 На рис. 9.11 показан приемник, реа­ гирующий на однокнопочный пере­ датчик. Отщелкнув пластиковую крышку плоскогубцами или отверткой, вы обнаружите внутри плату с реле, пятью винтовыми клеммами, крошечной кнопкой (называемой кнопкой обуче­ ния) и светодиодом (см. рис. 9.12). Для работы приемнику необходимо напряжение 12 В постоянного тока. Перевернув плату, как показано на рис. 9.13, вы обнаружите, что две Рис. 9.13. Нижняя сторона платы, покаклеммы обозначены V+ и V–. Вы мозанной на рис. 9.12. Маркировка винтовых жете использовать адаптер переклемм описана в тексте менного тока 12 В для подачи на них положительного и отрицательного напряжений. Клемма с надписью NO соединяется с нормально разомкнутым контактом внутри реле, клемма NC соединяется с нормально замкнутым контактом внутри реле, а клемма COM соединяется с контактом, общим для NO и NC. (То есть соединяется то с одним из них, то с другим, в зависимости от того, активировано ли реле.) На рис. 9.14 показаны приемник с дистанционным пультом-брелоком и мультиметр, который используется для проверки контакта между клеммами реле. Чтобы научить приемник распознавать передатчик, нажмите кнопку обучения на плате передатчика один раз. На плате загорится светодиод. Нажмите кнопку на пульте, светодиод начнет мигать и гаснет. Теперь этот конкретный приемник будет реагировать на этот конкретный пульт дистанционного управления. В дальнейшем при нажатии кнопки на пульте реле заЭксперимент 9. Дистанционное управление 189
мыкается. Для реле безопасно коммутировать напряжение 120 В, если вы используете клеммы NO и COM или NC и COM1. Многие приемные модули доступны с гораздо более сложным набором функций. Но я предполагаю, что вас, как и меня, больше интересует самостоятельное создание и программирование таких устройств. Изучение кодов разных пультов Вернитесь к нашим двум макетам с платой передатчика и платой приемника и сделайте следующее. Рис. 9.14. Программирование модуля при Убедитесь, что модуль передатемника для распознавания передатчика. чика не подключен к USB-порту ваПрибор проверяет замыкание контактов реле шего компьютера.  Убедитесь, что модуль приемника подключен к USB-порту вашего компьютера.  Запустите Arduino IDE.  В меню выберите Tools > Serial Monitor (Инструменты > Монитор порта). Откроется окно монитора последовательного порта Serial Monitor, в котором будет отображаться текст, отправленный Pico через его последовательный порт (которым фактически служит USB-соединение). Сообщения, отправленные операторами Serial.print() в скетче, попадают именно сюда.  Нажимайте кнопки на пульте дистанционного управления и наблюдайте за окном Serial Monitor на компьютере. Вы должны увидеть примерно такое сообщение: Received 5659745, 24 bits, protocol 1 Оно будет повторяться до тех пор, пока вы удерживаете кнопку нажатой. Код скетча приемника 9-2-receiver.ino все еще виден в главном окне IDE? Если нет, откройте его заново. Вы можете указать в скетче, чтобы приемник распознавал пульт, который вы только что использовали. Выделите семизначное число в окне Serial Monitor и нажмите <Ctrl+C> (<Command+C> на Mac), чтобы его скопировать. Теперь перейдите к тексту скетча, выделите код 7115876 в строке 27 и вставьте вместо него новый код, используя <Ctrl+V> (<Command+V> на Mac). 1 Обычные характеристики контактов подобных дистанционных реле составляют 250 В переменного тока при нагрузке от 5 до 10 А у разных производителей. 190 Радио. Эксперименты с невидимыми волнами
Клонирование пульта дистанционного управления Теперь, когда вы знаете, какие коды отправляет ваш готовый пульт дистанционного управления, вы можете запрограммировать Pico на плате передатчика так, чтобы он имитировал этот пульт. Запишите коды, которые вы видели в мониторе последовательного порта, и замените какие-то из четырех кодов в строке 7 скетча передатчика. Первый код в этой строке соответствует кнопке S4 на макетной плате, второй – S5 и т. д. Если сообщение «Received» в окне Serial Monitor не заканчивается «protocol 1», вам придется вставить следующий код в строку 12 скетча передатчика (рис. 9.9): tx.setProtocol(2); где номер 2 следует заменить на тот номер протокола, который вы видели в выходных данных приемника. Это сделано для того, чтобы Pico не только отправлял правильный код, но и отправлял его по тому же протоколу, что и исходный пульт. Библиотека rc-switch в принимающем Pico автоматически выбирает протокол, соответствующий входящим сообщениям, поэтому вам не нужно указывать протокол для приемника. Если вы теперь загрузите измененный скетч в Pico на плате передатчика, вы сможете отправлять те же коды, что и исходный пульт. Иными словами, вы клонировали свой пульт. Возможно, вы сможете придумать полезные или забавные приложения для клонированных радиопультов. Прежде чем вы начнете проявлять творческий подход или беспокоиться о безопасности ваших замков с дистанционным управлением, я должен упомянуть, что пульты дистанционного управления гаражными воротами и беспроводными ключами от машины используют другую схему кодирования, даже если они используют ту же частоту и тот же тип импульсной сигнализации, как у пультов дистанционного управления, которые я описывал до сих пор. Поскольку использование фиксированного кода для таких целей явно небезопасно, они используют (или, по крайней мере, им следует использовать) что-то более сложное. Одним из вариантов являются скользящие коды – система, в которой передатчик генерирует новые коды с использованием криптографического алгоритма, и каждый код отправляется только один раз. Приемник отслеживает, какие коды уже были использованы, и старые коды не принимает. Беспроводной приемник дверного звонка Теперь я покажу вам, как использовать модули беспроводного передатчика и приемника для создания системы беспроводного дверного звонка. Если у вас уже есть беспроводной дверной звонок, вы можете добавить к нему кнопки или приемники. Система беспроводного дверного звонка состоит из двух частей: кнопки снаружи двери, которая передает радиосигнал, и приемника, который вы размещаете внутри своего дома. Приемник издает звук, когда обнаруживает радиосигнал от кнопки. Эксперимент 9. Дистанционное управление 191
Но что, если у вас большой дом и звонок не слышен в каждой комнате? А что, если у вас проблемы со слухом или вы просто предпочитаете мигающий свет вместо звука? Когда схема приемника Pico принимает радиосигнал от дверного звонка, вы можете заставить его создавать любой выходной сигнал по вашему выбору. Это может быть дополнение к приемнику, который поставлялся вам вмес­ те с дверным звонком. Для проекта дверного звонка вы можете использовать макет передатчика, который вы сконструировали ранее, или готовую кнопку передатчика дверного звонка. Сейчас я покажу вам, как модифицировать макет и скетч приемника для использования в дверном звонке. Загрузите в Pico на макетной плате приемника скетч 9-3-doorbell-receiver. ino, показанный на рис. 9.151. Затем подключите макет передатчика к USBпорту для подачи питания и нажмите S4. Вы должны увидеть, как один из светодиодов на макете приемника мигнет пять раз. Нажмите S6, и вы увидите, как другой светодиод мигнет три раза. Для более заметного сигнала обычные светодиоды можно заменить на светодиоды высокой яркости разных цветов. Наличие разных оповещений (цветовых или звуковых) может быть удобным, если у вас несколько дверей, и эту функцию в дверных звонках, имеющихся в продаже, я не встречал. Чтобы приемник дверного звонка распознавал кнопки любых беспроводных дверных звонков, которые могут встретиться в продаже, используйте монитор последовательного порта Arduino, чтобы увидеть, какие коды передают кнопки (скетч по-прежнему выводит все полученные коды), и адаптируйте скетч приемника для распознавания этих кодов. Далее вы также можете добавить звуковое оповещение. Скетч уже содержит код для генерации звукового прямоугольного сигнала на одном из выводов Pico: вызов функции tone(audio_pin, 288) в строке 36 начинает выводить прямоугольный сигнал с частотой 288 Гц на указанный вывод, а функция noTone() в строке 38 снова выключает его после задержки. Остаётся только подключить динамик, чтобы сигнал был слышен. Поскольку сигнал представляет собой прямоугольную волну, мы можем использовать простой транзисторный усилитель, как показано на рис. 9.16 и 9.17. Теперь нажатие первой кнопки S4 на макете передатчика должно заставить приемник зажечь один из светодиодов и воспроизвести звук. Третья кнопка, S6, на передатчике зажигает другой светодиод и воспроизводит другой звук. Если у вас есть пассивный пьезоизлучатель из эксперимента 1, вы можете использовать его вместо динамика – просто подключите его между аудиовыходом на контакте 19 Pico и общим проводом. (Можно также исключить транзистор и окружающие его резисторы.) 1 Скетчи 9-3-doorbell-receiver.ino и описанный далее 9-4-doorbell-receiver-sound.ino можно скачать со страницы автора по адресу https://github.com/fjansson/MakeRadio. 192 Радио. Эксперименты с невидимыми волнами
đ1 đ2 đ3 đ4 đ5 đ6 đ7 đ8 đ9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 #include <RCSwitch.h> const int rx_pin =16 , led1_pin =13 , led2_pin =15 , audio_pin =14 ; RCSwitch rx = RCSwitch (); void setup () { Serial .begin (); rx .enableReceive (rx_pin ); pinMode (led1_pin , OUTPUT_12MA ); pinMode (led2_pin , OUTPUT_12MA ); pinMode (audio_pin , OUTPUT ); } void loop () { int code ; if ( rx .available ()) { code = rx .getReceivedValue (); Serial .print ("Received " ); Serial .print (code ); Serial .print (", " ); Serial .print (rx .getReceivedBitlength ()); Serial .print (" bits, protocol " ); Serial .println (rx .getReceivedProtocol () ); if ( code == 1328149 ) { // react to one button for ( int i = 0; i < 5; i++ ) // flash and beep 5 times { digitalWrite (led1_pin , 1); tone (audio_pin , 440 ); delay (250 ); noTone (audio_pin ); digitalWrite (led1_pin , 0); delay (250 ); } } if ( code == 1315861 ) { // react differently to another for ( int i = 0; i < 3; i++ ) // flash and beep 3 times { digitalWrite (led2_pin , 1); tone (audio_pin , 288 ); delay (500 ); noTone (audio_pin ); digitalWrite (led2_pin , 0); delay (500 ); } } rx .resetAvailable (); } } Рис. 9.15. Скетч дверного звонка Эксперимент 9. Дистанционное управление 193
3,3 В 100 мкФ WPi469 (приемник) 100 пФ 100 USB-кабель от компьютера 2N3904 1 кОм К динамику Рис. 9.16. Макет приемника дверного звонка с простым аудиовыходом ПРИЕМНИК C2 C1 3,3 В S3 10 кОм 330 Ом 100 Ом 1 кОм GND 3,3 В 22 23 24 25 27 21 R3 20 19 18 17 16 15 13 12 11 10 9 8 7 6 4 3 2 5 Конденсаторы C1 100 мкФ C2 100 нФ 14 Raspberry Pi Pico Разъем USB 1 Резисторы R1 R2 R3 R4 SIG 5В USB-кабель от компьютера 26 28 29 30 31 32 33 34 35 37 36 38 39 40 WPi469 (приемник) R4 Q1 D2 D3 Дополнительные компоненты D1-D3 Стандартные светодиоды диаметром 5 мм Q1 Биполярный NPN транзистор 2N3904 S1-S7 Тактовые кнопки на замыкание Рис. 9.17. Схема макета по рис. 9.16. Перечень деталей приведен для всех трех схем, описанных в этой главе Вы, конечно, можете настроить частоту и продолжительность тона по своему вкусу, отредактировав скетч, и отрегулировать громкость звука, изменив резистор, включенный последовательно с динамиком. Снижение сопротивления до 22 Ом позволит вам безопасно оставаться в пределах ограничения тока транзистора. На этом этапе вам может показаться, что сигнал прямоугольной 194 Радио. Эксперименты с невидимыми волнами
волны звучит немного резко. Как насчет красивых колокольчиков вместо этого? В следующем разделе я покажу вам, как использовать Pico для создания более приятных звуков, используя более совершенные методы звукового синтеза. музыкальный двернОй звОнОк Если нужен более приятный аудиовыход, можно использовать Pico для создания более сложных звуковых сигналов. Загрузите скетч 9-4-doorbell-receiver-sound.ino, приведенный на рис. 9.18 и 9.19, в приемник Pico и снова попробуйте использовать кнопки на макете передатчика (или кнопки передатчика дверного звонка). Вы должны услышать последовательность звуков: три сигнала для одной кнопки и два для другой. Звуки стали более плавными, чем раньше, и различаются по интенсивности, а не начинаются и прекращаются внезапно. đ1 #include <RCSwitch.h> đ2 #include <PWMAudio.h> đ3 const int rx_pin =16 ,led1_pin =13 ,led2_pin =15 ,audio_pin =14 ; đ4 const int RATE = 44000 ; // PWM frequency & sample rate Hz đ5 // ADSR: Attack rate Decay rate Sustain Release rate đ6 float A=10.0 /RATE , D=5.0 /RATE , S=0.7 , R=10.0 /RATE ; đ7 RCSwitch rx = RCSwitch (); đ8 PWMAudio audio = PWMAudio (audio_pin ); đ9 // musical note frequencies in Hz 10 #define C4 261.6256 // C in octave 4 11 #define C4s 277.1826 // C sharp 12 #define D4 293.6648 // etc 13 #define D4s 311.1270 14 #define E4 329.6276 15 #define F4 349.2282 16 #define F4s 369.9944 17 #define G4 391.9954 18 #define G4s 415.3047 19 #define A4 440.0000 20 #define A4s 466.1638 21 #define B4 493.8833 22 void setup () { 23 Serial .begin (); 24 rx .enableReceive (rx_pin ); 25 pinMode (led1_pin , OUTPUT ); 26 pinMode (led2_pin , OUTPUT ); 27 audio .setBuffers (4, 32 ); 28 audio .setFrequency (RATE ); 29 audio .begin (); 30 } 31 32 void play (float f, float len ) { Рис. 9.18. Скетч 33 int16_t s; дверного звонка с более приятным звуком (начало) 34 float e = 0; 35 char state = 'A' ; Эксперимент 9. Дистанционное управление 36 int remaining = len *RATE ; 37 for (int i = 0; ; i++ ) { 38 remaining -- ; 39 switch (state ) { 195
196 27 audio .setBuffers (4, 32 ); 28 audio .setFrequency (RATE ); 29 audio .begin (); 30 } 31 32 void play (float f, float len ) { 33 int16_t s; 34 float e = 0; 35 char state = 'A' ; 36 int remaining = len *RATE ; 37 for (int i = 0; ; i++ ) { 38 remaining -- ; 39 switch (state ) { 40 case 'A' : 41 e += A; 42 if ( e >= 1) { 43 state = 'D' ; 44 e = 1.0 ; 45 } 46 break ; 47 case 'D' : 48 e -= D; 49 if ( e <= S) 50 state = 'S' ; 51 break ; 52 case 'S' : 53 if ( remaining <= 0) 54 state = 'R' ; 55 break ; 56 case 'R' : 57 e -= R; 58 if ( e <= 0) 59 return ; // end of the note 60 break ; 61 } 62 s = 32767 * e * sinf (2*M_PI /RATE *f*i); 63 audio .write (s); 64 } 65 } 66 void loop () { 67 int code ; 68 for ( int i = 0; i < 4*32 ; i++ ) 69 audio .write (0); // clear buffer - silence 70 if ( rx .available ()) { 71 code = rx .getReceivedValue (); 72 Serial .print ("Received " ); 73 Serial .print (code ); 74 Serial .print (", " ); 75 Serial .print (rx .getReceivedBitlength ()); 76 Serial .print (" bits, protocol " ); 77 Serial .println (rx .getReceivedProtocol () ); Рис. 9.19. дверного с более звуком (продолжение) 78Скетч if ( code звонка == 1328149 ) { приятным // react to one button 79 digitalWrite (led1_pin , 1); 80 play (C4 , 0.4 ); 81 play (E4 , 0.4 );волнами Радио. Эксперименты с невидимыми 82 play (G4 , 0.8 ); 83 digitalWrite (led1_pin , 0); 84 } 85 if ( code == 1315861 ) { // another button
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 } 93 } Serial .print ("Received " ); Serial .print (code ); Serial .print (", " ); Serial .print (rx .getReceivedBitlength ()); Serial .print (" bits, protocol " ); Serial .println (rx .getReceivedProtocol () ); if ( code == 1328149 ) { // react to one button digitalWrite (led1_pin , 1); play (C4 , 0.4 ); play (E4 , 0.4 ); play (G4 , 0.8 ); digitalWrite (led1_pin , 0); } if ( code == 1315861 ) { // another button digitalWrite (led2_pin , 1); play (E4 *2, 0.4 ); play (C4 *2, 0.8 ); digitalWrite (led2_pin , 0); } rx .resetAvailable (); Рис. 9.19. Скетч дверного звонка с более приятным звуком (окончание) Как это работает Далее мы разберемся, как работает скетч и как его можно изменить для воспроизведения своих собственных нот. Синтез звука В эксперименте 5 упоминалось, что широтно-импульсная модуляция может использоваться для генерации цифровым выходом аналогового выходного сигнала. Библиотека Arduino Pico, которую вы используете, содержит функции, помогающие воспроизводить звуки с использованием широтно-импульсной модуляции. Вы должны предоставить звук в виде последовательности чисел (семплов), представляющей аудиосигнал в разные моменты времени. Библио­ тека выполняет работу по воспроизведению этих семплов с фиксированной скоростью, которую вы можете выбирать. Использование широтно-импульсной модуляции для вывода звука означает, что на выходе получается прямоугольная волна (с гораздо более высокой частотой, чем сам аудиосигнал). Эту прямоугольную волну можно усилить с помощью простого транзисторного усилителя, показанного на рис. 9.16 и 9.17. Сам динамик действует как фильтр, удаляя высокую частоту ШИМ и оставляя только звуковые частоты. (Кроме того, мы выбрали частоту ШИМ вне слышимого диапазона, чтобы вы все равно ее не услышали.) Разбираемся в скетче Ниже приводится подробный разбор скетча дверного звонка. Прием сигнала такой же, как и в предыдущих скетчах, новое касается только генерации звука. Строка 2 сообщает компилятору, что скетч будет использовать аудиофункцио­ нальность (библиотека PWMAudio.h). В строке 3 определяются контакты для Эксперимент 9. Дистанционное управление 197
разных целей. Константа RATE в строке 4 – это частота дискретизации в герцах, то есть количество семплов, воспроизводимых в секунду. Частота дискретизации должна быть как минимум в два раза выше максимальной частоты, которую вы хотите воспроизвести, но более высокое значение помогает повысить качество. Другая особенность заключается в том, что частота ШИМ также установлена на это значение, и по этой причине лучше выбрать значение, выходящее далеко за пределы слышимого диапазона. В строке 6 определяются константы, описывающие звук, которые расшифровываются ниже. Строка 8 инициализирует аудиосистему, а строки 10–21 определяют частоты для разных нот в герцах. В функции setup() строка 27 сообщает аудиосистеме размер и количество необходимых буферов. Буфер – это место для размещения семплов в памяти микроконтроллера. Когда программа создает семплы, они сохраняются в одном буфере, а звуковая система воспроизводит семплы из другого. Всем этим управляет звуковая система, и нам не нужно разбираться в деталях. Строка 27 запрашивает четыре буфера по 32 выборки в каждом. Строка 28 устанавливает частоту дискретизации, а строка 29 запускает аудиосистему. Функция play(f, len), заданная в строке 33, воспроизводит тон с частотой f в течение len секунд. Звук представляет собой синусоидальную волну, но чтобы сделать его более естественным, амплитуда меняется во время звучания. То, как амплитуда изменяется со временем, называется огибающей. В функции она описывается четырьмя числами, называемыми Attack (атака), Decay (спад), Sustain (поддержка) и Release (затухание). Этот тип огибающей называется ADSR и очень распространен в синтезаторах, возможно, потому что он достаточно прост, но оставляет много возможностей для создания разных звуков. Например, старинный Commodore 64 использовал огибающие ADSR для формирования звука, который он создавал с помощью звукового чипа SID. (Если вам любопытно или вы в том возрасте, чтобы испытывать ностальгию, поищите в интернете музыку SID, и вы найдете видеоролики, в которых вы сможете одновременно слышать музыку и видеть формы сигналов на дисплее, похожем на осциллограф). Тип ADSR имеет четыре фазы, показанные на рис. 9.20. Во время фазы атаки (Attack) амплитуда возрастает от 0 до максимального значения, равного 1. Значение Attack определяет скорость увеличения – другими словами, сколько времени займет эта фаза. Затем начинается фаза спада (Decay), во время которой амплитуда уменьшается со скоростью, заданной значением Decay. Эта фаза прекращается, когда амплитуда достигает уровня поддержки (Sustain), на котором она удерживается во время фазы Sustain. Эта фаза длится до тех пор, пока удерживается клавиша (на синтезаторе с клавиатурой), или в течение указанной длительности воспроизведения ноты. Когда клавиша отпускается или нота заканчивается, начинается фаза затухания (Release), и амплитуда падает до 0 со скоростью, заданной значением Release. Переменная remaining, определенная в строке 36, отслеживает, сколько семплов осталось до окончания фазы Sustain. Переменная s в строке 33 содержит один аудиосемпл в форме 16-битного целого числа (это то, чего ожидает аудио­система), а переменная e в строке 34 представляет собой значение огибающей. Цикл for, начинающийся со строки 37, создает аудиосемплы. 198 Радио. Эксперименты с невидимыми волнами
1,0 De ca y 0,8 e At t a c k 0,6 s Relea Амплитуда Sustain 0,4 0,2 0,0 0,1 0,2 0,3 0,4 0,5 Время (секунды) Рис. 9.20. Огибающая ADSR (см. расшифровку в тексте) Строки 39–61 – это генератор огибающей. Здесь обрабатываются все четыре фазы с помощью оператора переключения. Состояние переменной state содержит одну из величин A, D, S или R, обозначающую текущую фазу. Оператор переключения switch заставляет микроконтроллер перейти к оператору case, соответствующему переменной state. Для каждого из случаев значение e обновляется, и проводится проверка, позволяющая определить, следует ли начинать следующую фазу огибающей. Оператор break в строке 46 указывает, что обработка case завершена и управление должно быть передано в конец блока switch. Пропуск оператора break – распространенная ошибка при написании операторов switch. Ели она допущена, микроконтроллер с радостью продолжит выполнение кода для следующего случая. В строке 62 вычисляется значение семпла перемножением функции синуса sinf, огибающей для задания амплитуды и константы 32 768 для масштабирования значения до 16-битного целого числа со знаком. Вы можете рассматривать это как пример амплитудной модуляции: огибающая модулирует амплитуду синусоидальной функции. Строка 63 воспроизводит семпл или помещает его в аудиобуфер для воспроизведения чуть позже. Функция audio.write() является блокирующей. Это означает, что если аудиобуферы заполнены, функция будет ждать, пока не освободится место для семпла. То есть функции воспроизведения не нужно заботиться о времени, достаточно быстро создавать семплы, чтобы буферы не опустошались (это могло бы привести к слышимому сбою). В этом приложении удобна высокая скорость работы Pico – он достаточно быстр, чтобы вычислить Эксперимент 9. Дистанционное управление 199
синус и огибающую для каждого семпла. На более медленном микроконтроллере нам, вероятно, пришлось бы считывать значения синуса из таблицы в памяти, а также избегать использования переменных с плавающей запятой, поскольку они замедляют вычисления. Функция loop() аналогична той, что была в предыдущем скетче. Она различает два кода дистанционного управления, и для каждого из них загорается нужный светодиод, проигрываются две или три ноты, а затем светодиод гаснет. Музыкальные ноты Три ноты первой кнопки образуют приятный по звучанию мажорный аккорд1. Две ноты второй кнопки звучат как классический звук дверного звонка. Умножение значений частот на 2 во втором блоке делает ноты на одну октаву выше. Это всего лишь примеры – вы можете изменять ноты, их продолжительность (редактируя команды воспроизведения в строках 80–82 и 87–88) и значения ADSR в строке 6 скетча по вашему желанию. Вот одна из предлагаемых альтернатив значений в строке 6, которая дает более ударный звук: A = 50,0/RATE, D = 5,0/RATE, S = 0,3, R = 10,0/RATE. Значения частных от деления на константу RATE, задающую дискретизацию звука, предназначены для преобразования скорости нарастания сигнала в секунду в значение для каждого этапа, чего и ожидает генератор огибающей. Помните, что A, D и R – это относительные изменения амплитуды, а S – это уровень, на котором огибающая сохраняется во время фазы поддержки. Если вам нравятся идеи синтезаторов, вы можете пропустить часть про дверной звонок и просто использовать Pico для создания музыки и звуков. Есть много возможностей, выходящих за рамки этой книги о радио. Другие модули и добавление проволочных антенн Для всех модулей дистанционного управления требуются антенны. Модули WPI469, которые я рекомендовал, имеют антенны, напечатанные на печатных платах, как показано на рис. 9.2 и 9.3. Для других модулей дистанционного управления антенну потребуется припаять. Если вы готовы это сделать, существует множество других типов модулей, которые вы можете использовать вместо WPI469. Такие модули дистанционного управления часто продаются парами передатчик–приемник, а иногда также включают в себя антенны в виде проволочных спиралей. Передатчики и приемники из разных пар, как правило, совместимы, поскольку стандарт двухпозиционной манипуляции очень прост. Некоторые модели, которые я тестировал, – это передатчик STX882 и приемник SRX882, передатчик WL102 и приемник WL101, а также передатчик SYN115 и приемник SYN480R. Все они подходят для упражнений в этом эксперименте, если припаять антенны, как рассказывается ниже. Однако есть один тип модуля, которого следует избегать, называемый сверхгенеративным приемником (supergenerative receiver). Он дешев и широко доступен, но гораздо менее чувствителен, чем другие упомянутые здесь типы (см. приложение А). 1 Аккорд C-E-G («до-ми-соль») в четвертой октаве, см. строки 80–82. 200 Радио. Эксперименты с невидимыми волнами
Модули дистанционного управления, которые я рекомендую здесь, используют частоту 433,92 МГц. (Хотя в описании модулей сокращенно указано 433 МГц, на самом деле они работают на частоте 433,92 МГц.) Эта частота используется во всем мире для целей дистанционного управления. Подобные модули сущест­ вуют для частоты 315 МГц (еще одна частота, используемая в США1). Модули 315 МГц работают аналогично, но несовместимы с модулями 433,92 МГц. В комплект некоторых модулей входят спиральные антенны из жесткой проволоки, и вам просто нужно припаять их к нужной точке на плате. Если приобретаемые вами модули не включают в себя антенны, вы можете сделать свои собственные из кусков сплошного провода нужной длины, которая в данном случае составляет 170 мм. Отрежьте эту длину провода (точно), зачистите короткий участок от изоляции с одного конца и припаяйте зачищенный конец к контактной площадке модуля с маркировкой «ANT» (или подобной). На большинстве модулей контактная площадка антенны отделена от контактных площадок для напряжения питания и цифровых входов/выходов (обычно расположена на противоположном краю платы). Вам необходимо будет припаять антенну как к передатчику, так и к приемнику. Антенну следует держать как можно дальше от других проводников, дорожек или проводящих предметов. В принципе, она должна быть прямой, но если хотите поместить схему в корпус, можно попробовать согнуть ее по месту. Вероятно, это сработает, если корпус не металлический! Почему именно такая длина – 170 мм? Чтобы быть эффективной, антенна должна резонировать с частотой, которую она должна передавать или принимать. Хорошая длина – это четверть длины волны, когда сигнал подается в провод с одного конца, а другой конец не подключен. Такая антенна называется четвертьволновой. Чтобы узнать, какой длины должна быть антенна, сначала нужно узнать длину волны. Длина волны L – это скорость света c, деленная на частоту f : L = c / f, где L выражена в метрах, c равна 300 000 000 м/с, а f выражена в герцах. (Аналогичная зависимость для звуковых волн приведена в эксперименте 1.) При подстановке значений получим результат 300 000 000 / 433 920 000 = 0,69 м. Четверть длины волны отсюда получится равной 172 мм. Когда мы имели дело с АМ-радио в средневолновом диапазоне, я не акцентировал внимания на длине антенны, поскольку там длину волны (160–500 м) учитывать непрактично, и к тому же мы быстро перешли к использованию антенн на ферритовых стержнях. Для пультов дистанционного управления в этом эксперименте длина волны достаточно коротка, чтобы можно было использовать практичную четвертьволновую антенну, поэтому здесь этот момент подчеркивается. 1 Частота в 315 МГц используется для дистанционных пультов на американском континенте (в США, Канаде и Латинской Америке), в России (и Европе) эта частота для гражданских применений запрещена. Однако передатчики-приемники на 315 МГц доступны на российском рынке, т. к. широко представлены на AliExpress, и, кроме того, иногда попадаются в комплекте с американскими б/у машинами из «серого импорта». Конечно, маловероятно, что передатчик с дальностью 20–20 м чему-то помешает, и еще маловероятнее, что его заметят надзирающие за спектром соответствующие органы, но понятно, что таких модулей следует избегать. Эксперимент 9. Дистанционное управление 201
Что дальше? В этом эксперименте мы не только узнали, как использовать Pico в качестве беспроводного пульта дистанционного управления, но и увидели, как он может генерировать приятные звуковые сигналы, работая в качестве дверного звонка. Следующий эксперимент представляет другой тип радиоприемника. Вмес­ то того чтобы ограничиваться коммерческими AM-радиостанциями, он делает первый шаг к открытию мира коротковолнового радио, где лицензированные любители могут свободно передавать свои собственные сигналы на сотни миль – а при благоприятных условиях даже дальше.
Эксперимент 10 РЕГЕНЕРАТИВНЫЙ АМ-ПРИЕМНИК
В этом эксперименте вы создадите AM-приемник другого типа, творчески используя микросхему аудиоусилителя LM386. Она не была предназначена для этой цели, что является еще одним доказательством того, что мир вокруг нас полон радиоволн. Любитель электроники по имени Мартин МакКинни (Martyn McKinney) обнаружил ранее неизвестные возможности LM386, когда ремонтировал обычное радио. Он обнаружил, что микросхема может усиливать и демодулировать AM-сигнал, даже когда отключены другие компоненты радиостанции. Это пример регенеративного приемника, который использует положительную обратную связь для усиления радиосигнала. Это был хорошо известный метод еще во времена электронных ламп, но иметь дело с ним – приключение, поскольку обратная связь легко выходит из-под контроля и приводит к непредсказуемым результатам. Вам придется тщательно настроить схему, чтобы найти золотую середину, в которой подходящая антенна сможет обеспечить передачу на расстоянии. Что вам понадобится • • • • • • • • • • • • Ползунковый выключатель с выводами для установки на макетную плату (1 шт.). Резисторы: 100 Ом (1 шт.), 4,7 кОм (1 шт). Керамический конденсатор, 220 пФ (1 шт). Электролитические конденсаторы: 10 мкФ (2 шт.), 100 мкФ (2 шт.). Индуктивность 1 мГн (1 шт.). Она имеет цветовой код коричнево-черно-красно-золотой (или серебристый). Переменный конденсатор 200пФ типа 223P, как в предыдущих экспериментах (1 шт.). Ферритовый стержень диаметром 10 мм и длиной 15 см, как в предыдущих экспериментах (1 шт.). Подстроечный резистор, 10 кОм (1 шт.). Переменный резистор большого размера удобнее в обращении, но он не поместится на макетной плате. Микросхема усилителя LM386 (1 шт.). Проводные наушники, обычно используемые с музыкальным проигрывателем, с аудиоразъемом 3,5 мм (1 шт.). Наушники с высоким сопротивлением из эксперимента 1 также подойдут. Аудиогнездо 3,5 мм для макета (1 шт.), имеющее винтовые клеммы или гибкие выводы, которые можно подключить к макетной плате (1 шт.). Опционально: динамик, как и в предыдущих экспериментах (1 шт.).
100 мкФ Батарея 9В 10 мкФ 100 LM386 100 мкФ 10 мкФ 220 пФ 10 кОм L R Индуктивность 1 мГн 63 витка 200 пФ Рис. 10.1. Макет регенеративного приемника Регенеративная схема Схема, показанная на рис. 10.1, – это все, что нужно для регенеративного радиоприемника. Адаптер для наушников подключен необычным образом: если вы используете спаренный наушник, работающий обычно в стереофоническом режиме, моносигнал из этой схемы проходит через них последовательно, чтобы удвоить их сопротивление. Вы также можете использовать наушники с высоким сопротивлением того типа, который я представил в эксперименте 1. Адаптер будет работать в любом случае. На рис. 10.2 показано, как следует подключать адаптер с клеммами, T обозначенными буквами T, S и R (т. е. S для наконечника, гильзы и кольца) вместо L (левого канала), R (правого R канала) и символа заземления. Схема имеет тенденцию работать по принципу «все или ничего»: давать Рис. 10.2. Если у вас адаптер для наушнедостаточно звука или слишком мноников подобного типа, используйте только выводы разъема T и R. Полярность не имеет го. Это также может создавать непризначения ятные звуковые эффекты. Вам приЭксперимент 10. РегенеративныйАМ-приемник 205
дется настраивать усиление с помощью подстроечного резистора для каждой принимаемой станции. Но это удивительно просто по сравнению с поведением других регенеративных схем. Принципиальная схема показана на рис. 10.3. S1 C1 C4 P1 8 7 6 5 1 2 IC1 3 4 R1 L1 C3 C2 L2 C5 C6 63 витка Батарея 9В J1 Рис. 10.3. Схема регенеративного приемника Здесь C6 – тот же конденсатор переменной емкости, который использовался в эксперименте 1. Обязательно подключите его средний вывод к отрицательной шине питания, как показано на рис. 10.1. Если вы этого не сделаете, вы можете обнаружить, что прикосновение к металлическому винту в центре диска настройки создаст в наушниках неприятно громкий шум. L2 – катушка на ферритовом стержне, такая же, как в эксперименте 2. Она состоит из 63 витков провода, расположенных в два слоя. Вернитесь к рис. 2.1, 2.2 и 2.3, чтобы узнать о способе ее намотки. (Вторая, более короткая катушка, добавленная в эксперименте 2, здесь не понадобится.) При сборке схемы полностью поверните подстроечный резистор против часовой стрелки. После включения питания от батарейки 9 В начните поворачивать триммер по часовой стрелке, и в наушниках вы должны услышать помехи. Чтобы найти радиостанцию, вам нужно будет попеременно поворачивать два регулятора. Переменный конденсатор устанавливает частоту настройки, а подстроечный резистор устанавливает усиление или громкость звука. Если подстроечным резистором установлена слишком малая величина, вы ничего не услышите. Найдя радиостанцию, вы обнаружите, что поворот подстроечника по часовой стрелке увеличивает громкость звука до тех пор, пока в конечном итоге положительная обратная связь не выйдет из-под контроля и не возникнет свистящий звук. В этом проблема регенеративного приемника: его нужно правильно настроить. Уменьшите обратную связь, поворачивая подстроечный резис­тор против часовой стрелки, пока сигнал снова не станет нормальным. 206 Радио. Эксперименты с невидимыми волнами
Совет о наводках из эксперимента 2 по-прежнему применим и здесь. Вам придется выключить все приборы и устройства, генерирующие радиопомехи, и, возможно, вам даже придется выйти на улицу, чтобы получить хороший сигнал. Также помните, что ферритовая антенна является направленной – она наиболее чувствительна к сигналам, приходящим перпендикулярно стержню. Попробуйте покрутить его для лучшего приема. Вместо наушников можно использовать динамик (тот же, что и в предыдущих экспериментах). Для этого удалите резистор R1, разъем наушников J1 и подключите вместо них динамик. По моему опыту этот приемник имеет чувствительность, сопоставимую с AMR2 или, возможно, даже немного более высокую. Как это работает В этом эксперименте мы воспользовались недокументированной функцией LM386 – возможностью, которую производитель не планировал использовать. Чтобы точно понять, как она действует, необходимо взглянуть на внутреннюю схему усилителя, показанную на рис. 10.4. Когда вы подключаете конденсатор C5 от вывода 1 микросхемы к отрицательной шине питания, это увеличивает усиление в тысячи раз, до такой степени, что усилитель оказывается достаточно чувствителен, чтобы усиливать радиосигналы. При обычном использовании этот вывод либо оставляют неподключенным для усиления, равного 20, либо подключают к выводу 8 через конденсатор для усиления, равного 200 (именно это предлагалось при использовании LM386 для усиления звука в эксперименте 2). Здесь вывод 1 подключен к общему проводу (через катушку индуктивности и конденсатор), что полностью отключает отрицательную обратную связь и вызывает очень высокий коэффициент усиления для звуковых частот. 6 +Питание 15 кОМ 7 Шунтирование 15 кОм Усиление Усиление 8 1 150 15 кОм Выход 1,35 кОм −Вход +Вход 2 3 50 кОм 5 50 кОм 4 GND Рис. 10.4. Внутренние компоненты микросхемы усилителя LM386 Эксперимент 10. РегенеративныйАМ-приемник 207
В этом приемнике, как и в AMR2, катушка L2 выполняет роль антенны. Она улавливает изменяющееся магнитное поле от входящих радиоволн. Переменный конденсатор С6 и катушка L2 вместе образуют резонансный контур; частоту приема вы выбираете, регулируя емкость С6. Резонансный контур подключен к входным выводам 2 и 3 микросхемы усилителя. Теперь вы можете спросить как LM386 демодулирует сигнал? Простого усиления AM-сигнала недостаточно для восстановления звука. Честно говоря, я не знаю полного ответа. Должен быть эффект, подобный эффекту диода в детекторном радиоприемнике из эксперимента 1, восстанавливающего звук при выпрямлении радиочастотного сигнала. Вероятнее всего, эту функцию выполняет переход база–эмиттер входных транзисторов (база которых подключена к входным контактам 2 и 3) – переход база–эмиттер в транзисторе действует как диод. Подстроечный резистор в нашей схеме управляет напряжением на выводе 7, который обычно используется только для подключения конденсатора, стабилизирующего напряжение. В этой схеме напряжение на выводе 7 управляет током через входные транзисторы и, следовательно, их усилением (аналогично тому, как ток базы контролировал амплитуду колебаний в AMT1 в эксперименте 3). Иными словами, подстроечный резистор контролирует величину усиления в схеме опять же неофициальным, недокументированным способом. Каждый раз, когда вы используете недокументированную функцию элект­ ронного компонента, вы рискуете, что она у другого производителя не будет работать или будет работать как-то иначе. Микросхемы компании National Semiconductor (верхнее изображение на рис. 10.5) работают лучше всего в этой схеме, но поскольку эта компания сейчас принадлежит Texas Instruments, вы можете увидеть напечатанный на них логотип TI, и их можно описать как производимые TI. Чтобы еще больше запутать ситуацию, Texas Instruments выпус­ кает три варианта: LM386-1, LM386-3 и LM386-4. Каждый из них имеет немного разные характеристики, но в моих тестах в этой схеме они работали одинаково. Рис. 10.5. Усилители LM386 от двух разных производителей: National Semiconductor (вверху) и неизвестного источника (внизу). Обратите внимание на логотип National Semiconductor в виде буквы N с загнутыми концами вверху Короткие волны У нашего регенеративного приемника есть еще одна недокументированная особенность: его можно адаптировать для приема коротковолновых радио208 Радио. Эксперименты с невидимыми волнами
сигналов в диапазоне частот от 3 до 30 МГц. Эти частоты обладают замечательным свойством: когда они излучаются от Земли, они могут отражаться от слоя атмосферы, известного как ионосфера. На этом уровне солнечное излучение может ионизировать некоторые молекулы в воздухе (в основном кислород и азот), что означает, что они теряют один или несколько электронов. Это может позволить радиоволнам отражаться назад, и сигнал можно будет принять за горизонтом. Короткие волны менее предсказуемы, чем средние. Вы можете слышать радиопередачи издалека, даже с другой стороны планеты, потому что сигнал может многократно отражаться между ионосферой и землей. Возможно, вы сможете услышать радиолюбителей. Также возможно, что вы ничего не услышите – потому что атмосферные условия неблагоприятны или сигнал заглушен шумом местных источников. Распространение коротковолновых сигналов будет различаться, поскольку свойства ионосферы меняются в течение дня из-за изменения количества поступающего солнечного света и в зависимости от того, как солнечная активность (вспышки на Солнце) влия­ ет на количество поступающего ионизирующего излучения. Вообще говоря, ночное время обычно благоприятствует более стабильной передаче. Однако это довольно случайный фактор и к тому же зависит от частоты. На рис. 10.6 и 10.7 показана схема, модифицированная для приема коротких волн. 100 мкФ Батарея 9В 4, 7 кОм 10 мкФ 100 LM386 100 мкФ 10 кОм Антенна 10 мкФ L R Индуктивность 1 мГн 9 витков 200 пФ Рис. 10.6. LM386-приемник, адаптированный для коротковолнового диапазона Эксперимент 10. РегенеративныйАМ-приемник 209
S1 C1 Антенна R2 8 7 6 IC1 5 1 2 4 3 C2 R1 P1 C3 Резисторы R1 R2 100 Ом 4,7 кОм L3 C4 9 витков L1 C6 Конденсаторы J1 Другие компоненты 100 мкФ IC1 Усилитель LM386 C2 100 мкФ P1 Подстроечный резистор, 10 кОм C3 10 мкФ L1 Индуктивность 1 мГн C4 10 мкФ L2 63 витка на ферритовом стержне C5 220 пФ L3 9 витков на ферритовом стержне C6 200 пФ S1 Ползунковый выключатель J1 Аудиогнездо 3,5 мм C1 Рис. 10.7. Схема макета, представленного на рис. 10.6. 63-витковая катушка L2 использовалась только в средневолновом варианте схемы В предыдущую версию схемы необходимо внести следующие изменения:  удалить конденсатор C5;  подключить свободный вывод подстроечного резистора P1 к положительной шине;  добавить резистор R2 4,7 кОм между движком P1 и выводом 7 IC1;  заменить 63 витка провода на катушке L2 на 9 витков. Если исходная катушка намотана на картонной трубке, вы можете попробовать снять ее с ферритового стержня, чтобы позже поставить обратно. Если снять не получается, просто намотайте новую катушку рядом с исходной;  в качестве антенны подключить провод длиной 3 м к выводам 2 и 3 IC1. 9-витковая катушка на ферритовом стержне вместе с конденсатором переменной емкости задает диапазон настройки в нижней части коротковолнового диапазона. Однако антенный провод добавляет некоторую емкость, что снижает частоту на неопределенную величину. Вы можете уменьшить индук210 Радио. Эксперименты с невидимыми волнами
тивность и увеличить частоту, если сдвинуть катушку к концу ферритового стержня. Можете также поэкспериментировать с добавлением заземляющего провода, подключенного к отрицательной шине на макетной плате, как в эксперименте 1. Это должно увеличить мощность сигнала, но может добавить значительное количество шума. Существует альтернативный способ подключения антенны: намотайте несколько витков с конца антенного провода вокруг ферритового стержня рядом с катушкой. Короткий конец антенного провода соедините с другим проводом – с землей, или протяните его на некоторое расстояние примерно противоположно направлению первой антенны. Такое расположение обеспечивает более слабую связь между антенной и резонансным контуром, согласно некоторым источникам, должно работать лучше и не сильно изменит резонансную частоту. Есть три варианта на случай, если вы слышите только шум:  сдвиньте катушку к концу ферритового стержня или удалите один или несколько витков, чтобы изменить диапазон частот;  попробуйте в другое время, возможно, ночью;  попробуйте другое место, на открытом воздухе и вдали от возможных источников шума. Если вам повезет, вы сможете услышать передачу кода Морзе в виде серии коротких и длинных звуковых сигналов. Азбука Морзе в настоящее время используется в основном радиолюбителями. В коротковолновом диапазоне есть несколько частотных диапазонов, зарезервированных для использования в любительской радиосвязи, и этот приемник предназначен для частоты 3,5 МГц, самого низкого из этих диапазонов. Передача кода Морзе (среди радиолюбителей также называемая CWмодуляцией, от Continuos Wave – непрерывная волна) создается путем включения и выключения несущей волны – простейшей возможной модуляции. Каждая буква алфавита идентифицируется своим набором длинных и коротких импульсов (представленных тире и точками), отделенных от следующего набора более длинной паузой. На обычном AM-приемнике вы не можете принимать код Морзе1. Но регенеративный приемник может принимать код Морзе, когда управление с обратной связью настроено выше точки возникновения колебаний. Когда в приемнике возникают колебания с частотой, близкой к той, на которой передается код Морзе, два сигнала суммируются, образуя звуковые сигналы. Подробнее об этом смешении сигналов вы узнаете в следующем эксперименте, где я покажу вам, как его использовать в металлоискателе, а позже и в другом типе приемника коротковолнового диапазона. К теме радиолюбительства мы также вернемся в заключительной главе. Дополнительные источники Описание схемы, данное Мартином МакКинни, а также многие другие варианты см. по адресу www.edn.com/create-radio-receiver-circuits-with-the-lm386-audio-amplifier/. 1 Так как в передаче присутствуют только импульсы высокочастотной несущей, не слышимые человеческим ухом. Эксперимент 10. РегенеративныйАМ-приемник 211
Что дальше? В этом эксперименте вы узнали о возможностях и особенностях положительной обратной связи, создаваемой чипом, который не предназначался именно для этой цели. Вы также узнали, как он может принимать сообщения азбукой Морзе. Следующий эксперимент будет ближе к домашним надобностям, поскольку он продемонстрирует простую резонансную схему, позволяющую находить скрытые металлические объекты. Это будет шагом к неожиданному приему: смешиванию частот как способу демодуляции радиосигналов.
Эксперимент 11 МЕТАЛЛОДЕТЕКТОР
С оздать схему, реагирующую на металл в окружающей среде, несложно, и этот эксперимент покажет, как это сделать. Сначала обнаружится, что схема реагирует при помещении какого-либо металлического предмета, например чайной ложки, в центр катушки большого диаметра. После успешного завершения этого теста вы сможете модифицировать катушку, чтобы она могла обнаруживать монеты в чьем-то кармане. Это демонстрирует, как катушка генерирует магнитное поле, которое создает электрические токи в других объектах, даже если они не являются магнитными. Вы узнаете больше об индуктивности и генераторах, а также узнаете, как два высокочастотных сигнала могут объединяться, чтобы создать гораздо более низкую частоту в пределах диапазона человеческого слуха. Список деталей включает в себя микросхему, содержащую логические элементы, несколько конденсаторов и резисторов, катушку индуктивности и немного проводов. Что вам понадобится • • • • • • • • • • • • • Ползунковый выключатель для установки на макетную плату (1 шт.). Резисторы: 100 Ом (2 шт.), 4,7 кОм (1 шт.). Индуктивность 22 мкГн (1 шт.). Керамические конденсаторы: 220 пФ (1 шт.), 470 пФ (4 шт.), 100 нФ (1 шт.). Электролитический конденсатор, 100 мкФ (1 шт.). Конденсатор переменной емкости 200 пФ типа 223P (1 шт.) – тот же, что использовался в предыдущих экспериментах. Наушники с высоким сопротивлением или стереонаушники (1 шт. или пара). Аудиоразъем 3,5 мм с винтовыми клеммами (1 шт.) – тот же, что использовался в предыдущих экспериментах. Логическая микросхема 4 двухвходовых элементов «Исключающее ИЛИ» CD4030B или CD4070B либо логическая микросхема 4 двухвходовых элементов «И-НЕ» CD4011B (1 шт.). Провод диаметром 0,6 мм для сигнальной катушки щупа (4 м). Дополнительно: схема частотомера из эксперимента 7 (1 шт.). Опционально: непроводящее основание для установки сигнальной катушки (1 шт.). Опционально: ферритовый стержень, который использовался в предыдущих экспериментах (1 шт.).
Два генератора и смеситель Начните со сборки схемы, показанной на рис. 11.1. Переменный конденсатор, обозначенный как C5 на рис. 11.2, такой же, как тот, который вы использовали ранее. Выход аудиоразъема подключен так же, как и в эксперименте 10, поэтому он будет работать как с обычными стереонаушниками, так и с высокоомными наушниками из более ранних экспериментов. 470 пФ 100 мкФ 4070B 470 пФ 100 Батарея 9В 4,7 кОм 100 L 100 пФ Индуктивность 22 мкГн 470 пФ 470 пФ R 200 пФ Рис. 11.1. Макет металлоискателя Добавление сигнальной катушки Желтая «сигнальная» катушка на рисунках выше будет действовать как антенна, делая ваше устройство чувствительным к близлежащим проводящим объектам. На рис. 11.3 большая катушка диаметром 108 мм создана намоткой 10 витков провода 0,6 мм в диаметре на 2-литровую бутылку из-под газировки. Меньшая катушка содержит 17 витков диаметром 50 мм. Попробуйте каждую из них по отдельности. Эксперимент 11. Металлодетектор 215
S1 +9 В X1 R1 Генератор 1 L1 IC1 C1 X2 C2 Сигнальная катушка X3 R2 R3 L2 C7 C5 J1 C4 C3 C6 Генератор 2 Резисторы R1, R2 R3 Конденсаторы 100 Ом 4,7 кОм Другие компоненты C1–C4 470 gФ C5 200 пФ C6 100 нФ C7 100 мкФ L1 10 витков провода 0,6 мм L2 Индуктивность 22 мкГн IC1 Микросхема CD4070B S1 Ползунковый выключатель J1 Аудиоразъем 3,5 мм Рис. 11.2. Схема металлоискателя Витки не обязательно должны быть абсолютно круглыми, но вы сможете контролировать их форму и легче с ними обращаться, если прикрепите каждую из них к куску картона или фанеры. Подойдет любая плоская поверхность, если она не проводит электричество1. Рис. 11.3. Катушка диаметром 50 мм содержит 17 витков провода. Катушка диаметром 108 мм содержит 10 витков 1 В наборах для конструирования металлоискателей, имеющихся в продаже, можно встретить сигнальную катушку, представляющую собой спиральную дорожку, вытравленную на фольгированном стеклотекстолите. Такую конструкцию несложно изготовить самостоятельно, но, вероятнее всего, потребуются эксперименты для точной подгонки размеров. 216 Радио. Эксперименты с невидимыми волнами
Поиск сигнала После подключения катушки включите питание 9 В и поворачивайте переменный конденсатор до тех пор, пока не услышите внезапный свистящий звук. Продолжайте очень медленно поворачивать конденсатор, пока звук не станет ниже по высоте и, наконец, не исчезнет. Продолжайте поворачивать, и он должен появиться снова и повыситься по высоте. Сохраните схему и установите конденсатор в промежутке между возникновением частот. Теперь поместите металлический предмет внутрь катушки или рядом с ее плоскостью. Если предмет имеет достаточный размер, схема обнаружит объект по возникновению звука. Что, вообще ничего не слышно? Попробуйте у катушки добавить или вычесть виток провода. При перемещении руки поблизости от компонентов схемы (особенно C2 или переменного конденсатора) вы должны услышать изменение частоты. Схема обнаруживает находящиеся рядом с ней объекты, проводящие электричество, включая вас самих! Ваше тело не является хорошим проводником (оно имеет относительно высокое электрическое сопротивление), но наличие влаги в тканях тела способствует проводимости. Таким образом, человеческое тело имеет емкость, которая влияет на емкость в цепях генератора. Теперь поднесите к сигнальной катушке металлический предмет (например, плоскогубцы или металлическую крышку от кастрюли). Вы должны услышать в наушниках звук, высота которого увеличивается по мере приближения этого предмета. Вы можете проверить, какие объекты он может обнаружить и на каком расстоянии. Образцы могут включать монету диаметром пару сантиметров, ферритовый стержень (из эксперимента 1) длиной 12–15 см, маленькие плоскогубцы длиной 7–10 см или петлю провода длиной 12–13 см, концы которого зачищены и скручены вместе. Кроме того, попробуйте такую же петлю с разомкнутыми концами – вы увидите, что простой обрезок провода не обнаруживается. Как это работает Когда схема подает напряжение на сигнальную катушку, она может индуцировать небольшой ток в любом близлежащем объекте, проводящем электричество, и это изменяет частоту генераторной схемы, в которую входит катушка. Поскольку металлические предметы, вообще говоря, обладают большей проводимостью, чем люди, катушка будет реагировать сильнее, если обнаружит поблизости какой-либо металл. Единственная проблема с использованием этого эффекта заключается в том, что если мы выберем переменный конденсатор и переменную индуктивность, которые будут удобными и доступными по размеру, схема будет колебаться с частотой, слишком высокой, чтобы ее можно было услышать. Мы можем обойти это ограничение, используя в дополнение к сигнальному генератору второй опорный генератор и смешивая их частоты таким образом, чтобы разница между ними находилась в звуковом диапазоне. Эксперимент 11. Металлодетектор 217
Входы XOR XOR XOR XOR Выходы Рис. 11.4. Уровни на выходе логического элемента «исключающее ИЛИ» (XOR) в ответ на подачу на входы низкого уровня (синие точки) и высокого уровня (красные точки) Рис. 11.5. Индуктивность представляет собой очень маленькую катушку XOR Рис. 11.6. Основной принцип работы генератора на логических элементах Для этого в данной схеме используются логические элементы «исключающее ИЛИ» (XOR). Функция «исключающее ИЛИ» иллюстрируется рис. 11.4: выходной сигнал элемента низкий, когда оба входа одинаковы, и высокий, когда входы разные (на рисунке синие точки обозначают уровень около 0 В, а красные точки – поблизости от напряжения питания). На рис. 11.2 показано, что внутри интегральной микросхемы CD4070B, обозначенной как IC1, имеются четыре логических элемента «исключающее ИЛИ». Генератор 1 состоит из двух конденсаторов, резистора и сигнальной катушки, подключенных к логическому элементу XOR, обозначенному X1. Генератор 2 состоит из двух конденсаторов, дополнительного переменного конденсатора, резистора и индуктивности с фиксированным значением в корпусе, внешне напоминающем резис­ тор. На рис. 11.5 показана такая индуктивность. Каждый генератор работает, используя элемент XOR в качестве инвертирующего усилителя. На рис. 11.6. показан основной принцип его устройства. На рис. 11.2 генератор 1 меняет частоту выхода, когда проводящий объект появляется поблизости от желтой катушки, а генератор 2 – когда вы регулируете переменный конденсатор C5. Выходы генераторов поступают на входы третьего логического элемента X3, который работает как смеситель. Это показано на рис. 11.7: элемент сравнивает два сигнала генераторов и генерирует звуковой сигнал, если частоты различаются. 218 Радио. Эксперименты с невидимыми волнами
Сигнальный генератор Опорный генератор XOR Аудиовыход Смеситель Фильтр низкой частоты Рис. 11.7. Третий элемент XOR смешивает сигналы двух генераторов Генератор 1 Генератор 2 Выход XOR Генератор 1 Генератор 2 Выход XOR Рис. 11.8. Как элемент XOR смешивает сигналы от двух генераторов На рис. 11.8 показано, как смешанный выходной сигнал получается из час­ тот двух генераторов при их несовпадении. Когда они точно или почти совпадают по фазе, смешанный сигнал имеет низкий уровень. Наоборот, когда они точно или почти не совпадают по фазе, смешанный сигнал имеет высокий уровень. Изменение между преимущественно низким и преимущественно высоким уровнями создает слышимую частоту в звуковом диапазоне. Идея смешивания двух сигналов для генерации новой частоты, равной разности их частот, очень часто используется в радиоприемниках. В них такая схема называется просто смесителем, или смесителем частот. (Не следует путать смеситель с аудиомикшером, который просто суммирует несколько аудиосигналов. Это другой тип смесителя.) В следующем эксперименте мы сконструируем радиоприемник, в котором смеситель будет смешивать сигнал антенны с сигналом перестраиваемого генератора. Схема в этом эксперименте фактически будет работать как с элементами «исключающее ИЛИ» (XOR, микросхемы CD4030B/CD4070B), так и с элементаЭксперимент 11. Металлодетектор 219
ми «И-НЕ» (NAND, CD4011B)1. Поскольку все эти микросхемы имеют одинаковую разводку выводов (т. е. выводы напряжения питания, а также входов и выходов размещаются одинаково), любая из этих микросхем будет работать. Измерение частоты генераторов Если у вас все еще есть частотомер, который вы построили в эксперименте 7, вы можете использовать его для измерения частоты генератора 1 и генератора 2 в этом эксперименте. Подключите частотомер через USB-порт вашего компьютера, как вы это делали раньше. Соедините отрицательный вывод питания (GND) у двух макетных плат и подключите вход частотомера к выходу генератора чувствительной катушки на выводе 11 микросхемы. Вы должны увидеть частоту около 2 МГц. Обратите внимание на значение. Переместите вход частотомера на контакт 3 логической микросхемы, выход опорного генератора. Вы должны увидеть частоты примерно в диапазоне 1,9–2,1 МГц, которые будут меняться при повороте движка переменного конденсатора на весь диапазон. Обратите внимание, что звук появляется, когда два генератора близки по частоте, и что звук меняет тональность, когда вы меняете частоту опорного генератора с помощью переменного конденсатора. Вы также можете наблюдать изменение частоты при обнаружении металлического объекта. Переместите вход частотомера обратно на вывод 11. Настройте металлоискатель еще раз – подключение частотомера повлияет на генератор. Запишите показания частоты, когда рядом с сигнальной катушкой не имеется металлических или других проводящих предметов. Поместите проводящий и немагнитный предмет (например, медный или алюминиевый) рядом с катушкой, прислушайтесь к высоте звука и запишите частоту. Удалите немагнитный предмет и замените его ферритовым стержнем, который вы использовали в эксперименте 1. Еще раз запишите частоту. Вы должны наблюдать, как первый проводящий объект увеличивает частоту, а непроводящий, но магнитный ферритовый стержень снижает частоту. Любой из этих частотных сдвигов слышен в наушниках, но отличить их на слух невозможно. Звук звучит одинаково, независимо от того, смещается частота чувствительного генератора вверх или вниз. 1 А также, очевидно, с двухвходовыми элементами «ИЛИ-НЕ» (NOR, CD4001B), с одним отличием – верхний вход элемента по схеме рис. 11.6 тогда необходимо подключать не к высокому уровню (+), а к низкому (минус питания, GND). Для элементов «И-НЕ» и «ИЛИ-НЕ» (в отличие от «исключающего ИЛИ»!) входы можно просто соединить между собой, подключив их к выводам индуктивности и конденсатора вместе. Заметим, что префикс CD по традиции наиболее часто встречается в наименованиях подобных логических микросхем; но без оговорок подходят микросхемы разных производителей с другими префиксами (МС1, SN, НСF, HEF и т. д.). Замена серии 4000B на серию 74HC (микросхемы 74HC86 (XOR), 74HC00 (NAND) или 74HC02 (NOR)), вероятнее всего, улучшит работу схемы, но при этом следует учесть несколько иную разводку выводов. В этих схемах не рекомендуется использовать аналоги из отечественной низкочастотной серии К561: вместо них следует применять более быстродействующие микросхемы серии КР1561. 220 Радио. Эксперименты с невидимыми волнами
Датчик металла и магнитных материалов Если вы измерили изменение частоты генератора при приближении катушки к проводящему или магнитному объекту, вы увидели, что проводящий объект увеличивает частоту, а магнитный – уменьшает. Оба этих эффекта происходят за счет изменения индуктивности чувствительной катушки. В эксперименте 1 вы узнали, что намотка катушки на магнитный материал, например на ферритовый стержень, увеличивает индуктивность катушки. Большая индуктивность означает, что резонансная частота LC-цепи ниже. Итак, если поблизости находится магнитный материал, индуктивность катушки увеличивается, а частота снижается. В АМ-приемнике ферритовый стержень выполняет две функции: увеличивает индуктивность намотанной на него катушки, как и здесь, а также концентрирует слабое магнитное поле, которое является частью принимаемой радиоволны, так что катушка на феррите становится гораздо более эффективной антенной, чем катушка сама по себе. И то, и другое связано с высокой магнитной проницаемостью феррита, но в данном случае интерес представляет только изменение индуктивности. С токопроводящим немагнитным материалом ситуация немного сложнее. Можно представить проводящий материал и сигнальную катушку как трансформатор. Катушка здесь играет роль первичной обмотки, в которой генератор создает переменный ток. Проводящий материал действует как короткозамкнутая вторичная обмотка, где изменяющееся магнитное поле первичной обмотки индуцирует ток. Этот ток во вторичной обмотке создает собственное магнитное поле в направлении, противоположном направлению первичного поля сигнальной катушки, как показано на рис. 11.9. Магнитное поле, создаваемое током сигнальной катушки Магнитное поле, создаваемое индуцируемым током Сигнальная катушка Проводящий объект Рис. 11.9. Магнитные поля вокруг сигнальной катушки и близлежащего проводящего объекта Сигнальная катушка испытывает влияние поля проводящего объекта, уменьшая собственное поле. Иными словами, наличие проводящего предмета равносильно уменьшению индуктивности сенсорной катушки, что увеличивает частоту генератора. Эксперимент 11. Металлодетектор 221
Устранение неполадок Если при вращении переменного конденсатора вы не услышите сильный свистящий звук, можно подумать о двух вещах, которые могут быть причиной. Во-первых, один из двух генераторов в схеме не работает. Если у вас есть осциллограф или частотомер из эксперимента 7, вы можете измерить сигналы генераторов на выводах микросхемы 11 и 3. На обоих вы должны увидеть прямоугольную волну частотой примерно 2 МГц. Во-вторых, частоты генераторов могут быть настолько далеки друг от друга, что диапазона настроечного конденсатора будет недостаточно для настройки их на одну и ту же частоту. Это может произойти, если сигнальная катушка имеет неправильное количество витков или неправильный размер. Опять же, для проверки полезен частотомер. Вы также можете попробовать добавить конденсатор емкостью 220 пФ параллельно с C2 или C3, чтобы уменьшить час­ тоту одного из генераторов. Расширение диапазона чувствительности Диапазон чувствительности сигнальной катушки примерно равен ее диамет­ ру. Это связано с формой силовых линий магнитного поля вокруг нее. Иными словами, если вы хотите обнаруживать объекты на большем расстоянии, вам нужна чувствительная катушка большего размера. Однако за бóльшую дальность действия катушки увеличенного размера приходится платить: магнитное поле распространяется по большей площади, что делает катушку большего размера менее чувствительной к более мелким объектам. Иными словами, вам нужно пойти на компромисс с размером катушки. Если хотите поэкспериментировать, найдите онлайн-калькулятор индуктивности катушки, например на сайте по адресу1 https://66pacific.com/calculators/coil-inductance-calculator.aspx. Можно также использовать приближение Уиллера, представленное на рис. 1.41. Поэкспериментируйте с выбором количества витков и диаметра катушки, чтобы индуктивность оставалась примерно постоянной на уровне 22 мкГн. Катушке большего размера требуется меньше витков, чтобы иметь ту же индуктивность. Сама частота генератора не имеет решающего значения в этой схеме, но опорный генератор должен быть перестраиваемым около того же значения частоты, что и сигнальный2. В этих экспериментах будет трудно обойтись без частотомера. Как только генератор с новой сигнальной катушкой выдаст примерно нужную частоту, вы можете настроить два генератора, отрегулировав конденсаторы – например, добавив конденсатор емкостью 220 пФ параллельно с C2 или C3, как предложено в разделе «Устранение неполадок». 1 2 В русскоязычном интернете можно найти огромное количество разнообразных калькуляторов индуктивности, как онлайновых, так и в виде локальных программных утилит. С учетом ограничений со стороны быстродействия микросхем выбранной серии: для указанной автором CD4000 и отечественного аналога KP1561 максимальная частота около 3–5 МГц; для быстродействующей серии 74HC примерно в десять раз выше. 222 Радио. Эксперименты с невидимыми волнами
Я предлагаю устанавливать частоту генераторов не выше 2,5 МГц, так как обнаруживается, что на более высоких частотах аудиовыход после смесителя становится слабым и ненадежным1. Что дальше? В этом эксперименте вы видели (а также слышали), как на резонансную частоту колебательного контура из катушки и конденсатора может влиять его взаимодействие с близлежащими объектами, если они проводят электричество. Хотя резонансная частота может значительно превышать слышимый диапазон, изменение можно легко услышать, если смешать ее с другой близкой частотой. В следующем эксперименте вы узнаете, как можно использовать концепцию микширования для создания удивительно простого типа приемника, который смешивает высокие частоты с радиосигналами. 1 Чем выше частота генераторов, тем сложнее настройка с сохранением чувствительности: выход может «плавать» от изменения температуры, искажения формы катушки, наличия в зоне действия посторонних предметов (рук экспериментатора) и т. д. Эксперимент 11. Металлодетектор 223

Эксперимент 12 ПРИЕМНИК ПРЯМОГО ПРЕОБРАЗОВАНИЯ
В предыдущем эксперименте вы видели, как схема смесителя может создавать звуковую частоту из двух высоких при их смешении. В этом эксперименте мы будем использовать конденсаторы и катушку индуктивности для создания перестраиваемого генератора, который создает собственный высокочастотный сигнал в радиодиапазоне. Когда радиосигналы одинаковой частоты проходят через антенну, две частоты смешиваются, создавая звуковой сигнал. Устройство называют приемником прямого преобразования, поскольку он делает радиосигналы слышимыми за один этап. Он может принимать передачу кода Морзе или аудио в режиме передачи, известном как однополосный (SSB), популярный среди радиолюбителей в коротковолновых диапазонах. Вы также увидите, как работает фильтр для выбора частот, с которыми вы хотите работать, и блокирования остальных. И узнаете больше об азбуке Морзе. Что вам понадобится • • • • • • • • • • • • • Резисторы: 22 Ом (1 шт.), 100 Ом (2 шт.), 330 Ом (1 шт.), 1 кОм (1 шт.), 2,2 кОм (1 шт.), 47 кОм (3 шт.). Подстроечный резистор, 10 кОм (1 шт.). Индуктивность 10 мкГн (2 шт.). Керамические конденсаторы: 33 пФ (3 шт.), 68 пФ (1 шт.), 220 пФ (1 шт.), 470 пФ (1 шт.), 1 нФ (3 шт.), 47 нФ (1 шт.), 100 нФ (2 шт.). Электролитические конденсаторы: 10 мкФ (2 шт.), 470 мкФ (2 шт.). Переменный конденсатор 200 пФ типа 223P (2 шт.) – те же, что использовались в предыдущих экспериментах. Биполярный NPN-транзистор 2N3904 (1 шт.). Наушники и аудиоразъем 3,5 мм или динамик (1 шт.). Микросхема усилителя LM386 (1 шт.). Диод Шоттки BAT48 (1 шт.). Ползунковый выключатель для установки на макетную плату (1 шт.). Провод 0,6 мм для антенны и заземления (не менее 20 м плюс дополнительно для заземления). Дополнительные сведения см. в разделе «Антенна» ниже. Дополнительно: схема частотомера из эксперимента 7.
Антенна 470 мкФ 100 нФ 330 +9 В 470 пФ 100 10 мкФ 10 мкФ 33 пФ 220 пФ 470 мкФ 2,2 кОм 10 кОм 1 нФ 1 нФ 1 кОм 47 кОм 200 пФ переменный конденсатор LM386 2N3904 Индуктивность 10 мкГн 33 пФ BAT48 33 пФ 68 пФ 100 нФ 47 кОм 1 нФ 47 нФ 47K 200 пФ переменный конденсатор Индуктивность 10 мкГн Динамик 8 Ом Рис. 12.1. Макет приемника прямого преобразования Конструкция Соберите схему, показанную на рис. 12.1 и 12.2. В схеме используется диод Шоттки BAT48 в качестве смесителя и аудиоусилитель LM386, знакомый по предыдущим экспериментам. Один переменный конденсатор служит для установки частоты генератора, второй – для фильтрации сигналов с антенны перед передачей их на смеситель. Конденсатор C14, выделенный на рис. 12.2 серым цветом, в аудиоусилителе не является обязательным. При его наличии усиление увеличивается с 20 до 200 раз. Обычно в этом нет необходимости, если вы используете наушники, но для динамика это может быть полезно. Антенна Для этого приемника требуется длинная антенна и заземление, как в AMR1 в эксперименте 1. Приемник предназначен для любительского радиодиапазона 3,5–3,8 МГц, что соответствует длине волны 80 м. Четверть длины волны – это хорошая длина для проволочной антенны. Для этого приемника подойдет провод длиной 20 м, высоко и ровно подвешенный на открытом воздухе, с одним концом, подключенным к радиоприемнику. Для заземления вы можете использовать провод, подключенный к медной трубке, вбитой в землю. Если земля очень сухая, может быть трудно добиться хорошего заземления, и в этом случае хорошей заменой может быть раскладка на земле куска провода той же длины, что и антенна. См. также рекомендации по антенне и заземлению в эксперименте 1. Эксперимент 12. Приемник прямого преобразования 227
S1 R8 Антенна C17 R3 8 7 1 2 C14 6 5 3 4 C18 IC1 R1 R10 C8 R9 C7 C9 Q1 C4 C13 R6 D1 C5 C2 C16 R2 C11 R4 C6 C3 L1 C1 C10 Конденсаторы Резисторы R5 C15 C12 R7 L2 LS1 Другие компоненты 47 кОм C1, C10 200 пФ IC1 Аудиоусилитель LM386 R3 330 Ом C2 68 пФ Q1 Биполярный транзистор 2N3904 R4 1 кОм СЗ, C9, C11 33 пФ S1 Ползунковый выключатель C4 220 пФ L1, L2 Индуктивность 10pH D1 Диод Шоттки BAT48 LS1 Динамик 8 Ом 7–10 см R1, R2, R5 R6 2,2 кОм R7 10 кОм R9 R8, R10 22 Ом 100 Ом C5, C6, C12 1 нФ C7,C17 100 нФ C8 470 пФ C13, C14 10 пФ C15 47 нФ C16, C18 470 пФ Рис. 12.2. Схема приемника прямого преобразования Частота здесь выше, чем в эксперименте 1, что делает длину волны короче. Это означает, что более практично иметь антенну длиной в четверть волны. В городах может быть сложно установить антенну, при этом плотность источников радиошума выше. Я пробовал использовать в этом приемнике антенну с ферритовым сердечником, как в AMR2, но не смог заставить ее работать (возможно, потому что в феррите потери растут довольно быстро с увеличением частоты). Слушаем эфир Подключите антенну и заземляющий провод к приемнику. Уменьшите громкость. Включите питание с помощью ползункового выключателя. Слушайте динамик или используйте наушники. Теперь у вас есть три элемента управления для настройки: частота генератора, частота фильтра и громкость. Общая идея состоит в том, что вы настраиваете радио, используя переменный конденсатор С1 для подстройки частоты генератора, а затем настраиваете конденсатор фильтра С10 на самый громкий сигнал. Коротковолновый диапазон непредсказуем даже в большей степени, чем AM-диапазон, который вы прослушивали в предыдущих экспериментах, и за228 Радио. Эксперименты с невидимыми волнами
висит от времени суток. День, вечер и ночь – лучшее время для приема радиостанций; ночное время делает возможным более дальнее расстояние. Если при первой попытке вы слышите только помехи, просто сделайте перерыв и повторите попытку позже в тот же день. Кроме того, как и в случае с AM-диапазоном, приему могут мешать местные источники шума. См. эксперимент 2, чтобы узнать о типичных источниках шума и о том, что с ними делать. Прием азбуки Морзе Для первых тестов на прослушивание рекомендуется попытаться найти несколько передач азбуки Морзе, поскольку их легко распознать. Начните с крайнего положения переменного конденсатора генератора против часовой стрелки. Это самая низкая частота на шкале, и она входит в ту часть диапазона, в которой сконцентрированы передачи кода Морзе (соответственно соглашениям о том, как полосы частот любительской радиосвязи распределяются для различных целей). Отрегулируйте переменный конденсатор фильтра С10 для получения самого сильного сигнала. (Пик может быть в крайнем положении по часовой стрелке, но постарайтесь найти его в диапазоне от середины до крайнего положения против часовой стрелки.) Затем медленно настраивайте генератор вращением C1 по часовой стрелке – вверх по частоте. Если вам повезет, вы найдете один или несколько сигналов азбуки Морзе. По мере того как вы перестраиваете частоту, сигналы будут меняться по высоте, так же, как это делал металлоискатель, когда опорный генератор был настроен на частоту сигнального генератора. Приемник здесь аналогичен металлоискателю, но сигнальный генератор теперь заменен сигналом удаленного радиопередатчика, улавливаемым антенной. Контроль частоты  Если у вас есть частотомер из эксперимента 7, вы можете использовать его для проверки диапазона настройки. Последний должен составлять примерно 3,5–3,8 МГц, чтобы соответствовать диапазону частот любительского радио.  Подключите отрицательный вывод питания частотомера к отрицательному выводу питания приемника.  Подайте питание на частотомер с помощью USB-кабеля.  Подключите вход частотомера (не забудьте о защитном конденсаторе и резисторе) к выходу генератора в точке соединения Q1 и C8. Прием аудиопередач Если продолжать настройку вверх по частоте, вы попадаете в полосу, отведенную для передачи голоса. Звук при однополосной передаче (SSB) аналогичен амплитудной модуляции AM, но этот способ более эффективен в том смысле, что ему требуется только половина полосы пропускания диапазона частот, занимаемого AM-передачей. Передачи SSB очень чувствительны к настройке приемника. Если настройка немного собьется, голос можно разобрать, но высота звука окажется непраЭксперимент 12. Приемник прямого преобразования 229
вильная. При больших ошибках настройки голос становится искаженным и неразборчивым. Чтобы выполнить правильную настройку, требуется практика, и на приемнике прямого преобразования это может быть довольно сложно, поскольку очень небольшое движение колесика настройки определяет разницу между разборчивым сигналом и искаженным. Более сложные приемники предлагают несколько решений: дополнительный узел точной настройки, многооборотный диск настройки с механическими шестеренчатыми передачами, очень точно устанавливающими переменный конденсатор, или генератор с цифровым управлением, который позволяет вам выбирать скорость изменения частоты при настройке. Еще одна неприятность, с которой вы столкнетесь при использовании этого приемника, заключается в том, что ваши руки влияют на настройку, добавляя небольшую емкость. Решением здесь является установка настроечных конденсаторов за металлической пластиной, подключенной к общему проводу схемы. Вы также можете попытаться использовать эффект емкости руки в своих интересах и точно настроить частоту приема, перемещая руку рядом с конденсатором. Помехи от вещательных станций При настройке на диапазон вы также можете услышать радиовещательные AM-станции, сопровождаемые свистящим звуком. Свист исходит от несущей волны AM-сигнала. В диапазоне частот любительского радио не должно быть станций AM-вещания, поэтому, вероятно, станция находится на частоте, кратной частоте вашего генератора. В смесителе эти частоты объединяются с час­ тотой генератора и дают результаты в области звуковых частот. Это нежелательно, и задача фильтра (C10, C11 и L2) – не допускать таких частот. Однако сигналы вещания могут быть сильными, и иногда их все равно слышно. Чтобы понять, зачем нужен фильтр, попробуйте временно отключить C10, C11 и L2, и вы, скорее всего, услышите много сигналов из других диапазонов частот. Как это работает Схема состоит из четырех секций: генератора, частотного фильтра, смесителя и усилителя звука. Основная идея заключается в том, что смеситель объединяет сигналы антенны с сигналом генератора. Как и в металлоискателе, это создает новые частоты. Нужная нам частота – это слышимая частота биений между принимаемой радиостанцией и генератором. Генератор Генератор в схеме построен на основе одного транзистора. Для установки частоты колебаний он использует LC-цепь, состоящую из C1, C2, C3 и L1. Как и транзисторный генератор в АМ-передатчике в эксперименте 3, это генератор Колпитца. Как мы уже говорили в экспериментах 3 и 11, генератор можно рассматривать как усилитель с обратной связью от выхода к входу на выбранной частоте, которая при этом многократно усиливается. Конденсаторы С5 и С6 обеспечивают обратную связь с выхода усилителя на эмиттере на вход усилителя на базе, а LC-цепь устанавливает частоту. 230 Радио. Эксперименты с невидимыми волнами
Здесь конденсаторы и индуктивность в LC-цепи выбраны так, чтобы диапазон настройки соответствовал диапазону коротковолновых любительских радиочастот 3,5–3,8 МГц, который мы пытаемся принять. Генератор в радиоприемнике или аналогичном передатчике часто называют гетеродином, т. е. местным (локальным) генератором, поскольку создаваемый им сигнал используется локально внутри схемы. Фильтр Фильтр состоит из C10, C11 и L2, подключенных по резонансной схеме. Он выбирает, какие частоты от антенны передаются на смеситель. Этот фильтр необходим, поскольку сигналы в других диапазонах частот, особенно тех, что кратны частоте, которую мы хотим принимать, могут вызвать помехи в смесителе. Смеситель Когда речь идет об аудио, смеситель (микшер) – это схема, которая просто суммирует (или усредняет) сигналы, например с помощью делителя напряжения. В радио смеситель означает нечто другое. Он по-прежнему объединяет два сигнала, но таким образом, что генерирует новые частоты. Например, смеситель может создать звуковой сигнал из двух радиочастотных сигналов. Именно так мы использовали смеситель в металлоискателе: для звукового сравнения сигналов от двух генераторов. Там смеситель представлял собой логический элемент «исключающее ИЛИ». В приемнике из этого эксперимента роль смесителя выполняет диод D1. Я выбрал здесь такой же диод Шоттки BAT48, что и в кварцевом приемнике в эксперименте 1, поскольку он имеет низкое пороговое напряжение. На рис. 12.3 показан пример, объясняющий, как работает диодный смеситель. Здесь диод подключен к двум источникам сигнала, выдающим синусоидальные колебания частотой 10 кГц и 12 кГц. Для простоты предположим, что диод идеальный, и не будем учитывать пороговое напряжение. Входные частоты здесь намного ниже, чем те, что используются в радио, чтобы их было легче визуализировать. 1 3 2 10 кГц 4 5 Выход 12 кГц Рис. 12.3. Простой диодный смеситель, подключенный к двум генераторам, генерирующим синусоидальные сигналы частотой 10 кГц и 12 кГц. Сигналы проходят через два одинаковых резистора, а затем через диод. Резистор и конденсатор справа от диода образуют фильтр нижних частот Эксперимент 12. Приемник прямого преобразования 231
1 0 –1 1 0 –1 1 0 –1 0 0,25 0,5 Время, мс 0,75 Рис. 12.4. Формы сигналов в разных точках схемы рис. 12.3. На верхнем графике показаны синусоидальные колебания от двух генераторов в точках 1 и 2. В точке 3 (средний график) напряжение представляет собой сумму двух входных сигналов. На нижнем графике мы видим, что в точке 4 после диода обрезаны отрицательные периоды сигнала (показаны синим цветом). Сглаживание выходного сигнала диода дает медленный синусоидальный сигнал в точке 5 (показан черным) На рис. 12.4 показаны сигналы в нескольких точках схемы. Два резистора создают сумму двух сигналов в точке 3. Когда два входных сигнала находятся в фазе так, что максимумы и минимумы совпадают, сигнал в точке 3 имеет большую амплитуду. А когда входные сигналы не совпадают по фазе и максимумы в одном сигнале совпадают с минимумами в другом, амплитуда мала. Поскольку два сигнала имеют разные частоты, они будут дрейфовать по фазе друг относительно друга, так что их сумма в точке 3 будет меняться по амплитуде. При прослушивании такого сигнала ухо интерпретирует его как одиночный тон различной интенсивности, особенно когда две частоты находятся в пределах нескольких герц друг от друга, так что амплитуда меняется медленно. Это явление называется биением, его частота – частотой биений. Чем ближе по частоте 232 Радио. Эксперименты с невидимыми волнами
два входных сигнала, тем медленнее они смещаются по фазе друг с другом. Час­ тота биений – это разница между частотами двух входных сигналов. Далее смешанный сигнал проходит через диод, который отсекает отрицательную часть сигнала. Как и в детекторном приемнике из эксперимента 1, где для демодуляции AM-сигнала использовался диод, из сигнала теперь отфильтровываются нижние частоты, что создает новый сглаженный сигнал (показан черным цветом на рис. 12.4) на более низкой частоте, чем любой из входных сигналов. (Отметьте, что выход логического элемента «исключающее ИЛИ» на рис. 11.8 работает аналогично диоду, определяя, когда два сигнала находятся в фазе и противофазе, и генерируя низкочастотный сигнал.) Смесители также могут выдавать сигнал на более высокой частоте, чем входные сигналы – не разность, а сумму частот входных сигналов. Обычно смеситель выдает комбинацию суммарной частоты, разностной частоты и иногда двух исходных сигналов. Затем можно использовать фильтр, чтобы выбрать среди этих результатов только тот сигнал, который вам нужен. В приемнике (см. рис. 12.2) резистор R6 и конденсатор C12 образуют фильтр нижних частот, выбирающий только звуковые частоты. Можно представить себе работу диода как переключателя. В приемнике сигнал от генератора намного сильнее сигнала от антенны. Когда сигнал генератора имеет отрицательное значение, диод проводит ток (поскольку выход генератора подтягивает катод диода к низкому напряжению), а при положительном значении диод ток задерживает (поскольку генератор подтягивает катод к высокому напряжению). Когда диод в проводящем состоянии, небольшие колебания сигнала антенны также могут пройти, но когда диод блокируется, они также задерживаются. Выходной сигнал диода усредняется фильтром R6 и C12. Среднее значение изменяется по мере того, как сигнал от антенны смещается по фазе относительно сигнала генератора, как показано на рис. 12.4. Прием кода Морзе Передача кода Морзе состоит из последовательности включений и выключений синусоидального сигнала. Буквы и цифры кодируются в ритме коротких и длинных импульсов. AM-приемник не очень хорошо подходит для приема передач кода Морзе, потому что и когда сигнал включен, и когда он выключен, амплитуда постоянна, а при обнаружении постоянной амплитуды AM-приемник хранит молчание. Приемник прямого преобразования в этом эксперименте гораздо лучше справляется с азбукой Морзе. Хитрость заключается в том, чтобы настроить гетеродин на частоту, близкую (возможно, в пределах 2 кГц), но не совсем на ту же самую, что использует передача Морзе. Это показано на рис. 12.5. Когда сигнал включен, приемник издает звуковой сигнал. Получается типичный способ приема передач Морзе как серии длинных и коротких звуковых сигналов. Если вы слышите несколько станций, передающих на соседних частотах, ситуация становится более запутанной. Приемник в этом эксперименте принимает сигналы как выше, так и ниже частоты гетеродина, как показано в правой части рис. 12.5. В более сложных приемниках можно выбирать только частоты выше или ниже частоты настройки. Эксперимент 12. Приемник прямого преобразования 233
LO A LO 3,520 3,525 3,530 кГц A A B BA LO A 3,520 3,525 0 2 кГц 3,520 3,525 3,530 кГц 0 2 кГц 3,530 кГц Рис. 12.5. Схема приема сигнала А на частоте 3525 кГц приемником прямого преобразования. При частоте гетеродина 3527 кГц или 3523 кГц в результате получается тон 2 кГц. На правом изображении показано, что когда присутствуют два сигнала A и B, оба появляются в выходном аудио, причем частоты определяются их разностью с частотой гетеродина Передача аудио с SSB-модуляцией Чтобы разобраться в однополосной передаче SSB, нужно взглянуть на спектр частот, присутствующих в AM-сигнале. Если у вас есть AM-передатчик и вы включаете его, но не говорите в микрофон, он будет передавать несущую волну с постоянной амплитудой. В спектре этот сигнал имеет одну частоту. Если вы теперь добавите аудиосигнал (частоты 0–3 кГц типичны для речи по радио), амплитуда несущей будет меняться во времени. В спектре это проявляется в виде дополнительных сигналов по обе стороны от несущей частоты, называемых боковыми полосами. Спектр аудиосигнала показан на рис. 12.6. (В этом примере он имеет форму треугольника.) Версия этого сигнала с амплитудной модуляцией имеет по одной такой боковой полосе по обе стороны от несущей частоты. Две боковые полосы содержат одну и ту же информацию. Идея однополосной модуляции заключается в передаче только частот лишь одной из этих боковых полос. Один из способов сделать это – отфильтровать несущую частоту и одну из боковых полос AM-сигнала. «Модуляция верхней боковой полосы» и «модуляция нижней боковой полосы», сокращенно USB и LSB, относятся к тому, какая именно боковая полоса сохраняется. Одним из недостатков SSB является то, что его невозможно принять с помощью простых приемников, которые вы построили в предыдущих экспериментах. Для этого требуется приемник с гетеродином, который в некотором смысле заменяет отфильтрованную несущую частоту. На рис. 12.7 показан приемник прямого преобразования, настроенный на сигнал LSB. Правильная настройка заключается в том, чтобы частота гетеродина располагалась чуть выше сигнала LSB, поскольку это возвращает исходный звук. Небольшие изменения в настройке дают разборчивый звук, но со сдвигом высоты тона. Настройка гетеродина ниже частоты сигнала приводит к тому, что высокие и низкие частоты меняются местами, что звучит странно (исторически это использовалось как способ аналогового шифрования речи). 234 Радио. Эксперименты с невидимыми волнами
Модулированная верхняя боковая полоса Аудиосигнал AM-сигнал Несущая Нижняя Верхняя боковая боковая полоса полоса Амплитудная модуляция 0 2 кГц 3520 3525 Фильтр Фильтр 3520 3525 3530 кГц Модулированная нижняя боковая полоса 3530 кГц 3520 3525 3530 кГц Рис. 12.6. Один из способов генерирования однополосного сигнала – начать с амплитудной модуляции, а затем использовать фильтр для удаления несущей частоты и одной боковой полосы Нижняя боковая полоса LO A A 3520 3525 3530 кГц LO A 3520 3525 0 2 кГц Восстановленый аудиосигнал A 3530 кГц 0 2 кГц Искаженный аудиосигнал Рис. 12.7. Схема приема аудиосигнала нижней боковой полосы и результирующего аудио­ выхода для двух разных частот гетеродина. Когда частота гетеродина чуть выше однополосного сигнала, результирующий звук соответствует исходному аудиосигналу. Если частота гетеродина чуть ниже сигнала, звук можно услышать, но искаженно, поскольку низкие и высокие частоты поменялись местами Эффективность Насколько хорош приемник? Я был удивлен, что он так хорошо работает, хотя создан на макетной плате, что не рекомендуется для радиочастотных схем. У него есть некоторые слабые места, например усилитель LM386 немного шумный, и это заметно, когда слушаешь его в наушниках. (Попробуйте отключить диод смесителя от усилителя – шум все еще присутствует!) Настройка гетеродина меняется, когда ваша рука приближается к нему. Здесь поможет монтаж переменного конденсатора и генераторной части схемы внутри отдельного металлического корпуса. Первоначальная конструкция VK6 80, на которой основывается данный приемник (см. источники ниже), предполагала металлический корпус и, вероятно, была лучше и в других отношениях. Я сделал выбор в сторону упрощеЭксперимент 12. Приемник прямого преобразования 235
ния, чтобы сделать сборку максимально простой и использовать те же компоненты, что и в других экспериментах. Я думаю, что можно многому научиться, создавая простые радиоприемники, даже если качество не на высоте. Кроме того, этот путь позволяет лучше оценить конструктивные решения более совершенных радиостанций. Надеюсь, вы смогли услышать некоторых радиолюбителей в коротковолновом диапазоне. В следующей, и последней, главе я предложу несколько способов продолжить заниматься радио в качестве хобби. Один из них – получить лицензию на радиолюбительство, чтобы вы также могли вести вещание в коротковолновых диапазонах любительской радиосвязи. дОпОлнительные истОчники Генератор и смеситель в схемах основаны на приемнике VK6 80 Питера Паркера (Peter Parker), который был представлен в сентябрьском выпуске журнала «Amateur Radio» за 1995 год, изданном австралийским институтом Wireless Institute of Australia. Вы можете прочитать статью на стр. 486 по адресу: https://archive.org/details/ar1949/AR_1995/. Статья Wes Hayward «Direct Conversion Receivers–Some Amateur Radio History» (Уэс Хейворд. Приемники прямого преобразования – немного истории любительского радио), которая в 1968 году популяризировала конструкцию, до сих пор использующуюся во многих любительских радиостанциях: https://w7zoi.net/oldtech/dcrx68a.pdf. Еще отличная статья на эту тему: Rick Campbell, «High-Performance Direct-Conversion Receivers» (Рик Кэмпбелл. Высококачественные приемники прямого преобразования), опубликованная в августовском номере журнала «QST» за 1992 год. Это довольно продвинутый подход с интересными идеями о том, что делает приемник прямого преобразования качественным. Статью можно прочитать онлайн по адресу: https://www.arrl.org/files/file/Technology/tis/info/pdf/9208019.pdf. чтО дальше? В предыдущих 12 экспериментах я познакомил вас с аспектами радио, которые легче всего понять, и показал, насколько доступен радиоспектр, даже если иметь всего несколько доступных компонентов. Вы видели, что радиосигналы можно создать очень легко, и, вероятно, обнаружили, что вокруг вас есть AM-станции, о которых вы даже не подозревали. Следующая, и последняя, глава книги покажет вам, как вы можете войти в мир лицензированных любительских радиопередач, а также расскажет о некоторых других способах продолжить изучение мира радио.
Эксперимент 13 ДАЛЬНЕЙШИЙ ПУТЬ
Л юди могут мгновенно взаимодействовать друг с другом по всему миру через интернет. В эпоху мгновенного глобального общения можно было бы предположить, что любительское радио утратило свою актуальность, но это не так. Радиоэфир жив: на самом деле его сигналы повсюду вокруг нас. Небольшие схемы передатчиков, описанные ранее в этой книге, строго ограничены по мощности в соответствии с правительственными ограничениями. Получив лицензию, вы сможете управлять оборудованием с гораздо большей дальностью действия. Это буквально откроет мир новых возможностей. В этой последней главе будут описаны позывные, протокол связи, QSL-карточки, диапазоны частот и источники, к которым вы можете обратиться, если хотите купить недорогой передатчик и приемник. Вы также узнаете о программноопределяемой радиосвязи, которая использует возможности настольного компьютера. Во многих отношениях мир любительского радио никогда не был более доступным. Я также дам вам несколько советов о том, как продолжить создание радиосхем, и покажу полезное испытательное оборудование. Что вам понадобится • Дополнительно: компьютер и приемник SDR (1). Подробности см. в этой главе, раздел «Программно-определяемая радиостанция».
любительскОе радиО Любительское радио, также называемое радиолюбительской связью1, – это способ радиолюбителей общаться друг с другом, используя радиочастоты. Для радиолюбительского использования выделено несколько диапазонов частот. Чтобы вести собственные передачи на этих частотах, вам понадобится лицензия радиолюбителя. Детали различаются в зависимости от страны, но, как правило, для получения лицензии необходимо пройти тесты, чтобы продемонстрировать ваши знания правил, норм и технических требований для правильной эксплуатации радиопередатчиков. Некоторые аспекты радиолюбительского хобби включают в себя следующее:  установление контактов с людьми, которые разделяют ваши интересы;  развитие технических навыков;  создание схем и экспериментирование с ними;  общение по всему миру, возможно, с помощью оборудования, которое вы создадите сами;  готовность к чрезвычайным ситуациям – общение с другими людьми, когда другие методы не работают, например во время стихийного бедствия. В большинстве стран есть ассоциации радиолюбителей, которые могут предоставить вам дополнительную информацию о получении лицензий. В США крупнейшей ассоциацией является ARRL, Американская лига радиорелейной связи (American Radio Relay League, www.arrl.org)2. Ассоциации радиолюбителей издают такие журналы, как «QST» и «CQ». Это могут быть хорошие источники технических статей и электронных проектов3. Лицензирование В Соединенных Штатах FCC (Федеральная комиссия по связи4) проводит экзамены с несколькими вариантами ответов и выдает лицензии на радиолюбительство. Существует несколько классов лицензий; каждый класс требует больше знаний, но при этом дает вам больше прав, таких как возможность ис1 2 3 4 В США принят термин ham radio: соответственно, в разговоре радиолюбителей часто называют словом ham. В СССР из-за того, что электронные компоненты частным лицам были малодоступны, вплоть до 1970-х любительская электроника лежала исключительно в области радиосвязи (в сталинские времена обучение радиоделу даже считалось важной частью патриотического воспитания и входило в систему ДОСААФ). Поэтому словом «радиолюбитель» стали называть всех любителей электроники, независимо от направления. Термин стойко продержался в русскоязычной среде вплоть до широкого распространения интернета в начале нового тысячелетия, когда, наконец, появились просто «любители электроники», а радиолюбители законно составили часть этого сообщества. В России аналогичное сообщество называется «Союз радиолюбителей России» (https://srr.ru). Преемник существовавшей до 1991 года Федерации радиоспорта СССР. В России радиолюбительству посвящен выпускающийся по сей день журнал «Радио» (http://radio.ru/). В доинтернетовский период, особенно в советское время, это было одно из самых популярных отечественных периодических изданий, и далеко не только среди любителей именно радио. Аналог российского Роскомнадзора, с некоторыми различиями. Эксперимент 13. Дальнейший путь 239
пользовать более высокую мощность или доступ к большему количеству диапазонов частот. Дополнительную информацию о классах лицензий в США см. www.arrl.org/getting-licensed1. Раньше во многих странах требовалось пройти тест на азбуку Морзе, особенно для доступа к коротковолновым диапазонам, но это требование было отменено. Однако азбука Морзе по-прежнему популярна, поскольку она позволяет осуществлять связь в условиях, когда передача голоса невозможна. Помимо азбуки Морзе и голосовой аналоговой связи, существуют более современные цифровые способы передачи текста по радио. Один из способов их использования – подключить звуковую карту компьютера к радиоприемнику для отправки и приема цифровых сигналов. Вы также можете отправлять и получать код Морзе таким образом, чтобы вы могли кодировать и декодировать сообщения, не обучаясь отправлять и интерпретировать Морзе вручную. Позывные Каждая любительская радиостанция идентифицируется своим уникальным позывным, состоящим из букв и цифр. Примером может служить мой позывной OH1HSN, в котором OH – код страны Финляндии, цифра 1 обозначает регион в стране, а буквы HSN обозначают конкретную станцию. В США позывные начинаются с букв A, K, N или W2. В США позывной передающей станции следует отправлять в начале каждой передачи, а затем раз в 10 минут. Требуемый интервал повторения зависит от страны. Когда вы произносите символы позывного, вы используете фонетический алфавит. А произносится как «Альфа», Б – «Браво», С – «Чарли», D – «Дельта» и т. д. Эти слова выбраны так, чтобы они звучали отчетливо, чтобы их можно было понять, даже если связь может быть плохой. Некоторые радисты могут использовать разные фонетические алфавиты, особенно для местного общения на языке, отличном от английского3. Протокол связи Двусторонняя связь обычно начинается с того, что одна станция отправляет общий вызов, например «CQ CQ CQ, это OH1HSN». CQ означает «ищущий вас» (seek-you). Затем отправляется позывной с использованием фонетического алфавита, который в данном случае будет «Oscar Hotel One Hotel Sierra October». Кто-то, получив это сообщение, может ответить: «OH1HSN, это OH1AA», снова с указанием позывных. Если первая вызывающая станция услышит это, она обычно отправит более длинное сообщение. Обычно обмениваются отчетами о сигнале, которые состоят из двух или трех цифр, оценивающих уровень сиг1 2 3 Подробные сведения о лицензировании радиолюбительской деятельности в России можно получить в разделе «Операторам» сайта «Союза радиолюбителей России» по адресу https://srr.ru/radiooperatoram/. В России так называемый префикс позывного содержит букву R, RA, RK, RN, RU, RV, RW, RX, RZ или UA (подробнее см. https://radioalert.ru/wp-content/uploads/2022/09/Pozyvnye.pdf). О международном фонетическом алфавите см. статью в Википедии https://ru.wikipedia. org/wiki/Фонетический_алфавит. 240 Радио. Эксперименты с невидимыми волнами
нала другой станции и то, насколько хорошо его можно понять, а затем называют местоположение станции. Местоположение обычно указывается с названиями городов или координатами в кратком формате, состоящем из двух букв, двух цифр и еще двух букв. Кроме этой обязательной части, на любительском радио можно говорить о чем угодно. Ведете ли вы долгие беседы или просто исследуете то, что можете найти в данном диапазоне, – это вопрос личных предпочтений. QSL-карточки Людям, увлекающимся радиолюбительством, часто нравится общаться на очень больших расстояниях или с как можно большим количеством станций в разных странах. В подтверждение факта радиосвязи радиолюбители обмениваются QSL-карточками1. На карточках, похожих на открытки, упоминаются позывные двух станций, дата и время контакта, используемая частота и способ связи (например, азбука Морзе, аудио или цифровая). Некоторые примеры QSL-карточек показаны на рис. 13.1. Американское общество ARRL предоставляет также электронную версию QSL-карточек, известную как «Logbook of the World». Рис. 13.1. QSL-карточки от различных любительских радиостанций 1 QSL – радиолюбительский код, означающий «вашу информацию получил». Эксперимент 13. Дальнейший путь 241
Диапазоны частот Для любительского использования выделено несколько диапазонов, или полос частот. Точные диапазоны, пределы мощности и правила различаются в зависимости от страны, но, к счастью, диапазоны достаточно хорошо перекрываются, что делает возможной международную связь. В общих чертах диапазоны делятся на коротковолновые (КВ-диапазон, от 3 до 30 МГц) и более высокочастотные (диапазоны VHF и UHF)1. Радиосигналы в коротковолновых диапазонах могут отражаться обратно на Землю определенными слоями атмосферы. Это делает возможным общение далеко за пределами видимого горизонта. Однако солнечная радиация влияет на свойства атмосферы в течение дня, поэтому открытые пути распространения радиоволн постоянно меняются. Различные полосы коротковолнового диапазона также могут иметь очень разные характеристики в разное время. Некоторые популярные диапазоны перечислены в следующей таблице. Длина волны указана приблизительно, но ее часто используют для обозначения диапазона. На самом деле любительских диапазонов больше, как на более низких, так и на более высоких частотах. Длина волны 80 м Частота 3,5–4,0 МГц Диапазон КВ 40 м 7,0–7,3 МГц КВ 20 м 14,0–14,35 МГц КВ 10 м 28,0–29,7 МГц КВ 2м 144–148 МГц VHF 70 см 420–450 МГц UHF Для местной связи подходят диапазоны 2 м и 70 см. Они надежны в радиусе действия в десятки километров для портативных радиостанций и до 150–200 км для более мощных радиостанций с высоко установленными антеннами. Дальность ограничена, поскольку эти радиоволны обычно не отражаются атмосферой обратно на Землю. Преимущество ограниченного радиуса действия состоит в том, что удаленные станции не будут мешать местной связи. Для любительской связи в диапазонах частот VHF и UHF могут существовать местные ретрансляторы, которые увеличивают дальность передачи. Ретранс­ лятор работает, принимая одну частоту и ретранслируя на другой частоте. Такие ретрансляторы позволяют местному радиолюбительскому сообществу оставаться на связи. Диапазоны VHF и UHF обычно делятся на каналы, и для них рекомендуется использовать определенные частоты, которые различаются в зависимости от страны и региона. В коротковолновых диапазонах такого разделения каналов чаще нет. 1 Диапазон коротких волн (3–30 МГц) в русскоязычных источниках обычно обозначают русскими буквами КВ, что соответствует SW (Short wave) в англоязычном написании. Менее распространено для этого диапазона официальное сокращение HF (High frequency, высокая частота, ВЧ). Для более коротких волн (ультракороткие волны, УКВ) общеприняты англоязычные сокращения: VHF для диапазона 30–300 МГц (Very high frequency, очень высокая частота, ОВЧ) и UNF для диапазона от 300 МГц до 3 ГГц (Ultra high frequency, ультравысокая частота, УВЧ). 242 Радио. Эксперименты с невидимыми волнами
Мне нравятся КВ-диапазоны, потому что изучение их может напоминать охоту за сокровищами. Они непредсказуемы, но возможны очень дальние связи. Вы можете использовать самодельное оборудование или купить готовое. Обзаводимся радиостанцией Радиостанция, которая может как передавать, так и принимать, называется трансивером. Другой вариант – просто обзавестись приемником (ресивером), которым можно пользоваться без лицензии. Программно-определяемая радио­станция – еще одна возможность. Прежде чем вкладывать средства в какое-либо оборудование, подумайте, какой вид связи вас интересует, и попробуйте посетить местный радиоклуб, где можно получить совет. Клуб также может дать вам возможность опробовать некоторые модели радиостанций и, возможно, купить подержанное оборудование. Некоторым любителям интересно использовать старинное оборудование связи, например старые военные радиостанции, построенные на электронных лампах. Программно-определяемая радиостанция Программно-определяемая радиостанция, или SDR (Software-defined radio), – это оборудование, в котором часть обработки сигнала выполняется в цифровом виде с помощью компьютера. Это означает, что новые способы модуляции могут быть добавлены с помощью программного обеспечения, в отличие от традиционных радиостанций, где все функции реализованы аппаратно. Сканер – это радиооборудование, которое может настраиваться в широком диапазоне частот в поисках интересных сигналов. С помощью SDR вы можете делать это на экране компьютера, что дает вам преимущество видеть близлежащие активные частоты, а не просто искать передачи путем прослушивания. RTL-SDR – это небольшое устройство SDR на специальной микросхеме, которая первоначально использовалась в качестве дешевого приемника для цифрового телевещания. RTL-SDR подключается к компьютеру, который выполняет часть демодуляции сигнала и отображает видео. Некоторые люди, которые хотели использовать этот ресивер с Linux, написали для него свою собственную программу-драйвер. Они обнаружили, что, помимо приема цифрового телевидения, приемник можно настроить на любую частоту от 20 МГц до 1700 МГц, преобразуя участок в несколько мегагерц в цифровую форму, которую можно отправить через порт USB. Затем компьютерная программа может обрабатывать данные дальше для приема множества различных типов передач. Если вы живете недалеко от аэропорта, то можете поймать связь между авиа­диспетчерской службой и самолетом. Обычно это происходит в диапазоне частот 118–137 МГц с использованием AM-модуляции. Рядом с гаванями и судоходными маршрутами вы можете слушать морской диапазон УКВ, который охватывает 156–174 МГц и использует FM-модуляцию. Вы также можете принимать интересные цифровые передачи. Корабли и самолеты оснащены автоматическими передатчиками, которые периодически передают свое положение, скорость и курс, а также идентификационный номер. Эксперимент 13. Дальнейший путь 243
Получая эти сигналы, вы можете «видеть» близлежащие суда в режиме реального времени. Для судов система называется системой автоматической идентификации (AIS) и работает на частотах 161,975 МГц и 162,025 МГц в морском диапазоне УКВ. Для самолетов система называется ADS-B и работает на частоте 1090 МГц. На таких сайтах, как Marinetraffic.com (суда) и Flightradar24.com (самолеты), вы можете увидеть эту информацию, собранную сетью станций и нанесенную на карту. Все-таки, мне кажется, интереснее получать сигналы самостоятельно. Прежде чем использовать радиосканеры или приемники SDR, такие как RTL-SDR, обязательно ознакомьтесь с местными правилами, поскольку они различаются в зависимости от страны, и могут существовать юридические ограничения на то, что вы можете получать, особенно если вы планируете пуб­ ликовать информацию, полученную по радио. Аппаратура Существует множество различных устройств SDR для разных целей. Некоторые могут только принимать, а более дорогие – еще и передавать сигналы. Я могу порекомендовать одну недорогую, но все же работоспособную модель, которая представлена на сайте https://www.rtl-sdr.com1. Я рекомендую покупать через этот сайт (я не имею к нему никакого отношения), так как существует множество клонов, некоторые из которых активно вводят в заблуждение. Официальную модель от клонов обычно отличает лучшая точность установки частоты и возможность приема более низких частот коротковолнового диапазона. Комплект SDR включает в себя телескопическую дипольную антенну. Программное обеспечение Я упомяну три бесплатные программы. Их установка может быть более сложной, чем установка обычных программ, а использование программ требует обуче­ния. Вы можете рассчитывать, что придется потратить некоторое время на чтение руководств. GQRX доступен на сайте https://www.gqrx.dk и работает под Linux или macOS. Это универсальный приемник для разных модуляций: FM, AM, SSB и Морзе. SDRangel, работающий под Linux, macOS и Windows, можно найти на сайте https://www.sdrangel.org. Эта программа особенно рекомендуется для цифрового сканирования, такого как слежение за кораблями и самолетами, упомянутое выше. Когда вы получаете любую из подобных передач, программа отображает окно карты, где отображается местоположение источника. SDR# (произносится как «си-ди-эр-шарп») доступна на https://airspy.com и работает только под Windows. Это универсальная программа приема. Антенна Для получения хороших результатов с SDR, как и любым другим радиоприемником, вам понадобится антенна. Вместе с радиостанцией RTL-SDR вы можете приобрести телескопическую дипольную антенну. Более дешевые 1 Обзор этой модели на русском языке: https://radiochief.ru/radio/obzor-sdr-priemnika-ot-rtlsdr-com-v-3. 244 Радио. Эксперименты с невидимыми волнами
USB-устройства RTL часто поставляются с небольшой антенной на магнитном основании. Такая конструкция, вероятно, может уловить местные FMрадиостанции, но не более того. Какая бы антенна у вас ни была, если вы сможете установить ее на открытом воздухе, высоко и вдали от источников помех, прием будет лучше, чем в помещении. Испытательное оборудование В ходе экспериментов мы уже собрали две единицы испытательного оборудования: генератор сигналов и частотомер. Если вам нравится создавать радиосхемы, рассмотрите возможность приобретения двух дополнительных приборов для тестирования и измерения радиосигналов: осциллографа и анализатора спектра. Осциллографы, имеющие множество применений в электронике, описаны в приложении Г. Анализатор спектра, на первый взгляд, похож на осциллограф. Он измеряет сигнал и отображает его на экране. Но там, где осциллограф отображает сигнал по времени, анализатор спектра отображает его по частоте. Анализаторы спектра раньше были исключительно лабораторным оборудованием с соответствующей ценой. На рис. 13.2 показан современный вариант под названием tinySA, цена которого гораздо более привлекательна для любителей. Вы можете найти его на www.tinysa.org. TinySA также может генерировать тестовые сигналы, что полезно при тестировании приемников. Рис. 13.2. Анализатор спектра tinySA. Желтая кривая показывает уровень сигнала на разных частотах, которые на рисунке настроены на диапазон 10–200 МГц. Всплески в середине экрана обозначают станции FM-диапазона вещания Как и в случае с радиостанцией RTL-SDR выше, я советую покупать только в магазинах, упомянутых на официальном сайте, чтобы избежать клонов неизвестного качества. Вам также следует подумать о приобретении аттенюатора на 30 дБ (который обойдется вам всего в несколько долларов), если вы хотите подключить любой пеЭксперимент 13. Дальнейший путь 245
редатчик напрямую к анализатору. Анализатор спектра не может работать с высокой входной мощностью и может быть перегружен или показывать ложные пики, если сигнал слишком сильный. Аттенюатор подключается между передатчиком и анализатором спектра для снижения сигнала до безопасного уровня. Обратите внимание, что дБ – это аббревиатура от слова «децибел», означает меру ослабления сигнала. 30 дБ означает, что на выход передается 1/1000 входной мощности. В анализаторе tinySA используются разъемы SMA. Они часто встречаются в коаксиальных кабелях для различных инструментов и радиоприемников, когда мощность сигнала низкая, а кабели могут быть тонкими. Радиостанции RTL-SDR и многие другие подобные приемники также используют разъемы SMA. На рис. 13.3 показаны некоторые кабели и разъемы. Рис. 13.3. Несколько полезных кабелей и разъемов. Слева направо: два коаксиальных кабеля с разъемами SMA; аттенюатор, подходящий для подключения выхода маломощного передатчика непосредственно к анализатору спектра; и самодельный переходник от SMA к макетной плате, сделанный путем припаивания двухконтактного разъема к разъему SMA При конструировании передатчика вы можете использовать анализатор спектра, чтобы просмотреть сигнал, который он производит. В частности, анализатор покажет, генерируете ли вы сигналы (например, гармоники), на непредусмотренных частотах. Ко входу анализатора можно подключить антенну (телескопическую штангу или небольшую проволочную петлю). Прогуляйтесь и найдите источники радиопомех в своем доме. Я обнаружил, что планшет для рисования на компьютере излучает сильный сигнал с частотой около 660 кГц. Я также слышал его при тестировании АМ-приемников. Используя антенну, вы сможете искать интересные сигналы для прослушивания. Диапазон частот, которые вы можете одновременно просматривать на анализаторе спектра, гораздо шире (сотни мегагерц), чем тот, который может показать за один раз RTL-SDR (всего несколько мегагерц). 246 Радио. Эксперименты с невидимыми волнами
Физика и математика Генерация, явление резонанса и спектры – это явления, которые возникают во многих физических объектах, таких как маятники, вибрирующие струны музыкальных инструментов и органные трубы. В физике простой моделью колеблющихся систем является гармонический осциллятор. Эта модель полезна для понимания LC-схем в радиоприемниках. Волны играют важную роль во многих явлениях, включая звук, волны на поверхности воды или волновую функцию, описывающую частицы в квантовой механике. В этой книге наиболее важные волны относятся к электромагнитному спектру, включающему видимый свет, рентгеновские лучи и, конечно же, радиоволны. Математика полезна для радио при описании, анализе и обработке сигналов. Полезные области включают тригонометрию (для функции синуса) и логарифмы (для единицы «децибел»). Более сложные темы включают комплексные числа и анализ Фурье (для описания того, как сигнал можно разложить на синусоидальные волны разных частот). Математическая обработка сигналов в цифровом виде, называемая цифровой обработкой сигналов (digital signal processing, DSP), – это то, что обеспечивает программно-определяемую радиосвязь. Чем больше технических знаний вы приобретете, тем лучше вы сможете понять и изучить увлекательную тему радио. Беспроводная передача данных микроконтроллерами В эксперименте 9 вы узнали о дистанционном управлении на частоте 433 МГц. Если вы хотите, например, настроить сеть беспроводных датчиков и передавать более нескольких байтов данных за раз, или вам требуется надежная передача данных, простые модули дистанционного управления становятся непрактичными. Тогда вы можете изучить следующие варианты. Wi-Fi: многие микроконтроллерные модули поддерживают беспроводную сеть Wi-Fi. Raspberry Pi Pico, рекомендованный в этой книге, этого не делает, зато делает ближайший его родственник Raspberry Pi Pico W. Wi-Fi быстрый, но довольно требовательный к электроэнергии, а радиус действия ограничен (возможно, 100 м в идеальных условиях1). Вам не нужно много знать о радио, чтобы использовать Wi-Fi на микроконтроллере. Это, скорее, вопрос компьютерных сетей и программирования сетевых чипов модуля микроконтроллера. Другие радиомодули: существует несколько типов радиомодулей, которые можно использовать с микроконтроллерами – например, на базе микросхемы CC1101. Они гораздо более сложны, чем модули дистанционного управления, их сложнее использовать и программировать2. Такие модули обычно использу1 2 Wi-Fi, работающий на частотах 2,4 ГГц или 5 ГГц, как и все высокочастотные устройства, крайне чувствителен к наличию препятствий (стен, перегородок, мебели и пр., даже оконное стекло его значительно ослабляет). Общая закономерность (с рядом нюансов): чем ниже частота, тем меньше поглощение сигнала препятствиями; упомянутые пульты 433 МГц значительно более дальнодействующие, чем модули Wi-Fi или тем более Bluetooth. Русскоязычное описание CC1101 см., например, https://russianelectronics.ru/besprovodnyetransivery-ti-dlya-diapazona-chastot-do-1-ggcz. Эксперимент 13. Дальнейший путь 247
ют нелицензируемые диапазоны частот – так же, как и модули дистанционного управления в эксперименте 9. Что касается программного обеспечения, хорошей отправной точкой является библиотека Arduino RadioLib, которую можно скачать по адресу https://github.com/jgromes/RadioLib. В документации библиотеки можно найти список совместимых радиомодулей. LoRa, сокращение от «long range» (большой диапазон), представляет собой особый запатентованный стандарт связи, для которого существуют специальные модули, обещающие большую дальность действия (измеряющуюся километрами) в сочетании с низким энергопотреблением, при условии что объем передаваемых данных ограничен несколькими килобайтами в секунду или меньше. Создание радиосхем Фильтры, генераторы, усилители и смесители являются центральными концепциями радиотехники. Практически любая радиосхема содержит их в качестве строительных блоков, и вы видели их все в действии в проектах, представленных в этой книге. Вот небольшой обзор терминологии для дальнейших исследований: Фильтры пропускают сигналы одних частот, блокируя другие. В книге вы видели фильтры нижних частот в аудиосхемах. Резонансные LC-схемы могут действовать как полосовые фильтры, пропуская только сигналы, близкие к резонансной частоте. Примерами этого являются резонансные схемы в AMR1 и AMR2, а также фильтр в приемнике прямого преобразования в эксперименте 12. В радиоприемниках фильтры могут быть построены с использованием резисторов, конденсаторов и катушек индуктивности, но существуют также специальные компоненты фильтров, например керамические резонаторы и фильтры на ПАВ (поверхностных акустических волнах). Хорошие фильтры можно построить с помощью операционных усилителей, особенно для аудио- и других низкочастотных сигналов. Усилитель увеличивает амплитуду сигнала. Они используются как в приемниках, так и в передатчиках и обычно состоят из транзисторов или интег­ ральных схем. Приемники могут содержать каскад усилителя для усиления слабого сигнала от антенны перед дальнейшей обработкой, а также еще один усилитель, который делает выходной аудиосигнал достаточно мощным для работы динамика. В эксперименте 2 использовались усилители обоих типов. В передатчиках усилитель может усиливать сигнал, поступающий на антенну, как это сделал транзистор в окончательной версии AMT2B в эксперименте 6. Генератор создает сигнал определенной частоты. В экспериментах 1 и 2 использовались генераторы, построенные на базе таймера 7555. Эксперименты 3 и 12 содержали генератор, построенный из транзистора и резонансного контура. В целом многие генераторы можно рассматривать как усилители с положительной обратной связью через фильтр. В эксперименте 5 вы использовали Pico в качестве генератора частоты, поделив тактовую частоту для создания более низкой, точно известной частоты. Ограничением этого подхода является то, что могут быть сгенерированы не все частоты, а только целые доли тактовой частоты Pico. Существуют схемы тактовых генераторов, в которых используется метод, называемый фазовой автоподстройкой частоты, для генерации точной и контролируемой частоты с любым значением. Популярным является чип Si5351A, настолько крошечный, что с ним трудно справиться самостоятельно, но он доступен на платах 248 Радио. Эксперименты с невидимыми волнами
модулей от Adafruit. Этой микросхемой можно управлять с помощью I2C, поэтому она должна хорошо совмещаться с Pico (хотя ее правильное программирование потребует некоторых исследований). Как насчет использования такого генератора частоты в качестве гетеродина в приемнике прямого преобразования из эксперимента 12? Тогда вы сможете иметь точную и стабильную частоту, контролируемую Pico, с отсчетом значения на ЖК-экране. Возможно, для управления настройкой в этом случае подойдет поворотный энкодер. Смесители в радиоприемниках позволяют перемещать сигнал с одной частоты на другую. Вы видели диод, действующий как смеситель в эксперименте 12, и элемент «исключающее ИЛИ» в этой роли в эксперименте 11. Есть и другие типы с разными свойствами – например, диодные кольцевые смесители, доступные в корпусах, напоминающих корпуса микросхем. Другой подход, который стал популярным в проектах любителей в последние десятилетия, заключается в использовании в качестве смесителя микросхемы аналогового мультиплексора, часто в схеме, называемой детектором квадратурной выборки (quadrature sampling detector) или просто квадратурным детектором. Этот тип смесителя хорошо подходит для SDR-радиостанции, где аналоговый сигнал оцифровывается после смесителя, а окончательная демодуляция и обработка выполняются программно. Изучив эти строительные блоки радиоаппаратуры, вы можете найти дополнительные точки приложения для радиосхем. Попробуйте книги и вебстраницы, о которых я упоминал в предыдущих главах, или в некоторых из упомянутых там радиолюбительских журналах. Вы также можете попробовать собирать из готовых комплектов. Рекомендую серию программно-определяемых радиостанций SoftRock, доступных на сайте www.softrock.com. Я видел также несколько многообещающих комплектов от QRP Labs. Многие из них используют конструкцию детектора квадратурной выборки. Они более сложны, чем проекты в этой книге, и требуют пайки. Некоторые из таких проектов представляют собой трансиверы для любительских диапазонов и для работы требуют любительской лицензии, но есть и варианты только для приема. Я хочу дать последний совет: не усложняйте задачу с самого начала, пытаясь реализовать все возможные функции радиостанции, которую вы планируете построить. Начните с простого и постройте что-нибудь работающее. Удачи – и получайте удовольствие!

ПРИЛОЖЕНИЯ
Приложение А. Характеристики компонентов В этом приложении содержится информация о компонентах, использованных в экспериментах в книге. Если вы не пользуетесь готовыми наборами, вам придется заказывать компоненты самостоятельно и, скорее всего, в нескольких разных местах. Источники перечислены в приложении Б. В таблице в конце приложения перечислены все компоненты, необходимые для каждого из пронумерованных экспериментов. В столбце «Минимум» показано минимальное количество каждого компонента, необходимое для проведения экспериментов, при условии что вы разбираете предыдущий макет перед сборкой следующего, чтобы можно было повторно использовать компоненты. В столбце «Всего» указано рекомендуемое количество компонентов, позволяющее собрать сразу несколько схем. В частности, схемы в следующих экспериментах интересны совместно, и для этого необходимо количество компонентов, указанное в столбце «Всего»:  эксперименты 2 и 3: приемник AMR2 и передатчик AMT1;  эксперименты 2 и 6: приемник AMR2 и передатчик AMT2B Pico;  эксперименты 3 и 7: передатчик AMT1 и частотомер;  эксперименты 7 и 11: частотомер и металлоискатель;  эксперименты 3 и 10: передатчик AMT1 и регенеративный приемник;  эксперименты 6 и 10: пикопередатчик AMT2B и регенеративный приемник. В эксперименте 9 для одновременной сборки приемника и передатчика дистанционного управления требуются два Pico, два макета и два USB-кабеля. Резисторы В этой книге используются резисторы обычного типа мощностью 0,25 Вт. Я настоятельно рекомендую использовать резисторы с допуском не менее 5 %, поскольку их четырехполосный цветовой код легко читается: две полосы для лидирующей цифры, одна полоса для количества нулей и четвертая полоса золотого цвета для допуска. (Интерпретацию цветового кода см. в приложении В.) Более точные резисторы имеют пятиполосный код, который прочитать труднее. Резисторы настолько дешевы, что, возможно, вам стоит купить по сто штук каждого номинала, указанного в таблице. Вы также можете рассмотреть возможность покупки набора резисторов, который обычно содержит по 10 или 20 резисторов каждого из номиналов в рамках допуска. Такой набор, вероятно, будет содержать все номиналы, необходимые для этой книги, но проверьте перед покупкой и убедитесь, что резисторы имеют допуск 5 %. Хорошими поисковы252 Радио. Эксперименты с невидимыми волнами
ми запросами будут «углеродистый резистор», «резистор с гибкими выводами» или «резистор с монтажом в отверстия»1 (чтобы избежать вариантов резистора для поверхностного монтажа, которые нельзя установить на макетной плате). Подстроечные резисторы В идеале подстроечные резисторы2 должны иметь прямые жесткие выводы, чтобы они хорошо вписывались в макетную плату. Если вы используете разновидности с изогнутыми выводами, возможно, вам придется выпрямить их с помощью плоскогубцев. Подстроечные резисторы используются в качестве регуляторов громкости и частоты в нескольких экспериментах. Для их регулировки требуется отвертка, поэтому если вы создаете постоянную версию схемы, то можете заменить тип для монтажа на панели на разновидность с валом, на котором можно установить ручку. Если вы покупаете полноразмерный переменный резистор, не стоит ожидать, что он поместится на макетной плате. Для целей регулирования громкости предпочтительнее использовать подстроечный резистор с логарифмической шкалой, поскольку он обеспечивает равномерное изменение громкости во всем диапазоне вращения. Однако для экспериментов с макетами обычные линейные подстроечные резисторы работают достаточно хорошо. Керамические конденсаторы При покупке конденсаторов следует учитывать две основные вещи: четкую маркировку и диэлектрический материал, который действует как изоляция. Мы используем керамические конденсаторы, они обычно имеют трехзначный код (см. приложение В). На некоторых конденсаторах маркировка настолько мала, что ее невозможно прочитать без увеличения. Керамические конденсаторы содержат крошечные тонкие металлические пластины, разделенные керамическим диэлектриком. Существует несколько типов диэлектрических материалов с разными свойствами. Выбор представляет собой компромисс между ценой, физическим размером конденсатора и стабильностью при изменении условий. Самые дешевые диэлектрики могут иметь высокий температурный коэффициент, а это означает, что емкость сильно меняется при изменении температуры. Для некоторых диэлектрических материалов емкость может изменяться при приложении напряжения! Когда конденсатор используется для сглаживания пульсаций источника питания, точная емкость может не иметь большого значения, если она достаточно велика. Но в радиосхемах, особенно в LC-цепях, 1 2 Для компонентов со штыревыми выводами для монтажа в отверстия (в отличие от компонентов для поверхностного монтажа) часто употребляется англоязычное обозначение TH, сокращение от «through-hole» («через отверстие»). Подходящие типы резисторов в отечественной продаже: CF-100 (С1-4, углеродистый), MF-25 (C2-23, металлопленочный). Подстроечные резисторы отличаются от обычных переменных меньшими размерами и более точным и надежным механизмом позиционирования; регулируются они, как правило, часовой отверткой; часто бывают многооборотные с червячной или шес­теренчатой передачей для более точной установки подвижного контакта. Приложение А. Характеристики компонентов 253
номиналы компонентов должны выбираться так, чтобы получить точную резонансную частоту. Например, в эксперименте 3 частота передачи задается керамическим конденсатором и катушкой, а в эксперименте 12 частота приема задается в гетеродине цепью из катушки и нескольких конденсаторов. Я считаю, что при проведении экспериментов с макетами в этой книге вы сможете заставить схемы работать даже с самыми дешевыми конденсаторами. Но если у вас есть выбор, старайтесь избегать самых нестабильных диэлектриков. Для этого вам необходимо знать некоторые коды температурной стабильности конденсаторов. Ниже приведены наиболее распространенные из них:  C0G или NP0: очень стабильный; доступен для значений примерно до 1 нФ;  X5R или X7R: умеренно стабильный; хороший выбор для емкостей выше 1 нФ;  Y5V: самый дешевый вариант и материал, обеспечивающий наименьший физический размер, но емкость сильно зависит от температуры (и иногда от приложенного напряжения). Электролитические конденсаторы Для схем в книге требуются электролитические конденсаторы трех типов. Они должны быть «для установки в отверстия» с радиальными выводами (в отличие от аксиальных, когда два вывода выходят из противоположных сторон корпуса конденсатора). Электролитические конденсаторы имеют максимально допус­ тимое номинальное напряжение: значение 16 В – достаточный максимум для всех схем в книге. Модели с более высоким напряжением подойдут, просто они обычно крупнее и дороже1. Индуктивности В списке деталей указаны индуктивности с тремя различными значениями. Рекомендуемый тип выглядит как резистор и имеет такой же цветовой код, обозначающий индуктивность в микрогенри. Например, подходят следующие индуктивности фирмы Bourns: 78F100J-RC (10 мкГн), 78F220JRC (22 мкГн), 78F102J-RC (1000 мкГн). Ферритовый стержень Ферритовый стержень, используемый в экспериментах, имеет диаметр 10 мм и длину 160 мм. Подойдут и более длинные или короткие стержни, если их длина не менее 100 мм. Имейте в виду, что феррит хрупкий, поэтому если продавец не упакует его должным образом, он может сломаться при транспортировке (и в конечном итоге вы окажетесь с вдвое большим количеством стержней, но вдвое меньшей длины, чем заказывали). Ферритовый стержень может быть 1 Автор имеет в виду самые дешевые алюминиевые электролитические конденсаторы. Более стабильны, имеют меньшие габариты и лучше работают на высоких частотах танталовые и полимерные разновидности, но они гораздо (в разы) дороже более распространенных алюминиевых. Следует учесть, что алюминиевые встречаются в обычных и уменьшенных («миниатюрных») корпусах, и первые предпочтительнее: при прочих равных характеристиках чем меньше корпус, тем выше токи утечки, что может ухудшать работу схемы. 254 Радио. Эксперименты с невидимыми волнами
нелегко найти в крупных магазинах электроники. Ищите в поиске «ферритовый стержень» или «ферритовый сердечник». Переменный конденсатор Переменный конденсатор – еще один компонент, который нелегко найти в основных магазинах электроники. Вам нужен тип 223P. Он имеет секции 60 пФ и 140 пФ в режиме максимальной емкости, что в сумме дает 200 пФ. Убедитесь, что вы не приобрели похожий по внешнему виду 223F, у которого максимальная емкость гораздо ниже. Пластиковое колесо настройки обычно продается в комплекте и очень удобно на практике. Переменные конденсаторы также часто обозначаются как подстроечные. Если компонент имеет номер детали 223P, это будет то же самое. Клеммная колодка Вам понадобится клеммная колодка европейского типа с 12 парами клемм, расположенных на расстоянии 8 мм (см. рис. 1.25). Я уточнил расстояние между клеммами, потому что блок должен соответствовать выводам переменного конденсатора. Колодка разрезается на секции с тремя, четырьмя и пятью клеммами, как показано на рис. 1.26. Полупроводники Для экспериментов, описанных в этой книге, вам понадобятся полупроводниковые компоненты трех типов.  Диод Шоттки BAT48. Не все диоды Шоттки работают одинаково хорошо, поэтому не заменяйте их другим типом1. Он доступен либо в красновато-коричневом стеклянном корпусе, как у обычных маленьких диодов, либо в синем пластиковом. Я выбрал для иллюстраций синий, чтобы легче было отличить их от обычных кремниевых диодов, но подойдет любой.  Транзистор NPN 2N3904: распространенный и дешевый транзистор общего назначения, биполярный NPN-типа. Подойдет любой производитель.  Светодиоды: вам понадобится как минимум два светодиода – один красный и один любого цвета, круглые диаметром 5 или 3 мм. Интегральные схемы Все перечисленные интегральные схемы должны быть в корпусе для монтажа «в отверстия», который может быть установлен на макетной плате, а не в варианте с планарными выводами для поверхностного монтажа. Нужный вам вариант корпуса микросхем называется DIP или PDIP. Избегайте маркировок SOIC, SSOP или TSSOP, поскольку они предназначены для поверхностного монтажа. Вам необходимы типы микросхем, перечисленные далее.  7555 или ICL555: это CMOS-версии микросхемы таймера 555.  Аудиоусилитель LM386. В эксперименте 10 лучше всего работали усилители, произведенные компанией Texas Instruments (ранее National 1 По поводу возможной замены типа BAT48 см. сноску на стр. 45, а также сноску 2 на стр. 61. Приложение А. Характеристики компонентов 255
Semiconductor). Существует три версии: LM386N-1, LM386N-3 и LM386N-4, и они работают одинаково хорошо.  Логические элементы «исключающее ИЛИ» (XOR) CD4030B или CD4070B: они имеют четыре логических элемента XOR с двумя входами каждый. CD4011B с четырьмя вентилями «И-НЕ» (NAND) также работает1. Ползунковый выключатель В наших экспериментах в качестве выключателя питания обычно используется простой ползунковый выключатель типа SPST (однополюсный, одно направление), но можно использовать и переключатель SPDT (однополюсный, два направления), задействовав у него только пару замыкающих контактов. Любой из этих типов подойдет, если расстояние между контактами составляет 2,54 мм, чтобы они соответствовали контактам макетной платы. Тактовая кнопка Вам понадобится замыкающая кнопка, также известная как тактовая. Она имеет два контакта, расположенных на расстоянии 5 мм друг от друга, чтобы они устанавливались в гнезда на макетной плате. Динамик Динамик должен иметь диаметр 5–10 см и сопротивление 8 Ом. Звук будет намного лучше, если его смонтировать в каком-нибудь корпусе (см. эксперимент 1). Макетная плата Это можно называть просто макетной платой или беспаечной макетной платой. Вам понадобится тип с 830 контактными гнездами и двумя шинами для подачи напряжений питания на каждой стороне платы2. Я рекомендую приобрести как минимум две, чтобы вы могли иметь передатчик и приемник одновременно. Для некоторых схем, например в экспериментах 7 и 9, достаточно макетной платы половинного размера (около 400 контактных гнезд). Обратите внимание, что на некоторых платах шины питания прерываются в центре платы. Это видно по тому, что красные и синие линии вдоль шин питания также имеют разрывы в этом месте. Если у вас есть одна из таких макетных плат, необходимо перекрыть разрывы в шинах питания с помощью перемычек3. Монтажный провод Для изготовления перемычек при соединении рядов макетной платы и подключения компонентов к ней вам понадобится соединительный монтажный провод. Провод должен быть одножильный4 (не многожильный) толщиной 0,6–0,7 мм 1 2 3 4 По поводу выбора микросхем с логическими элементами см. сноску на стр. 220. По поводу выбора макетной платы см. сноску 1 на стр. 27. Или объединить только синие отрицательные шины и использовать разорванные красные для разных питаний: свою для питания +9 В, свою для +5 В, свою для +3,3 В и т. д. Точнее, однопроволочный (со сплошной проводящей жилой, а не составленной из множества тонких проволок). 256 Радио. Эксперименты с невидимыми волнами
(AWG 22), чтобы хорошо подходить к макетной плате. Вам понадобятся четыре цвета: желательно красный, зеленый, желтый и синий или черный. Удобно приобретать набор из нескольких цветов в моточках или на катушках в коробке, для целей макетирования такого набора хватит надолго. Для намотки катушек и изготовления антенн понадобится значительно больше провода. Возможно, для этой цели будет проще использовать более тонкий провод, 0,4–0,5 мм (AWG 24–26); однако я обнаружил, что AWG 22 подходит лучше всего. Общая длина провода, использованного в наших экспериментах, составляет 30–32 м, но есть возможности для повторного использования, а также можно сращивать куски для катушек. Для катушек и антенн цвет провода не имеет значения. Проводные перемычки Для общего макетирования я рекомендую вам самостоятельно вырезать перемычки из монтажного провода (см. выше). Отрежьте куски нужной длины, чтобы они ровно прилегали к макетной плате, а не висели в пространстве; в противном случае очень сложно проверить, правильно ли вы подключили провод. Для конкретной задачи подключения ЖК-модуля к макетной плате я рекомендую использовать готовые перемычки. Вам потребуются четыре перемычки со штекерами на каждом конце, одинаковой длины, около 6 дюймов, и они должны быть типа «штырь-гнездо» (MF), чтобы подходить к макетной плате и выводам модуля ЖК-дисплея (см. рис. 4.3). В идеале они должны быть красного, черного, зеленого и желтого цветов. Высокоимпедансные наушники Наушники с высоким сопротивлением можно использовать в нескольких проектах, описанных в книге, и они необходимы для радио в эксперименте 1 – обычные наушники с низким сопротивлением, используемые для музыкальных плееров, здесь не подойдут. Наушники с высоким сопротивлением не очень распространены, но все еще продаются, часто для радиоприемников (см. рис. 1.34). К сожалению, качество их бывает сомнительное. (ProTechTrader.com продает версию с паяными соединениями, которая более надежна и отличается наличием черных проводов вместо обычных белых или бежевых.) Более дешевая и надежная альтернатива, которую к тому же легче приобрести, – это пассивный пьезоизлучатель. Пассивность здесь означает, что компонент не генерирует собственные звуки, а будет излучать их в соответствии с подаваемым на него электрическим сигналом, т. е. выполнять именно то, что нам нужно. Наушники с высоким сопротивлением содержат аналогичную пьезоэлектрическую мембрану; разница в том, что наушники имеют пластиковый корпус, который можно вставить в ухо. Микроконтроллер Raspberry PI Pico Микроконтроллер Raspberry Pi Pico используется в экспериментах с 4 по 9. Эксперименты проводились с применением оригинального модуля микроконтроллера Raspberry Pi Pico. Существует множество вариантов модулей с одним и тем же микроконтроллером RP2040, и нельзя гарантировать, что все они совместимы. Приложение А. Характеристики компонентов 257
У Raspberry Pi Pico H припаяны контакты разъема. Контакты разъема необходимы для подключения Pico к макетной плате, поэтому либо приобретите модель H, либо будьте готовы припаять их самостоятельно. Версию Wi-Fi (обозначается буквой W в конце названия) я не проверял. Если у вас есть два устройства Pico, вы можете использовать одно для передачи сигналов дистанционного управления, а другое – для их приема. Если у вас только один, вам нужно вместо него купить кнопку с передатчиком или пульт дистанционного управления и использовать свой Pico в качестве приемника. ЖК-дисплей ЖК-дисплеи с двумя рядами по 16 символов обозначаются как ЖК-дисплеи 1602. Что немаловажно, вам понадобится ЖК-дисплей с контроллером HD44780 (или совместимым) и с интерфейсом I2C, который дает возможность управлять дисплеем, используя всего четыре провода от Pico. Функциональность I2C обычно обеспечивается отдельной небольшой платой, установленной на задней стороне ЖК-модуля. Существуют также аналогичные ЖК-модули, которые имеют функциональность I2C без дополнительной платы, установленной сзади1. Ищите «ЖК-экран 1602 с I2C». Если у вас есть ЖК-модуль с бóльшим количеством строк или знаков, но с тем же контроллером HD44780 и интерфейсом I2C, он, вероятно, будет работать (и вы можете адаптировать скетчи в книге, чтобы использовать всю область дисплея, если хотите). Модуль FM-приемника SI4703 Используйте SparkFun WRL-12938 или его клон, применяющий чип FM-приемника Si4703 (см. эксперимент 8). Если у вас нет паяльника или вы хотите избежать пайки, приобретите модуль с уже припаянными контактными разъемами. Существует две версии этого модуля с положительным и отрицательным контактами питания в разных местах, поэтому проверьте маркировку на печатной плате на предмет правильности подключения. Модули дистанционного управления 433 МГц Я рекомендую комплект беспроводных модулей WPI469 433 МГц (состоящий из одного передатчика и одного приемника; см. рис. 9.2 и 9.3). Он продается под торговыми марками Whadda, Velleman и Pimoroni. Обратите внимание на частоту, так как есть аналогичный модуль, использующий частоту 315 МГц. Эти модули (или их клоны) уникальны тем, что имеют антенну, удобно интегрированную в виде дорожки на печатной плате. Если у вас есть другие модули дистанционного управления, они, скорее всего, будут работать в эксперименте, но вам придется припаять антенну нужной длины (подробности см. в эксперименте 9). Однако есть один тип приемника дистанционного управления, который я не рекомендую: самый дешевый вариант, часто называемый суперрегенеративным приемником. Если они продаются парой, передатчик в паре имеет марки1 О выборе ЖК-дисплея см. сноску 2 на стр. 98. 258 Радио. Эксперименты с невидимыми волнами
ровку FS1000A, а печатные платы обычно имеют зеленый цвет. Этот приемник значительно менее чувствителен, чем все остальные варианты1. Если у вас только одна плата Pico, для эксперимента 9 вам потребуется одно из следующих устройств:  пульт дистанционного управления, работающий на частоте 433 МГц, с одной или несколькими кнопками (см. рис. 9.1). Убедитесь, что он поддерживает протокол EV1527 или PT2262. Ищите в поиске «433 МГц EV1527»;  кнопка дверного звонка с частотой 433 МГц, поддерживающая протокол EV1527 или PT2662 (пример – самое левое устройство на рис. 9.1). Список радиокомпонентов Эксперимент 1 2 3 4 5 6 7 8 9 10 11 12 Мин. Всего Резисторы 22 Ом 1 100 Ом 1 2 330 Ом 1 1 1 кОм 2,2 кОм 1 3 2 1 3 4 4,7 кОм 1 1 1 2 2 3 1 1 1 1 1 1 3 4 1 4 4 1 1 1 2 2 2 6,8 кОм 10 кОм 1 1 2 2 47 кОм 4 1 2 1 5 3 2 2 2 2 4 4 5 5 Совместимость с макетной платой Подстроечные резисторы 10 кОм 500 кОм 1 1 1 1 1 1 Избегать типа Y5V (см. прилож. А), разборчивая маркировка Керамические конденсаторы 1 Примечание Допуск 5 % 33 пФ 3 3 3 68 пФ 1 1 1 Указанная пара простейших передатчиков (FS1000A) и приемников (может носить название вроде MX-RM-5V или XD-RF-5V) имеет привлекательную цену и вполне надежно работает с припаянными антеннами по 17 см и библиотекой Arduino VirtualWire. Но она обладает недостатком, выражающимся в неточной подстройке приемника под передатчик: произвольно взятая пара вполне может не «видеть» друг друга или работать всего на пару метров даже с установленными антеннами. Для преодоления этого недостатка стоит закупить некоторое избыточное количество приемников и вручную подстроить их под конкретные передатчики: регулировка осуществляется перемещением сердечника индуктивности с помощью пластиковой (!) отвертки. Такое решение все равно окажется дешевле «фирменных» модулей вроде указанных автором WPI469, LoRa или, например, модулей HC-12 (c UART-интерфейсом) и достаточно надежно работает на небольших расстояниях (до нескольких десятков метров), причем при проникновении через стенки и перегородки легко обходит Wi-Fi. Приложение А. Характеристики компонентов 259
Окончание табл. Эксперимент 100 пФ 1 2 1 1 3 4 5 6 7 8 9 10 11 12 1 1 1 4 1 1 470 пФ 1 нФ 1 1 2 3 Примечание 3 2,2 нФ 1 4,7 нФ 1 3 47 нФ 0,1 мкФ Всего 1 220 пФ 10 нФ Мин. 5 1 1 4 1 мкФ 1 1 1 1 1 2 1 1 1 1 1 2 1 Электролитические конденсаторы 10 мкФ 100 мкФ 2 1 470 мкФ 1 1 2 1 2 2 2 2 1 1 2 2 2 2 2 2 2 2 1 1 1 1 Индуктивности 10 мкГн 100 мкГн 1 1 1000 мкГн 1 Список радиокомпонентов (продолжение) Эксперимент 1 2 2 2 3 4 5 6 7 8 9 10 11 12 Мин. Всего Примечание Микросхемы 7555 LM386 1 2 CMOS-типа; TTL не годится 1 1 National Semiconductor или Texas Instruments 1 1 См. сноску на стр. 220 2 1 1 CD4030B/4070B/4011B 1 1 Модули Raspberry Pi Pico H 1 1 1 1 1 1 2 ЖК-дисплей 1 1 1 1 1 1 1 1 1 1 FM-модуль WRL-12938 Si4703 1(2) Комплект радиомодулей WPi469, 433 МГц 1 1 1 WPi469 или совместимый клон Пульт дистанционного управления 433 МГц 1 1 1 Протокол EV1527 или PT2262 260 Радио. Эксперименты с невидимыми волнами
Окончание табл. Эксперимент 1 2 3 4 5 6 7 8 2 2 2 4 2 9 10 11 12 Мин. Всего Примечание Полупроводники Диод Шоттки BAT48 1 Светодиод круглый 1 Транзистор 2N3904 2 3 1 Разное 1 2 3 Ползунковый выключатель 1 1 Тактовая кнопка 1 4 1 Батарейка 9 В 1 1 Ферритов. стержень 1 1 Переменный конденсатор 1 1 Динамик 1 1 5 1 6 1 1 7 1 8 3 1 1 Аудиогнездо 3,5 мм 1 1 1 1 11 12 1 1 1 1 1 1 (1) 1 1 1 1 10 6 1 1 1 9 1 Аудиокабель Макетная плата 1 2 1 1 1 1 1 1 1(2) Кабель микро-USB 1 1 1 1 1 1(2) Провод-перемычка 4 4 4 4 4 1 1 4 4 Не путать с похожим 1N4148 2 2 Красный и любого цвета 3 4 1 1 Выводы 2,5 мм 6 6 Выводы 5 мм 1 2 1 1 10 мм × 160 мм 2 2 Тип 223P 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 4 4 1 1 1 1 1 1 1 2 Наушники с высоким сопротивлением 1 Клеммная колодка 1 1 1 1 Разъем для батарейки 9В 1 1 1 1 1 Провод 0,6 мм (AWG22) 1м 1м Красный, черный, желтый, зеленый; однопроволочный Провод 0,6 мм (AWG22) 12 м 12 м Любого цвета; однопроволочный Провод 0,4–0,6 мм (AWG22–26) 10 м 10 м Любого цвета; однопроволочный
Приложение Б. Источники компонентов, оборудования и инструментов В таблице ниже приведено несколько популярных российских интернет-магазинов, специализирующихся на торговле электронными компонентами, лабораторным оборудованием, инструментами и сопутствующими товарами. При отборе из многочисленных вариантов обращалось внимание на доступность и ориентированность на непрофессионалов. Интернет-магазин Комментарий «ЧИП и ДИП» Дороговато, но «все есть», плюс масса удобных вариантов оплаты/вывоза/доставки. Обширный перечень сопутствующих товаров, инструментов и оборудования. Офлайновые магазины по всей стране. Удобный каталог с обильно представленной документацией, может служить справочником по компонентам. Имеется информация о наличии и сроках поставки, возможность выбора из нескольких вариантов производителя и цены https://www.chipdip.ru iArduino https://iarduino.ru Амперка Масса всего для любительской электроники и недорого. Информативные описания компонентов с примерами применения и исчерпывающей документацией. Быстрая и отлаженная доставка, но нередко вас ждет безапелляционное «нет на складе» https://amperka.ru Много уникальных позиций, в т. ч. производства самой «Амперки». Обширная вики-энциклопедия по применению компонентов и модулей ДКО «Электронщик» https://www.electronshik.ru Разнообразный каталог (1,7 млн наименований!), но неудобные и малочисленные варианты доставки «Кварц» Старейший отечественный магазин электронных компонентов. Обширный ассортимент с исчерпывающей документацией по каждому пункту, но неудобный каталог с ограниченными возможностями поиска www.quartz1.com Tixer.ru https://tixer.ru Пример небольшого магазина. Довольно представительный ассортимент, включает экзотические позиции, которые трудно найти в других местах. Цены ниже «чип-диповских». Удобные варианты доставки, но формирование заказа может затягиваться по срокам 262 Радио. Эксперименты с невидимыми волнами
Следует предостеречь начинающих любителей от увлечения покупками на AliExpress – при удаче это может значительно снизить стоимость, но с такой же вероятностью можно нарваться на откровенную халтуру, подмену или брак. Распространенный прием снижения стоимости у мелких поставщиков из Китая – продажа компонентов, отбракованных производителем в процессе тестирования, среди которых могут попадаться как вполне годные, так и совершенно нерабочие экземпляры. Поэтому лучше полагаться на отечественные источники: пусть даже они просто перепродают товары, приобретенные оптом на том же Ali, но все-таки есть кому в случае чего предъявить претензии, не втягиваясь в многомесячную переписку.
Приложение В. Маркировка резисторов и конденсаторов В этом приложении объясняется, как читать маркировку на резисторах и конденсаторах. Резисторы Резисторы с гибкими выводами, используемые в этой книге, помечаются цветными полосами. Цвета представляют собой код для описания номинала резистора в омах и допуска для значения сопротивления. Использование цветных полос для отображения значения позволяет считывать значение под любым углом, даже если резистор припаян к печатной плате. Чтобы построить схему, вам нужно уметь различать резисторы. На макетах в этой книге резисторы показаны цветными полосками, что поможет вам найти правильный компонент. Также стоит научиться расшифровывать цветные полосы самостоятельно. Резисторы обычно маркируются четырьмя или пятью цветными полосами. Четырехполосную версию легче читать. Каждая полоса обозначает цифру, как показано на рис. ПВ.1. Чтобы вам было проще запомнить значения, обратите внимание, что цвета от красного (2) до фиолетового (7) расположены так же, как в радуге. Процедура расшифровки кода следующая. Современные четырехполосные резисторы почти всегда имеют золотую полосу, обозначающую допуск 5 %. Поверните резистор так, чтобы золотая полоса была справа. Начните читать значения полос слева направо. Чтобы перевести цифры в значение сопротивления, возьмите первые две цифры, а затем количество нулей, заданное третьей цифрой. Потренируйтесь на резисторах, показанных на рис. ПВ.2. Пятиполосные резисторы используют ту же систему, за исключением того, что значение дают первые три полосы, а количество нулей дает четвертая. Пятая полоса указывает на допуск и обычно имеет коричневый цвет (что означает 1 %). Из-за этого становится сложнее понять, с какой стороны начинать чтение кода, хотя, как правило, между диапазоном допуска и остальными существует увеличенный промежуток. Я настоятельно рекомендую приобретать четырехполосные резисторы, чтобы вы могли попрактиковаться в быстром чтении. 264 Радио. Эксперименты с невидимыми волнами
Значение цвета 0 Первая цифра 1 2 Вторая цифра 3 4 5 6 7 8 9 Количество Промежу- Допуск: нулей ток серебро 10 % золото 5 % Код 2 цифры Первая цифра Вторая цифра Третья Количество Промежу- Допуск цифра нулей ток (различные цвета) Код 3 цифры Рис. ПВ1. Цветовой код резисторов 15 Ом 150 Ом 470 Омs 1,5 кОм Рис. ПВ2. Примеры цветовой маркировки резисторов В этой книге используются следующие резисторы: Приложение В. Маркировка резисторов и конденсаторов 265
Последовательность цветов Нумерация Сопротивление красный красный черный золотой 2-2-0-5 % 22 Ом коричневый черный коричневый золотой 1-0-1-5 % 100 Ом 330 Ом оранжевый оранжевый коричневый золотой 3-3-1-5 % коричневый черный красный золотой 1-0-2-5 % 1 кОм красный красный красный золотой желтый фиолетовый красный золотой 2-2-2-5 % 4-7-2-5 % 2,2 кОм 4,7 кОм синий серый красный золотой 6-8-2-5 % 6,8 кОм коричневый черный оранжевый золотой 1-0-3-5 % 10 кОм желтый фиолетовый оранжевый золотой 4-7-3-5 % 47 кОм Сопротивление измеряется в омах. В некоторых книгах для обозначения этой единицы используется греческая буква Ω, но во многих схемах этот символ отсутствует, и в данной книге я следую этому соглашению1. Для резисторов большего размера используются единицы килоом (1000 Ом) и мегаом (1 000 000 Ом). На схемах единицы ом могут опускаться (как в этой книге), а килоомы и мегаомы записываться как просто «к» и «М». В некоторых случаях (но не в этой книге) вы можете увидеть запись 3K3 вместо 3,3 кОм. Это экономит один символ и позволяет избежать использования десятичной точки, которую может быть трудно увидеть, если текст маленький2. Резисторы производятся стандартных номиналов, установленных в E-рядах. В этой книге я выбрал резисторы из ряда под названием E63, в котором первые две цифры значения сопротивления могут быть 10, 15, 22, 33, 47 или 68. Использование серий означает, что существует ограниченное количество значений номиналов. Через некоторое время вы научитесь быстро распознавать цветовые коды, не обращаясь к таблице для каждой отдельной цветовой полосы4. В любом случае, на всякий случай рекомендуется проверять номиналы резисторов мультиметром. 1 2 3 4 Ω – международное обозначение; Ом – русскоязычное стандартизированное; в англоязычных текстах принято обозначать как Ohm. Заметим, что в соответствии с общим правилом написания единиц физических величин обозначение «Ом» во всех языках начинается с прописной буквы (так как происходит от фамилии ученого), в отличие от названия единицы «ом», которое пишется обычным способом и склоняется. Подобное написание характерно для советских резисторов МЛТ, на которых номинал указывался непосредственно, без какого-то кодирования. Отметим, что резисторы ряда E6 имеют допуск 20 %. Автор выбрал номиналы, соответствующие ряду E6, из 5%-ного ряда E24. Проблема с уверенным чтением цветового кода в том, что разные производители очень по-разному понимают, например, коричневый или красный цвет. В цветах полос легко запутаться, особенно в сочетании с различными цветами окраски корпуса: так, коричневый, красный и оранжевый на голубом (почему-то очень распространенном) фоне корпуса, если их не класть рядом, мало отличаются друг от друга, а синий в этом случае становится неотличимым от серого или черного. Более-менее уверенным можно быть только при сравнении с известными номиналами. Вся эта картина усугубляется фактом, что 8 % мужчин и 0,5 % женщин европейской расы страдают дальтонизмом. По этой причине цветовой код годится только для отбора одинаковых номиналов: при первоначальном определении новичку обязательно необходимо проверять значение сопротивления мультиметром, иначе легко допустить ошибку на порядки. 266 Радио. Эксперименты с невидимыми волнами
Конденсаторы Емкость измеряется в фарадах, международное сокращенное обозначение – буква «F» (русскоязычное – «Ф»). Поскольку 1 фарад – это очень большая единица, на практике конденсаторы измеряются в пикофарадах (пФ), нанофарадах (нФ), микрофарадах (мкФ) или миллифарадах (мФ):  1000 пФ = 1 нФ;  1000 нФ = 1 мкФ;  1000 мкФ = 1 мФ;  1000 мФ = 1 Ф. (Миллифарады используются очень редко.) В этой книге используются два типа конденсаторов: электролитические конденсаторы емкостью выше 1 мкФ и керамические конденсаторы емкостью 1 мкФ и ниже. На электролитических конденсаторах непосредственно указаны емкость в мкФ и максимальное напряжение. Электролитические конденсаторы полярные: они имеют положительный и отрицательный выводы и должны быть подключены в правильном направлении. Минусовый вывод короче и обозначен полосой на корпусе конденсатора, иногда еще и знаком минус. На схемах электролитические конденсаторы имеют знак плюс, обозначающий положительную пластину (чтобы напомнить вам, что компонент чувствителен к полярности), а отрицательную пластину часто изображают изогнутой. Керамические конденсаторы гораздо меньше по физическим размерам, поэтому место для маркировки ограничено. Они обычно обозначаются компактным кодом, состоящим чаще всего из трех цифр. Эти цифры обозначают емкость в пикофарадах. Как и в цветовом коде резисторов, две первые цифры обозначают значащие цифры величины емкости. Третья цифра обозначает количество нулей. В этой книге используются следующие значения керамических конденсаторов: Код емкости Значение емкости 330 33 пФ 680 68 пФ 101 100 пФ 221 220 пФ 471 470 пФ 102 1000 пФ = 1 нФ 222 2200 пФ = 2,2 нФ 472 4700 пФ = 4,7 нФ 103 473 10 000 пФ = 10 нФ 47 000 пФ = 47 нФ 104 100 000 пФ = 0,1 мкФ 105 1 000 000 пФ = 1 мкФ Особенно обратите внимание на первые две строки, где последний нуль может сбить с толку: 330 означает 33 пФ (то есть отсутствие нулей), а не 330 пФ. Приложение В. Маркировка резисторов и конденсаторов 267
Индуктивности В некоторых экспериментах индуктивности изготавливаются самостоятельно, намоткой провода на ферритовый стержень или на немагнитный предмет для поддержки. Вы также можете купить готовые индуктивности в качестве компонентов, например для экспериментов 3, 10, 11 и 12. Индуктивность измеряется в генри, сокращенно «Гн» (международное «H»). Как и фарад, генри представляет собой большую величину индуктивности, поэтому практические индукторы имеют значения в микрогенри (мкГн) или миллигенри (мГн). Типы, которые я имею в виду, выглядят как резисторы и используют такой же четырехполосный цветовой код для обозначения индуктивности в мкГн. В данной книге использованы следующие готовые индуктивности: Нумерация Индуктивность коричневый черный черный золотой Последовательность цветов 1-0-0-5 % 10 мкГн красный красный черный золотой 2-2-0-5 % 22 мкГн коричневый черный красный золотой 1-0-2-5 % 1000 мкГн = 1 мГн
Приложение Г. Знакомство с осциллографами В этом последнем приложении рассказывается об основных функциях осциллографа. Осциллограф может стать очень ценным инструментом для всех, кто активно интересуется электроникой. Этот прибор чаще всего используется для графического изображения переменного напряжения. Мультиметр не может отображать быстрые изменения, поскольку ему требуется некоторое время при измерении, и он годится для постоянного тока. При измерении переменного тока он сообщает значение переменного напряжения, но только действующее значение, имеющее смысл в случае, если напряжение испытывает однообразные колебания в ограниченном диапазоне частот. Даже мультиметры высокого класса не могут измерять частоты выше 10–20 кГц. Осциллограф таких ограничений не имеет. В каких конкретных ситуациях вы могли бы использовать осциллограф? Вот несколько примеров:  чтобы увидеть форму переменного сигнала. Осциллограф покажет, является ли это прямоугольной, треугольной или синусоидальной волной, постепенно затухающими колебаниями или чем-то еще;  чтобы убедиться, что источник питания постоянного тока обеспечивает стабильное напряжение, не подвержен колебаниям и сохраняет точность при различных нагрузках;  чтобы проверить, содержит ли выходной сигнал компонента переходный скачок напряжения;  чтобы увидеть быстро меняющиеся явления, такие как ток смещения через конденсатор, когда напряжение внезапно возрастает или падает. Экран осциллографа подобен изображению МРТ, которое показывает внут­ реннее строение человеческого тела – точно так же экран осциллографа показывает внутреннюю работу схемы. Однако есть некоторые вещи, которые осциллограф не может сделать. В частности, он покажет значение напряжения, но не сможет непосредственно измерить ток, сопротивление или емкость. Разновидности осциллографов Десятилетия назад все осциллографы были очень дорогими и тяжелыми аналоговыми устройствами, в которых для отображения использовались монохромные электронно-лучевые трубки. Вы можете думать, что сэкономите немного денег, купив подержанный экземпляр одного из подобных старых монстров, но его характеристики сильно будут уступать современному оборудованию, которое стоит довольно скромно. Цифровой осциллограф преобразует переменное входное напряжение в цифровые отсчеты и отображает их в виде набора пикселей на экране. ОсПриложение Г. Знакомство с осциллографами 269
циллографы могут представлять собой настольные или портативные устройства. На рис. ПГ.1 представлен очень недорогой портативный продукт, на рис. ПГ.2 показана настольная модель, а на рис. ПГ.3 изображена версия планшета с сенсорным экраном. Вы также можете купить мультиметр с ограниченным набором функций осциллографа, как, например, на рис. ПГ.4. Во всех этих примерах экран имеет ограниченное разрешение. Большинство из них позволят вам подРис. ПГ.1. FNIRSI DSO-TC3 – недорогой осциллограф размером с ладонь с ограниченключить выход к компьютеру через ными возможностями USB-кабель для отображения более детального изображения, но если вы хотите именно этого, вероятно, сможете сэкономить деньги, выбрав USB-осциллограф (также иногда называемый PC-осциллографом). У него нет своего экрана: USBосциллограф состоит из небольшой пластиковой коробки, подобной показанной на рис. ПГ.5, с портами для Рис. ПГ.2. Hantek DSO2C10 – популярный входных проводов и выходом USB. настольный осциллограф Программное обеспечение, предоставленное производителем осциллографа, запускается на вашем компьютере, интерпретирует сигнал и отображает его на экране компьютера. Таким образом, осциллограф освобождается от работы по обслуживанию дисплея, что снижает его стоимость и одновременно обеспечивает изображение с относительно высоким разрешением. Рис. ПГ.3. FNIRSI 1013D Plus – недорогой USB-осциллограф хорошо подцифровой осциллограф в формате планшета ходит для изучающих электронику, с сенсорным экраном поэтому я настоятельно рекомендую вам рассмотреть этот тип. PicoScope 2204A в настоящее время доступен в США по цене менее 200 долларов1. Я использовал его для получения всех осциллографических измерений, показанных в этой книге. Другие USBосциллографы от таких производителей, как Hantek, работают примерно так 1 PicoScope 2204A доступен в отечественных интернет-магазинах, например в «ЧИП и ДИП». 270 Радио. Эксперименты с невидимыми волнами
же и могут стоить немного дешевле, но в них отсутствуют некоторые функции1. Поскольку USB-осциллограф должен работать с компьютером, вам может быть интересно, какие требования к нему предъявляются. Насколько мощным должен быть компьютер? Что, если ваш компьютер не находится рядом со стендом с электроникой? Один из вариантов – купить самый дешевый подержанный ноутбук, который вы сможете постоянно держать на своем рабочем столе Рис. ПГ.4. Liumy LM2020 – мультиметр, и использовать также для создания в который встроены некоторые ограниченные скетчей для микроконтроллера Pico. возможности осциллографа (Обратите внимание, что PicoScope не производится той же компанией, что и микроконтроллер Pico. В обоих случаях термин pico основан на испанском слове, означающем «маленький».) Подойдет практически любой ноутбук, работающий под управлением Windows 10. Если вы предпочитаете Mac, убедитесь, что используемая вами версия macOS поддерживает программное обес­ печение осциллографа. Рис. ПГ5. PicoScope 2204A имеет очень Если вы бережливы и ходите по скромную цену, но обеспечивает полный набор функций программного обеспечения. Два магазинам, возможно, вам удастся щупа подключаются к коаксиальным разънайти подержанный ноутбук и исемам «A» и «B» на одной стороне корпуса, пользованный USB-осциллограф на противоположной имеется порт USB дешевле, чем стоимость нового настольного осциллографа, и дисплей будет с более высоким разрешением. Настройка Вам необходимо четко различать аппаратное обеспечение USB-осциллографа и программное обеспечение, которое работает на вашем компьютере для визуализации изображения. Инструкции по аппаратному обеспечению будут очень краткими, поскольку вы просто подключаете измерительные щупы (обычно два таких, например как тот, что показан на рис. ПГ.6) и USB-кабель 1 Осциллографы-ручки, в том числе упоминаемой автором фирмы Hantek (пример см. https://supereyes.ru/catalog/Oscilloscopes_usb/hantek_pso2020), представляют самый дешевый вариант, но сильно ограничены по возможностям (например, они принципиально одноканальные). Приложение Г. Знакомство с осциллографами 271
Рис. ПГ.6. Щуп осциллографа. Зажим «крокодил» прикрепляется к любому выводу общего провода в схеме Основные понятия к компьютеру. Осциллограф час­ то получает питание через USBсоединение, поэтому отдельного источника питания может не быть. Возможно, вам придется использовать собственный USB-кабель для подключения к компьютеру (типа AB, такой же, как для подключения принтера). Программное обеспечение может иметь отдельное руководство, доступное для загрузки. Обратите внимание, что производитель может использовать одно и то же программное обеспечение для нескольких разных версий оборудования. Например, версия 6 программного обеспечения PicoScope будет работать практически со всеми моделями PicoScope, включая серии 2000, 3000, 4000, 5000 и 6000. После запуска программного обеспечения можно использовать любой из пробников для измерения напряжения в любой точке цепи. К каждому щупу прикреплен заземляющий провод, который вам следует соединить с отрицательным общим проводом схемы (хотя если вы этого не сделаете, осциллограф все равно будет показывать сигнал). Максимальное напряжение, которое может измерить недорогой USBосциллограф, обычно составляет ±20 В. Щупы имеют высокое сопротивление и защитят осциллограф от напряжений, выходящих за пределы этого диапазона. Высокое сопротивление также означает, что щупы будут как можно меньше мешать работе вашей цепи. На рис. ПГ.7 показан прямоугольный сигнал, генерируемый на выходе мик­ росхемы таймера 555 (не 7555; в данном случае это старая, оригинальная TTLверсия микросхемы). На горизонтальной оси внизу изображения размечена шкала времени в миллисекундах, а вертикальная ось в левой части изображения показывает значения напряжения в вольтах. График читается слева направо по времени. Вы можете менять масштаб шкал в соответствии с диапазоном напряжения и частотой сигнала или запустить осциллограф в автоматическом режиме, чтобы он сам выбирал пределы. Поскольку 555 создает регулярно повторяющийся сигнал, вы можете указать осциллографу автоматически обновлять его через определенные промежутки времени, чтобы выявить любые неожиданные изменения. Вы также можете указать осциллографу сделать снимок текущего состояния и сохранить его. Другой вариант – установить точку запуска, чтобы при повышении или падении напряжения относительно этой точки моментальный снимок запускался автоматически. 272 Радио. Эксперименты с невидимыми волнами
10 8 6 4 volts 2 0 −2 −4 −6 −8 −10 0.0 1.0 2.0 3.0 4.0 5.0 milliseconds 6.0 7.0 8.0 9.0 10.0 Рис. ПГ.7. Отображение выходного сигнала таймера 555, работающего в автоколебательном режиме На рис. ПГ.8 второй щуп осциллографа подключен к выводу 6 таймера 555, который соединен с времязадающим конденсатором. Теперь вы можете увидеть, как меняется напряжение на конденсаторе при включении и выключении выходного сигнала прямоугольной формы. 10 8 6 4 volts 2 0 −2 −4 −6 −8 −10 0.0 1.0 2.0 3.0 4.0 5.0 milliseconds 6.0 7.0 8.0 9.0 10.0 Рис. ПГ.8. Процессы заряда и разряда синхронизирующего конденсатора, управляющего таймером 555, выделены красным цветом Приложение Г. Знакомство с осциллографами 273
Каждый из щупов генерирует на экране линию своего цвета, а параметры настройки программного обеспечения позволят вам при желании изменить эти цвета. Вы также можете изменить внешний вид экрана – цвет фона, линии сетки и другие элементы. Теперь предположим, что вы изменили масштаб, чтобы рассмотреть сигнал подробнее, как показано на рис. ПГ.9. Масштаб напряжения, представленный на вертикальной оси, удвоился, а промежуток времени, представленный каждым интервалом на горизонтальной оси, уменьшился в 5000 раз. 20 16 12 8 volts 4 0 −4 −8 −12 −16 −20 0.0 0.2 0.4 0.6 0.8 1.0 1.2 microseconds 1.4 1.6 1.8 2.0 Рис. ПГ.9. Если рассмотреть выход таймера в масштабе микросекунд, выявляются его недостатки Возможно, вы уже слышали, что таймер 555 генерирует всплеск напряжения; теперь вы можете увидеть это сами наглядно. Скачок на выходе 555, который выглядел как идеальный прямоугольник на уровне 8 В, на самом деле достигает почти 15 В, а затем постепенно выравнивается. Хотя эти всплески кратковременны, они могут сбить с толку другие компоненты цепи. (Вот почему в этой книге мы использовали таймеры 7555. Они имеют гораздо более стабильный выходной сигнал.) Терминология Процесс построения линии на экране, представляющей форму колебания, часто называют трассировкой. Горизонтальная шкала, как и в обычной математике, называется осью X, а вертикальная – осью Y. По оси X обычно отображается время, а по оси Y показана величина входного сигнала в вольтах или долях вольта. Программное обеспечение идентифицирует два щупа как канал A и канал B. Где-то на экране вы можете увидеть отображение частоты сигнала, если колебания происходят через равные промежутки времени. Какую частоту можно измерить осциллографом? Обычно как минимум 10 МГц. Чтобы убедиться в этом, 274 Радио. Эксперименты с невидимыми волнами
вы можете установить частоту дискретизации сигнала, которая обычно должна быть как минимум в пять раз выше частоты самого сигнала. Вы сможете сохранить несколько снимков текущего состояния в графическом формате, например JPEG, PNG или BMP. Наиболее желательным вариантом, вероятно, является PNG, так как он создает файл небольшого размера, но без потерь, поэтому искажающих артефактов изображения не будет. Вы также можете сохранить значения величин, характеризующих сигнал, чтобы позже загрузить их в программное обеспечение для анализа. Вам должен быть предложен вариант формата .csv, позволяющий сохранять данные в формате, который может открыть программа работы с электронными таблицами. Вы уже можете видеть, насколько мощным и универсальным инструментом является осциллограф по сравнению со скромным мультиметром. Здесь я суммировал только некоторые основные функции. В руководстве по программному обеспечению для любого приобретенного вами USB-прибора должно быть описано множество возможностей, которые помогут вам собирать и анализировать данные. Радио состоит из сигналов, которые обычно быстро меняются. Вы получите гораздо более четкое представление о том, что происходит на самом деле, если посмотрите на них с помощью осциллографа.
Предметный указатель А Амплитудная модуляция 41 Анализатор спектра 245 Анализ Фурье 247 Антенна 227, 244 четвертьволновая 201, 227 Аттенюатор 245 Б Библиотека 103 Биполярный транзистор 255 Блокирующая функция 199 Буфер 198 В Выпрямление 50 Г Гармоники 92 Гармонический осциллятор 247 Генератор 248 Колпитца 93 Генри 83 Д Детектор 41, 50 Децибел 246 Диапазоны частот 242 Динамик 256 Диод 45 германиевый 45 Шоттки 45 Дистанционное управление 178 Дистанционный пульт 178 Диэлектрик 253 Интерфейс HD44780 120, 258 I2C 119 К Каналы 242 Квадратурный детектор 249 Керамический резонатор 248 Клеммная колодка 46 Кнопка тактовая 256 Код Морзе 211, 229 Конденсатор керамический 253 маркировка 267 переменный 43, 47, 255 электролитический 254 Коэффициент заполнения 154 Л Любительское радио 239 М Макетная плата 27, 256 Маркони 18, 59 Микрогенри 83 Микроконтроллер 98 Монтажный провод 256 Н Напряжение питания 174 Наушники 45, 257 Несущая 83 О Заземление 26 Обмотка вторичная 69 первичная 69 Обмоточный провод 42 Огибающая 198 Октава 200 Осциллограф 269 И П Ж ЖК-дисплей 258 З Индуктивность 83, 254 Перемодуляция 94 276 Радио. Эксперименты с невидимыми волнами
Перемычки 99, 257 Прерывания 156 Приемник детекторный 41 прямого усиления 65 Программно-определяемая радиостанция (SDR) 243 Пьезоизлучатель 45 Р Радиомодуль 247 Регуляция радиоспектра 84 Резистор 252 подстроечный 253 подтягивающий 117 цветовой код 264 Резонанс 51 Резонансный контур 52 Релейное управление 186 Ретранслятор 242 С Синусоида 83 Сканер (радио) 243 Скетч 99, 103 Слой Хевисайда 19 Т Фильтр 248 Фильтр ПАВ 248 Функция loop 128 setup 128 Ц Цифровая обработка сигналов (DSP) 247 Ч Частота дискретизации 94, 198, 275 Частотная модуляция 41 Э Энкодер 249 Эфир 59 Я Язык C 102 Язык программирования 102 A Arduino IDE 101, 103 C CW-модуляция 211 L Тесла, Никола 59 Транзистор 255 Трансивер 243 Трансформатор 69 LoRa 248 У Усилитель 248 аудио 255 с общей базой 93 Raspberry Pi Pico 98, 257 Rc-switch (библиотека) 184 RP2040 101 RSSI 174 Ф S Фазовая автоподстройка 248 Ферритовый сердечник 42, 254 Q QSL-карточка 241 R SMA (разъем) 246
Фредрик Янссон Радио. Эксперименты с невидимыми волнами Главный редактор Мовчан Д. А. Зам. главного редактора Яценков В. С. editor@dmkpress.com Перевод Корректор Верстка Дизайн обложки Ревич Ю. В. Синяева Г. И. Луценко С. В. Мовчан А. Г. Формат 70×100 1/16. Гарнитура «PT Serif». Печать цифровая. Усл. печ. л. 22,59. Тираж 100 экз.