Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Погрузись в Свидания с отличиями — романтическую игру «поиск отличий», где ты встречаешь девушек, наслаждаешься захватывающими историями и планируешь новые свидания. Множество уровней и очаровательные спутницы ждут тебя!

Свидания с отличиями

Казуальные, Головоломки, Новеллы

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
41
AnatoliyB
AnatoliyB
1 день назад
Arduino & Pi

Pixel Table: от идеи до реализации интерактивного пиксельного стола⁠⁠

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Первый рабочий прототип

Давайте знакомиться!

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

Этап 0: Как всё начиналось

Однажды мне попался на глаза проект пиксельного стола, и я подумал, что было бы круто сделать стол не просто с красивыми визуальными эффектами, а ещё и с играми и звуковым сопровождением, т.е интерактивный. И я начал изучать тему…

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Стол из интернета

Этап 1: Исследование существующих проектов

В интернете есть сотни проектов НЕинтерактивных (не реагирующих на касания) столов и матриц на адресных светодиодах, они предназначены исключительно для вывода красивых картинок. Вспомним тот же рюкзак с дисплеем от @AlexGyver:

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

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

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

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука
  • Часть разработок не имеет обратной связи на нажатия, а выступают просто красивым светодиодным декором, а нам нужны интерактивные функции для игр и других эффектов. Это в разы усложняет разработку;

  • Все существующие проекты собраны на коленке и имеют огромные недочёты в плане трудозатрат на сборку: несколько сотен проводных соединений и точек пайки, десятки человекочасов работы. Такое нам не подходит, я слишком ленив, чтобы руками всё это паять, а значит нужны печатные платы без проводных соединений, разъём-в-разъём, плата-к-плате, side-by-side;

  • Конструкция корпуса зачастую тоже достаточно сложная, с вырезами/выпилами, с клеем или герметиком. Такое тоже не нравится, нужно что-то максимально простое из обычного мебельного ЛДСП, чтобы можно было заказать раскрой на ближайшем производстве;

Этап 2: Проектирование печатной платы

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

В качестве канала связи рассматривал RS485 и CAN:

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

  • А вот CAN позволяет организовать сеть равнозначных устройств и даже имеет аппаратный механизм арбитража коллизий. Идеальное решение для построения событийной модели обработки нажатий: есть клик – отправили, клика нет – молчим. Короче говоря, сообщения о нажатии отправляются в шину вне очереди, что позволит обрабатывать нажатия в кратчайшие сроки.

В качестве микроконтроллера был выбран самый популярный и дешёвый микроконтроллер с CAN шиной на борту – STM32F103, имеющий к тому же десятки китайских клонов на случай необходимости дальнейшей оптимизации по цене/наличию. Наверняка у каждого здесь есть завалявшаяся дома платка Blue Pill с подобным контроллером. Вот и у меня была.

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

В качестве светодиодов были выбраны обычные RGB адресные WS2812B. Тут всё очевидно – работают независимо при последовательном подключении:

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

В качестве датчика нажатия был выбран оптический сенсор VCNL36821S, комбинирующий в себе светодиод и фотодиод, работающие в ИК диапазоне длин волн 800..1000нм, а значит он не будет реагировать на RGB спектр светодиодов 400..700нм. С другой стороны, это не самое дешёвое решение, но точно одно из самых простых при автоматизированной сборке печатных плат. Один smd элемент и готово, никаких тебе емкостных сенсоров в виде улиток из проволоки (вспоминаем про желание избежать трудоемкости при сборке).

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

VCNL36821S

Сколько датчиков и светодиодов можно подключить к одному контроллеру STM32F103 в корпусе LQFP-48 без использования всякого рода расширителей портов? Все звёзды сошлись на размере сегмента 5х5 = 25 пикселей. В прототипе задействованы абсолютно все ноги контроллера, даже пришлось позаимствовать одну ногу SWD из разъёма для программирования.

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Одна из сложностей при проектировании печатной платы заключалась в том, что у сенсора VCNL36821S отсутствует возможность задавать адрес I2C, а у микроконтроллера STM32F103 только две шины I2C. Как же быть? Ответ был найден на просторах Stackoverflow и заключался в коммутации линии SDA через диоды Шоттки. Гениально, как мне кажется:

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

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

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Версия 1.0

Управлять столом будет обычная Raspberry Pi 4B+ вот с такой платой расширения для CAN шины:

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Сами платы были заказаны в Китае на PcbWay с автоматизированной сборкой, т.е сам я ничего не паял.

Ну и затратная часть на платы:

  • Текстолит * 15 плат = 11 800 ₽

  • Компоненты * 15 плат = 29 600 ₽

  • Авто монтаж * 15 плат = 30 600 ₽

  • Доставка с Китая = 13 560 ₽

  • Итого: 85 560 ₽

Этап 3: Проектирование корпуса

Имея размер одной печатной платы, можно собрать всё это в деревянный корпус. Я выбрал формат обычного журнального столика.

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

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

  • Во-первых, такой отступ становится весьма неочевидным в играх, например пинг-понг, когда мячик отражается от невидимой стены;

  • Во-вторых, эстетически это смотрится весьма странно, когда поле светится не всё.

А для дополнительной электроники можно просто сделать двойное дно и доступ для обслуживания.

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

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

В качестве материала корпуса была выбрана фанера, т.к она намного крепче и долговечнее обычной мебельной ЛДСП.

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

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

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Сетку вырезал на лазерном ЧПУ из фанеры 3 мм, размер каждой ячейки 4х4х4 см.

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Затраты на корпусные детали:

  • Раскрой сетки из фанеры 3мм = 5 000 ₽

  • Фанера для корпуса стола + раскрой = 4 600 ₽

  • Акрил + резка = 4 200 ₽

  • Краска + валик = 1 750 ₽

  • Метизы, втулки, клей = 830 ₽

  • Покраска своими руками = Бесценно

  • Итого: 16 380 ₽

Этап 4: Написание прошивки и отладка

Для написания кода использовал программы STM32CubeMX и STM32CubeIDE, для прошивки и отладки китайские клоны программатора ST-LINK V2 и логического анализатора Saleae Logic. Вообще обожаю эту связку, никогда ещё программирование и отладка микроконтроллеров не были настолько простыми и доступными.

Из интересного, что можно было бы рассказать про написание прошивки:

Т.к контроллер весьма небольшой, и чтобы не тащить в проект тяжеловесную RTOS, я часто использую самописную систему событий, привязанную к 1 мс таймеру. Занимает буквально сотню строчек кода: установить событие через N мс, проверить готовность события к исполнению, очистить событие. Это покрывает практически все мои нужды по организации логики программы под микроконтроллер и занимает памяти чуть более, чем ничего.

Отдельно хочу рассказать про логику организации мной адресного пространства CAN. Я разбил адресное пространство 2048 адресов на 4 группы:

  • широковещательная команда;

  • целевые команды конкретным сегментам;

  • посылки от сегмента;

  • и в конце простые пакеты с цветами.

В CAN, чем ниже адрес пакета, тем у него выше приоритет. Это означает, что посылки от устройств (с кликом или ответом на запрос) имеют приоритет выше, чем пакеты с цветами. Таким образом, клик всегда будет получен почти мгновенно, даже когда идет активная “отрисовка” картинки и шина занята.

В коде я реализовал поддержку трех разных палитр:

  • RGB6 – 6 бит на цвет, где 3 бита цвет RGB, а 3 бита яркость 0-7;

  • RGB12 – 12 бит на цвет, RRRRGGGGBBBB;

  • RGB24 – 24 бита на цвет.

