Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Описание работы программы





Программное управление двигателями осуществляется записью в порт P1 констант.

Программное управление передатчиком ИК излучения производится записью некоторого числа в порт P3 МК. Если младший бит (P3.0) этого числа равен 0, светодиод VD2 погашен, а если он равен 1 — включен. Последовательная смена значений этого бита приводит к возникновению впереди модели пульсирующего уровня освещенности в ИК части спектра. Уровень отраженного излучения фиксируется фотодатчиком, и при его возрастании делается предположение о наличии впереди препятствия.

Особенность программы в том, что алгоритм управления размещен в обработчике таймера МК. Обусловлено это тем, что переключать излучающий светодиод необходимо с некоторой постоянной частотой, и для упрощения программы алгоритм управления помещен там же. После подачи сигнала сброса в момент включения питания МК начинает выполнять программу с отметки START. В этой части программы производится начальная инициализация стека, регистров, портов ввода/вывода P1 и P3, аналогового компаратора, 16-разрядного таймера 0, устанавливаются частота следования импульсов на таймер, равная СК/12 (СК — тактовая частота, равная 12 МГц), и обработчик прерывания по переполнению таймера 0.

Поскольку переполнение таймера происходит каждый раз после поступления 256 импульсов, обработчик прерывания вызывается 3906 раз в секунду. В результате излучающий светодиод переключается с частотой примерно 1953 Гц. Анализ же принятого отраженного сигнала производится один раз за 20 циклов таймера, т. е. с частотой 195 Гц.

Алгоритм управления работает следующим образом. Регистр R1 используется как счетчик с диапазоном значений от 0 до 240. При каждой проверке, если есть препятствие и значение счетчика меньше 240, оно увеличивается на 1, а если препятствия нет, уменьшается на такую же величину, пока не станет равным 0. Далее при значении счетчика от 0 до 16 выдается команда на движение вперед, от 17 до 31 — на остановку, а от 32 до 240 — на разворот. Такой алгоритм позволяет избежать ложных срабатываний и повышает вероятность полного объезда препятствия (разворот модели продолжается некоторое время и после его пропадания).

На регистре R2 организован счетчик разворотов, по которому каждый второй разворот делается в противоположную предыдущему сторону, а на регистре R0 — счетчик алгоритма управления электродвигателями. Он последовательно принимает значения от 0 до 3 с каждым вызовом прерывания. При 0 выключается правый двигатель, а при 2 — левый. Таким образом, снижается ток, потребляемый от батареи питания, благодаря чему возрастает время автономной работы модели от одной зарядки аккумуляторов до другой.

 

Date: 2016-06-08; view: 355; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию