Сообщество - Arduino & Pi

Arduino & Pi

1 463 поста 20 778 подписчиков

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

292

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

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

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

кусачки, зачистки, обжимки, плоскогубцы самых разных видов и назначений. Отверток, сверел, и т.д. и т.п. в общем фулл эпик сет для монтажника. Также взял 3d принтер flying bear gost 5, моделил и печатал. Печатать качественно получилось ой как не сразу. Взял примитивный осцил, сразу второй монитор, ноут, рабочую мебель, короче устроил дома мастерскую. Попутно смотрел лекции по с++, повторял проекты Алекса на ардуинке, познакомился с гитхабом. По мере необходимости разбирался с работой i2c, spi, uart, 1-wire. В какой то момент мне стало неудобно работать с атмегой. Перешёл на esp32. Шикарная вещь. Куча памяти, 2 ядра, высокая частота, встроенный wi-fi и Bluetooth, а самое главное поддержка freertos. Поставит vs code, platformio и мне открылся новый чудный мир. Потом начал разбираться с передачей данных по wi-fi и Bluetooth. Открыл для себя самую нелогичную главу (даже битовые операции мне легче зашли) стринг и таблицы ascii. Но кое как справился, теперь в mit app Inventor делаю приложения под андроид и верчу переменные на х... как хочу :) и получается очень не плохо, самое главное стабильно, ни разу не видел ошибок или дисконектов. Уже несколько сделал на заказ. Да, монтаж у меня занимал большую часть времени и я не доволен объемом того, что я успел изучить за год. Я начал пояса Яндекса по c++, что бы структурировать знания, но пришлось бросить из-за срочного, большого и денежного заказа. Но в этом направлении тоже вырос, теперь разрабатываю сам не сложные печатные платы на smd, заказываю у нас в России, там же трафареты, паял феном, но сейчас закажу термостол, что бы по взрослому уже. В итоге на esp32 и готовых датчиках, экранах, исполнительных устройствах я могу разработать уже интересные вещи, могу читать чужой код, выдирать из него куски для себя и ковырять библиотеки. Но вот стала задача, где нужна stm32 с встроенной аппаратной поддержкой usb, датчики, где идёт голый модуль и на него есть только даташит, протокол передачи данных по usb и Bluetooth с компьютером, высокоскоростной, параллельный с автоидентификацией подключаемых устройств, да так, что бы разработчики ПО под винду и другие ос смогли обработать эти данные и усе, я чувствую себя как год назад, когда я ничего не знаю и не понимаю. Вот только тут я столкнулся с проблемой, что эта информация уже не начального уровня и ее не так много, точнее много, но она не структурирована и тебя не водят за ручку. В том году мне много чего подсказали, может и сейчас кто подскажет, где можно в достатке получить эти знания, по схемотехнике, как делать всю обвязку для stm32 и различных датчиков имея только даташит, по протоколам передачи данных, по программированию. А еще я бы хотел познакомиться с web интерфейсами, например на raspberry поднять web сервер с интерфейсом и передавать на него переменные с микроконтроллера по wi-fi с обратной связью. Делал из малинки локальный сервер blynk, wi-fi маршрутиризатор, подключал к ней esp32 и телефон, вышло просто и красиво, но такое нельзя использовать в коммерческих целях, только для себя, а значит не практично.

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

Кстати, я тут пару лет назад делал пост как прожить на МРОТ, сейчас то время вспоминаю с ужасом и непониманием, как я так жил. Даже моих примитивных знаний хватает, что бы зарабатывать в несколько раз больше. И спасибо короне, из-за которой меня сократили и я решил попробовать себя в самозанятых, а то так бы и продолжал работать, думая что это нормально.

P.S. Писал после 14 часов работы лежа с телефона, по этому простите за сумбур и орфографию.

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

Geniatech представила альтернативу Raspberry Pi с поддержкой 4К-видео

Компания Geniatech анонсировала одноплатные компьютеры XPI-S905X2 и XPI-S905X3, которые могут стать альтернативой Raspberry Pi при реализации различных проектов в образовательной сфере, области автоматизации, Интернета вещей и пр.