Т.к в стандартном CAN есть ограничение на 8 байт данных, то приходится делить адресные пространства ещё и на адреса конкретных пикселей внутри сегмента. А т.к на каждые 8 байт данных полезной нагрузки CAN имеет ещё оверхед 47 бит в виде адреса и других заголовков пакета, то с расширением палитры цветов, FPS падает непропорционально. Примерно вот таких значений мне удалось добиться при скорости CAN 500 kbit/s:

  • 75 FPS для RGB6;

  • 38 FPS для RGB12;

  • 13 FPS для RGB24;

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

Для любознательных, ссылки на исходники платы и прошивки будут в конце статьи.

Расходы: бесплатно по ночам.

Этап 5: Финальная сборка и ошибки

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука
  • Собрать всю сетку из таких коротких деревянных ламелей оказалось непросто. Я не предусмотрел достаточные допуски для пазов, детали то и дело не вставали на свои места, приходилось подпиливать и применять силу, в итоге плоскость с оргстеклом получилась неидеальной. В новой версии откажусь от пазов в платах, а ламели из фанеры сделаю длиннее, чтобы конструкция сетки получилась более ровной;

  • Как вы могли заметить, на платах я сделал разъёмы папа-мама на нижней стороне текстолита. Такая конструкция очень удобна при сборке и стоит три копейки, но делает стол абсолютно непригодным для ремонта, т.к нет возможности достать и заменить одну плату, приходится откручивать всех соседей;

  • Оргстекло, которое я нашел на местном производстве, как оказалось, плохо подходит для оптического сенсора, т.к имеет слабую светопропускаемость. Это приводит к очень маленькому полезному сигналу с датчиков и необходимости искать компромисс между ложными срабатываниями и “силой” (читай – площадью) нажатия;

  • Также я допустил небрежность и запитал всю матрицу плат двумя тонкими проводами… Как вы можете догадаться, долго такая сборка не проработала, больше 20А в пике как-никак. Решение простое – подкинуть питание ещё в несколько точек по периметру.

Сопутствующие расходы:

  • Блок питания 5V 150W = 4 560 ₽

  • Raspberry Pi 4B+ = 12 000 ₽

  • Плата расширения CAN = 2 940 ₽

  • USB Type C = 250 ₽

  • Плата аудиоусилителя = 296 ₽

  • Динамики + накладки = 407 ₽

  • Кабель AUX = 274 ₽

  • Разъём питания = 281 ₽

  • Кабель питания = Бесплатно от старого монитора

  • Сборка своими руками = Бесценно

  • Итого: 18 068 ₽

Этап 6: Управляющее ПО на Малинке

Моя любимая часть, моя гордость…

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Годом ранее, работая над своим основным проектом Pixel Quest, я к нашему бэкенду на Go подключил Lua интерпритатор. С тех пор все игры нашей сети локаций разрабатываются на Lua.

Для Pixel Quest мы сделали открытую систему разработки игр. Что это значит:

  • во-первых, у нас есть визуальный конструктор игр "Пол–это лава", где можно попрактиковаться в покадровой отрисовке игр;

  • а во-вторых, у нас есть собственная онлайн IDE для разработки игровых сценариев на простом скриптовом языке Lua, который может освоить любой толковый школьник за несколько вечеров, при этом исходный код наших игр публично открыт в репозитории на GitHub, что делает обучение ещё проще.

В свой онлайн редактор для удобного тестирования игр мы добавили вот такую 3D визуализацию:

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

Почему нас сравнивают с Roblox?

Роблокс даёт возможность игрокам самим разрабатывать игры и даже зарабатывать на них, и мы в перспективе хотим сделать что-то похожее. А ещё на ютубе нашу игру “Безопасный цвет” постоянно сравнивают с играми “Color blocks” или “Block party” из Roblox, хотя когда я её разрабатывал, я ещё ничего не знал о Роблоксе...

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

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Визуальный покадровый конструктор игр Пол – это лава

Этап 7: Версия 2.0

