SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Программирование Lego-роботов
   «Слушаем» датчики. Часть II




                  Нижний Новгород, 2012
Содержание

• Датчик расстояния
• Датчик освещенности
• Датчик цвета
Датчик расстояния
            • Ожидание событий от датчика расстояния
            • «Ехать до тех пор, пока перед роботом не
              появилось препятствие»




2. Переход в следующее состояние зависит от расстояния до
   препятствия
   •   Событие возникнет при расстоянии до предмета меньше, чем X см. (препятствие
       ближе, чем …)
        • знак “<“, оранжевая полоска ползунка с левой стороны
   •   Событие возникнет при расстоянии до предмета больше, чем X см. (препятствие
       дальше, чем …)
        • знак “>“, оранжевая полоска ползунка с правой стороны
3. Расстояние измеряется в сантиметрах (Centimeters) или дюймах
   (Inches)
Датчик расстояния

• Пример




1. Крутиться вокруг своей оси на месте до тех пор, пока не наедем
   предмет на расстоянии ближе, чем 50 см.
2. Остановить вращение.
3. Ехать вперед к появившемуся предмету в течении 3,5 секунд.
Датчик расстояния

• Задание 1. Робот обнаруживает препятствие.
  • Датчик расстояния на роботе «смотрит» вперед
  • Робот двигается до тех пор, пока не появится препятствие
    ближе, чем 20 см.




                                       20 см.
Датчик расстояния

• Задание 2. Робот-воин
  • Роботу понадобятся два датчика: расстояния и касания
  1. «Воин» крутится быстро на одном месте вокруг себя
  2. Как только в его поле зрения появляется предмет ближе
     чем 50 см., робот начинает двигаться к этому предмету и
     останавливается когда стукнется об него




  3. После удара, робот ищет нового противника.
Датчик расстояния

• Задание 3. Парковка
  • Датчик расстояния смотрит в сторону
  • Робот должен найти пространство для парковки между
    двумя «автомобилями» и выполнить заезд в обнаруженное
    пространство




                  15 см.   ?? см.   15 см.
Датчик освещенности

         • Ожидание событий от датчика освещенности
         • «Поворачивать до тех пор, пока не заехали в
           темную область»




2. Переход в следующее состояние определяется яркостью света
   •   Датчик улавливает света меньше, чем X процентов (стало темнее)
   •   Датчик улавливает света больше, чем X процентов (стало светлее)
3. Улавливать отраженный свет, сгенерерированный светодиодом
   датчика
Датчик освещенности

• Пример




1. Ехать вперед до тех пор, пока не наедем на темный участок
2. Продолжать движение до тех пор пока не наедем на светлый
   участок
3. Остановить двигатели
4. Распечатать текст на экране
Датчик цвета

          • Ожидание событий от датчика цвета (в режиме
            определения цвета)
          • «Вращать мотор до тех пор, пока не увидели
            красный кубик»


                                                                             1
                                                               2


1. Определяет причину возникновения события – определяемый цвет
   внутри диапазона (равенство) или снаружи (неравенство)
2. Переход в следующее состояние определяется данными цветами:
   •   Событие возникнет, если датчик определил цвет, как любой цвет из выбранного
       диапазона (цвет такой же, как и ...).
   •   Событие возникнет, если датчик определил, что цвет не походит ни под один из
       выбранного диапазона (цвет перестал быть ...)
Датчик цвета

• Пример




 1. Ехать вперед до тех пор, пока не наедем на черную линию.
    Остановиться
 2. Снова ехать вперед, пока не всртретим любой цвет, отличный от
    черного
Датчик цвета

• Задание 4. Какой цвет?
  1. Установите датчик цвета на роботе
  2. Составьте программу, состоящую из
     одного только блок ожидания,
     работающего с датчиком цвета
  3. Подключите робота к компьютеру, убедитесь, что среда
     NXT-G видит вашего робота
                   4. Перейдите в конфигурационную панель
                      блока и посмотрите, как изменяются
                      показания датчика в зависимости от
                      цвета предметов, появляющихся в зоне
                      видимости датчика
     Определение цвета зависит в том
     числе и от расстояния до предмета       1   2   3 4   5   6
Датчик цвета

• Задание 5a. Робот, управляемый цветом. Версия I
  • Датчик цвета на роботе направлен вниз
  1. Робот должен двигаться вперед до тех пор, пока не увидит
     черный цвет, а затем возвращаться назад, до красного
     цвета.
  2. Пусть программа выполняется бесконечно




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

• Задание 5b. Робот, управляемый цветом. Версия II
  1. Робот должен вращаться вокруг своей оси, пока не увидит
     зеленый цвет
  2. После остановки, робот должен начать двигаться вперед
     пока не увидит желтый цвет
  3. Предусмотреть возможность повтора действий с шага 1
Датчик цвета

             • Ожидание событий от датчика цвета (в режиме
               определения освещенности)
             • «Поворачивать до тех пор, пока не заехали в
               темную область»


                                                           1

                                                           2

1. Переход в следующее состояние определяется уровнем освещенности
   •   Событие возникнет при освещенности меньше, чем X процентов (стало темнее, чем ...)
        • знак “<“, оранжевая полоска ползунка с левой стороны
   •   Событие возникнет при освещенности больше, чем X процентов (стало светлее, чем ...)
        • знак “>“, оранжевая полоска ползунка с правой стороны
2. Использовать собственную подсветку соответствующим светодиодом, или
   улавливать окружающую освещенность
Датчик цвета

• Задание 6а. Окружающая освещенность
  1. Составьте программу, состоящую из одного только
     блока ожидания, работающего с датчиком цвета в
     режиме освещенности
  2. Подключите робота к компьютеру, убедитесь, что среда NXT-G видит
     вашего робота
                                   3. Перейдите в конфигурационную
                                       панель блока – выключите
                                       светодиод. Посмотрите, как
                                       изменяются показания датчика в
                                       зависимости от освещенности –
                                       заслоните датчик рукой или
                                       направьте его на окно или лампу
Датчик цвета

• Задание 6b. Отраженный свет
  1. Используйте программу из
     предыдущего задания, но включите
     светодиод.
  2. Измеряйте освещенность на темных участках поля, на
     светлых, на их границе, а также на предметах разного
     цвета.


                             40%



                                 60%
Датчик цвета

• Задание 7а. Черно-белое движение
  •  Пусть робот доедет до темной области
                              • Что будем измерять:
22%                             окружающую освещенность
                                или отраженный свет?
  54%                         • Как определить, что робот
                                заехал на темную область?
       Количество света, возвращенное в датчик на темной области
       зависит от окружающей освещенности, от высоты датчика, от
       цвета освещающего светодиода. Поэтому никогда не берите
       пограничное измеренное значение в условии генерации события.
       Обычно выбирают середину между показаниями на темной и
       светлой области.

              22%               38%              54%
Датчик цвета

• Задание 7b. Черно-белое движение
  •   Пусть робот доедет, до темной области, а затем съедет
      обратно на светлую




  •   Как только получилось, добавьте цикл в программу - пусть
      робот перемещается вперед-назад попеременно, то на
      темную, то на светлую область.
Датчик цвета

• Задание 7с. Движение вдоль линии
  •   Пусть робот перемещается попеременно, то на темную, то
      на светлую область, но теперь движение должно
      выполняться поочередно то одним, то другим колесом.




  •   Попробуйте теперь поставить робота на узкую черную
      линию.
Датчик цвета

• Задание 8. Робот-уборщик
  • Роботу понадобятся датчик расстояния и датчик цвета
  • Задача робота обнаружить внутри ринга весь мусор
    (предметы обнаруживаемые датчиком расстояния) и
    вытолкнуть их за черную линию, ограничивающую ринг
  • Сам робот не должен выезжать за границу ринга
Ожидание событий



 • Ваши вопросы?

Weitere ähnliche Inhalte

Was ist angesagt?

