FreeCDZ

Программирование датчиков касания в среде ROBOTC

×

Задание 1

Что является датчиком касания?
Изображение к заданию

×

Задание 2

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

×

Задание 3

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

×

Задание 4

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

×

Задание 5

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

×

Задание 6

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

×

Задание 7

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

×

Задание 8

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

×

Задание 9

Пусть дана следующая функция, реализующая движение робот в любых направлениях: void moving(int LeftMotor, int RightMotor, int time) { motor[port1] = LeftMotor; motor[port2] = RightMotor; wait1Msec(time); motor[port1] = 0; motor[port2] = 0; wait1Msec(50); } Допишите основное тело кода так, чтобы при наезде на препятствие робот откатился назад со скоростью 50 в течение 600 милисекунд. В противном случае робот должен ехать вперед со скоростью 50. Кнопка подключена в шестой цифровой порт.
Изображение к заданию
task main() { while(1) { if(SensorValue[] == ) { moving(,50,100); } else { moving(,-50,); } } }

×

Задание 10

Пусть дана следующая функция, реализующая движение робот в любых направлениях: void moving(int LeftMotor, int RightMotor, int time) { motor[port1] = LeftMotor; motor[port2] = RightMotor; wait1Msec(time); motor[port1] = 0; motor[port2] = 0; wait1Msec(50); } Допишите основное тело кода так, чтобы при приближении к препятствию на расстояние 20 сантиметров робот объехал это препятствие справа. В противном случае робот должен ехать вперед. Ультразвуковой дальномер подключен в шестой цифровой порт.
Изображение к заданию
task main() { while(1) { if(SensorValue[dgtl6] 20) { moving(60,,100); } else { moving(50,,100); moving(50,50,100); moving(-50,,100); moving(50,50,100); } } }