Блок ожидания в среде EV3

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

Блок ожидания заставляет вашу программу ждать чего-либо, прежде чем перейти к следующему блоку в последовательности. Можно ждать определенное количество времени до тех пор, пока датчик не достигнет определенного значения, или пока значение датчика не изменится.

Советы и подсказки

Блок ожидания не вызывает остановку вашего робота. Если какие-либо моторы работают в начале блока, они продолжат работу во время ожидания.

Выберите режим «Ожидание»

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

Режимы: «Время», режимы сравнения датчика, режимы изменения датчика

Время

В режиме «Время» блок ожидания ожидает в течение времени, которое вы указали во вводе «Секунды». Время измеряется с начала включения блока ожидания.

Советы и подсказки

Можно включить десятичный знак в значение секунд. Например, 2,5 секунды означает ожидание в течение двух с половиной секунд.

Программные примеры см. разделе «Обеспечение видимости отображаемых элементов» блока«Экран».

Режимы сравнения датчика

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

Ожидание порогового значения датчика

В режиме сравнения датчика с вводом «Пороговое значение» блок ожидания будет непрерывно считывать числовые данные с датчика и сравнивать их с пороговым значением, которое вы указали. Блок прекращает ожидание, когда сравнение с пороговым значением является истиной. Например, вы можете ждать, пока датчик цвета обнаружит значение яркости отраженного света, которое меньше 50. Выбор режима Выбор порта Ввод «Тип сравнения» Ввод «Пороговое значение» Вывод «Измеренное значение» Используйте выбор режима, чтобы выбрать режим сравнения датчика с помощью ввода «Пороговое значение». Если в этом режиме используется порт, используйте «Выбор порта» для того, чтобы убедиться в том, что порт соответствует порту модуля EV3, к которому подключен датчик или мотор. Выберите тип сравнения, который вы хотите использовать, в списке «Тип сравнения» и введите пороговое значение. Блок ожидания будет ждать до тех пор, пока сравнение с пороговым значением не станет истиной.

Советы и подсказки

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

Окончательное значение датчика выводится в окне «Измеренное значение». Вы можете использовать его, чтобы определить точное значение данных датчика, которое делает истинным определение порога. Более подробную информацию об использовании разных типов датчиков и данных, которые они предоставляют, см. в разделах «Использование датчиков».

См. программный пример: Перемещаться до достижения черной линии (метод 2) в разделе «Использование датчика цвета».

Ожидание указанных значений датчика

Следующие режимы сравнения блока ожидания позволяют дождаться конкретных значений датчика: Кнопки управления модулем – Сравнение – Кнопки управления модулем Датчик цвета – Сравнение – Цвет Датчик цвета – Сравнение – Дистанционное управление Датчик касания – Сравнение – Состояние Ультразвуковой датчик – Сравнение – Присутствие Обмен сообщениями – Режимы сравнения

Кнопки управления модулем – Сравнение – Кнопки управления модулем

Вы можете подождать, когда кнопки управления модулем будут в положении «Нажатие», «Освобождение» или «Щелчок». Например, вы можете подождать, когда центральная кнопка будет нажата. Дополнительную информацию о кнопках управления модулем см. в разделе «Использование кнопок управления модулем». Выберите одну или несколько кнопок управления модулем в окне ввода «Набор идентификаторов кнопок модуля» и выберите действие «Нажатие», «Освобождение» или «Щелчок». Блок ожидания будет ждать, пока одна из выбранных кнопок не выполнить выбранное действие. Вывод «Измеренное значение» указывает, какая кнопка нажата в конце (если такая есть).

Пример

Эта программа заставляет робота перемещаться вперед до тех пор, пока не будет нажата центральная кнопка, затем он останавливается и издает звук.

Датчик цвета – Сравнение – Цвет

Вы можете подождать, пока датчик цвета обнаружит один или несколько указанных цветов. Например, вы можете подождать, когда датчик цвета обнаружит черный цвет. Более подробную информацию о датчике цвета и режиме «Цвет» см. в разделе «Использование датчика цвета». Выберите один или несколько цветов на вводе «Набор цветов». Блок будет ожидать, пока не будет обнаружен какой-либо из этих цветов. Обнаруженный цвет выводится в окне «Измеренное значение».

См. программный пример: Перемещаться до достижения черной линии (метод 1) в разделе «Использование датчика цвета».

Инфракрасный датчик – Сравнение – Дистанционное управление

Вы можете подождать, пока будет нажата кнопка на ИК-маяке. Дополнительную информацию об инфракрасном датчике см. в разделе «Использование удаленного режима ИК-датчика». Выберите одну или несколько кнопок в наборе идентификаторов кнопок дистанционного управления и введите номер канала для ИК-маяка. Блок будет ожидать, пока не будет нажата одна из выбранных кнопок. Идентификатор нажатой кнопки выводится в окне «Измеренное значение».

Пример

Эта программа заставляет мотор начать вращение, когда кнопка 1 на ИК-маяке нажата, затем прекратить вращение, когда кнопка 1 освобождается. Освобождение определяется путем ожидания, когда ни одна кнопка не будет нажата (идентификатор кнопки = 0).

Датчик касания – Сравнение – Состояние

Вы можете подождать, пока датчик касания будет в положении «Нажатие», «Освобождение» или «Щелчок». Дополнительную информацию см. в разделе «Использование датчика касания». Выберите «Нажатие», «Освобождение» или «Щелчок» на вводе «Состояние». Блок будет ожидать, пока датчик касания придет в выбранное состояние.

См. программный пример: Перемещаться, пока не будет нажат датчик касания, в разделе «Использование датчика касания»

Ультразвуковой датчик – Сравнение – Присутствие

Можно подождать, когда ультразвуковой датчик обнаружит сигнал другого ультразвукового датчика, находящегося поблизости. Блок будет ждать, пока не будет обнаружен ультразвуковой сигнал. Дополнительную информацию см. в разделе «Использование ультразвукового датчика».

Обмен сообщениями – Режимы сравнения

Вы можете подождать получения сообщения, которое подходит для указанного сравнения. Для получения дополнительной информации см. раздел «Обмен сообщениями».

Режимы изменения датчика

Изменить

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

Ожидание изменения датчика на определенную величину

В режиме изменения датчика во вводе «Величина» блок ожидания считает начальное значение датчика в начале блока, затем будет непрерывно считывать данные датчика и ждать, когда значение изменится на указанную величину по сравнению с начальным значением. Вы можете выбрать требуемое направление изменения (увеличение, уменьшение или любое). Например, вы можете подождать, когда значение яркости внешнего освещения, определенное датчиком цвета, увеличится на 10. Выбор режима Выбор порта Ввод «Направление» Ввод «Величина» Вывод «Измеренное значение» Используйте выбор режима, чтобы выбрать режим изменения датчика с помощью ввода «Величина». Если в этом режиме используется порт, используйте «Выбор порта» для того, чтобы убедиться в том, что порт соответствует порту модуля EV3, к которому подключен датчик или мотор. Выберите вид направления изменения, которого вы ходите дождаться, в окне «Направление» (увеличение, уменьшение или любое) и введите величину изменения. При выборе любого направления блок будет ждать, пока значение датчика либо увеличится, либо уменьшится на указанную величину. Окончательное значение датчика выводится в окне «Измеренное значение».

Пример

Эта программа ожидает, когда значение яркости внешнего освещения, определенное датчиком цвета, увеличится на 10, прежде чем начать перемещение. Вы можете использовать ее, чтобы заставить робота начать перемещение, когда вы включите свет в комнате или посветите фонариком на датчик.

Ожидание изменения датчика на любую другую величину

Следующие режимы изменения блока ожидания позволяют дождаться, когда значение датчика изменится на любое значение, отличное от значения в начале блока. Кнопки управления модулем – Изменение – Кнопки управления модулем Датчик цвета – Изменение – Цвет Датчик цвета – Изменение – Дистанционное управление Датчик касания – Изменение – Состояние Обмен сообщениями – Режимы изменения

