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

Arduino & Pi

1 493 поста 20 825 подписчиков

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

17

Ардуинщики помогите. Плиииз

Прошу помощи в реализации задуманного.


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

Пример:

-100 Ом выход №3 замкнулся на 1 секунду и разомкнулся.

-200 Ом выход №4 замкнулся на 1 секунду и разомкнулся.

-300 Ом выход №5 замкнулся на 1 секунду и разомкнулся.


Нагрузки на контактах никакой не будет вместо лампочек будет вот такая плата.

Мне нужно нажимать контакты изменяя громкость или переключать треки.

Я хочу сделать управление музыкой на авто через родные кнопки на руле. 

Буду очень благодарен если поможете с кодом. Спасибо.

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

Последовательно зажигаем диоды 2

Добрый день!

Вчера советовался по зажиганию диодов (Зажигаем последовательно диоды - нужна ли Ардуина?)

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

Собрал схемку, работает, но есть один момент, который не устраивает:

при нажатии и удерживании кнопки зажигаются диоды:

ОХХХХ

ООХХХ

ОООХХ

ООООХ

ООООО

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

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


// задаем константы


const int buttonPin = 2; // номер входа, подключенный к кнопке

const int ledPin = 13; // номер выхода светодиода

const int ledPin1 = 4;

const int ledPin2 = 6;

const int ledPin3 = 8;

const int ledPin4 = 10;

const int ledPin5 = 12;


// переменные

int buttonState = 0; // переменная для хранения состояния кнопки

void setup() {

/

/ инициализируем пин, подключенный к светодиоду, как выход

pinMode(ledPin1, OUTPUT);

pinMode(ledPin2, OUTPUT);

pinMode(ledPin3, OUTPUT);

pinMode(ledPin4, OUTPUT);

pinMode(ledPin5, OUTPUT);


// инициализируем пин, подключенный к кнопке, как вход

pinMode(buttonPin, INPUT);

}


void loop(){


// считываем значения с входа кнопки

buttonState = digitalRead(buttonPin);


// проверяем нажата ли кнопка

// если нажата, то buttonState будет HIGH:

if (buttonState == HIGH) {

// включаем светодиоды

digitalWrite(ledPin1, HIGH); // зажигаем светодиод

delay(500); // ждем

digitalWrite(ledPin2, HIGH); // зажигаем светодиод

delay(500); // ждем

digitalWrite(ledPin3, HIGH); // зажигаем светодиод

delay(500); // ждем

digitalWrite(ledPin4, HIGH); // зажигаем светодиод

delay(500); // ждем

digitalWrite(ledPin5, HIGH); // зажигаем светодиод

}


else {

// выключаем светодиоды

digitalWrite(ledPin1, LOW);

digitalWrite(ledPin2, LOW);

digitalWrite(ledPin3, LOW);

digitalWrite(ledPin4, LOW);

digitalWrite(ledPin5, LOW);

}

}


что не так, где кроется причина замедленного отключения диодов?


кнопку подключил так:

Последовательно зажигаем диоды 2
Показать полностью 1
107

Онлайн преобразование изображений по алгоритму "Floyd-Steinberg"

Для Ардуино доступно много разных Ч/Б дисплеев.

Для того что бы получить красивое черно-белое изображение для этих дисплеев, с глубиной цвета всего 1 бит, но в тоже время с имитацией полутонов, как на представленных  картинках, то для этого нужно использовать преобразование по алгоритму "Floyd-Steinberg".


Для преобразования можно использовать графические редакторы со встроенной функцией дизеринга Floyd-Steinberg, но ради одной картинки, не все хотят устанавливать тяжелое, платное ПО на свой ПК.

По этой же причине я представляю "Онлайн инструмент для конвертирования изображений по алгоритму Floyd-Steinberg dithering.


Пошаговая инструкция:

1 — Изображение может быть цветным или ч/б с любой глубиной цвета

2 — Сделайте его более контрастным(не обязательно)

3 — Измените его размер до требуемого Вам разрешения

4 — Перетяните подготовленную Вами картинку, поверх изображения на странице конвертера.

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


Перейти в Онлайн конвертер Floyd-Steinberg

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

Для тех, кому лень заниматься конвертированием картинок, есть небольшая галерея уже готовых Ч/Б изображений посмотреть можно здесь


Преобразуем в Си код для Arduino

Для того что бы преобразованное изображение вставить в компилятор с понятным ему форматом, нужно используйте онлайн BIN2HEX конвертер

