Обновить
141.91

Arduino *

Платформа для создания автоматики

Сначала показывать
Порог рейтинга
Уровень сложности

Мой робот научился слушать, злиться и даже краснеть (как я прокачал AGI-робота до уровня «почти человек»)

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели4.7K

Привет снова, Хабр!

Помните моего робота на Arduino Uno Q с характером? Того, который умел подмигивать и обижаться? Так вот, за пару месяцев он серьезно прокачался. Теперь он не просто ездит и болтает, а:

- 🎤 Слушает ответы после того, как сам поговорил (и отправляет их в LLM для контекста!)

- 🌈 Светится разными цветами в зависимости от настроения (красный = злой, зеленый = радостный, синий = думает)

- 🗣️ Говорит на трех языках (английский, русский, чешский) голосами WaveNet от Google

- 🗺️ Рисует карту комнаты прямо в текстовом режиме

- 🧠 Помнит свои движения, чтобы не застревать в углах как пылесос из 2005-го

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

Читать далее

Новости

Взлом RDP в STM8/32 методом PowerGlitch

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели18K

Так уж случилось, что из разработки железа и встроенного ПО я постепенно ушел в безопасность. А в дальнейшем и в пентест. Мой первый заказ по чтению залоченной прошивки.

«Нет никакой защиты, есть только количество времени и знаний, необходимых для достижения цели.»

Читать далее

Макропад своими руками: первый прототип

Время на прочтение8 мин
Охват и читатели13K

Продолжаю рассказывать, как я создавал макрос-клавиатуру с нуля. В этой части: почему Loupedeck и 3Dconnexion не подошли, как Speed Editor стал моим идеалом, и что из этого вышло. Спойлер: Arduino превращается в тыкву😅

Читать далее

Лазерный тир, версия 3.0 на ESP32

Уровень сложностиПростой
Время на прочтение1 мин
Охват и читатели15K

Много-много лет назад делал я простенький лазерный тир с raspberry и камерой.

Технологии с тех пор сильно шагнули вперёд, и захотелось сделать новую, максимально дешёвую версию. В качестве основы взял ESP32 с камерой OV2640 — стоит около 5 евро на AliExpress. Серьёзно переживал за производительность, но её у этого малыша оказалось более чем достаточно. В нём два ядра: одно полностью отдано под обработку изображения, второе — под веб-сервер.

Идея следующая: 60 раз в секунду делаем снимок и ищем на нём пятно от лазера. Параллельно крутится веб-страничка, где на canvas рисуются мишень, попадания и очки. Поскольку полноценный OpenCV на ESP32 не запустить, всё сделано максимально просто. Камера выдаёт чёрно-белые JPEG-кадры, которые я распаковываю в пиксели и ищу те, что превышают порог яркости. Да, камера умеет работать и с RAW-форматами, но там есть нюанс — частота кадров в таком режиме ограничена примерно 15 FPS. А вот распаковывать JPEG «на лету» для ESP32 оказалось посильной задачей, и благодаря этому удалось выжать почти 60 FPS при разрешении 240×240. Для надёжности детектирования у камеры дополнительно задаётся смещение экспозиции.

Но просто найти пятно на картинке недостаточно — нужно сопоставить его с координатами мишени. И вместо того чтобы нагружать микроконтроллер сложной математикой, это можно переложить на пользователя. Поэтому предусмотрена разовая ручная калибровка: на отдельной странице в браузере нужно выбрать четыре маркера на изображении по часовой стрелке. По ним строится матрица обратного перспективного преобразования. Благодаря этому камера может смотреть на мишень под любым углом — математика всё компенсирует.

Читать далее

Будильник для зимы: как я подружил лампу Ильича, ZigBee и LLM

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.1K

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

Причём бесит не сам факт пробуждения (я всё-таки взрослый человек и понимаю, что проекты сами себя не напишут), а то, как именно это происходит. Резко. Грубо. Без предупреждения.

TLDR: Собрал мощный потолочный светобудильник на ZigBee-диммере + лампы накаливания. Настроил через Tasmota с помощью LLM за один день вместо недели.

Подключить светобудильник к умному дому

Прокачиваем LEGO-машинки с помощью Arduino

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели32K

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

Читать далее

Моя эконом-метеостанция из подручных материалов и пары батареек

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели22K

Привет, Хабр!

Пожалуй, одним из первых устройств, которые подключаются к умному дому (конечно, после модуля управления освещением), является домашняя метеостанция. Вот и мне на новом месте и в новом умном доме потребовалось реализовать данное устройство. Но есть одна проблема: находясь вдалеке от своей домашней лаборатории, я имею минимальный набор инструментов и лишен таких благ цивилизации, как лазерный мини-ЧПУ для изготовления плат и 3D-принтер. Поэтому для реализации проекта будем работать по старинке, в режиме жесткого DIY-хардкора (или «Очумелых ручек»). Впереди много картинок и термоклея, так что включайте ваши паяльники и поехали!

Читать далее

Голос и микроконтроллер ESP32

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели25K

Картинка: freepik.com - vecstock

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

В этой связи большинство идут самым простым путём: мигающие лампочки, светодиоды, мониторы разных мастей с выведением на них текстовой/графической информации…

Однако есть одна очень интересная тема, которую почему-то незаслуженно самодельщики обходят стороной — речь о микроконтроллерах!

Потому что, согласитесь, «мигание лампочек» — это, конечно, прекрасно и даже в некотором роде волшебно (особенно когда это происходит в первый раз в жизни и твоя программа наконец начинает работать :-) ). Но куда веселее, когда машина отвечает тебе голосом! :-) 

Поэтому посмотрим, какие здесь возможности имеются... 

Читать далее

Ctrl+Z 200 раз в день: почему я решил собрать свой макропад

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели12K

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

А в начале я не планировал становиться разработчиком макропада.

Читать далее

Особенности работы с микроконтроллерами TMS320С28xx

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели10K

Микроконтроллеры серии TMS320C28xx (C2000) от Texas Instruments появились достаточно давно, однако до сих пор остаются актуальными в ряде задач.

Эти микроконтроллеры отличаются надёжностью, обладают значительным объёмом оперативной памяти, поддерживают операции с числами с плавающей точкой (float/double) на аппаратном уровне, а также оснащены одними из лучших в своём классе модулями ШИМ (PWM) и АЦП (ADC). При этом их стоимость остаётся весьма демократичной.

В этой статье я расскажу об особенностях работы с данными микроконтроллерами.

Читать далее

tRNS: Как инженерный азарт привёл к самодельному транскраниальному стимулятору

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели30K

Прототип DIY tRNS: архитектура, генерация сигнала (100–640 Гц hf-tRNS), VCCS на Howland Current Pump, отображение метрик сигнала в процессе работы, репозиторий с кодом и выводы.

Читать далее

Как я скрещиваю Arduino и Lego. Продолжение разработки и появление редактора КонтрБагКОД

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели12K

Продолжение статьи «Как я скрещивал Ардуино и лего».

Если вкратце, я столкнулся с проблемой выбора контроллера для обучения детей среднего школьного возраста (5-8 класс), мне не понравились готовые решения, и я решил разработать свой контроллер на базе Arduino Nano, со встроенными драйверами двигателей и закрытым корпусом, совместимым с Lego. Но по большому счету я это делал, потому что могу :)

С момента прошлой статьи прошло более полугода. За это время многое произошло. Я разработал новые и переработал старые корпуса для датчиков и контроллера. Собрал небольшую партию устройств. Запустил сайт и даже разработал свой блочный/кодовый редактор для контроллера ZERO и других Arduino подобных плат. Но обо всем по порядку...

Читать далее

Моя версия системы автоматического тестирования БК моторов (PHPH)

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели7.5K

Я увлекаюсь авиамоделизмом, в основном радиоуправляемыми моделями на бесколлекторных двигателях, но в последние годы данная сфера престала быть нишевой, и поэтому цены на компоненты заметно выросли. Без того дорогие проверенные бренды стали еще дороже, поэтому я все чаще выбираю более бюджетные аналоги с AliExpress или от малоизвестных производителей. Но тут возникает проблема: как убедиться, что дешёвый мотор выдаст заявленные характеристики, и будет надёжным в полёте?

Конечно, есть инструменты вроде Betaflight, которые отлично справляются с настройкой полётных контроллеров и дают данные о работе мотора по обратной ЭДС. Но я бы хотел получать дополнительно независимые данные о таких харакетритиках как RPM, потребляемый ток, напряжение, тяга двигателя и его температура.

Читать далее

Ближайшие события

Почему одна Arduino сделала для робототехники больше, чем все вузы мира вместе взятые

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели50K

(Дисклеймер: Заголовок — намеренная провокация. Но если ваша рука уже потянулась к клавиатуре, чтобы написать гневный комментарий о деградации инженерной школы — добро пожаловать под кат. Там мы разберемся, почему синяя платка из Италии победила академический снобизм и создала армию инженеров).

Представьте мир до середины нулевых. Вы — школьник, студент или просто энтузиаст, и вы хотите собрать простенького робота. Ваши действия?

Сначала нужно купить микроконтроллер (PIC или AVR). Затем найти программатор ($50–100) или паять LPT-«костыль» на коленке, рискуя сжечь порт материнской платы. Потом открыть даташит на 300 страниц на английском, чтобы понять, в какой регистр нужно «плюнуть» битом, чтобы просто зажечь светодиод. И, наконец, написать код на Ассемблере или голом Си, где ошибка в одной запятой превращает устройство в кирпич.

мигаем светодиодом

Как я уже 5 лет создаю свою макрос-клавиатуру. И почему не бросил этот проект

Время на прочтение2 мин
Охват и читатели13K

Привет! Меня зовут Нияз, и последние пять лет я веду, пожалуй, самый длинный и упорный личный проект в своей жизни создаю собственную макрос-клавиатуру с нуля: от логотипа до электроники и ПО.

Читать далее

Хорошо парсим NMEA0183

Время на прочтение19 мин
Охват и читатели9K

Приветствую, глубокоуважаемые!

Будем стараться делать хорошо, плохо само получится (С)

Любите ли вы NMEA0183, как люблю его я? Умеете ли? Практикуете ли? Парсите ли в уме, стоя на льду водоема?

Хочу поделиться универсальным, модульным, гибким, шустрым и исключительно нетребовательным к ресурсам парсером для работы с NMEA-сообщениями в Embedded.

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

Начать погружение!

Как же лень работать рутинку в AD

Время на прочтение2 мин
Охват и читатели11K

Не так давно я поймал себя на мысли, что работа в Altium Designer перестала "доставлять".

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

Итак! подоплека простая. Мне лень склеивать локальные библиотеки! На этот факт повлияла работа в АО Лазерные системы с уважаемыми людьми, которые внедрили Союз PLM от КБ 2.0 (если все верно помню) и за год плодотворной отладки системы... я убедил себя в том, что работать нужно не 12 часов, а головой!

Внезапное, однако, озарение. И так уж сложилось, что моя супруга пожелала съехать из квартиры в Санкт-Петербурге в другую. В квартиру в Москве! И вот мы уже в Златоглавой и белокаменной, кайфуем и переезжаем с района в район чтобы прочувствовать WIBES и подобрать себе по душе местечко. Работу нашел как раз для души в RQC в хорошей компании, занимающейся лидарами как и ЛС (Laser systems).

Нука-нука, что там у тебя...

Программатор ROM на Arduino за вечер

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели13K

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

Задача: есть микросхема памяти ROM 27С512 емкостью 512 Кбит или 64 Кбайта, в нее нужно прошить готовый дамп размером 16 Кбайт, понадобится нам такой ROM с дампом

Читать далее

Спасаем ARGB: Как я заменил сгоревший китайский хаб на ESP32 с веб-интерфейсом

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели10K

Год назад я собрал систему с пятью бюджетными ARGB вентиляторами Aigo AR12 с 6-pin разъёмами. В комплекте шёл хаб AR12-2012 это типичная китайская плата с 10 портами для вентилей, SATA питанием и выходом на материнку для синхронизации подсветки.

Всё работало. Красиво светилось. Но ровно год.

Однажды утром вентиляторы крутились, а подсветка увы нет. Хаб умер. Покупать новый за $15-20 не хотелось, тем более что я знал: внутри этих вертушек сидят обычные адресные светодиоды (WS2812/SM16703-совместимые).

А раз адресные, значит можно управлять с ESP32.

Читать далее

Подключение ЖК дисплея POS терминала Ingenico IPP320 к Arduino (ESP32)

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели8.5K

В Ingenico IPP320 установлен графический 128х64 монохромный ЖК дисплей с белой подсветкой и диагональю примерно 2.8 дюймов. Он устанавливался и в другие устройства и также известен как:
LBL-VLFM1574-02C
LBL-VLFM1574-02B
COG-VLFM1574-05
WU3540C-01 B
WU3540B-01

Конкретно мой дисплей я получил из терминала оплаты Ingenico IPP320. Терминалы эти, при покупке на вторичном рынке, как правило, уже сами заблокировали себя, так что чтобы использовать их напрямую даже в любительских целях, потребуется дорогостоящая разблокировка производителем. Такие терминалы можно найти за достаточно низкую цену на Авито и других площадках. Я, например, нашел новенький Атол 60Ф за 340 рублей. Разобрав, потыкав осциллографом и мультиметром, я подключил ESP32 между платой терминала оплаты и дисплеем. Попутно накидал следующую распиновку коннектора:

Читать далее
1
23 ...