Напиши программу для движения вперёд двух метров подключенных к ардуино уно с помощью моторного шилда HW-130 и свечения встроенного светодиода от фоторезистора подключенного к А0
cpp
#include <AFMotor.h>
2. Инициализируем моторный шилд:
cpp
AF_DCMotor motor1(1);
AF_DCMotor motor2(2);
3. Определяем пины для светодиода и фоторезистора:
cpp
const int ledPin = LED_BUILTIN;
const int photoresistorPin = A0;
4. В функции setup() инициализируем светодиод и Serial для отладки:
cpp
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
5. В функции loop() считываем значение с фоторезистора и на основе этого двигаем моторы:
cpp
void loop() {
int lightValue = analogRead(photoresistorPin);
Serial.print("Light Value: ");
Serial.println(lightValue);
digitalWrite(ledPin, HIGH); // Включаем светодиод
// Если светлее, чем пороговое значение, двигаем моторы вперед
if (lightValue > 500) {
Serial.println("Moving forward");
motor1.setSpeed(255);
motor2.setSpeed(255);
motor1.run(FORWARD);
motor2.run(FORWARD);
delay(2000);
motor1.run(RELEASE);
motor2.run(RELEASE);
} else {
Serial.println("Not enough light");
}
digitalWrite(ledPin, LOW); // Выключаем светодиод
delay(500); // Задержка перед следующей итерацией
}
Данный код считывает значение с фоторезистора, и если оно превышает значение 500, то двигает моторы вперед на 2 секунды. Светодиод на Arduino Uno также мигает для индикации работы программы.
Помимо кода потребуется подключить моторы к моторному шилду и фоторезистор к пину A0 на Arduino Uno.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет