2022-06-26

Противоугонное устройство для велосипеда

В Берлине каждые полторы минуты угоняют по велосипеду. После того как мой первый велосипед был дважды украден (первый раз просто свинтили оба колеса, второй раз исчез сам велосипед), мечтаю сделать простейший велосипедный трекер, который бы показывал местоположение моего двухколесного друга.

Кажется, я нащупал правильную платформу для реализации задуманного. В качестве аппаратной начинки используется плата LILYGO TTGO T-SIM7000G ESP32 которая показывает прекрасную автономность и имеет на борту полный фарш коммуникационных протоколов, включая GPS, GSM, 3G, Wifi, Bluetooth а также преобразователь для зарядки аккумулятора от солнечной батареи.

Поскольку 3d принтера у меня сейчас нет, то корпус прототипа нарисовал 3d ручкой.

Разместил устройство под седло, где оно практически не заметно.

Питание устройство получает от одной ячейки 19850, которая помещается в трубку под седлом, и маленькой солнечной панели, которую я планирую разместить на багажнике. Внутри стоит SIM карта через которую устройство получает доступ к интернет. Через интернет же устройство умеет обновлять прошивку, поэтому снимать устройство не предполагается и корпус неразборный и наглухо заварен пластиком.

Конечно, это пока первые эксперименты, но зато они уже приносят первые результаты. Сейчас велотрекер посылает телеметрию каждый час и является полностью энергонезависымым. Если не использовать солнечную батарею, можно сделать устройство полностью незаметным, заряда аккумулятора хватает на пару месяцев а если посылать данные раз в несколько часов, то, возможно, и на год. 

В планах допилить прошивку, доделать мобильное приложение, серверную часть, выложить все на github, а также разработать более компактную плату, чтобы она умещалась, например, в задний фонарь.

 

Оставить комментарий

 
  2022-03-28

Впечатляющая автономность LILYGO TTGO T-SIM7000G ESP32

Дошли руки до купленной больше года назад платы LILYGO TTGO T-SIM7000G ESP32. Подключил солнечные батареи, адаптировал под эту плату прошивку, созданную для умного велосипеда. Устройство сидит на подоконнике уже три дня и не выказывает ни малейших признаков усталости.

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

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

Пожалуй, в качестве велосипедного компьютера устройство подходит даже лучше чем SIM600 - в нем уже интегрирован чип с GPS и GSM что значительно улучшает энергоэффективность.

 

Оставить комментарий

 
  2022-03-12

Цианокрилат

Открыл для себя этот материал совсем недавно когда чинил старые наушники. Обычно цианокрилат, известный в народе как супер клей, используется для склеивания различных материалов, но оказывается его можно использовать не только как клей но и как пластичный материал в случаях когда нужно восстановить большую поверхность из пластика, например недавно я писал про свой опыт починки TWS наушников, кроме самих отвалившихся магнитов на затычках был также разбит и зарядный кредл. Причем разбит основательно - на зарядном кредле не хватало изрядного куска корпуса который я и решил восстановить при помощи цианакрилата. Изначально идея была воспользоваться 3д ручкой но она наотрез отказалась включаться, так, что цианокрилат оказался неплохим выходом.

Соединив отколовшиеся куски тем же цианокрилатом, я поместил внутрь корпуса кусок бумаги, чтобы клей не попадал дальше внутрь корпуса. Далее просто начал капать капельки клея на образовавшийся мостик посыпая их пищевой содой. Капельки клея под действием соды мгновенно твердеют, образуя прочный полимер. Когда материала стало достаточно просто отшлифовал получившуюся поверхность наждачной бумагой.

Сам процесс восстановления я не сфотографировал, догадался только запечатлеть конечный вариант.

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

Дисклеймер. Цианокрилат - очень токсичный - все эксперименты подобного рода следует проводить в хорошо проветриваемом помещении и не допускать попадания на кожу и слизистые. При затвердевании клей сильно нагревается и испаряется, что также не увеличивает его безопасность.

 

Оставить комментарий

 
  2021-11-06

Прием входящих звонков на USB Модем

Обычный USB Stick, используемый для доступа к Internet через мобильные сети 3G и GPRS, может также осуществлять голосовые звонки.

Я уже писал как при помощи Raspberry Pi настроить собственную мини-АТС. В этот раз мы добавим возможность в нашей мини-АТС принимать голосовые звонки на один из внутренних номеров системы.