1 - Нажмите кнопку "Выберите фаил", после чего выберите на своем  ПК, цветное или черно-белое изображение с расширением jpg/png/bmp. Изображение должно быть размером 128 х 64. После того как проконвертированое изображение появилось на экране, Вы можете скопировать готовый Си код и использовать его в своих разработках и скетчах Arduino.


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

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

Зажигаем последовательно диоды - нужна ли Ардуина?

Здравствуйте уважаемые профессионалы, прошу подкинуть идею.

Для стенда, отображающего ход некого процесса нужна простейшая конструкция:

5 светодиодов, которые при нажатии кнопки последовательно зажигаются, т.е. в первую секунду горит первый диод, во вторую первый и второй и так далее, всего диодов пять.

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


1 секунда: ОХХХХ

2 секунда: ООХХХ

3 секунда: ОООХХ

4 секунда: ООООХ

5 секунда: ООООО


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

Устройство изготовим и отдадим, отдавать дурину неохота, да и не покидает ощущение, что гвозди микроскопом забиваем.

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

Ардуино сообщество в борьбе с Короновирусом

Ардуино сообщество в борьбе с Короновирусом

"Let's Make Covid-19 History" - под таким лозунгом 2-го апреля прошла международная конференция по борьбе с COVID-19 организованная сообществом  [Ардуино](Arduino.cc).

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

Ввиду острой нехватки медицинских средств, таких как респираторы, ИВЛ, систем наблюдения за больными и др. DIY-сообществом предлагается разработка и изготовление дешевых устройств в основе, которых служат Arduino-совместимые платы и модули, 3D-модели, изготовленные на «домашних» 3D принтерах. Если ранее к DIY проектам относились скептически и в медицине не применялись из-за отсутствия лицензий и сертификатов, то в настоящей ситуации такие устройства могут оказать настоящую помощь, как говорится: «На войне все средства хороши».

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

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

Ардуино и насущные проблемы

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

https://www.ntv.ru/video/1840845/?from=newspage

Ардуино и насущные проблемы

Специалисты международной сети школ робототехники «РОББО Клуб» по собственной схеме собрали бактерицидный рециркулятор-облучатель. Его можно использовать в детских клубах, офисах, магазинах, дома для обеззараживания воздуха. Схема и инструкции доступны на сайте компании. Такое устройство в «РОББО» планируют установить во все клубы сети.

http://robbo.ru/v-robbo-sobrali-recirkulyator-dlya-obezzaraz...

Поскольку они являются приверженцами открытых проектов и ПО, то выложили у себя на сайте подробную инструкцию с применением Ардуино и без.
http://robbo.ru/rukovodstvo-po-izgotovleniyu-baktericidnogo-...
Показать полностью 1
72

Пузырьковая панель или дисплей из глицерина. Часть-2

Всем привет!

На этот раз я выкладываю продолжение экспериментов с воздушно-пузырьковым дисплеем.

Тем кто не видел первую часть, могут пройти и посмотреть видео по ссылке.

В результате первого опыта выяснилось, что при минимально возможном размере пузырьков, расстояние между ними должно быть не менее 4-5 см. Иначе в жидкости, между пузырьками происходит взаимное влияние друг на друга, как по горизонтали так и по вертикали.

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

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

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


Акриловые перегородки с фоновым экраном, в сборе

Все готово для запуска

Железо

Ардуино нано v.3

Энкодер с функцией нажатия

Драйвер от ШД на микросхеме ULN2003

Электроклапана

Компрессор аквариумный

Шприцы, системы для перелива


Схема

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

Микросхема ULN2003 способна выдерживать токи до 500мА на каждый канал. Защитные диоды от самоиндукции электроклапанов, уже предусмотрены и встроены в микросхему.

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

Скетч для Arduino

Шрифт нарисован не полностью только цифры, заглавные английские и заглавные русские буквы.

Переменные на которые стоит обратить внимание:

uint16_t bub_size=4500; //это размер пузырька

uint16_t bub_space=900; //это расстояние между пузырьками

uint16_t step_bub_size=300, step_bub_space=10; //это шаг наращивания вышеприведенных переменных, при вращении энкодера.

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


Заключение

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

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

Но пузырьки при менее вязких жидкостях не будут иметь одинаковых, ровных форм.

Если у Вас остались вопросы, задавайте. Я с радостью на них отвечу.

Показать полностью 5
Отличная работа, все прочитано!