Урок 09.
Программирование на языке PBASIC.
Управление моторами колес
Каждое колесо робота имеет отдельный мотор, который имеет собственный пин. Чтобы робот начал движение необходимо выполнить команду для каждого мотора. Команда, управляющая моторами, называется PULSOUT. Также как FREQOUT, команда PULSOUT посылает в пин специальный сигнал.
P13:Мотор левого колеса P12: Мотор правого колеса
Команда PULSOUT инвертирует вольтаж пина. Инвертирование надо понимать следующим образом: низкий вольтаж становится высоким, высокий вольтаж становится низким. Вольтаж инвертируется на заданное время, затем он возвращается в исходное состояние. Синтаксис команды следующий:
PULSOUT Пин, Длительность
Пин – пин мотора .
Длительность - время на которое инвертируется вольтаж, измеряется в микросекундах (микросекунда это миллионная доля секунды
Длительность высокого сигнала определяет скорость и направление вращения колес робота. Ниже приведены базовые значения длительности для основных вариантов движения:
· Для команды PULSOUT длительность должна принимать значения от 1000 до 3000.
· Длительность 1000 вращает моторы с полной скоростью назад.
· Длительность 2000 останавливает моторы.
· Длительность 3000 вращает моторы с полной скоростью вперед.
· Чем ближе длительность к 2000, тем медленнее вращаются моторы
Инициализация моторов
Моторы колес робота необходимо инициализировать – подготовить к приему сигналов. Это значит послать в них низкий сигнал с помощью команды LOW.
Затем с помощью PULSOUT команды задать движение, т. е. инвертировать сигнал. Необходимо инициализировать каждый мотор в отдельности.
Моторам необходимо некоторое время после инициализации. Если Вы пошлете на них сигнал с помощью команды PULSOUT раньше этого времени, моторы будут не готовы к приему сигнала. По этому необходима команда PAUSE 100, дающая мотором необходимое время для инициализации.
Остерегайся аварии
|
Ö Поставьте робота на коробку, так, чтобы колеса не касались пола.
Ö Напишите, сохраните и выполните программу FullSpeed. bs2.
Ö Выключите робота.
Ö Отсоедините кабель и поставьте робота на пол.
Ö Включите робота и выполните программу.

Стандартные повороты
Ниже в таблице приводятся стандартные значения длительности для различных поворотов и движения назад.
Направление | P12 | P13 | |
Правый поворот | Правое колесо вращается медленнее левого | 2500 | 3000 |
Левый поворот | Левое колесо вращается медленнее правого | 3000 | 2500 |
Вращение направо | Вращение колес в противоположном направлении | 1000 | 3000 |
Вращение налево | Вращение колес в противоположном направлении | 3000 | 1000 |
Левый поворот назад | Робот движется назад и поворачивает налево | 1000 | 1500 |
Правый поворот назад | Робот движется назад и поворачивает направо | 1500 | 1000 |
Движение назад | Робот двигается назад | 1000 | 1000 |
Задание
1. Напишите и выполните программу, в которой робот, поворачивая налево, двигается вперед по кругу. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
2. Напишите и выполните программу, в которой робот, поворачивая направо, двигается вперед по кругу. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
3. Напишите и выполните программу, в которой робот вращается на месте налево. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
4. Напишите и выполните программу, в которой робот вращается на месте направо. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
5. Напишите и выполните программу, в которой робот, поворачивая налево, двигается назад по кругу. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
6. Напишите и выполните программу, в которой робот, поворачивая направо, двигается назад по кругу. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
7. Напишите и выполните программу, в которой робот, двигается назад. Не забудьте при загрузке программы в робота поставить его на коробку или держите его в руках.
Автор уроков .
*****@***ru
телефон (48, сотовый 7-46



