Антенна электромагнитных волн через микроконтроллеры (приемопередатчик и приемник)

У меня есть два Ардуино: Мега и Нано, и 2 куска стальной проволоки в качестве антенн, которые я воткнул прямо в пазы для контактов.

Я настроил свой Mega2560 для генерации переменного тока на одном из его контактов (цифровой ШИМ-контакт 8), поэтому теперь у меня есть синусоидальный сигнал (0-5 В, 40 мА), как вы можете видеть на этом рисунке:

введите описание изображения здесь

Второй Arduino (Nano), который я настроил в качестве приемника. Я воткнул провод в качестве антенны в Analog Pin 1, и соединил его с подтягивающим резистором 1k, чтобы не было шума. На картинке ниже вы можете увидеть функцию AnalogRead этого вывода (пару раз касался антенны :)

введите описание изображения здесь

Как мне получить этот синусоидальный сигнал на моем Arduino Nano (контакт A1 приемника) через мою антенну и электромагнитные волны самым простым способом?

Должен ли я использовать этот дипольный тип антенны вместо просто провода:

введите описание изображения здесь введите описание изображения здесь

Или эта антенна типа катушки? Я запутался и не могу найти примеры основ ЭМ-волн, работающих с Arduino, только готовые радиочастотные модули.

ps: Вот интересный учебник, который я недавно нашел, но он реализует только часть моего вопроса «трансивер с проводом в качестве антенны».

Ну, это не сработает. Тем не менее, вы поняли, почему во всех найденных вами примерах используются внешние радиомодули. Для объяснения, почему это не сработает, не могли бы вы сообщить нам, какую частоту генерирует ваша программа?
Предполагая, что «freq = 100» означает 100 Гц... вот пример антенны на 24000 Гц с длиной волны в 240 раз меньше вашей. Это более мили в поперечнике; вам может понадобиться что-то немного больше. en.wikipedia.org/wiki/VLF_Transmitter_Cutler
Обратите внимание, что сигнал, который вы пытаетесь получить, обычно считается шумом! Если вы делаете что-то, «чтобы убедиться, что не будет шума», то это также вредит вашему сигналу.
@graham-nye Поскольку мой код генерирует 99 выборок за одну секунду плюс задержка в 10 миллисекунд, а амплитуда синусоидальной волны составляет около 255 выборок, для получения одного полного колебания потребовалось около 4 секунд, поэтому реальная частота, вероятно, равна 0,25 Гц
Дипольная антенна была бы намного эффективнее. К сожалению, для частоты 0,25 Гц потребуется около 600 000 км. Вам понадобится второй для вашего приемника. Для всего остального я отсылаю вас к ответу @dex.

Ответы (1)

Короткий ответ таков: вам понадобится хотя бы немного больше схем, чтобы все заработало. В зависимости от конечной цели: купить комплект отправитель + получатель или вернуться к аналоговым электронным схемам.

Длинный ответ:

Перво-наперво, поскольку вы используете ванильный (имеется в виду: использующий среду arduino) arduino mega, частота дискретизации ШИМ установлена ​​​​на 490 Гц ( частоты ШИМ arduino ), это может максимально привести к сигналу 245 Гц (частота Найквиста). Что правильно в частотах ELF .

Эти 245 Гц соответствуют длине волны около 1200 км. Это означает, что полуволновой диполь должен охватывать около 600 км ... Я сомневаюсь, что он поместится на этой макетной плате. Конечно, ничто не мешает вам использовать антенны меньшего размера, которые составляют лишь доли длины волны. Но вы также уменьшите принимаемую антенной энергию, поскольку сделаете ее меньше. (ELF использовался и до сих пор используется в подводной связи, их решение энергетической проблемы заключается в использовании очень длинных антенн с тянущимся проводом. Это даже не касается того факта, что при частоте дискретизации 490 Гц вы будете создавать прямоугольную волну с частотой 245 Гц, а не синус, но тогда с выбранными 100 Гц у вас будет еще более низкая частота!

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

И вообще говоря, сигналы, поступающие от антенны, в лучшем случае очень слабые, возможно, в диапазоне микровольт. АЦП ардуино измеряет в диапазоне милливольт. Фактор в 1000 раз больше. Это объясняет, почему вы не увидите полученного синуса. Чтобы иметь что-то полезное, вам нужно построить очень чувствительный усилительный каскад, который отфильтровывает все частоты, кроме вашего сигнала. То, что вы видите реакцию на выходе при прикосновении к антенне, связано с тем, что человеческое тело является неплохим приемником сигнала, пусть и не очень высокоэффективной антенной. (С точки зрения направленности или избирательности сигнала. Я улавливаю практически все.)

Также знайте, что проектирование антенн и их свойств — это почти столько же искусство, сколько и наука! Ничего плохого.

Просто как примечание: я проводил подобные эксперименты много лет назад. В качестве демонстрации вы можете послать сигнал ШИМ на штырь с длинным проводом в качестве антенны. Затем вы можете использовать простое старое аналоговое радио для приема сигнала. Если вы потратите немного времени и усилий, вы будете слушать тему Марио, которую играют Ардуино, через радио.

Итак, в заключение и в зависимости от вашей конечной цели:

  • Если вы хотите настроить канал связи: купите комплект отправителя-приемника на ebay и используйте его в качестве последовательного моста.
  • Если вы хотите узнать об электромагнитной связи: вернитесь к основам и постройте несколько основных схем. (Совет: макетная плата — худшая основа для таких схем из-за паразитных влияний!)
Спасибо за такой четкий и полный ответ. В настоящее время я работаю над этой ссылкой на учебник по трансиверу , поэтому у меня возникла идея, смогу ли я реализовать ее с помощью микроконтроллеров. Теперь кое-что прояснилось, и я постараюсь поработать над усилительными каскадами на стороне приемника и более правильным излучением на стороне приемопередатчика. Еще раз спасибо!
Может быть, также попробовать управлять контактами Arduino на более низком уровне. Прямой доступ к регистрам на несколько порядков быстрее, чем аналоговая или цифровая запись! Объедините это с полосовым фильтром с высокой добротностью, и вы получите более высокие частоты. (Порядка нескольких МГц.) Это намного легче излучать и принимать. Фильтр должен устранять гармоники прямоугольной волны. Приемник должен быть настраиваемым, Google вам в помощь! Это может дать вам очень простую настройку CW с низким энергопотреблением. (PS: рад помочь с дополнительными вопросами!)
здесь я нашел учебник, близкий к моей теме. вы можете использовать arduino для передачи аудиосигнала на 666 кГц, и я протестировал его, и он работает, поэтому я думаю, что это определенно не только монофонический сигнал, и я думаю, что это означает, что ШИМ может давать более 490 Гц на выходе, так что вот ссылка, если вы интересует instructables.com/id/AM-передатчик-с-Arduino