SlideShare una empresa de Scribd logo
1 de 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. Робот-уборщик
  • Роботу понадобятся датчик расстояния и датчик цвета
  • Задача робота обнаружить внутри ринга весь мусор
    (предметы обнаруживаемые датчиком расстояния) и
    вытолкнуть их за черную линию, ограничивающую ринг
  • Сам робот не должен выезжать за границу ринга
Ожидание событий



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

Más contenido relacionado

La actualidad más candente

Industrial robotics
Industrial roboticsIndustrial robotics
Industrial robotics
jjenishmech
 

La actualidad más candente (20)

How AlphaGo Works
How AlphaGo WorksHow AlphaGo Works
How AlphaGo Works
 
Yolov3
Yolov3Yolov3
Yolov3
 
Introduction to Alphago Zero
Introduction to Alphago ZeroIntroduction to Alphago Zero
Introduction to Alphago Zero
 
Robotics for Path Planning
Robotics for Path PlanningRobotics for Path Planning
Robotics for Path Planning
 
Control systems and Robotics
Control systems and RoboticsControl systems and Robotics
Control systems and Robotics
 
Agriculture and technology
Agriculture and technologyAgriculture and technology
Agriculture and technology
 
Image Classification Done Simply using Keras and TensorFlow
Image Classification Done Simply using Keras and TensorFlow Image Classification Done Simply using Keras and TensorFlow
Image Classification Done Simply using Keras and TensorFlow
 
Industrial robotics
Industrial roboticsIndustrial robotics
Industrial robotics
 
Alpha zero - London 2018
Alpha zero  - London 2018 Alpha zero  - London 2018
Alpha zero - London 2018
 
Lego robotics
Lego roboticsLego robotics
Lego robotics
 
Introduction to Robots
Introduction to RobotsIntroduction to Robots
Introduction to Robots
 
[RLKorea] Unity ML-agents 발표
[RLKorea] Unity ML-agents 발표[RLKorea] Unity ML-agents 발표
[RLKorea] Unity ML-agents 발표
 
Ros platform overview
Ros platform overviewRos platform overview
Ros platform overview
 
ROS+GAZEBO
ROS+GAZEBOROS+GAZEBO
ROS+GAZEBO
 
Robotics of Future
Robotics of FutureRobotics of Future
Robotics of Future
 
AGRICULTURAL ROBOT FOR FUTURE FARMING
AGRICULTURAL ROBOT FOR FUTURE FARMINGAGRICULTURAL ROBOT FOR FUTURE FARMING
AGRICULTURAL ROBOT FOR FUTURE FARMING
 
게임 기획과 Oop
게임 기획과 Oop게임 기획과 Oop
게임 기획과 Oop
 
2. robotics
2. robotics2. robotics
2. robotics
 
Robotics in agriculture kvg
Robotics in agriculture kvgRobotics in agriculture kvg
Robotics in agriculture kvg
 
HUMANOID ROBOTS
HUMANOID ROBOTSHUMANOID ROBOTS
HUMANOID ROBOTS
 

Destacado

Manual oso de anteojos
Manual oso de anteojosManual oso de anteojos
Manual oso de anteojos
Jos Cruz
 

Destacado (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
 

Más de Alexander Kolotov

Más de 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. Ожидание событий • Ваши вопросы?