Line follower Robot using PID algorithm
Line follower Robot using PID algorithmLine follower Robot using PID algorithm
Line follower Robot using PID algorithmIfaz Ahmed Aflan
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술henjeon
 
Maze Solver Robot Poster
Maze Solver Robot PosterMaze Solver Robot Poster
Maze Solver Robot PosterNaveed Ahmed
 
Obstacle Avoidance ROBOT using ARDUINO
Obstacle Avoidance ROBOT using ARDUINOObstacle Avoidance ROBOT using ARDUINO
Obstacle Avoidance ROBOT using ARDUINOjovin Richard
 
Android sensors
Android sensorsAndroid sensors
Android sensorsdatta_jini
 
Final Report11
Final Report11Final Report11
Final Report11sonu kumar
 
QVariant, QObject — Qt's not just for GUI development
QVariant, QObject — Qt's not just for GUI developmentQVariant, QObject — Qt's not just for GUI development
QVariant, QObject — Qt's not just for GUI developmentICS
 
Obstacle Avoidance Robot Summer training Presentation
Obstacle Avoidance Robot Summer training Presentation Obstacle Avoidance Robot Summer training Presentation
Obstacle Avoidance Robot Summer training Presentation Wasi Abbas
 

Was ist angesagt? (12)

Edge detector robot
Edge detector robotEdge detector robot
Edge detector robot
 
Line follower Robot using PID algorithm
Line follower Robot using PID algorithmLine follower Robot using PID algorithm
Line follower Robot using PID algorithm
 
Google android Activity lifecycle
Google android Activity lifecycle Google android Activity lifecycle
Google android Activity lifecycle
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
 
Maze Solver Robot Poster
Maze Solver Robot PosterMaze Solver Robot Poster
Maze Solver Robot Poster
 
Obstacle Avoidance ROBOT using ARDUINO
Obstacle Avoidance ROBOT using ARDUINOObstacle Avoidance ROBOT using ARDUINO
Obstacle Avoidance ROBOT using ARDUINO
 
Android sensors
Android sensorsAndroid sensors
Android sensors
 
Flutter and Dart MCQS
Flutter and Dart MCQSFlutter and Dart MCQS
Flutter and Dart MCQS
 
Final Report11
Final Report11Final Report11
Final Report11
 
QVariant, QObject — Qt's not just for GUI development
QVariant, QObject — Qt's not just for GUI developmentQVariant, QObject — Qt's not just for GUI development
QVariant, QObject — Qt's not just for GUI development
 
Obstacle Avoidance Robot Summer training Presentation
Obstacle Avoidance Robot Summer training Presentation Obstacle Avoidance Robot Summer training Presentation
Obstacle Avoidance Robot Summer training Presentation
 
Unity Morph performance test
Unity Morph performance testUnity Morph performance test
Unity Morph performance test
 

Andere mochten auch

Кружок по робототехнике. Занятие #4. Программируем датчики касания и звука
Кружок по робототехнике. Занятие #4. Программируем датчики касания и звукаКружок по робототехнике. Занятие #4. Программируем датчики касания и звука
Кружок по робототехнике. Занятие #4. Программируем датчики касания и звукаAlexander Kolotov
 
Кружок по робототехнике. Занятие #8. Решение задач
Кружок по робототехнике. Занятие #8. Решение задачКружок по робототехнике. Занятие #8. Решение задач
Кружок по робототехнике. Занятие #8. Решение задачAlexander Kolotov
 
Кружок по робототехнике. Занятие #7. Решение задач
Кружок по робототехнике. Занятие #7. Решение задачКружок по робототехнике. Занятие #7. Решение задач
Кружок по робототехнике. Занятие #7. Решение задачAlexander Kolotov
 
Кружок по робототехнике. Занятие #6. Ветвления
Кружок по робототехнике. Занятие #6. Ветвления Кружок по робототехнике. Занятие #6. Ветвления
Кружок по робототехнике. Занятие #6. Ветвления Alexander Kolotov
 
Кружок по робототехнике. Занятие #3. Программируем экран и звуки
Кружок по робототехнике. Занятие #3. Программируем экран и звукиКружок по робототехнике. Занятие #3. Программируем экран и звуки
Кружок по робототехнике. Занятие #3. Программируем экран и звукиAlexander Kolotov
 
Кружок по робототехнике. Занятие #2. Первый робот
Кружок по робототехнике. Занятие #2. Первый роботКружок по робототехнике. Занятие #2. Первый робот
Кружок по робототехнике. Занятие #2. Первый роботAlexander Kolotov
 
Кружок по робототехнике. Занятие #2. Программируем моторы
Кружок по робототехнике. Занятие #2. Программируем моторыКружок по робототехнике. Занятие #2. Программируем моторы
Кружок по робототехнике. Занятие #2. Программируем моторыAlexander Kolotov
 
Кружок по робототехнике. Занятие #1. Введение
Кружок по робототехнике. Занятие #1. Введение Кружок по робототехнике. Занятие #1. Введение
Кружок по робототехнике. Занятие #1. Введение Alexander Kolotov
 
Promo presentation for robotics cources
Promo presentation for robotics courcesPromo presentation for robotics cources
Promo presentation for robotics courcesAlexander Kolotov
 
Another example of slides for Lego Mindstorms NXT courses
Another example of slides for Lego Mindstorms NXT coursesAnother example of slides for Lego Mindstorms NXT courses
Another example of slides for Lego Mindstorms NXT coursesAlexander Kolotov
 
Робототехника с Not eXactly C. Часть I
Робототехника с Not eXactly C. Часть IРобототехника с Not eXactly C. Часть I
Робототехника с Not eXactly C. Часть IAlexander Kolotov
 
Дорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборке
Дорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборкеДорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборке
Дорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборкеfgos-igra
 
Manual oso de anteojos
Manual oso de anteojosManual oso de anteojos
Manual oso de anteojosJos Cruz
 
Tutorial sencillo kompozer
Tutorial sencillo kompozerTutorial sencillo kompozer
Tutorial sencillo kompozerAngel Camargo
 
план конспект занятия павленко вв
план конспект занятия павленко ввплан конспект занятия павленко вв
план конспект занятия павленко ввpermskijkrai
 
Ev3 руководство пользователя
Ev3 руководство пользователяEv3 руководство пользователя
Ev3 руководство пользователяpermskijkrai
 
конструкторская карта
конструкторская карта конструкторская карта
конструкторская карта permskijkrai
 

Andere mochten auch (20)

Кружок по робототехнике. Занятие #4. Программируем датчики касания и звука
Кружок по робототехнике. Занятие #4. Программируем датчики касания и звукаКружок по робототехнике. Занятие #4. Программируем датчики касания и звука
Кружок по робототехнике. Занятие #4. Программируем датчики касания и звука
 
Кружок по робототехнике. Занятие #8. Решение задач
Кружок по робототехнике. Занятие #8. Решение задачКружок по робототехнике. Занятие #8. Решение задач
Кружок по робототехнике. Занятие #8. Решение задач
 
Кружок по робототехнике. Занятие #7. Решение задач
Кружок по робототехнике. Занятие #7. Решение задачКружок по робототехнике. Занятие #7. Решение задач
Кружок по робототехнике. Занятие #7. Решение задач
 
Кружок по робототехнике. Занятие #6. Ветвления
Кружок по робототехнике. Занятие #6. Ветвления Кружок по робототехнике. Занятие #6. Ветвления
Кружок по робототехнике. Занятие #6. Ветвления
 
Кружок по робототехнике. Занятие #3. Программируем экран и звуки
Кружок по робототехнике. Занятие #3. Программируем экран и звукиКружок по робототехнике. Занятие #3. Программируем экран и звуки
Кружок по робототехнике. Занятие #3. Программируем экран и звуки
 
Кружок по робототехнике. Занятие #2. Первый робот
Кружок по робототехнике. Занятие #2. Первый роботКружок по робототехнике. Занятие #2. Первый робот
Кружок по робототехнике. Занятие #2. Первый робот
 
