Skip to main content

18. Практическая работа «Программирование робота с элементами машинного зрения»

Технологическая карта урока

ЦЕЛЕВОЙ БЛОК

Модуль: Системы восприятия в робототехнике

Тема урока: 18. Практическая работа «Программирование робота с элементами машинного зрения»

Цель урока: Сформировать практические навыки настройки и программирования робота с системой машинного зрения для идентификации и сортировки объектов.

Планируемые результаты:

Предметные:

  • Знать принципы работы датчиков цвета и камер в робототехнике
  • Понимать основы калибровки оптических систем
  • Уметь программировать алгоритмы распознавания простых объектов
  • Владеть навыками настройки робота для сортировки по цвету или форме

Метапредметные:

  • Регулятивные УУД: умение настраивать параметры системы, отлаживать программу, контролировать результаты
  • Познавательные УУД: понимание принципов обработки визуальной информации, анализ результатов распознавания
  • Коммуникативные УУД: умение работать в команде, обсуждать и решать технические проблемы

Личностные:

  • Развитие инженерного мышления
  • Формирование внимательности и точности при работе с техническими системами
  • Воспитание настойчивости при решении практических задач

ИНСТРУМЕНТАЛЬНЫЙ БЛОК

Задачи урока:

  1. Актуализировать знания о системах машинного зрения
  2. Научить калибровать датчик цвета/камеру с учетом условий освещения
  3. Сформировать навыки программирования алгоритмов распознавания объектов
  4. Научить создавать программы для сортировки предметов по заданным признакам
  5. Развить умение оптимизировать и отлаживать алгоритмы распознавания

Тип урока: Практическая работа

Учебно-методическое и материально-техническое обеспечение:

  • Робототехнические наборы с контроллерами (по числу групп)
  • Датчики цвета или камеры для роботов
  • Объекты для сортировки разных цветов и форм (кубики, шары, цилиндры)
  • Компьютеры с установленной средой программирования
  • Инструкционные карты по настройке и калибровке датчиков
  • Примеры программного кода для распознавания объектов
  • Схема полигона для тестирования робота-сортировщика
  • Лампы для создания различных условий освещения
  • Измерительные инструменты (для измерения размеров объектов)

ОРГАНИЗАЦИОННО-ДЕЯТЕЛЬНОСТНЫЙ БЛОК

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

Межпредметные связи:

  • Физика: калибровка оптической системы, учет условий освещения, оптические явления
  • Математика: реализация алгоритмов обработки изображения, пороговые значения для распознавания
  • Информатика: программирование, обработка данных, алгоритмы
  • Технология: конструирование механизмов для сортировки
Этап урока Деятельность учителя Деятельность ученика Планируемые результаты предметные Планируемые результаты УУД
1. Организационный момент (3 мин) Приветствует учащихся, проверяет готовность к уроку. Организует деление на рабочие группы по 2-3 человека. Готовятся к уроку, формируют рабочие группы, проверяют наличие необходимого оборудования. Регулятивные: самоорганизация, готовность к работе в группе
2. Актуализация знаний (5 мин) Организует фронтальную беседу по вопросам:
- Что такое машинное зрение?
- Какие способы распознавания объектов роботом вы знаете?
- По каким признакам робот может различать объекты?

Демонстрирует видеоролик с примером работы робота-сортировщика.
Участвуют в беседе, отвечают на вопросы.

Вспоминают материал предыдущего урока о машинном зрении.

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

Коммуникативные: участие в диалоге.
3. Постановка цели и мотивация (3 мин) Формулирует цель практической работы: “Сегодня мы научимся программировать робота, который будет распознавать и сортировать предметы по цвету или форме”.

Объясняет практическую значимость системы технического зрения в современной робототехнике.

Демонстрирует задание: настроить робота для сортировки объектов разных цветов по соответствующим зонам.
Осмысливают цель работы.

Знакомятся с заданием.

Задают уточняющие вопросы.
Регулятивные: целеполагание.

Личностные: мотивация к практической деятельности.
4. Инструктаж по практической работе (7 мин) Объясняет этапы выполнения практической работы:

1. Сборка робота с датчиком цвета/камерой
2. Калибровка датчика под условия освещения
3. Программирование распознавания объектов
4. Создание алгоритма сортировки
5. Тестирование и отладка

Демонстрирует основные приемы работы с датчиками:
- Правильное расположение датчика относительно объектов
- Настройка порогов распознавания
- Учет внешнего освещения

Объясняет правила работы с оборудованием и технику безопасности.
Слушают инструкции.

Изучают демонстрационные материалы.

Знакомятся со схемой сортировочного полигона.

Задают уточняющие вопросы.

Распределяют роли в группе.
Знание этапов настройки системы технического зрения.

Понимание принципов калибровки оптических датчиков.
Регулятивные: принятие учебной задачи, планирование.

Познавательные: понимание алгоритма действий.

Коммуникативные: распределение ролей.
5. Практическая работа: сборка робота (10 мин) Консультирует группы в процессе сборки робота:
- Помогает правильно расположить датчик/камеру
- Обращает внимание на оптимальное расстояние до объектов
- Подсказывает конструкцию механизма для сортировки
- Контролирует правильность сборки
Работают в группах над сборкой робота:
- Собирают базовую конструкцию робота
- Устанавливают датчик цвета/камеру
- Конструируют механизм для перемещения объектов
- Проверяют надежность креплений
- Подключают все компоненты к контроллеру
Умение собирать робота с системой технического зрения.

Навыки правильного расположения оптических датчиков.
Регулятивные: следование инструкции.

Коммуникативные: взаимодействие в группе.

Личностные: аккуратность при сборке.
6. Практическая работа: калибровка датчика (15 мин) Объясняет принципы калибровки датчиков:
- Демонстрирует, как условия освещения влияют на показания датчика
- Показывает способы определения пороговых значений
- Объясняет, как выполнять тестовые измерения

Организует эксперимент с разными условиями освещения:
- Предлагает измерить показания датчика при разном освещении
- Обращает внимание на характеристики отражения света от разных поверхностей

Межпредметная связь с физикой: обсуждает оптические явления при работе датчика.
Калибруют датчик цвета/камеру:
- Измеряют показания датчика для объектов разных цветов
- Записывают пороговые значения для каждого цвета
- Тестируют работу датчика при разном освещении
- Корректируют пороговые значения
- Создают таблицу зависимости показаний от условий освещения
- Выбирают оптимальные настройки
Понимание влияния освещения на работу оптических датчиков.

Умение калибровать датчики для точного распознавания.

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

Регулятивные: настройка параметров, контроль результатов.

Личностные: развитие внимательности и точности.
7. Физкультминутка (2 мин) Проводит короткую физкультминутку с упражнениями для глаз и спины. Выполняют упражнения для снятия напряжения. Регулятивные: саморегуляция.
8. Практическая работа: программирование распознавания (20 мин) Объясняет принципы программирования распознавания объектов:
- Показывает структуру программного кода
- Объясняет логику работы условных операторов для определения цвета
- Демонстрирует пример программы для распознавания нескольких цветов

Обращает внимание на математические аспекты:
- Использование пороговых значений
- Обработка серии измерений
- Фильтрация случайных выбросов

Консультирует группы в процессе программирования.
Программируют алгоритм распознавания объектов:
- Создают программу считывания данных с датчика
- Внедряют пороговые значения для распознавания цветов
- Разрабатывают условные операторы для принятия решений
- Добавляют обработку исключений
- Тестируют работу программы на разных объектах
- Отлаживают программный код
Умение программировать алгоритмы распознавания объектов.

Навыки использования условных операторов для классификации.

Понимание принципов фильтрации данных.
Познавательные: алгоритмическое мышление.

Регулятивные: отладка программы, коррекция ошибок.

Коммуникативные: обсуждение логики алгоритма.
9. Практическая работа: программирование сортировки (15 мин) Объясняет алгоритм сортировки объектов:
- Показывает, как связать распознавание с действиями робота
- Демонстрирует управление моторами для перемещения объектов
- Объясняет логику перемещения к нужным зонам