Для будущей версии я переразвёл печатную плату с учетом предыдущего опыта, а именно:

  • сделал разъёмы не горизонтальными, а вертикальными, таким образом можно будет вынимать и устанавливать отдельные платы. Платы между собой будут соединяться П-образными штырьками;

  • удвоил количество светодиодов, чтобы получить более яркую и сочную картинку, а также резервирование на случай выхода светодиода из строя;

  • сделал плату размером 4х5 пикселей, чтобы избавиться от “рамки” по краям и получить поле нужного размера 24х15 для совместимости с игровыми комнатами, а также расширить диапазон возможных CAN адресов с 16 до 32, что даст возможность строить столы большего размера;

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

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

Заключение

Pixel Table: от идеи до реализации интерактивного пиксельного стола Опрос, Электроника, Сборка, Raspberry pi, Видео, Длиннопост, Своими руками, Программирование, Игры, Разработка, Alexgyver, Вертикальное видео, Короткие видео, Без звука

Небольшое видео, суммирующее вышесказанное:

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

Ссылки на исходники печатных плат, прошивки под микроконтроллер и другие полезные материалы по проекту можно найти вот в этом телеграм посте (будет обновляться): t.me/pixel_quest/360. Там же в канале будет выкладываться и новая информация по проекту.

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

Далее хотим попробовать наладить серийное производство. Мы считаем, что потенциал у проекта огромный, хотелось бы его развивать.

Какие сценарии развития продукта мы видим:

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

  • Установка в виде вендинговых игровых автоматов в ТЦ и для привлечения внимания к нашему основному бизнесу;

  • Размещение на локациях Pixel Quest в качестве дополнительного развлечения;

  • Использование в качестве отладочного стенда для тестирования ПО, игр и различных эффектов в миниатюре.

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

Как вы считаете, в каком направлении больше перспектив?
Всего голосов:
Показать полностью 21 4 1
[моё] Опрос Электроника Сборка Raspberry pi Видео Длиннопост Своими руками Программирование Игры Разработка Alexgyver Вертикальное видео Короткие видео Без звука
17
21
rapidograf
rapidograf
4 дня назад
Хомячу Сервер

Апач на малине⁠⁠

Примерно лет шесть назад, для капельного поливания подвесного огорода.

Поставил на малину Апач, телеграм бот, пых, яву.

Весь этот зоопарк соединил и удалено поливал огород по расписанию или по запросу телегу.

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

Связь шла через сервис noip

К машине по квадратной шине были присоединены rtc и Ферро электрическая память.

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

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

Я знал когда электричество пропадало(писался в лог при запуске малины последнее записанное время) и когда включалось.

На малине жили какие-то жучки и паучки, возможно грелись о проц.

В силовой части стояло реле которое вклюслало клапан поливочный.

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

ДокладЪ окончен

[моё] Электрика Малина Raspberry pi Огород Автоматика Сервер Apache PHP Python Текст
20
5
zwuck
15 дней назад

Raspberry Pi. От любви до ненависти и обратно. Часть третье. Прозрение и возвращение к истокам⁠⁠

Такс-такс-такс, шо тут у нас, сначала признавался к любви к малинке (тыц), а потом набросал говна на вентилятор (тыц) и доволен?

Raspberry Pi. От любви до ненависти и обратно. Часть третье. Прозрение и возвращение к истокам Личный опыт, Raspberry pi, Самопиар, Просветление, Длиннопост

Не совсем

Давайте для начала определим, являются ли эти минусы (тыц) настоящими минусами или я просто накидал фекалий на лопасти (да/нет). Для начала поясню, что я имею ввиду под «настоящими минусами». Смотрите, любой минус чего-либо, хотите вы этого или нет, это всегда субъективная оценка. Давайте на собственном примере. Я с детства был пк-боярином.

Raspberry Pi. От любви до ненависти и обратно. Часть третье. Прозрение и возвращение к истокам Личный опыт, Raspberry pi, Самопиар, Просветление, Длиннопост