Кружок по робототехнике. Занятие #2. Программируем моторы
Кружок по робототехнике. Занятие #2. Программируем моторыКружок по робототехнике. Занятие #2. Программируем моторы
Кружок по робототехнике. Занятие #2. Программируем моторы
 
Кружок по робототехнике. Занятие #1. Введение
Кружок по робототехнике. Занятие #1. Введение Кружок по робототехнике. Занятие #1. Введение
Кружок по робототехнике. Занятие #1. Введение
 
Promo presentation for robotics cources
Promo presentation for robotics courcesPromo presentation for robotics cources
Promo presentation for robotics cources
 
Another example of slides for Lego Mindstorms NXT courses
Another example of slides for Lego Mindstorms NXT coursesAnother example of slides for Lego Mindstorms NXT courses
Another example of slides for Lego Mindstorms NXT courses
 
Робототехника с Not eXactly C. Часть I
Робототехника с Not eXactly C. Часть IРобототехника с Not eXactly C. Часть I
Робототехника с Not eXactly C. Часть I
 
Дорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборке
Дорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборкеДорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборке
Дорожкина Н.Г. Модель батискафа из LEGO WeDo: инструкция по сборке
 
Manual oso de anteojos
Manual oso de anteojosManual oso de anteojos
Manual oso de anteojos
 
Tutorial sencillo kompozer
Tutorial sencillo kompozerTutorial sencillo kompozer
Tutorial sencillo kompozer
 
план конспект занятия павленко вв
план конспект занятия павленко ввплан конспект занятия павленко вв
план конспект занятия павленко вв
 
Ev3 руководство пользователя
Ev3 руководство пользователяEv3 руководство пользователя
Ev3 руководство пользователя
 
конструкторская карта
конструкторская карта конструкторская карта
конструкторская карта
 
Cuentosilustrados
CuentosilustradosCuentosilustrados
Cuentosilustrados
 
Wedo perro alegre
Wedo perro alegreWedo perro alegre
Wedo perro alegre
 
Cargador
CargadorCargador
Cargador
 

Mehr von Alexander Kolotov

Таблица соответствия робототехнических компетенций и возрастов
Таблица соответствия робототехнических компетенций и возрастовТаблица соответствия робототехнических компетенций и возрастов
Таблица соответствия робототехнических компетенций и возрастовAlexander Kolotov
 
Опросный лист оценки знаний по соревновательной робототехнике
Опросный лист оценки знаний по соревновательной робототехникеОпросный лист оценки знаний по соревновательной робототехнике
Опросный лист оценки знаний по соревновательной робототехникеAlexander Kolotov
 
Справка-обзор популярных робототехнических комплектов
Справка-обзор популярных робототехнических комплектовСправка-обзор популярных робототехнических комплектов
Справка-обзор популярных робототехнических комплектовAlexander Kolotov
 
тропинка по лесу к голубому озеру
тропинка по лесу к голубому озерутропинка по лесу к голубому озеру
тропинка по лесу к голубому озеруAlexander Kolotov
 
Игрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботовИгрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботовAlexander Kolotov
 

Mehr von Alexander Kolotov (6)

Таблица соответствия робототехнических компетенций и возрастов
Таблица соответствия робототехнических компетенций и возрастовТаблица соответствия робототехнических компетенций и возрастов
Таблица соответствия робототехнических компетенций и возрастов
 
Опросный лист оценки знаний по соревновательной робототехнике
Опросный лист оценки знаний по соревновательной робототехникеОпросный лист оценки знаний по соревновательной робототехнике
Опросный лист оценки знаний по соревновательной робототехнике
 
Справка-обзор популярных робототехнических комплектов
Справка-обзор популярных робототехнических комплектовСправка-обзор популярных робототехнических комплектов
Справка-обзор популярных робототехнических комплектов
 
тропинка по лесу к голубому озеру
тропинка по лесу к голубому озерутропинка по лесу к голубому озеру
тропинка по лесу к голубому озеру
 