Консультирует группы в процессе программирования:
- Помогает оптимизировать алгоритм
- Подсказывает решения возникающих проблем
- Обращает внимание на точность перемещения
Программируют алгоритм сортировки:
- Создают логику перемещения робота на основе распознанного цвета
- Программируют действия для каждого типа объекта
- Настраивают параметры движения
- Добавляют обратную связь (звуковые или световые сигналы)
- Проводят первичное тестирование
- Корректируют программу
Умение связывать результаты распознавания с действиями робота.

Навыки программирования алгоритмов сортировки.

Понимание принципов работы полной системы.
Познавательные: логическое мышление, комплексное применение знаний.

Регулятивные: планирование последовательности действий.

Личностные: настойчивость в достижении результата.
10. Тестирование и отладка (10 мин) Организует тестирование роботов-сортировщиков:
- Предлагает набор объектов для сортировки
- Контролирует процесс тестирования
- Помогает выявить проблемы
- Консультирует по оптимизации алгоритма
- Предлагает изменить условия освещения для проверки устойчивости работы
Тестируют и отлаживают робота-сортировщика:
- Запускают полный цикл сортировки
- Проверяют точность распознавания
- Выявляют ошибки и сбои
- Корректируют программу и настройки
- Проверяют работу при разном освещении
- Оптимизируют алгоритм для повышения надежности
Умение тестировать и отлаживать робототехническую систему.

Навыки выявления и устранения проблем.

Понимание факторов, влияющих на надежность работы.
Регулятивные: контроль результатов, коррекция.

Познавательные: анализ причин ошибок.

Личностные: терпение при отладке.
11. Демонстрация результатов (10 мин) Организует демонстрацию работы роботов-сортировщиков:
- Предоставляет каждой группе возможность продемонстрировать своего робота
- Задает вопросы о принципах работы
- Предлагает усложненные тестовые задания
- Организует взаимооценку результатов
Демонстрируют работу своих роботов:
- Представляют робота-сортировщика
- Объясняют принцип его работы
- Показывают процесс распознавания и сортировки
- Комментируют особенности своего решения
- Отвечают на вопросы
- Оценивают работы других групп
Умение представлять и объяснять работу технической системы.

Навыки демонстрации результатов работы.

Понимание сильных и слабых сторон своего решения.
Коммуникативные: представление результатов, аргументация.

Познавательные: сравнение различных решений.

Личностные: уверенность при представлении работы.
12. Обсуждение результатов (5 мин) Организует обсуждение результатов практической работы:
- Предлагает сравнить разные подходы к решению
- Обсуждает проблемы, с которыми столкнулись группы
- Анализирует факторы, влияющие на точность распознавания
- Подводит итоги эффективности различных алгоритмов
Участвуют в обсуждении:
- Делятся опытом решения проблем
- Анализируют причины ошибок
- Предлагают идеи для улучшения
- Сравнивают эффективность разных подходов
- Формулируют выводы об оптимальных настройках
Понимание факторов, влияющих на точность распознавания.

Знание способов оптимизации работы системы.

Умение анализировать эффективность алгоритмов.
Познавательные: анализ, сравнение, обобщение.

Коммуникативные: участие в дискуссии.

Регулятивные: оценка результатов.
13. Рефлексия и подведение итогов (3 мин) Организует рефлексию с помощью метода “Три вопроса”:
- Что получилось лучше всего?
- С какой проблемой было труднее всего справиться?
- Что бы вы сделали по-другому, если бы начали сначала?

Подводит итоги урока.

Оценивает работу групп.
Участвуют в рефлексии:
- Отвечают на вопросы
- Анализируют свой опыт
- Оценивают свой вклад в работу группы
- Делятся впечатлениями
Регулятивные: самоанализ деятельности.

Личностные: осознание полученного опыта.

Коммуникативные: выражение своих мыслей.
14. Домашнее задание (2 мин) Объясняет домашнее задание:
1. Обязательная часть: подготовить краткий отчет о проделанной работе с указанием особенностей реализации и возникших проблем
2. Творческое задание (по желанию): предложить улучшения алгоритма для более точного распознавания или для работы в сложных условиях освещения
Записывают домашнее задание.

Задают уточняющие вопросы.
Регулятивные: планирование самостоятельной работы.

Дополнительные материалы:

Пример настроек калибровки датчика цвета:

Таблица для записи результатов калибровки:

Цвет объекта Показания RGB-датчика Пороговые значения для распознавания
R G B Условие распознавания
Красный R > (G+B)*1.5
Синий B > (R+G)*1.5
Зеленый G > (R+B)*1.5
Желтый (R+G) > B*2
Черный (R+G+B) < 50
Белый (R+G+B) > 200

Влияние различного освещения:

Условия освещения Корректирующий коэффициент Примечания
Яркий свет 0.8 Снижать пороговые значения
Нормальное освещение 1.0 Стандартные настройки
Слабый свет 1.3 Повышать пороговые значения

Базовый алгоритм распознавания цвета (псевдокод):

// Функция определения цвета объекта
функция ОпределитьЦвет()
    // Получаем данные с датчика
    R = Датчик.КрасныйКомпонент()
    G = Датчик.ЗеленыйКомпонент()
    B = Датчик.СинийКомпонент()
    
    // Нормализация значений с учетом освещения
    коэффициент = ОпределитьКоэффициентОсвещения()
    R = R * коэффициент
    G = G * коэффициент
    B = B * коэффициент
    
    // Определение цвета по пороговым значениям
    если R > (G+B)*1.5 тогда
        вернуть "Красный"
    иначе_если B > (R+G)*1.5 тогда
        вернуть "Синий"
    иначе_если G > (R+B)*1.5 тогда
        вернуть "Зеленый"
    иначе_если (R+G) > B*2 И R > 100 И G > 100 тогда
        вернуть "Желтый"
    иначе_если (R+G+B) < 50 тогда
        вернуть "Черный"
    иначе_если (R+G+B) > 200 тогда
        вернуть "Белый"
    иначе
        вернуть "Неизвестный"
    конец_если
конец_функции

// Функция определения коэффициента освещения
функция ОпределитьКоэффициентОсвещения()
    // Измерение эталонной поверхности (белый лист)
    ИзмеритьЭталон()
    
    эталонная_сумма = ЭталонR + ЭталонG + ЭталонB
    
    если эталонная_сумма > 700 тогда
        вернуть 0.8  // яркий свет
    иначе_если эталонная_сумма < 500 тогда
        вернуть 1.3  // слабый свет
    иначе
        вернуть 1.0  // нормальное освещение
    конец_если
конец_функции

Алгоритм сортировки объектов (псевдокод):

// Основная программа сортировки
процедура СортироватьОбъекты()
    пока Истина выполнять
        // Ожидаем появления объекта
        пока НЕ ДатчикРасстояния.ОбъектОбнаружен() выполнять
            ждать(10)
        конец_цикла
        
        // Измеряем цвет объекта
        цвет = ОпределитьЦвет()
        
        // Выводим информацию о распознанном цвете
        Дисплей.Вывод("Обнаружен: " + цвет)
        
        // Сортируем по цвету
        если цвет == "Красный" тогда
            ДоставитьВКонтейнер(1)
        иначе_если цвет == "Синий" тогда
            ДоставитьВКонтейнер(2)
        иначе_если цвет == "Зеленый" тогда
            ДоставитьВКонтейнер(3)
        иначе_если цвет == "Желтый" тогда
            ДоставитьВКонтейнер(4)
        иначе
            ДоставитьВКонтейнерНеизвестных()
        конец_если
        
        // Возврат в исходное положение
        ВернутьсяНаПозициюОжидания()
    конец_цикла
конец_процедуры

// Процедура доставки объекта в указанный контейнер
процедура ДоставитьВКонтейнер(номер_контейнера)
    // Подъем объекта
    Манипулятор.Опустить()
    Манипулятор.Захватить()
    Манипулятор.Поднять()
    
    // Перемещение к нужному контейнеру
    ПовернутьсяККонтейнеру(номер_контейнера)
    Двигаться(расстояние_до_контейнера)
    
    // Выгрузка объекта
    Манипулятор.Опустить()
    Манипулятор.Отпустить()
    Манипулятор.Поднять()
    
    // Подтверждение выполнения операции
    ЗвуковойСигнал()
конец_процедуры

Варианты практических заданий:

Базовый уровень: “Сортировка по цвету”

Задача: Создать робота, который сортирует объекты по цвету (красный, синий, зеленый) и доставляет их в соответствующие контейнеры. Требования:

  • Распознавать не менее трех разных цветов
  • Стабильно работать при одинаковом освещении
  • Сортировать минимум 5 объектов подряд без ошибок

Средний уровень: “Адаптивная сортировка”

Задача: Создать робота, который адаптируется к изменениям освещения и сортирует объекты по цвету. Требования:

  • Распознавать не менее четырех разных цветов
  • Адаптироваться к изменению условий освещения
  • Использовать калибровку по эталонной поверхности
  • Сигнализировать о неопределенности при низкой уверенности распознавания

Продвинутый уровень: “Сортировка по форме и цвету”

Задача: Создать робота, который сортирует объекты по комбинации цвета и формы. Требования:

  • Распознавать как цвет, так и форму объекта (используя дополнительные датчики)
  • Реализовать двухуровневую сортировку (сначала по цвету, затем по форме)
  • Создать статистику распознавания на дисплее робота

Инструкция по калибровке датчика цвета:

  1. Подготовка эталонных образцов:

    • Подготовьте объекты всех цветов, которые требуется распознавать
    • Подготовьте белый лист бумаги для калибровки освещения
  2. Базовая калибровка:

    • Разместите датчик на расстоянии 1-2 см от поверхности
    • Направьте датчик перпендикулярно поверхности
    • Измерьте показания для белого листа (эталон освещенности)
  3. Измерение цветовых образцов:

    • Для каждого цвета произведите несколько измерений
    • Запишите средние значения RGB-компонентов
    • Вычислите стандартное отклонение для оценки стабильности
  4. Определение пороговых значений:

    • На основе измерений определите диапазоны для каждого цвета
    • Задайте условия распознавания с запасом
    • Проверьте разделимость соседних цветов
  5. Проверка калибровки:

    • Протестируйте на всех цветах несколько раз
    • Проверьте при разном положении объектов
    • При необходимости скорректируйте пороги

Критерии оценивания практической работы:

Конструкция робота (0-3 балла):

  • Правильное расположение датчика цвета/камеры (0-1)
  • Функциональность механизма сортировки (0-1)
  • Устойчивость и надежность конструкции (0-1)

Калибровка датчика (0-5 баллов):

  • Точность определения пороговых значений (0-2)
  • Учет условий освещения (0-2)
  • Документирование результатов калибровки (0-1)

Алгоритм распознавания (0-5 баллов):

  • Корректность распознавания различных цветов (0-2)
  • Устойчивость к изменениям условий (0-1)
  • Обработка неопределенных случаев (0-1)
  • Оптимизация кода (0-1)

Работа системы в целом (0-7 баллов):

  • Точность сортировки (0-2)
  • Скорость работы (0-1)
  • Надежность работы (0-2)
  • Работа при изменении условий освещения (0-1)
  • Наглядность демонстрации (0-1)

Максимальный балл: 20 Шкала перевода в оценку:

  • 18-20 баллов - “5”
  • 14-17 баллов - “4”
  • 10-13 баллов - “3”
  • менее 10 баллов - “2”

Карта рефлексии “Три вопроса”:

Фамилия, имя: _________________________
Группа: _______

Что получилось лучше всего?
_________________________________________________
_________________________________________________

С какой проблемой было труднее всего справиться?
_________________________________________________
_________________________________________________

Что бы вы сделали по-другому, если бы начали сначала?
_________________________________________________
_________________________________________________

Моя оценка работы нашей группы (от 1 до 5): _______