Помимо Raspberry Pi, Sim карты, SD карты и блока питания нам понадобится также USB стик, с разблокированными голосовыми функциями. Я использовал модель Huawei K3765. Список поддерживаемых моделей можно найти здесь.

Собираем устройство, подсоединяем USB донгл. Донгл лучше подключать через USB хаб с внешним питанием, так как питания получаемого через USB Raspberry Pi может не хватить.

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

Устанавливаем FreePBX и Asterisk следуя инструкциям.

Добавляем донгл в систему.

install-dongle

Создаем новый транк:

В custom settings в поле dial string прописываем:

dongle/dongle0/$OUTNUM$

Добавляем входящий маршрут:

Если все настроено правильно при звонке на номер сим карты звонок будет переадресован на SIP устройство.

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

Более подробные инструкции можно найти на этом сайте.

 

Оставить комментарий

 
  2021-04-11

Новое устройство для экспериментов с Asterisk

Собрал новое устройство для экспериментов с Asterisk. Почему-то прошивка сделанная автором raspberry-asterisk у меня зависает в случайные моменты времени. Иногда работает несколько дней, иногда зависает через несколько минут. Поначалу грешил на саму малинку, потом на SD карточку, потом на блок питания. Заменил последовательно все, однако устройство стабильно зависает.

Да, я знаю, что на плате стоимостью в десять долларов невозможно собрать стабильно работающее устройство с астериском, которое будет полностью выполнять функции "взрослой" АТС. Да, я знаю, что для чего-то более серьезного нужно более серьезное оборудование, но, я, тем не менее, хочу знать как это сделать!

Настроив монториг памяти и температуры устройства, я заметил, что устройство не потребляет много памяти и не уходит в cpu троттлинг, но, тем не менее, температура процессора немного выше чем на аналогичном устройстве без астериска.

Решил, что все дело в самой прошивке, ведь, даже автор raspberry-asterisk больше не поддерживает в новых образах Raspberry Pi Zero.

Поэтому, решил установить Asterisk на Debian c нуля, благо, в сети уже есть инструкции как это сделать. Для этого заказал новую плату и USB хаб. Плату запитал от этого же хаба. Не все устройства такое позволяют, но данный экземпляр сработал как надо. USB-стик тоже определился как надо.

Компиляция астериска заняла несколько часов, однако все сработало как надо и в конце концов у меня получилась вполне работающая система.

Пока устройство работает стабильно - посмотрим, как долго проработает в этой инкарнации.

 

Коментариев: 2

 
  2021-04-05

Автоматический полив комнатных растений

Выложил на гитхаб файлы из проекта "Поливалка".

Наверно, любая домохозяйка время от времени сталкивается с вопросом - кому бы поручить полив комнатных растений во время длительного отсутствия, например во время отпуска. Конечно на помощь всегда могут прийти добрые родственники или соседи. Если беспокоить других людей не хочется - на помощь могут прийти подручные средства из пластиковых бутылок мокрых тряпок и тазиков…. Однако по приезду можно обнаружить, что  цветы все равно завяли така как система которую вы установили перед отъездом дала сбой, корни засохли, а вся вода из емкости вылилась на пол и залила соседей… 

Но если подумать, только ли во время отъезда нужно автоматизировать полив комнатных растений? Ведь некоторые рассеянные люди вроде меня, даже когда никуда не уезжают, постоянно забывают поливать цветы. То и дело, обнаруживаешь, что твой любимый фикус начинает засыхать, потому что его уже неделю никто не поливает. Даже цветы в офисе иногда начинают терять листья, так как никому в нашем мужском коллективе не приходит в голову регулярно их поливать... 

Читать дальше в разделе "Статьи"...

 

Оставить комментарий

 
  2021-04-05

Видео стриминг с ESP32

В сети есть много примеров того как превратить плату esp32 cam в веб-камеру способную стримить видео поток. Однако, такая веб-камера может раздавать контент только на одно устройство, что делает такое решение не очень функциональным.

Задался вопросом, как сделать так, чтобы видеопоток от веб-камеры можно было принимать на нескольких устройствах. К удивлению, в сети, почему-то, очень мало успешных решений для потокового вещания с ESP32, хотя подобный проект мог бы быть довольно интересным.

Однако, существуют примеры того, как организовать потоковое вещание при помощи nginx от других источников, ту же идею можно применить и для нашего случая.