Geniatech представила альтернативу Raspberry Pi с поддержкой 4К-видео Интернет вещей, Raspberry pi

Модель Geniatech XPI-S905X2 несёт на борту процессор Amlogic S905X2 с четырьмя вычислительными ядрами Cortex-A53 и графическим акселератором Mali-G31 MP2. Версия Geniatech и XPI-S905X3 получила чип Amlogic S905X3/S905X4 с четырьмя вычислительными ядрами Cortex-A55 и интегрированным ускорителем Mali-G31 MP2.


Новинки укомплектованы 2 Гбайт оперативной памяти и флеш-накопителем eMMC вместимостью 8 Гбайт (опционально — 16 и 32 Гбайт). Дополнительно можно установить карту памяти стандарта microSD.


Предусмотрен интерфейс HDMI 2.0/2.1 с возможностью вывода изображения в формате 4К со скоростью 60 кадров в секунду. Есть сетевой контроллер Gigabit Ethernet с гнездом RJ45 для подключения кабеля. Дополнительно может быть установлен модуль беспроводной связи Wi-Fi / Bluetooth 4.2.

Geniatech представила альтернативу Raspberry Pi с поддержкой 4К-видео Интернет вещей, Raspberry pi

Предусмотрены три порта USB 2.0 и один разъём USB 3.0. Упомянута поддержка интерфейсов GPIO, SPI, I2C, PWM, UART. Габариты составляют 85 × 56 мм.


Продажи одноплатных компьютеров уже начались. Их стоимость варьируется от 35 до 42 долларов США в зависимости от оснащения.

Источник: 3dnews.ru

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

Ардуино робот играет музыку на винных бокалах

Всем привет! Сегодня я расскажу про то, как я собрал ардуино робота, играющего музыку на винных бокалах.

И так давайте все по порядку.

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

Бокалы

Я перепробовал звучание разных бокалов которые нашел у себя в доме и как оказалось современные бокалы звучат как то очень слабо, возможно в этом есть Китайский след. А вот старые хрустальные фужеры звучат приятно и громко. Только у меня их оказалось всего 7 шт. Что в последствии выльется в ограничение проигрываемых нот. Не хватило всего 1 бокала для проигрывания полноценной мелодии от начала до конца. Пришлось воспроизводить только небольшие кусочки мелодий.

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

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Про молоточек

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

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Просверлил в нем отверстие и нанизал его на кусок провода из меди, после чего для надежности капнул сверху клеем момент.

Для управлением этой барабанной палочкой я использовал старый, советский транзистор KT972, управление которым осуществляется с контроллера через резистор от 270 до 510 Ом. Для гашения отрицательных импульсов самоиндукции параллельно катушке припаял выпрямительный диод 1N4007. Такой можно найти в любой отслужившей свой срок светодиодной лампочке или в старой бытовой технике. Транзистор можно заменить на любой другой в том числе и на MOSFET. С минимальным током перехода не менее 1 А.

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Соленоид с молоточком разместил на пластиковой рейке. После чего его нужно сбалансировать. Так как дисбаланс будет вызывать вибрацию. Для этого на противоположной стороне рейки прикрутил металлическую гайку, предварительно подобрав ее по весу. Далее приклеиваем рейку на распечатанную 100 лет назад на 3D принтере шестеренке.

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

Шаговый двигатель

ШД использовал HANPOSE 17HS4401. Для максимальной скорости вращения, попробовал полношаговый режим, но в этом режиме есть один недостаток, мотор очень громко работает и его жужжание очень сильно выделяется на на фоне звука бокалов. Пришлось пожертвовать скоростью и использовать режим полушага(1/2), а это в свою очередь 400 шагов на один оборот вала. В таком режиме шаговый двигатель начал работать заметно тише, но и почти в 2 раза медленнее. Хотя этого вполне хватает для проигрывания спокойной музыки.

В проекте использовался драйвер шагового двигателя A4988. Но где то на форумах я прочитал про тихий драйвер TMC-2100, но к сожалению на момент сборки проекта у меня такого не нашлось и пришлось подстраиваться к пониженной скорости мотора. Отказавшись от библиотеки «A4988.h» мне удалось с выжать с ШД максимум.

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Подсветка