L^2: LEGO и Linux
L^2: LEGO и LinuxL^2: LEGO и Linux
L^2: LEGO и Linux
 
Игрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботовИгрушки на вырост. Программируем Lego-роботов
Игрушки на вырост. Программируем Lego-роботов
 

Кружок по робототехнике. Занятие #5. Программируем датчики расстояния и цвета

  • 1. Программирование Lego-роботов «Слушаем» датчики. Часть II Нижний Новгород, 2012
  • 2. Содержание • Датчик расстояния • Датчик освещенности • Датчик цвета
  • 3. Датчик расстояния • Ожидание событий от датчика расстояния • «Ехать до тех пор, пока перед роботом не появилось препятствие» 2. Переход в следующее состояние зависит от расстояния до препятствия • Событие возникнет при расстоянии до предмета меньше, чем X см. (препятствие ближе, чем …) • знак “<“, оранжевая полоска ползунка с левой стороны • Событие возникнет при расстоянии до предмета больше, чем X см. (препятствие дальше, чем …) • знак “>“, оранжевая полоска ползунка с правой стороны 3. Расстояние измеряется в сантиметрах (Centimeters) или дюймах (Inches)
  • 4. Датчик расстояния • Пример 1. Крутиться вокруг своей оси на месте до тех пор, пока не наедем предмет на расстоянии ближе, чем 50 см. 2. Остановить вращение. 3. Ехать вперед к появившемуся предмету в течении 3,5 секунд.
  • 5. Датчик расстояния • Задание 1. Робот обнаруживает препятствие. • Датчик расстояния на роботе «смотрит» вперед • Робот двигается до тех пор, пока не появится препятствие ближе, чем 20 см. 20 см.
  • 6. Датчик расстояния • Задание 2. Робот-воин • Роботу понадобятся два датчика: расстояния и касания 1. «Воин» крутится быстро на одном месте вокруг себя 2. Как только в его поле зрения появляется предмет ближе чем 50 см., робот начинает двигаться к этому предмету и останавливается когда стукнется об него 3. После удара, робот ищет нового противника.
  • 7. Датчик расстояния • Задание 3. Парковка • Датчик расстояния смотрит в сторону • Робот должен найти пространство для парковки между двумя «автомобилями» и выполнить заезд в обнаруженное пространство 15 см. ?? см. 15 см.
  • 8. Датчик освещенности • Ожидание событий от датчика освещенности • «Поворачивать до тех пор, пока не заехали в темную область» 2. Переход в следующее состояние определяется яркостью света • Датчик улавливает света меньше, чем X процентов (стало темнее) • Датчик улавливает света больше, чем X процентов (стало светлее) 3. Улавливать отраженный свет, сгенерерированный светодиодом датчика
  • 9. Датчик освещенности • Пример 1. Ехать вперед до тех пор, пока не наедем на темный участок 2. Продолжать движение до тех пор пока не наедем на светлый участок 3. Остановить двигатели 4. Распечатать текст на экране
  • 10. Датчик цвета • Ожидание событий от датчика цвета (в режиме определения цвета) • «Вращать мотор до тех пор, пока не увидели красный кубик» 1 2 1. Определяет причину возникновения события – определяемый цвет внутри диапазона (равенство) или снаружи (неравенство) 2. Переход в следующее состояние определяется данными цветами: • Событие возникнет, если датчик определил цвет, как любой цвет из выбранного диапазона (цвет такой же, как и ...). • Событие возникнет, если датчик определил, что цвет не походит ни под один из выбранного диапазона (цвет перестал быть ...)
  • 11. Датчик цвета • Пример 1. Ехать вперед до тех пор, пока не наедем на черную линию. Остановиться 2. Снова ехать вперед, пока не всртретим любой цвет, отличный от черного
  • 12. Датчик цвета • Задание 4. Какой цвет? 1. Установите датчик цвета на роботе 2. Составьте программу, состоящую из одного только блок ожидания, работающего с датчиком цвета 3. Подключите робота к компьютеру, убедитесь, что среда NXT-G видит вашего робота 4. Перейдите в конфигурационную панель блока и посмотрите, как изменяются показания датчика в зависимости от цвета предметов, появляющихся в зоне видимости датчика Определение цвета зависит в том числе и от расстояния до предмета 1 2 3 4 5 6
  • 13. Датчик цвета • Задание 5a. Робот, управляемый цветом. Версия I • Датчик цвета на роботе направлен вниз 1. Робот должен двигаться вперед до тех пор, пока не увидит черный цвет, а затем возвращаться назад, до красного цвета. 2. Пусть программа выполняется бесконечно Если в этом и следующем задании не получается определить заданные цвета, попробуйте с другими – датчик цвета очень капризен к окружающему освещению и расстоянию до цветной поверхности
  • 14. Датчик цвета • Задание 5b. Робот, управляемый цветом. Версия II 1. Робот должен вращаться вокруг своей оси, пока не увидит зеленый цвет 2. После остановки, робот должен начать двигаться вперед пока не увидит желтый цвет 3. Предусмотреть возможность повтора действий с шага 1
  • 15. Датчик цвета • Ожидание событий от датчика цвета (в режиме определения освещенности) • «Поворачивать до тех пор, пока не заехали в темную область» 1 2 1. Переход в следующее состояние определяется уровнем освещенности • Событие возникнет при освещенности меньше, чем X процентов (стало темнее, чем ...) • знак “<“, оранжевая полоска ползунка с левой стороны • Событие возникнет при освещенности больше, чем X процентов (стало светлее, чем ...) • знак “>“, оранжевая полоска ползунка с правой стороны 2. Использовать собственную подсветку соответствующим светодиодом, или улавливать окружающую освещенность
  • 16. Датчик цвета • Задание 6а. Окружающая освещенность 1. Составьте программу, состоящую из одного только блока ожидания, работающего с датчиком цвета в режиме освещенности 2. Подключите робота к компьютеру, убедитесь, что среда NXT-G видит вашего робота 3. Перейдите в конфигурационную панель блока – выключите светодиод. Посмотрите, как изменяются показания датчика в зависимости от освещенности – заслоните датчик рукой или направьте его на окно или лампу
  • 17. Датчик цвета • Задание 6b. Отраженный свет 1. Используйте программу из предыдущего задания, но включите светодиод. 2. Измеряйте освещенность на темных участках поля, на светлых, на их границе, а также на предметах разного цвета. 40% 60%
  • 18. Датчик цвета • Задание 7а. Черно-белое движение • Пусть робот доедет до темной области • Что будем измерять: 22% окружающую освещенность или отраженный свет? 54% • Как определить, что робот заехал на темную область? Количество света, возвращенное в датчик на темной области зависит от окружающей освещенности, от высоты датчика, от цвета освещающего светодиода. Поэтому никогда не берите пограничное измеренное значение в условии генерации события. Обычно выбирают середину между показаниями на темной и светлой области. 22% 38% 54%
  • 19. Датчик цвета • Задание 7b. Черно-белое движение • Пусть робот доедет, до темной области, а затем съедет обратно на светлую • Как только получилось, добавьте цикл в программу - пусть робот перемещается вперед-назад попеременно, то на темную, то на светлую область.
  • 20. Датчик цвета • Задание 7с. Движение вдоль линии • Пусть робот перемещается попеременно, то на темную, то на светлую область, но теперь движение должно выполняться поочередно то одним, то другим колесом. • Попробуйте теперь поставить робота на узкую черную линию.
  • 21. Датчик цвета • Задание 8. Робот-уборщик • Роботу понадобятся датчик расстояния и датчик цвета • Задача робота обнаружить внутри ринга весь мусор (предметы обнаруживаемые датчиком расстояния) и вытолкнуть их за черную линию, ограничивающую ринг • Сам робот не должен выезжать за границу ринга
  • 22. Ожидание событий • Ваши вопросы?