После нескольких вечеров экспериментов мне удалось организовать стриминг от устройства на esp32 cam в локальной сети на несколько устройств. В качестве реверсивного прокси-сервера используется nginx. FFMpeg преобразует RTSP поток от веб-камеры в RTMP видео поток который посылается на веб-сервер и раздается нескольким устройствам одновременно. В качестве видео плеера я использовал VLC но может подойти и любой другой.

Таким образом, сервер получает трафик виде одного потока от камеры esp32 который затем уже раздаётся на несколько потребителей. Веб сервер был поднят на устройстве Raspberry Pi Zero W -  мини компьютера размером с половину пластиковой карточки и стоимостью в десять долларов. Вычислительных способностей этого малыша оказалось достаточно для перекодирования в реальном времени видеопотока с ESP32 Cam и раздачи его на оконечные устройства.

Команда для перекодирования потока при помощи ffmpeg у меня получилась вот такой:

ffmpeg -rtsp_transport tcp -i rtsp://192.168.0.61:8554/mjpeg/1 \
    -f flv -tune zerolatency -preset ultrafast -r 10 -an \
    rtmp://localhost:1935/live/ccc

В ходе экспериментов было выявлено, что задержка при подобном способе раздачи контента составляет около 30 секунд, возможно для коммерческих устройств это будет неприемлемо, но для домашнего видеонаблюдения будет вполне достаточно. Стоимость компонентов при этом оказывается совсем смешной по сравнению со стоимостью "взрослых" решений.

 

 

Оставить комментарий

 
  2021-02-05

Чем снимали фильм про дворец Путина

На сайте радио свобода статья посвященная модели дрона, который использовался для съёмки фильма.

Оказывается, что поскольку территория над дворцом Путина объявлена бесполетной зоной и дроны DJI залетать в нее не могут из-за ограничений в прошивке, а вот Autel Evo II вполне может!

Похоже, продажи этих коптеров теперь подскочат!

 

Оставить комментарий

 
  2021-01-24

Самобалансирующий робот из Lego EV3

Давно хотел сделать самобалансирующего робота. У ребенка есть Lego EV3 Home Edition. В сети есть инструкции как собрать такого из набора EV3 Education у которого в комплекте есть гиро датчик. В Home Edition гиро датчика нет - но ведь его можно купить!

Зашел на сайт Lego сделал заказ и через два дня посылка была у меня, благо в Берлине доставка не занимает много времени.

GyroBoy показался мне слишком сложным - к тому же у нас не было некоторых деталей, поэтому решил собрать модель попроще Balanc3R. Вот она наша прелесть:

 

Оставить комментарий

 
  2020-12-18

Измерение ёмкости аккумулятора

Потребовалось измерить емкость аккумуляторной батареи. Однако никакого готового устройства для этого в доме не оказалось.

Заказывать на амазоне не хотелось, поэтому собрал из того что было небольшое устройство для измерения ёмкости аккумулятора на базе Arduino и ino219.

На макетной плате расположены arduino pro mini датчик тока и напряжения ina219 контроллер зарядки TP4056 и стабилизатор step-up который повышает напряжение 3.7 Вольт аккумулятора до 5 Вольт который нужен arduino и OLED дисплей. Устройство питается от элемента 18650.

Данная схема позволяет измерять ёмкость аккумулятора при зарядке и разрядке литий-ионных аккумуляторов и отображать ее на дисплее.

Когда внешнего питания нет устройство работает от аккумулятора и одновременно измеряет ёмкость аккумулятора при его разрядке. 

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

Если мы подключим что-нибудь ещё дополнительно какую-нибудь нагрузку мы можем ускорить процесс разрядки и испытать аккумулятор под нагрузкой. В теории, емкость аккумулятора при разных токах разрядки может отличаться.

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

Кроме этого, каждая сессия заряда или разряда записывается в EEPROM устройства и если вы случайно выключите все устройство то после включения устройство продолжит зарядку с прерванного момента. В EEPROM устройства сохраняются последние десять сессий заряда разряда.

Таким образом можно измерить емкость литий-ионного или литий-полимерного аккумулятора при его разрядке или зарядке. 

Устройство можно использовать как продвинутый power bank для питания других устройств, в случае, если вам необходимо контролировать параметры энергопотребления схемы, или же как зарядное устройство с контролем емкости заряжаемого аккумулятора.

Прошивка, как всегда, выложена на github.

 
 

Оставить комментарий