Программа 2
Программа 2
‘Микроконтроллер 2
b4 = 150 ‘Установка среднего положения сервомотора
start:
peek 6, b1 ‘Чтение данных микроконтроллера 1
let b0 = b1 & 7 ‘Маскирование кроме первых трех битов
if b0 = 0 then slp ‘Время спячки
if b0 = 1 then rt ‘Поворот направо
if b0 = 2 then lt ‘Поворот налево
if b0 = 3 then fw ‘Движение прямо
if b0 = 4 then avoid ‘Режим избегания
goto start
slp:
low 4: low 5 ‘Выключить двигатель
pulsout 3, b4 ‘Запустить сервомотор
pause 18 ‘Задержка включения сервомотора
goto start ‘Чтение данных микроконтроллера 1
rt: ‘Поворот направо
high 4: low 5 ‘Движение вперед
if b4 > 200 then rt1: ‘Поворот направо максимален
b4 = b4 + 1 ‘Нет
rt1: ‘Да
pulsout 3, b4 ‘Поворот сервомотора
pause 18 ‘Задержка ( 55 Гц)
goto start ‘Чтение данных микроконтроллера 1
lt: ‘Поворот налево
high 4: low 5 ‘Движение вперед
if b4 < 100 then lt1: ‘Поворот налево максимален
b4 = b4 – 1 ‘Нет
lt1: ‘Да
pulsout 3, b4 ‘Поворот сервомотора
pause 18 ‘Задержка (55 Гц)
goto start ‘Чтение данных микроконтроллера 1
fw: ‘Прямо
high 4: low 5 ‘Движение прямо
pulsout 3, b4 ‘Поворот сервомотора
pause 18 ‘Задержка (55 Гц)
goto start ‘Чтение данных микроконтроллера 1
avoid:
low 4: high 5 ‘Движение назад
if b4 > 150 then vr ‘Проверка. Перемена направления направо?
if b4 <= 150 then vl ‘Проверка. Перемена направления налево?
vr: ‘Перемена направления вправо
b5 = b4 – 30 ‘Направление поворота
for b6 = 1 to 120 ‘Цикл задержки 2 с
pulsout 3, b5 ‘Поворот сервомотора
pause 18 ‘Задержка (55 Гц)
next b6 ‘Конец цикла
goto start ‘Чтение данных микроконтроллера 1
vl: ‘Перемена направления влево
b5 = b4 + 30 ‘Направление поворота
for b6 = 1 to 120 ‘Цикл задержки 2 с
pulsout 3, b5 ‘Поворот сервомотора
pause 18 ‘Задержка (55 Гц)
next b6 ‘Конец цикла
goto start
Фотография конструкции робота в сборе показана на рис. 8.18
Рис. 8.18. Вид спереди готовой конструкции
Данный текст является ознакомительным фрагментом.