Кнопки управления модулем – Изменение – Кнопки управления модулем

Режим «Кнопки управления модулем – Изменение – Кнопки управления модулем» ожидает нажатия или освобождения любой кнопки управления модулем. Идентификатор кнопки, которая была нажата или освобождена, выводится в окне «Измененная кнопка». Дополнительную информацию о кнопках управления модулем см. в разделе «Использование кнопок управления модулем».

См. программный пример: Нажмите кнопку для продолжения в разделе «Использование кнопок управления модулем»

Датчик цвета – Изменение – Цвет

Режим «Датчик цвета – Изменение – Цвет» ожидает, когда изменится число цвета, обнаруженное датчиком цвета в режиме «Цвет» (0-7). Цвет, который был обнаружен последним, выводится в окне «Цвет». Более подробную информацию об использовании датчика цвета и режиме «Цвет» см. в разделе «Использование датчика цвета».

Инфракрасный датчик – Изменение – Дистанционное управление

Режим «Инфракрасный датчик – Изменение – Дистанционное управление» ожидает изменения идентификатора кнопки на ИК-маяке. В большинстве случаев идентификатор кнопки изменится при нажатии или освобождении любой кнопки на ИК-маяке. Идентификатор, измеренный после изменения, выводится в окне «Измеренное значение». См. раздел «Использование инфракрасного датчика в режиме «Дистанционное управление» для получения более подробной информации.

См. программный пример: Кнопка дистанционного запуска в разделе «Использование дистанционного режима инфракрасного датчика»

Датчик касания – Изменение – Состояние

Режим «Датчик касания – Изменение – Состояние» ожидает изменения состояния датчика касания. Если датчик освобожден (не нажат) в начале блока, он будет ожидать нажатия. Если датчик нажат в начале блока, он будет ожидать освобождения. Конечное состояние выводится в окне «Измеренное значение». Дополнительную информацию см. в разделе «Использование датчика касания».

Обмен сообщениями – Режимы изменения

Режимы «Обмен сообщениями – Изменение» ожидают получения сообщения указанного типа и с указанным заголовком со значением, которое отличается от типа последнего подходящего сообщения. Режимы «Обмен сообщениями – Обновление» ожидают получения сообщения подходящего типа (тестового, численного или логического) и с подходящим заголовком сообщения. Значение сообщения выводится в окне «Сообщение»

Вводы и выводы

Вводы, доступные для блока ожидания, будут зависеть от выбранного режима. Вы можете вводить значения ввода прямо в блоке. Или же, как вариант, значения ввода можно передавать по шинам данных от выводов других программных блоков.

Ввод

Тип

Примечания

Секунды

Числовое значение

Число секунд ожидания в режиме «Время».

Тип сравнения

Числовое значение

Тип сравнения для режима сравнения датчика с пороговым значением. 0: = (равно) 1: ≠ (не равно) 2: > (больше, чем) 3: ≥ (больше или равно) 4: < (меньше, чем) 5: ≤ (меньше или равно)

Пороговое значение

Числовое значение

Значение, с которым сравниваются данные датчика, в режиме сравнения датчика с пороговым значением.

Направление

Числовое значение

Направление для изменения численного значения датчика. Используется в режимах изменения датчика, которые имеют ввод «Величина». 0 = Увеличение 1 = Уменьшение 2 = Любое

Сумма

Числовое значение

Величина изменения значения датчика в режиме изменения датчика

(Вводы для определенных типов датчиков)

Более подробную информацию о данных датчиков см. в разделах конкретных типов датчиков.

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

Вывод

Тип

Примечания

(Выводы варьируются в зависимости от типов датчиков)

Для получения дополнительной информации о данных датчиков см. режим справки по отдельным типам датчиков.

Измеренное значение

Числовое значение

Значение датчика после ожидания

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.