Подсветка сделана всего на одном светодиоде ws2812 который я отрезал от светодиодной ленты.

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

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Схема

Соединил все компоненты по нарисованной мной схеме. Установил переключатели на драйвере шагового двигателя в режим полудуплекса. На соленоид и мотор подал 15 В. Так как молоточек для соленоида тяжеловат и при 12 В иногда бывает он не до конца притягивает якорь, Еще для уменьшения щелчков якоря я приклеил на сердечник электромагнита кусочек ткани.

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Используемые в схеме компоненты:

Arduino Nano

Шаговый двигатель 17HS4401

Драйвер шагового двигателя A4988

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

Провода соединительные

Светодиод WS2812

Транзистор Mosfet

Реле автомобильное на 30 А

Музыка

Мелодию можно написать самому или найти готовую на сайте musicboxmaniacs. Если вы будете использовать готовую мелодию, то для начала у нее нужно убрать многоголосость, это значит, что в одном музыкальном такте не должно быть более одной ноты. После чего перенести ее в ручную следующем порядке: самая низкая нота имеет значение 0 и так далее до самой высокой. В моем распоряжении всего 7 бокалов, а это значит, что и нот не должно быть больше 7. Для простых мелодий этого будет достаточно. И еще есть пустой такт, его значение в массиве равно 255. Звук бокалов подстраивается под нужную ноту при помощи воды. Для понижения тона нужно подливать в него воду. Для точной подстройки можно воспользоваться приложением для смартфона «Тюнер пианино» из play Google.

Ардуино робот играет музыку на винных бокалах Arduino, Робот, Музыка, Музыкальные инструменты, Видео, Длиннопост

Скетч для ардуино

Алгоритм работы кода следующий — в массиве хранятся ноты пронумерованные в порядке возрастания от самой низкой равной 0 и до самой высокой равной 6. Каждой ноте соответствует свой бокал. Пустой такт нумеруется значением 255.

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

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

Все настройки находятся в шапке скетча и прописаны в директивах define.


Скачать скетч

Заключение

Спасибо, что дочитали до конца!

Надеюсь эта статья вам понравилась и вы сможете воспользоваться моей наработкой в своих проектах.

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

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

Микрокомпьютер: Raspberry PI 4 Model B 8 GB RAM Часть 8 запуск ОС Manjaro SWAY. Лучшая для админа?

В этом видео покажу как запустить Manjaro Linux 64-bit с оболочкой SWAY на микрокомпьютере Raspberry PI 4 Model B 8 GB RAM.

Адрес проекта https://manjaro.org

Manjaro Linux или Manjaro — дистрибутив GNU/Linux, основанный на Arch Linux, использующий модель обновлений rolling release.



0:55 Скачиваем образ

1:54 Что такое sway

4:28 Записываем образ на карту SD

5:29 Запускаем Manjaro SWAY

6:19 Начальная настройка

10:03 Как включить встроенную запись экрана

10:29 Обзор панели задач

11:24 Настройка сети WiFi

13:06 Где хранятся записанные видео

13:37 Обзор помощника по быстрым клавишам

14:24 Установка обновлений

17:00 Обзор встроенных программ

35:13 Добавление раскладки клавиатуры

43:12 Другая встроенная программа записи экрана wf-recorder

43:38 Работа с терминалами. быстрые клавиши

47:09 Красивая панель блокировки/выключения сервера

49:21 Заключение



У кого беспроводная мышь. Традиционно чиним:

nano /boot/cmdline.txt

вписываем

usbhid.mousepoll=0

и перезагружаемся.


Настройка клавиатуры в sway:

https://wiki.archlinux.org/title/Sway#Keymap

пример конфига

~/.config/sway/config.d/01-keyboard.conf

input * {

xkb_layout "us,ru"

xkb_options "grp:ctrl_shift_toggle"

}


Писать видео лучше через консольный wf-recorder


Быстрые клавиши:

Mod + Enter Новый терминал

Mod + F Сделать текущее окно полноэкранным

Mod + Shift + Q Выйти из программы

