Новый подход к старой игрушке — беспроводной телефон из консервных банок берёт прошлогоднюю технологию и впихивает её в современность!
![image](https://habrastorage.org/getpro/habr/post_images/2d1/49c/40d/2d149c40dd20f3bac5fbdc76b1a2108b.jpg)
Буквально вчера я вёл серьёзный телефонный разговор, как вдруг мой бананофон перестал работать! Я очень расстроился. Ну, всё — я последний раз пропускаю звонок из-за этого дурацкого телефона! (Оглядываясь назад, стоит признать, что я в тот момент был, возможно, слишком сильно зол).
![](https://habrastorage.org/getpro/habr/post_images/548/afd/fa2/548afdfa286b78ce3d1caa8533cb19af.png)
Пришло время обновлений. И вот он – новый беспроводной телефон из консервной банки! Новый, улучшенный псевдотелефон, подходящий для всех моих коммуникационных нужд!
![](https://habrastorage.org/getpro/habr/post_images/78e/d30/7f5/78ed307f58d6188d7042fcf2447ecd12.png)
![](https://habrastorage.org/getpro/habr/post_images/7c7/81c/b8c/7c781cb8c47124d75bf60edb250cf62d.png)
Кроме шуток, проект реально рабочий. И вот, как я его сделал.
Инструменты и материалы
Для проекта вам потребуется довольно много электронных компонентов и парочка инструментов.
![](https://habrastorage.org/getpro/habr/post_images/a58/b77/30b/a58b7730bc5165f04e095528c7a6a9a5.jpg)
![](https://habrastorage.org/getpro/habr/post_images/aaf/78c/37c/aaf78c37c613993c8ef799691a305573.jpg)
Инструменты:
- Дрель.
- Ножницы по металлу.
- Пистолет для термоклея.
- Круглогубцы.
- Молоток с круглым бойком.
Материалы (всё в двух экземплярах):
- DFduino Uno R3
- Gravity IO Expansion Shield (не обязательно)
- Аналоговый датчик звука (микрофон)
- 386AMP Audio Amplifier (динамик)
- Отсек для батареек 6AA Battery Holder с круглым разъёмом DC Barrel Jack (и 6x батареек AA)
- NRF24L01+PA+LNA с антенной.
- Нажимная кнопка.
- Алюминиевая банка из-под кофе.
- Соединительные провода.
Готовим банки
Перед подключением электроники нужно подготовить банки. Просверлим в них по два отверстия – одно для антенны, второе для кнопки.
![](https://habrastorage.org/getpro/habr/post_images/d9a/e3c/c24/d9ae3cc24c4bfc556ac5937d9ad54dbb.jpg)
Я начал с отверстия для антенны. Для начала я засунул антенную плату внутрь банки, чтобы измерить, на каком расстоянии от стенки должно находиться отверстие. Затем я разметил место под отверстие при помощи стираемого маркера, потому что хотел удалить его следы после работы. Затем метчиком я наметил место под будущее отверстие. Это поможет сверлить на следующем шаге.
Размер отверстия будет зависеть от используемой вами антенны. Я просто подобрал сверло по размеру, сравнивая его с размером резьбы, куда накручивается антенна.
У меня получилось 5,5 мм.
ОК, надеваем защитные очки!
Подобрав диаметр и разметив отверстие, просверлите его. Лучше делать это на высокой скорости, но сильно не давить. Жесть тонкая и имеет тенденцию к образованию заусенцев – осторожнее с острым металлом. Для зачистки края используйте ножницы по металлу и круглогубцы.
После этого можно приступать к отверстию для кнопки. С ним всё немного по-другому.
Я работаю с тем, что есть, поэтому решил попробовать снова сделать отверстие при помощи дрели и круглогубцев. Но гораздо удобнее было бы делать это при помощи сверла Форстнера. Вот, как я это сделал.
Сначала я открутил с кнопки пластиковую гайку. Потом я поместил гайку на то место, где мне нужно было сделать отверстие, и отметил её внутренний диаметр. Потом я просверлил пять отверстий и использовал ножницы для удаления материала и приведения отверстия к круглому виду.
После этого я при помощи молотка и круглогубцев забил края внутрь и загнул их – см. фото. Рекомендую использовать молоток с круглым бойком. Я использовал обычный, поскольку другого нет.
![](https://habrastorage.org/getpro/habr/post_images/1a9/889/597/1a988959798f3638f7341198c1b13a82.png)
![](https://habrastorage.org/getpro/habr/post_images/c39/371/09d/c3937109d0787150c4837ba3a46a47dd.png)
![](https://habrastorage.org/getpro/habr/post_images/02d/ef7/739/02def7739126b2f470d90514dc97765f.png)
![](https://habrastorage.org/getpro/habr/post_images/fd9/959/be3/fd9959be3bba1cbae2c4af75d9e2324f.png)
Теперь можно вкрутить антенну и кнопку. Остерегайтесь острых краёв металла!
Время термоклея
![](https://habrastorage.org/getpro/habr/post_images/8e9/446/844/8e9446844023a748bbf392702bd0c347.jpg)
Пора вклеивать все компоненты. Сначала включите клеевой пистолет и дайте разогреться. Потом используйте клей, чтобы приклеить антенную плату к банке. Также советую покрыть клеем металлическую часть антенны, торчащую наружу, чтобы её не закоротило с банкой.
![](https://habrastorage.org/getpro/habr/post_images/7b2/955/147/7b2955147b7d7e713989b3bb46a785bc.jpg)
Рекомендую использовать как можно больше клея, чтобы ничто не коротило на банку. Если вы услышите треск или писк во время теста, вероятно, что-то контачит с банкой.
Приклейте Arduino Uno к донышку банки, а потом подсоедините батарейки. Это самая сложная часть – рекомендую нанести клей на края, а потом разместить так, чтобы антенна смотрела вверх, а батарейки были в противоположной части банки. Батарейки будут естественным центром тяжести.
![](https://habrastorage.org/getpro/habr/post_images/5fd/928/805/5fd9288052dd6e2aaef3b684f7d374ba.jpg)
Динамик я приклеил с одной стороны держателя батареек, а микрофон – с другой. Причины – эстетические соображения и желание аккуратно уложить провода.
Подключаем электронику
![](https://habrastorage.org/getpro/habr/post_images/8aa/994/86a/8aa99486a04d61a6054acf91f57456ab.jpg)
Когда всё прочно приклеено, пора подключать провода. Соедините проводами компоненты по схеме. Ниже привожу список подключаемых контактов.
Антенная плата:
- MI -> MISO
- MO -> MOSI
- SCK -> SCK
- CE -> Pin 7
- CSE -> Pin 8
- GND -> GND
- 5V -> 5V
Комментарий: NRF24L01 – отличная штука, только уж очень чувствительна к питанию. Подключайте её только к 3,3 В – если не используете дополнительную плату, как я. К 5 В подключайте только с дополнительной платой, иначе спалите антенну.
Аналоговый звуковой датчик:
- Gravity Pins -> A0
Аудио усилитель:
- + (вход динамика) -> 9 или 10 (левый или правый канал)
- — (вход динамика) -> GND
- Gravity pins -> D0
Переключатель:
- NO -> A1
- COM -> GND
Краткое пояснение работы схемы.
Мы используем библиотеку RF24Audio, поэтому микрофон, динамик, выключатель и антенну нужно подключать строго определённым образом:
- Сигнальный контакт микрофона всегда идёт на контакт A0.
- Переключатель (приём/передача) – на А1.
- Аудио усилитель включается куда угодно, главное, чтобы у него было питание. Кабель для передачи аудио нужно подключать к контактами 9 и 10.
- Контакты антенны CE и CSE подключаются только к контактам 7 и 8.
![](https://habrastorage.org/getpro/habr/post_images/b12/7ba/68a/b127ba68a6efe58f1942cef35adf48e0.jpg)
Закачиваем код
Благодаря библиотеке RF24Audio программа получается крайне простой. Буквально 10 строк кода. Взгляните:
//Include Libraries
#include <RF24.h>
#include <SPI.h>
#include <RF24Audio.h>
RF24 radio(7,8); // Радио использует контакты 7 (CE), 8 (CS).
RF24Audio rfAudio(radio,1); // Аудио использует радио, номер радио назначить 0.
void setup() { rfAudio.begin(); // Инициализировать библиотеку.
}
Чтобы закачать код, нужно установить Arduino IDE, скачать данный код и открыть его. Убедитесь, что в меню «инструменты» программатор установлен на AVR ISP, а плата – на Arduino UNO. Убедитесь, что вы выбрали правильный COM-порт.
Теперь соедините Arduino и компьютер USB-кабелем, и нажмите кнопку «загрузить» слева вверху. Код должен загрузиться и вы должны услышать негромкое жужжание.
Попробуйте нажать кнопку и прислушаться, изменилась ли высота жужжащего звука. Наверху платы IO Expansion HAT при этом должен потухнуть светодиод.
Если всё так, то программа работает и всё подсоединено правильно.
Испытания банок
![](https://habrastorage.org/getpro/habr/post_images/6c3/9b8/461/6c39b8461223a37653662b4f83e49bb1.jpg)
Для проверки нужно включить обе банки. Зажмите кнопку на одной из банок и скажите что-нибудь в микрофон. Слышите ли вы звук из другой банки? Попробуйте проделать это с другой банкой.
Если звук проходит, то у вас всё получилось! Если у вас проблемы с помехами или вы слышите жужжание, проверьте на наличие проблем с заземлением. Могу порекомендовать обмотать антенну изоляционной лентой.
После этого испытайте дальность работы – если на пути сигнала ничего нет, он должен проходить на расстояние порядка километра!
Заключение
![](https://habrastorage.org/getpro/habr/post_images/2d1/49c/40d/2d149c40dd20f3bac5fbdc76b1a2108b.jpg)
![](https://habrastorage.org/getpro/habr/post_images/4f6/5ab/128/4f65ab128796a6bc5e616d8957a37036.jpg)
Поздравляю, вы добрались до конца проекта! Отличная работа!
McDuk
А можно взять прямоугольную кнопку и не корячиться с выпиливанием круглой дырки. 4 движения дремелем. И от монтажа на соплях внутри железной банки мне больно смотреть. Можно же припаять любое крепление. Склеить inner case из картона. Или завернуть электрическую часть в пупырчатую пленку и скотч и зафиксировать строительной пеной.
yvm
del
McDuk
Либо делаем телефон из клея и спичек, либо всё же достаточно дорогую (2 дешевых GSM телефона обойдутся дешевле) электронную поделку. Тут бы в масть пошла имитация консервной банки, напечатанная на 3Д принтере ;)
Musimas
Но дырки не печатать, а все равно сверлить :D