Да начнется…

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

Raspberry Pi. От любви до ненависти и обратно. Часть третье. Прозрение и возвращение к истокам Личный опыт, Raspberry pi, Самопиар, Просветление, Длиннопост

Только это был первый сыч

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

Raspberry Pi. От любви до ненависти и обратно. Часть третье. Прозрение и возвращение к истокам Личный опыт, Raspberry pi, Самопиар, Просветление, Длиннопост

Очевидно же)))

Так вот, давайте вернемся обратно к малинке. Я брал ее для решения конкретных задач, пытался состряпать собственный сервер, чтобы раскатывать на нем self-hosted решения, дабы минимизировать зависимость от облачных провайдеров. И с этой задачей малинка идеально (почти) справляется. Мало оперативной памяти? Установил версию операционной системы без графического интерфейса, потребление памяти базовыми процессами минимально и достаточно высокая скорость работы (не путать с производительностью). Дорогие комплектующие? На начальном этапе они и не нужны. Даже активного охлаждение не нужно, у меня малинка пассивно охлаждалась, и температура только в редких моментах достигала значения в 70 градусов, по цельсию каэш. Стоимость? Да, чуть выше, чем аналогичный по характеристикам мини-пк (в чистой производительности мини-пк, безусловно, будет выигрывать в чистую), но взамен вы получаете огромное сообщество энтузиастов, которые разобрали большинство «проблем» малинки и долгосрочную поддержку. Малинка просто работает, просто работает из коробки. Минимально возможный размер, отсутствие шума (ведь нет движущихся частей), минимальное энергопотребление (а вот это преимущество arm архитектуры процессора). Иногда я вообще забывал, что малинка находится у меня на столе.

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

Ну и не забываем, я разработал чат-рулетку в виде мини-приложение в telegram, как говорится welcome t.me/Socionyx_Bot/socionyx. Затестите, вам не сложно, мне приятно!!!))).

Ссылка на мой telegram канал t.me/socionyxchannel, you are welcome too, где я пишу про будни разработчика.

Показать полностью 3
[моё] Личный опыт Raspberry pi Самопиар Просветление Длиннопост
5
3
zwuck
20 дней назад

Raspberry Pi. От любви до ненависти и обратно. Часть вторая. Про ненависть (нет)⁠⁠

Такс-такс-такс, шо тут у нас, малинка? Наканецта!!!

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

Карта памяти.

Да, по умолчанию, вы приобретаете отдельно карту памяти для своей малинки и используете ее в качестве постоянного хранилища. Вроде все просто и понятно, но есть пара моментов, карта памяти это не hdd/ssd и она обладает гораздо, ГОРАЗДО худшими характеристиками, особенно, если это касается надежности.

Raspberry Pi. От любви до ненависти и обратно. Часть вторая. Про ненависть (нет) Raspberry pi, Мюсли, Длиннопост

Надежно, как швейцарские часы

Arm архитектура центрального процессора

Архитектура процессора, который стоит в малинке, не та же самая, что в твоем компьютере (ака x86/amd64), только если ты не используешь современные эпловские компьютеры, а такая же, что и в твоем смартфоне или планшете. Как результат, приложение, написанное под x86/amd64 не запустится на малинке (и наоборот). Получается, что огромный (почти бесконечный) пласт приложений под винду и линукс просто не запустятся (эмуляторы я не рассматриваю, даже не знаю, есть ли они под малинку) и вам необходимо искать/использовать специализированные приложения. Именно поэтому я установил gitea, а не gitlab, так как gitlab просто не было под малинку.

Raspberry Pi. От любви до ненависти и обратно. Часть вторая. Про ненависть (нет) Raspberry pi, Мюсли, Длиннопост

На этом наши полномочия все

Стоимость