Mod + Shift + E Выйти из sway

Mod + Shift + C Обновить конфигурацию Sway

Mod + Shift + - переместить окно в блокнот

Mod + - Показать блокнот

Mod + 0..9 Изменить текущее рабочее пространство

Mod + Shift + 0..9 Переместить текущее окно в указанную рабочую область

Mod + B Горизонтальная компоновка

Mod + V Вертикальная компоновка

Mod + S Stacking компоновка

Mod + E Переключить разделение компоновки

Mod + W Компоновка с вкладками

Мод + фокус на родительском контейнере

Mod + Space Поменять фокус между мозаичным и плавающим

Mod + Shift + Space Переключить плавающий режим

Mod + Tab Следующее рабочее пространство

Mod + Shift + Tab Предыдущее рабочее пространство

Mod + Влево / Вправо / Вверх / Вниз Переместить фокус окна

Mod + Shift + Left / Right / Up / Down Перемещение сфокусированного окна в рабочей области

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

Микрокомпьютер: Raspberry PI 4 Model B 8 GB RAM Часть 7 запуск ОС CentOS 64-bit

В этом видео покажу как запустить CentOS 64-bit на микрокомпьютере Raspberry PI 4 Model B 8 GB RAM.

Как подключить WiFi, добавить место в корневой раздел. Можно ли запустить графический интерфейс. Тест скорости интернета с помощью speedtest cli.

0:28 Эволюция CentOS

2:48 Как найти и скачать образ CentOS Linux для Raspberry PI

4:44 Записываем образ на карту SD

5:35 Запускаем CentOS

6:36 Настройка WiFi

8:29 Установка обновлений

9:24 Ошибка. Не хватило места. Расширяем место на SD карте.

15:09 Подключаемся через SSH. Устанавливаем speedtest cli.

18:20 Тест скорости интернет.

19:43 Место на диске, память, промежуточный итог

21:13 Установка Gnome Desktop (GUI)

34:32 Подводим итоги. Заключение

Используемый софт:

speedtest cli:

https://www.speedtest.net/ru/apps/cli

Linux:

nmtui - настройка сети.

parted - настройка разделов диска.

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

Продолжение поста «Перенос системы на Raspberry Pi 4B»1

Всё получилось очень просто.

На ноуте под виндой склонировал microSD на SSD с помощью balenaEtcher, присоединил SSD к малине и включил. Система запустилась сразу, но вешалась при попытке записи. Пришлось покопаться в логах и сети.

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

https://forums.raspberrypi.com/viewtopic.php?t=245931

Сейчас же всё летает.

3

Микрокомпьютер: Raspberry PI 4 Model B 8 GB RAM Часть 6 запуск ОС Twister OS

Самое большое достоинство Twister OS, это темы похожие на Windows 95-11.

Бухгалтеру, который работал на Windows XP будет приятно. Осталось поставить сюда 1С.

Сайт проекта:

https://twisteros.com/


В этом видео покажу как запустить Twister OS на микрокомпьютере Raspberry PI 4 Model B 8 GB RAM.

Как изменить разрешение экрана. Как решить проблему с тормозящей беспроводной мышью. Добавить раскладку клавиатуры. Обзор штатного ПО. Обзор тем.

0:20 Скачиваем образ

2:55 Заливаем образ Twister OS на флешку

4:04 Миниобзор компьютера

4:38 Запускаем Twister OS

5:18 Чиним медленную беспроводную мышь

6:54 Меняем разрешение экрана

7:39 Меняем английский язык на русский в интерфейсе

8:53 Добавляем русскую раскладку клавиатуры

9:46 Обзор тем рабочего стола

15:09 Включение VNC и SSH

16:31 Добавление значка переключения языка клавиатуры

18:12 Обзор встроенных программ

21:41 Тестируем скорость интернет через WiFi

23:35 Заключение

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

Хакинг. С чего начать?

Мне 16, в будущем планирую быть белым хакером, на данный момент знаю один язык программирования, изучаю 2ой( Python), люди которые занимаются данным делом, скажите пожалуйста что делать дальше и как развиваться, чтобы работать по желаемой профессии?

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