Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Робототехника с пеленок/Свет и звук

Вы уже наверняка познакомились со средой программирования Scratch. И попробовали создать в ней что-то интересное, узнали как работать со спрайтами, костюмами. Смогли реализовать условия, движение и возможно даже познакомились с переменными.

. Скратчбоард.Лаборатория дарит вам такую возможность взаимодействовать с персонажами, управлять ситуацией или познавать окружающий мир. Это специальная плата, подключив которую к компьютеру вы получите доступ к внешним датчикам и устройствам управления (сенсорам в терминологии Scratch).

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

В базовой версии (возможности которой мы будем учиться реализоваться в последующих темах) плата дает доступ к следующим датчикам и органам управления (выделены красным):

1. Датчик звука (Звук)

2. Переменный резистор (Рычажок)

3. Датчик света (Свет)

4. Разъемы для дополнительных аналоговых датчиков (Сопротивление A и B)

5. Кнопка

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

Если Кнопка и Движок являются устройствами ввода, то два других сенсора - Звук и Свет - являются настоящими датчиками состояния внешней среды. Используя их, вы сможете создавать программы, реагирующие на внешние условия и воздействия - уровень громкости/шума и освещенности.

Преимущества Лаборатории СкретчДуино:

  1. Лаборатория хорошо сочетается с идеей Умного дома, даёт возможность младшим школьникам познакомиться с разнообразными датчиками.
  2. Датчики звука, света, рычажок и кнопки дают большие возможности для создания разнообразных проектов в среде Scratch: гонять кота по сцене с помощью кнопок, поднимать солнце в мультфильме в зависимости от освещенности, двигать персонажа звуками или хлопками, управлять с помощью рычажка и много, много чего ещё можно придумать.
  3. Выносной датчик температуры очень удобен для практического изучения степени нагревания предметов и жидкостей.
  4. Есть возможность подключения дополнительных датчиков проводом с "крокодильчиками".

Имея оба устройства (Робоплатформу и Лабораторию), можно подключить их оба и заставить взаимодействовать между собой. К примеру, кнопками Лаборатории управлять движением Робоплатформы или, наоборот, если Робоплатформа находит препятствие датчиком касания или ИК-глазом, выводить сигналы на светодиоды или динамик Лаборатории.

Вообще, Scratchduino вполне можно использовать в качестве цифровой лаборатории в младших классах (вместо более дорогих ЛабДиск, Архимед и подобных), особенно, если использовать дополнительные датчики и "крокодильчики".

Да будет Свет!

Свет (или датчик освещенности) отображает ее уровень в месте, где находится плата. Закройте его пальцем, и вы увидите, что его значение снизилось. Датчик может изменять свои параметры (как и другие датчики платы) от 0 до 100. Обычно стандартная освещенность составляет 45-50 единиц при дневном свете и 50-60 единиц при свете ламп искуственного освещения.

Давайте напишем программу, которая будет показыавать нам, день или ночь в настоящий момент. Для этого мы будем определять уровень освещенности и если он будет недостаточным, то будем считать что на дворе у нас ночь. Для полноты картины мы будем использовать два разных фона для Сцены - один для ночи, второй для дня.

Щелкните на Сцене и откройте вкладку Фоны. Выберите в качестве дневного фона что-то посветлее и для ночи потемнее (импортируйте их).

Затем определите уровень освещенности, при котором у нас будет "ночь". Закройте датчик света пальцем и посмотрите на значение (обычно оно располагается в районе 10-15). Теперь закройте сверху плату чем нибудь светонепропускаемым (например тетрадкой). Это будет примерно соответствовать ночному состоянию, так как в городе не бывает 100% темно. У вас получится значение порядка 27-30. Это и будет порог срабатывания для определения ночного времени.

Задайте для Сцены следующий код:

Алгоритм работы прост - если значение датчика освещения меньше порогового (30), то показать ночной фон. Иначе дневной.

Запустите программу и попробуйте закрывать датчик света.

Задание:
Модернизируйте программу, добавив третье состояние - вечер.

Теперь давайте создадим модель прибора, которая будет показывать нам уровень освещенности на специализированной шкале. Она будет выглядеть вот так:

Как видите, у нас есть три столбика, которые появляются при определенном уровне света.

Создайте три спрайта и задайте в каждом из них вот такой код (он будет различаться только цифрами):

Задайте для первого спрата значение > 10, для второго > 30, для третьего > 50.

Задание:
Поэкспериментируйте с цифрами, чтобы добиться устойчивой работы прибора

Задание:
Создайте более чувствительный прибор, состоящий из десяти значений шкалы

Светомузыка

Как и в случае с Рычажком, с помощью датчика света можно не только измерять его величину, но и управлять различными программными вещами. К примеру вы можете построить световой терменовокс.

Важные вещи:
Терменовок - это электромузыкальный инструмент, созданный в 1919 году русским изобретателем Львом Сергеевичем Терменом. Игра на терменвоксе заключается в изменении музыкантом расстояния от своих рук до антенн инструмента, за счёт чего изменяется частота звука.

В нашем случае частота звука (то есть нота) будет изменяться при изменении уровня освещенности от закрывания датчика света рукой.

Используем код из примера с Рычажком, только заменим сенсор:

Принцип действия следующий. Датчик света отслеживает уровень затемнений, который вносит рука, и мы используем это значение как тон, преобразовав его по формуле для попадания в значение нот от 40 до 80.

Задание:
Создайте виртуальный барабан.

Звуковой сенсор

Звуковой сенсор как и световой сенсор, он относится к аналоговым, но его реакция на звук проявляется по другому. Представьте себе натянутую струну. Чем дальше вы ее оттянете, тем больше будут ее колебания. Звуковой сенсор действует аналогично - чем больше уровень воспринимаемого шума, тем больше его отклонения. То есть при улавливании шума он начинает выдавать значения в плюс. Проиллюстрируем это простой программой:

Запустите программу и поднесите плату к источнику громкого шума (или просто покричите или похлопайте. Персонаж передвигаясь оставит за собой диаграмму уровня звука с течением времени. Надо помнить что после достижения максимума регистрируемой амплитуды, звуковой сенсор сбрасывается до нуля, поэтому использовать надо уровень, которого достигает шум.

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

Задание:
Создайте игру "Мельница". Задача участников игры - дуть в микрофон. Пока идут сигналы (в течении секунды-двух), нужно показать крутящиеся лопасти мельницы и выводить счет в мешках в зависимости от уровня сигнала и их количества. Как только будет паузы - остановиться и вывести результат

 

http://wiki.scratchduino.ru/wiki/%D0%A0%D0%BE%D0%B1%D0%BE%D1%82%D0%BE%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0_%D1%81_%D0%BF%D0%B5%D0%BB%D0%B5%D0%BD%D0%BE%D0%BA/%D0%A1%D0%B2%D0%B5%D1%82_%D0%B8_%D0%B7%D0%B2%D1%83%D0%BA

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...