Простые мини проекты на ардуино для начинающих

0
9

Мини проекты ардуино

Подключите светодиодную ленту WS2812B и запрограммируйте плавную смену цветов через FastLED. Достаточно трёх пинов: питание, земля и сигнал. Попробуйте анимацию «радуга» – встроенный пример из библиотеки демонстрирует работу с массивами и таймингами.

Создайте трекер влажности почвы на сенсоре FC-28. Аналоговый сигнал считывайте через analogRead(), а при падении уровня ниже порога – включайте реле для полива. Критическое значение подберите экспериментально: для большинства растений подходит диапазон 300–500 единиц.

Первые шаги с микроконтроллерами: идеи для старта

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

Используйте сервопривод SG90 для автоматизации дверцы кормушки. Управляйте углом поворота через потенциометр или по таймеру – достаточно 5 В и одного сигнального провода.

Запрограммируйте пьезоизлучатель на воспроизведение мелодии. Загрузите ноты в массив, задайте длительности и используйте функцию tone(). «Чижик-пыжик» займёт 20 строк кода.

Сборка мигающего светодиода с управлением кнопкой

Подключите светодиод к цифровому пину 9 через резистор 220 Ом. Кнопку соедините с пином 2 и землей, добавьте подтягивающий резистор 10 кОм к +5V.

Используйте этот код:

const int ledPin = 9;
const int buttonPin = 2;
bool blinking = false;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
}
void loop() {
if (digitalRead(buttonPin) == LOW) {
blinking = !blinking;
delay(300);
}
if (blinking) {
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
}
}

При нажатии кнопки светодиод начнет мигать с интервалом 0.5 секунды. Повторное нажатие остановит процесс. Для надежного контакта используйте макетную плату и перемычки.

Если светодиод не загорается, проверьте полярность: длинная ножка должна быть подключена к пину, короткая – к земле. Убедитесь, что контакты кнопки правильно соединены с цепью.

Компоненты: плата Uno, датчик DS18B20, резистор 4.7 кОм, LCD 1602 I2C, провода.

Схема подключения:

  • DS18B20: питание (3.3V или 5V), земля (GND), сигнал (D2) с подтягивающим резистором.
  • LCD: SDA → A4, SCL → A5, питание → 5V, земля → GND.

Код:

#include <OneWire.h>
#include <DallasTemperature.h>
#include <LiquidCrystal_I2C.h>
#define SENSOR_PIN 2
OneWire oneWire(SENSOR_PIN);
DallasTemperature sensors(&oneWire);
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
sensors.begin();
lcd.init();
lcd.backlight();
}
void loop() {
sensors.requestTemperatures();
float temp = sensors.getTempCByIndex(0);
lcd.setCursor(0, 0);
lcd.print("Temp: ");
lcd.print(temp);
lcd.print(" C");
delay(1000);
}

Настройка:

  • Установите библиотеки OneWire, DallasTemperature и LiquidCrystal_I2C через менеджер библиотек.
  • Проверьте адрес I2C дисплея (0x27 или 0x3F) с помощью сканера адресов.