На маркетплейсах за сопоставимую стоимость можно приобрести мини пк с лучшими характеристиками: процессор n95/n100/n150, 8 гигабайт оперативной памяти и 256 гигабайт ssd и виндоус в придачу. Вы получаете мощнее железо и возможность запускать почти весь существующий софт для настольных компьютеров. При этом, некоторые перекупы могут завышать стоимость малинки в несколько раз.

Raspberry Pi. От любви до ненависти и обратно. Часть вторая. Про ненависть (нет) Raspberry pi, Мюсли, Длиннопост

Все очень плохо

Периферия

Хотите корпус для своей малинки? Плати денежку. Охлаждение в виде вентилятора или радиатора? Плати денежку. Память? Плати денежку. И так далее, причем, стоимость иногда такой периферии может быть не дешевой. Мини пк же сразу из коробки будет полностью готов. Включил и работает.

Raspberry Pi. От любви до ненависти и обратно. Часть вторая. Про ненависть (нет) Raspberry pi, Мюсли, Длиннопост

Дай

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

Ну и не забываем, я разработал чат-рулетку в виде мини-приложение в telegram, как говорится welcome t.me/Socionyx_Bot/socionyx. Затестите, вам не сложно, мне приятно!!!))).

Ссылка на мой telegram канал t.me/socionyxchannel, you are welcome too, где я пишу про будни разработчика.

Показать полностью 4
[моё] Raspberry pi Мюсли Длиннопост
2
10
DELETED
1 месяц назад
Механизмы радости

Ответ на пост «Как поднять настроение?»⁠⁠1

Я в Питере живу и очень сильно завишу от погоды и длины светового дня. Тут, как правило, весной и осенью затяжная серая дрисня, настроение на нуле. Зимой, когда темнеет в 15:00, а светает в 11:00 вялый хожу. Когда белые ночи - не высыпаюсь, тк в 5 встаю.

Думал на эту тему и вот к чему пришёл. Короче, управлять настроением в суровом климате можно с помощью света. Нужна светодиодная лента под потолком с rgb и оттенками белого. Ну и блекаут шторы или жалюзи какие-нибудь. Лентой можно управлять распбери пай и запрогать на любимом языке. Эмулировать рассвет с тёплыми тонами, белый дневной свет, закат с красноватым оттенком. И всё это с медленным усилением и затуханием. Например, можно зацепиться за движение солнца на экваторе. Даже ночью это как ночник юзать можно, подобрав яркость и оттенок. Шторы тоже можно с сервоприводами замутить. Но это я пока не реализовал, просто вынашиваю идею)

Настроение Текст Raspberry pi Схемотехника Идея Ответ на пост
20
11
Bleser
Bleser
2 месяца назад
Разделенные клавиатуры

Моя новая клавиатура⁠⁠

В этот раз я заказал печатные платы и лазерную резку оргстекла.

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

Расположение клавиш делал через Ergogen.

Микроконтроллер: YD-RP2040 2 шт.

Прошивка: QMK

Моя новая клавиатура Клавиатура, Raspberry pi, Своими руками
[моё] Клавиатура Raspberry pi Своими руками
12
digiseer
digiseer
2 месяца назад

Снова в Яндекс отрицательный рост⁠⁠

Была у Алисы такая киллфича - слушаешь песенку на незнакомом языке - и невзначай так спрашиваешь "Алиса, а о чем эта песня?" и она радостно вещает тебе подробности) Радовало.

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

И поддержка такая: Эта фича сейчас не поддерживается" - мол жричодали.

И вообще отупела она сильно, не смотря на все плюсы и про...

И песен интересных 2/3 нет, как и фильмов..

Так вот. Чёт думается что закатывется эпоха.

Что делать-то?

Заводить на RaspberryPi какойнить мистраль с голосом и доступом к NAS?

Можен кто-нибудь такое делал уже?

Музыка Боги маркетинга Песня Яндекс Алиса Raspberry pi Текст
4
15
vladbluesky
vladbluesky
2 месяца назад

