Сообщество - Arduino & Pi
Добавить пост

Arduino & Pi

1 378 постов 20 571 подписчик

Популярные теги в сообществе:

Вопрос от непрофессионала Профессионалам Ардуино

Дано:

N - количество шаговых двигателей в стенде, они могут быть разной мощности;

Вопросы:

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

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

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

Делаем аромадиффузор Xiaomi Youpin HL "умным"

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

Сам аромадиффузор выглядит так:

Делаем аромадиффузор Xiaomi Youpin HL "умным" Умный дом, Esp8266, Arduino, Ароматизатор, Xiaomi, Своими руками, Самоделки, Электроника

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

В результате доработки появляется возможность получать статус устройства и эмулировать нажатия на кнопку с помощью MQTT.

Для доработки нам понадобятся:

  1. D1 Mini. Маленькая плата с питанием от USB, с WiFi и разными входами-выходами для подключения внешних компонентов. Можно использовать и что-нибудь другое, но именно D1 Mini по габаритам идеально вписывается в корпус этого аромадиффузора, располагаясь под основной платой.

  2. Два резистора на 470 Ом

  3. Резистор на 10 кОм

  4. Две оптопары PC817.

Как сделать:

  1. Скачать скетч из репозитория, открыть его в Arduino IDE, вбить данные для Wi-Fi роутера и MQTT-брокера. Залить скетч в D1 Mini.

  2. Разобрать аромадиффузор. Для этого снимаем резинку снизу и выкручиваем четыре самореза. После этого корпус достаточно легко разделяется на две части.

  3. Соединить пины D6 и GND через резистор на 10 кОм.

  4. Светодиод первой оптопары присоединяем через резистор на 470 Ом параллельно контактам вентилятора. Фототранзистор - к пинам D6 и 3.3v. Это позволит нам узнавать статус устройства. Замечу, что у этого аромадиффузора есть особенность: если в бачке нет воды, то вентилятор включается на очень короткий промежуток времени. Что я и использовал для определения наличия воды. Наверное можно было иначе, но так проще и меньше деталей.

  5. Светодиод второй оптопары присоединяем через резистор на 470 Ом к пинам D7 и GND. Фототранзистор параллельно кнопке. Это позволит нам эмулировать нажатия.

После этого можно собирать аромадиффузор.

В MQTT можно использовать два топика:

  1. state - для получения статуса устройства. Может принимать значения on, off или error (если нет воды).

  2. command - для управления кнопкой. Соответственно, press - для включения и переключения цветов, а press_long для выключения устройства.

В таком виде устройство работает уже более года без нареканий. Фото не прикладываю, ибо сам спаял все на коленке и как пособие такие фотографии не годятся. Замечания, советы, коммиты в репозиторий приветствуются: сам переделывать вряд ли буду, но может кому-то будет полезно.

Показать полностью 1

Сгорел Регулятор оборотов двигателя ШИМ 4.5 - 35В 5А

Сгорел у меня регулятор оборотов. Причиной стало подключение к источнику с низким напряжение.
Подключил к одной литиевой банке. Сначала стал греться сильно диод а за ним и транзистор которые и сгорели. Как оказалось транзистору не хватало напряжения чтобы открытая.
Диод заменил на первый что попался по руку хотя рекомендуют заменить на диод помощнее ампер на пять. Транзистор тоже поставил побольше первый из попавшихся в россыпи деталей, тот что сгорел был "N канальный mosfet".Первый n канальный masfet и поставил
Проверил на ленте светодиодной работает. На Ютубе ещё выпивали стабилизатор напряжения для увеличения мощность путем подачи на на микросхему таймера повышенного напряжения (таймер до 18 вольт можно питать). Но я пока воздержался от экспериментов.

Сгорел Регулятор оборотов двигателя ШИМ 4.5 - 35В 5А Arduino, Ремонт техники, Электроника, Длиннопост

Припаянный новый транзистор и диод

Сгорел Регулятор оборотов двигателя ШИМ 4.5 - 35В 5А Arduino, Ремонт техники, Электроника, Длиннопост
Сгорел Регулятор оборотов двигателя ШИМ 4.5 - 35В 5А Arduino, Ремонт техники, Электроника, Длиннопост
Показать полностью 3

Старо как мир или "трекбол мне в кибердеку"

Если самоделки и колхоз вызывают у вас приступы кринжа - лучше пропустить этот пост😅

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

К нашим баранам. Как это выглядит, трекбол на фото светится фиолетовым. А сейчас подробнее.

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

Начнем с того, что есть устройство на линуксе raspberry pi4. И очень хотелось бы сделать его переносным. С клавой все решается достаточно просто - монтированием в корпус к самому устройству или подключив через usb/bt и кладешь куда угодно.

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

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

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

Так вот о чем это я? Мне для "кибердеки" нужна была мышь.

Исключая тачпад, есть два три стула:

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост
  1. Джойстик (различных видов)

  2. Трекбол

  3. Трекпоинт (такие стоят на линейке Thinkpad от Lenovo)

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

Трекбол изначально мне импонировал, так как тема киберпанка берет свое начало когда такие штуки уже были и хотелось опробовать. Годных вариантов за недорого не так много.

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

Я выбрал трекбол из-за экзотики, размера и цены.

На алишке можно найти по запросу ICSH044A или Blackberry Trackball, так как такие стояли на телефонах Blackberry.

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

Также мне понадобилась Ардуинка, так как моя UNO не поддерживает работу USB HID, так что пришлось взять Pro Micro на чипе ATmega32U4 (который и позволяет в hid)

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

Ладно, я слегка затянул с прелюдией...

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

Подсветку можно запитать на свой вкус, подав на подписанные контакты "+", выбирая или миксуя синий, красный, зеленый и белый. Здесь запитаны красный и синий, что дает фиолетовое свечение.

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

Подключение к пинам ардуино:

right_pin  3

left_pin  4

down_pin  5

up_pin  6

Левая кнопка  7

Правая кнопка  8

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

Итак:

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост
Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

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

Расположение подобрано для большого пальца правой руки.

Старо как мир или "трекбол мне в кибердеку" Пятничный тег моё, Электроника, Linux, Raspberry pi, Arduino, Самоделки, Программирование, Колхоз, Длиннопост

Итог:

Из плюсов:

Удивительно, но к этому действительно легко привыкнуть.

Подключается по USB и начинает работать сразу и в WIndows и в Linux.

Достаточно хорошая точность и отклик.

Из минусов:

Можно отметить небольшой брак(заводской), это остатки клея, которые мешали работе одной из осей и встроенной кнопки.

Отсутствие скролла в собранной конструкции.

Двигать курсором по диагонали не очень удобно.

Показать полностью 9

Гусеничное шасси-робот на базе Arduino V2.0

Прошло больше года со дня публикации проекта гусеничного шасси, появилось свободное время и я решил его сделать заново. Цель - открытый проект робота под различные МК и мини ПК. Эдакая игрушка на поиграться с машинным зрением.

Размеры:
13,5 см на 10 см на 4 см

Печатал на SLA 3D принтере, время печати - 2 часа. Моделировал в Fusion360.
Предусмотрена установка "2 этажа", нет фото, так-как жду некоторые расходники.
Также на фото не показано посадочное место под аккумуляторные батареи типа 18650, но тут та же ситуация - жду доставку.
Серва на модели для установки датчика препятствий или манипулятора (попытка создать универсальную модель)

Есть идеи, что можно добавить для универсальности? Буду рад предложениям и критике.

Гусеничное шасси-робот на базе Arduino V2.0 3D моделирование, Arduino, Esp32, Raspberry pi, Самоделки, Робототехника, Длиннопост, 3D печать
Гусеничное шасси-робот на базе Arduino V2.0 3D моделирование, Arduino, Esp32, Raspberry pi, Самоделки, Робототехника, Длиннопост, 3D печать
Гусеничное шасси-робот на базе Arduino V2.0 3D моделирование, Arduino, Esp32, Raspberry pi, Самоделки, Робототехника, Длиннопост, 3D печать
Гусеничное шасси-робот на базе Arduino V2.0 3D моделирование, Arduino, Esp32, Raspberry pi, Самоделки, Робототехника, Длиннопост, 3D печать
Показать полностью 4

Сбор и обработка показаний датчиков с Arduino в базу mysql

Говорят у меня появился один подписчик, возможно это будет интересно ещё кому-то.

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

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

В качестве базы использовал OrangePi One с установленной Armbian OS. В основе Debian, по этому всё как там. Соответственно MariaDB и Apach. Возможно что-то другое на свой вкус.

Сбор и обработка показаний датчиков с Arduino в базу mysql Arduino, Технологии, Электроника, Автоматизация, Orange pi, Длиннопост

За сбор данных отвечает скрипт на Python запущенный в качестве сервиса. При запуске автоматом сканирует COM-порты и если такой находит, слушает его. Если в COM-порт что-то приходит, пытается разобрать и отправить в базу данных. База имеет такую структуру:

Сбор и обработка показаний датчиков с Arduino в базу mysql Arduino, Технологии, Электроника, Автоматизация, Orange pi, Длиннопост

В базе две таблицы, в одну "data", заносятся показания датчиков, в другой "servo", заносятся значения устанавливаемые на сайте в разделе "Управление" для ручного управления какой-либо автоматикой (возможное дальнейшее развитие этого проекта), в моём случает для управления автоматизацией теплицы. На данный момент здесь нет логики которая основывалась бы на значениях датчиков и собственно автоматизированного управления. Пока только ручное управление.

Сбор и обработка показаний датчиков с Arduino в базу mysql Arduino, Технологии, Электроника, Автоматизация, Orange pi, Длиннопост
Сбор и обработка показаний датчиков с Arduino в базу mysql Arduino, Технологии, Электроника, Автоматизация, Orange pi, Длиннопост

Данные с базы "data" визуализированы и выводятся в виде различных графиков. По умолчанию выводятся на диаграммы последние значения, на общий график последние 12/48/... (сколько задать в настройках скриптов) значений, либо за указанный период.

Сбор и обработка показаний датчиков с Arduino в базу mysql Arduino, Технологии, Электроника, Автоматизация, Orange pi, Длиннопост
Сбор и обработка показаний датчиков с Arduino в базу mysql Arduino, Технологии, Электроника, Автоматизация, Orange pi, Длиннопост

Это архив болванки сайта.

Это скрипт Python для чтения и обработки полученных от Arduino данных.

Это скрипт запуска скрипта-Python как сервиса.

Его нужно закинуть в /etc/systemd/system в варианте для Armbian OS.

На этом пока всё. Спасибо за внимание :)

Показать полностью 6

С чего начать кибердеку

Пост о кибердеке

Моё во временном корпусе

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

Железо

После сравнения цен и характеристик я выбрал Raspberry pi 4, которую все небеспричинно называют малинкой. Многие миникомпьютеры схожие проекты сделаны именно на ней.

С чего начать кибердеку Linux, Электроника, Raspberry pi, Пятничный тег моё, Длиннопост

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

Плата сбалансирована, много выходов, имеет большую базу форумов.

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

Заказал, что удивительно, на озоне.

В цене разницы почти не было, да и повозиться с платой уже хотелось.

Набор уже содержал:

  • Плата

  • Активное охлаждение

  • SD-карта с адаптером

  • Блок питания 5в 3а

  • Кабель microHDMI to HDMI

С чего начать кибердеку Linux, Электроника, Raspberry pi, Пятничный тег моё, Длиннопост

Правда в этот раз китайцы поднатужились и прислали заказанный в тот же день, что и плата с озона, дисплей на день раньше.

С чего начать кибердеку Linux, Электроника, Raspberry pi, Пятничный тег моё, Длиннопост

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

С чего начать кибердеку Linux, Электроника, Raspberry pi, Пятничный тег моё, Длиннопост

К виндовс подключился моментально и тач подтянулся тоже. Plug & Play великая вещь.

Также для установки потребуются мышь и клавиатура.

Софт

Так как у платы есть рекомендованная для нее ОС ее я и решил установить в версии 64бит ибо мы имеем 8гб оперативы и нужно ее использовать. Что непременно было ошибкой и стоит выбрать 32бит. Но

"Опыт - сын ошибок трудных..."

Скачиваем образ ОС с оф. сайта.

Заливаем образ на нашу sd-карту с помощью balenaEtcher или Raspberry PI Imager. Достаточно просто в режиме "Что-Куда-Запись"

Raspbian, ныне именуемая Raspberry Pi OS только недавно обзавелась 64бит версией и не может похвастаться полноценной поддержкой всех программ, даже разработчики сказали, что это не приоритетная задача.

С чего начать кибердеку Linux, Электроника, Raspberry pi, Пятничный тег моё, Длиннопост

В итоге мы получаем готовую систему на базе Debian, если вы знакомы с Ubuntu, к примеру, она тоже основана на ней, а значит всё, что работает там будет работать и тут.

С чего начать кибердеку Linux, Электроника, Raspberry pi, Пятничный тег моё, Длиннопост

С этой ос легко проверить, что все работает. Но мне в последствии захотелось перейти на Twister OS. Но перейти на нее можно и с уже установленной Raspberry OS.

Адьёс, чумбы!

Показать полностью 6

Ламповый усилитель звука

Регулировка громкости выполнена при помощи Arduino и микросхемы PT2258.
Развязывал PT2258 от шума при помощи SM-LP-5001.

Отличная работа, все прочитано!