Мой первый умный робот
Loading...
R МОЙ ПЕРВЫЙ УМНЫЙ РОБОТ
ЛАБОРАТОРИЯ РОБОТОТЕХНИКИ 30–40 МИН 1 / 11

МОЙ ПЕРВЫЙ УМНЫЙ РОБОТ: ОБНАРУЖЬ ОБЪЕКТ И МИГНИ СВЕТОДИОДОМ!

МИССИЯ 01 · ПРЕДСКАЗАНИЕ

Может ли ваш робот обнаружить вашу руку?

Давайте научим Arduino определять, насколько близко находится объект.

Поднесите руку ближе. Что сделает робот?

Светодиод мигает! Ничего не происходит!

HAND → SENSOR

МИССИЯ 02 · СЛУШАЙ

Знакомьтесь: «Магические глаза»

Этот датчик излучает звук и ждет его возвращения.

Что произойдет, если поднести руку ближе?

Звуку предстоит более короткий путь. Звуку предстоит более долгий путь.

HC-SR04
звуковая волна

МИССИЯ 03 · СБОР

Знакомьтесь с деталями нашего робота

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

UNO
Познакомиться с деталями

МИССИЯ 04 · ПОДКЛЮЧЕНИЕ

Подключим наш датчик

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

ARDUINO
UNO
ULTRASONIC
Показать подключения

МИССИЯ 05 · ЗАЖГИ СВЕТ

Подключим наш светодиод

Светодиод — это свет нашего робота. Резистор помогает защитить его.

  • Контакт 13 → резистор → длинная ножка светодиода
  • Короткая ножка светодиода → GND
Мигнуть светом

длинная ножка

МИССИЯ 06 · ПОНИМАНИЕ

Как это работает?

Робот слушает, думает, а затем действует.

1

Датчик отправляет

Звуковая волна распространяется вперед.

2

Звук возвращается

Звук отражается от вашей руки.

3
R

Arduino принимает решение

Он проверяет расстояние.

РУКА РЯДОМ → СВЕТОДИОД МИГАЕТРУКА ДАЛЕКО → СВЕТОДИОД НЕ ГОРИТ
Попробовать!
Press Try It to see the robot react.

МИССИЯ 07 · МЫШЛЕНИЕ

Сделаем робота умным

Arduino нужны инструкции, совсем как человеку, который следует указаниям.

Если объект находится в пределах 15 см, заставить светодиод мигать. В противном случае — выключить его.

Какой пример должен заставить светодиод мигать?

Рука на расстоянии 8 смСветодиод мигаетРука на расстоянии 25 смСветодиод не горит

МИССИЯ 08 · ИНСТРУКТАЖ

Инструкции для нашего робота

Вот полная программа. Ваш преподаватель разберет её вслух.

const int trigPin = 9;
const int echoPin = 10;
const int ledPin = 13;

long duration;
float distance;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  duration = pulseIn(echoPin, HIGH, 30000);

  if (duration == 0) {
    distance = -1;
  } else {
    distance = duration * 0.0343 / 2;
  }

  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");

  if (distance > 0 && distance <= 15) {
    digitalWrite(ledPin, HIGH);
    delay(250);
    digitalWrite(ledPin, LOW);
    delay(250);
  } else {
    digitalWrite(ledPin, LOW);
    delay(100);
  }
}

МИССИЯ 09 · ТЕСТИРОВАНИЕ

Время протестировать нашего робота!

Один осторожный шаг за другим.

  1. Подключите Arduino к компьютеру.
  2. Откройте Arduino IDE.
  3. Скопируйте код.
  4. Выберите Arduino Uno и нужный порт.
  5. Нажмите «Проверить».
  6. Нажмите «Загрузить».
  7. Поводите рукой перед датчиком.

Дай пять! Ваш робот готов.

Светодиод не мигает?Проверьте провода.Проверьте направление светодиода.Проверьте, что код успешно загружен.

МИССИЯ 10 · ЗАДАНИЕ

Сможете ли вы перехитрить робота?

Выберите ответ для каждого короткого задания.

1 / 3

МИССИЯ 11 · ПРЕДСТАВЬ

Где мы можем это использовать?

Определение расстояния полезно далеко за пределами нашего класса.

Умная парковка

Определять, когда парковочное место свободно.

Автоматические двери

Открыть дверь, когда кто-то подходит близко.

R

Роботы-препятствия

Помочь роботу замечать, что находится впереди.

R
Вы создали умного робота!Почувствуй. Подумай. Реализуй.
Назад Используйте стрелки для навигации Далее