Рубрика «arduino» - 27

Что может быть хуже костылей? Только неполно документированные костыли.

image

Перед вами скриншот из последней официальной интегрированной среды разработки для 8-битных микроконтроллеров AVR, Atmel Studio 7, язык программирования Си. Как видно из столбца Value, переменная my_array содержит число 0x8089. Другими словами, массив my_array располагается в памяти, начиная с адреса 0x8089.

В то же время столбец Type даёт нам несколько иную информацию: my_array является массивом из 4 элементов типа int16_t, расположенным в ПЗУ (это обозначается словом prog, в отличие от data для ОЗУ), начиная с адреса 0x18089. Стоп, но ведь 0x8089 != 0x18089. Какой же на самом деле адрес у массива?

Читать полностью »

Xiaomi Aqara Switch переделываем с ZigBee на Z-Wave - 1

Решил попробовать интегрировать в свою домашнюю Z-Wave автоматизацию ZigBee выключатели. Для экспериментов приобрел недорогой ZigBee выключатель на батарейках Xiaomi Aqara Smart Switch. Выглядит красиво, пластик высочайшего качества, очень приятный, клавиша выключателя с пружинным механизмом, что дает полный тактильный фидбэк.

Выключатель планировал использовать в следующих сценариях:

  • при одинарном нажатии включать/выключать ночник
  • при долгом удержании диммировать ночник
  • при двойном нажатии включать/выключать LED подсветку

Но тестирование показало, что Xiaomi Aqara Smart Switch реагирует только на одинарное нажатие. А когда я попробовал подиммировать и подержал клавишу 5 секунд, то он сбросился на заводские настройки. В таком виде Aqara Smart Switch для меня оказался бесполезным и я решил в его корпусе сделать Z-Wave выключатель со всеми нужными мне функциями.

Xiaomi Aqara Switch переделываем с ZigBee на Z-Wave - 2 Основу Z-Wave выключателя составляет Z-Uno Module — маленькая плата на которой, только Z-Wave чип и память, программируется из среды Arduino по USB. Модуль при размере 25х15х1.9 мм предоставляет доступ ко всем пинам Z-Wave чипа. На модуле есть U.FL разъем для подключения антенны, либо можно просто припаять провод 86 мм. Это та же Z-Uno только для производителей устройств.
Читать полностью »

Всем привет, меня зовут Сергей.

Я руководитель образовательного проекта "SERVODROID". Мой проект занимается разработкой простых в повторении роботов для детей и взрослых. Сам я преподаю робототехнику в Санкт-Петербурге. Но также я спортсмен, и, одно из моих любимых спортивных направлений — зимний спорт — слалом, о чем и пойдет речь дальше.

image
Читать полностью »

Введение

Не так давно в наших кинотеатрах появился фильм про человека-паука. Главный герой фильма при помощи устройства, по виду напоминающего флешку, смог взломать систему и получить контроль над лучом, переносящим между измерениями. Платы Arduino Leonardo и Arduino Pro Micro (и вообще почти все микроконтроллеры на чипе 32u4) могут восприниматься системой как устройства ввода. Поэтому такое устройство вполне реально сделать, причём оно обойдётся вам всего в 3$. Всё что нужно для взлома — подойти к компьютеру жертвы, вставить «флешку», подождать 5 секунд, вытащить и уйти как ни в чём не бывало.
Читать полностью »

Ардуина и светодиод, или как прокачать детский конструктор - 1

Мой сын крепко “подсел” на магнитный конструктор Magformers. Однажды просматривая серию Фиксиков где фигурировал такой же конструктор ребенок спросил: “Папа, а почему у фиксиков детальки светятся, а у нас нет?”.

Оказалось, что действительно существует набор “Magformers Neon LED Set”, где помимо обычных строительных блоков есть еще и элемент со светодиодом. Поскольку к этому времени у нас уже собрался целый ящик магнитиков всех возможных форм и размеров (как по мне, китайский магформерс ничуть не уступает оригиналу), покупать еще один набор только ради лампочки как-то не хотелось. Тем более, что этот набор стоил ощутимо дороже аналогичного без подсветки.

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

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

Первоначально, OMower разрабатывался под простые интерфейсы управления pfodApp и Modbus. Первый — это текстовый протокол высокого уровня, в котором передаются менюшки и управляющие команды, а второй — известная, но не слишком удобная в данном применении вещь, так как требует от управляющей программы постоянно опрашивать состояние всех используемых датчиков «вручную». Поэтому, было принято решение постепенно переходить на ROS (Robot OS), широко используемый фреймворк для управления различными роботами.

OMower c ROS, первые шаги - 1

Читать полностью »

Внутри японского улья

Пчелы нуждаются в человеческом уходе! И чем дальше мы уйдем от пасеки, тем лучше!

Дело в том, что пчеловоды в прямом и переносном смысле загоняют пчел в узкие рамки.
И это подтверждает фото из шапки — насекомые строят соты той толщины и ориентации, который нужен им, а не нам.

Вторым подтверждением того, что мы не знаем, что-же на самом деле нужно пчелам, является многообразие систем и конструкций ульев, благо хоть определились, что для успешной зимовки необходимо 8 "стандартных" рамок 300x435 мм.

То-есть эти самые рамки были придуманы для удобства отбора меда, гнездо-же пчел в конструкции Прокоповича(изобретателя корпусного улья) при этом не тревожилось.

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

Читать полностью »

Создание умного дома подразумевает массу разных датчиков, контролирующих обстановку в доме — датчики движения, освещения, температурные и прочие. Если «умный дом» небольшой, то все выглядит просто даже с самодельными системами на базе открытых решений (MQTT, OpenHAB и т.д.) — подключили датчик, прописали его в программе OpenHAB или HomeAssistant и начали работать. Но если датчиков много, то появляется много рутинной и неблагодарной работы по прописыванию каждого из них в системе управления.

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

Конкретно эта прошивка работает на модулях с ESP-8266 (в том числе и на Sonoff Basic Switch и Sonoff Touch Wallswitch) с P&P скриптами для OpenHAB и HomeAssistant, но сам способ выдачи plug&play информации можно использовать и в других проектах.
Читать полностью »

Больше года свежая зелень у меня выращивается на балконе автоматически. Это просто и здорово помогает в обеспечении здорового образа жизни в квартире, экономя при этом бюджет. Но заботиться нужно не только о себе, но и об окружающей среде, которая не меньше влияет на наше самочувствие и здоровье (привет, «Кучино»).

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

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

Нет полигонам ТБО — вермиминиферму поставь под окно - 1

С удовольствием делюсь этим уникальным опытом со всеми балконными фермерами. Но все по порядку.
Читать полностью »

В этой статье я продолжу воплощать свое вдохновение лабораторной работой №3 уже в железе. Речь пойдет о детектировании цифры по звуку в тоновом режиме набора на Arduino с помощью алгоритма Герцеля.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js