Как я сделал Telegram-бота для управления умным домом (и чуть не спалил кота)⁠⁠

Когда у тебя дома валяется Arduino, ESP8266 и пылится Raspberry Pi, долго держаться не получится. Я знал, что в какой-то момент скажу себе: «А не собрать ли умный дом своими руками?» — ну и, конечно, сказал 😅

Хотелось чего-то простого: чтобы включать свет 💡, проверять температуру 🌡️, перезапускать роутер 📡 (да, я устал дергать вилку вручную) — и всё это с телефона, в пару касаний. Telegram показался идеальной платформой: он у всех есть, работает быстро, и... ну, боты — это кайф 😎

📦 Из чего я собирал:

Arduino UNO — брал на себя датчики и реле

ESP8266 — делал Wi-Fi-связь между железом и сетью

Raspberry Pi 3B+ — крутил Telegram-бота на Python

aiogram — та самая библиотека, с которой работать — одно удовольствие ⚡

И, конечно, жменька проводов, паяльник и терпение 🧪

Запуск получился примерно такой: Raspberry принимал команды в Telegram — через aiogram, естественно. Там всё по уму: asyncio, FSM, роутеры, вся эта красота. Я сделал хэндлеры для команд вроде:

/light_on 💡 — включить свет в спальне

/temp 🌡️ — показать температуру на балконе

/restart_router 🔁 — отдельное реле, подключенное к роутеру

/photo 📸 — Pi присылает фотку с кухни через камеру

Когда команда прилетала — Pi швырял HTTP-запрос ESP-шке, та передавала команду Arduino, и магия случалась ✨. Да, это звучит как схема доставки пиццы с участием дрона, но оно работало!

🛠️ Сюрпризы были, как без них:

Однажды ESP зациклилась, и реле включалось/выключалось каждую секунду. Свет в ванной начал жить своей жизнью. Бот бодро слал мне:

💡 Свет включён
💡 Свет выключен
💡 Свет включён
💡 Свет выключен

Кот охренел и убежал за шкаф. Я — перешил прошивку ночью 🙃

Семья быстро привыкла:
👨‍🦱 Батя шлёт /heat_on, когда на даче холодно.
👧 Сестра тыкает в кнопки «✨ гирлянда» и «☁️ режим уюта».
👩‍🦰 Жена возмущается, когда бот отвечает дольше 2 секунд — «почему наш ИИ такой тормоз?»

Потом я добавил inline-кнопки, авторизацию по Telegram ID (да, после того, как забыл закрытый репозиторий с токеном — спасибо GitGuardian за уведомление в почту 😅), и бот стал реально домашним.

📸 Из фишек:

Фото с кухни 🧀 — присылает на команду

Уведомления в Telegram, если температура упала ниже 18°C ❄️

Перезагрузка интернета через /restart_router — кто поймёт, тот поймёт

Пуш-оповещения, если свет остался включён на ночь 🌙

Сейчас думаю переписать всё под Home Assistant, но честно? Бот стал привычной частью дома. Он не просто выполняет команды — он реагирует, напоминает, заботится. Псевдо-умный дом, сделанный из запчастей и Python-а — но свой, родной, как тёплый Arduino в ладони 😌

Если ты тоже делаешь или хочешь сделать Telegram-бота для управления домом — не бойся, просто начни. aiogram действительно топ, даже для начинающих. А если интересно — могу выложить схемы, код и пример docker-сборки на Raspberry 💻

📌 Поддержи плюсом, если понравилось. Или напиши в комментах, какую функцию добавить в бота: чайник, жалюзи, кормушку для кота — всё можно собрать, если не боишься слегка пахнуть паяльником 🧑‍🔧

Показать полностью
Умный дом Telegram Бот Чат-бот Arduino Esp8266 Raspberry pi Своими руками IT IT юмор Технологии Цифровые технологии Беспроводные технологии Telegram бот Текст
28
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии