Предыдущая Следующая

Программа начинается с распознавания битов информации. Затем накапливается информация о полубайте всего кода. При формировании полубайта кода программа определяет, что было принято: код сигнала или код команды. Далее полный байт информации сохраняется и сравнивается с последующими поступающими в приемник байтами. Если байты совпали шесть раз из десяти, то команда, полученная приемником, верна и декодируется для исполнения. В противном случае код последнего записывается в регистр, а предыдущие смещаются последова-

Радиоуправление моделями автомобилей

263

тельно в девяти регистрах с потерей ранее записанного кода. Это делается с целью уменьшения затраченного времени на дешифрацию кода сигнала.

2.68mS 10,0mS

Рис. 10.12. Обработка микроконтроллером принятого сигнала

Значение первого кода байта (четыре бита) — неизменно. При организации соревнования для исключения влияния игроков друг на друга в старший полубайт содержит уникальный код для каждой модели. Каждый объект характеризуется собственной кодировкой первого полубайта. Различные коды первого полубайта необходимы также в том случае, если модель содержит несколько приемников для различных исполнительных устройств (например, независимого управления телекамерой или управления манипулятором).

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

В случае сбоя микроконтроллера входы исполнительных драйверов будут замкнуты контактами S2 на "землю" через диоды D2 и D3. Однако механические контакты не всегда эффективны, поэтому микрокон-

264

Глава 10

троллер формирует на выводах РВЗ и РВ4 импульсы длительностью 1 мкс. В случае замыкания на землю D2 и D3, через S2 микроконтроллер во время опроса порта В блокирует прохождение сигнала управления драйвером поворота колес.

Импульс малой длительности проходит через емкость монтажа, резисторы R9, R10 и емкость диодов (а также — малое сопротивление диода в прямом направлении) в случае замыкания S2. При размыкании контактов емкость микросхемы D1 слишком мала, а заряд на выводах РВЗ и РВ4 велик и при опросе микроконтроллером останется на единичном уровне (далее из-за отсутствия единицы на выводах порта заряд спадет).

При значительной емкости монтажа резисторы R9 и R10 имеют малое сопротивление (если емкость монтажа незначительна, то параллельно резисторам необходимо добавить конденсаторы по 10 нФ). С целью экономии аппаратных средств для управления моделью в передатчике не предусмотрена кнопка "Стоп".

Для уменьшения вздрагивания модели при управлении программа оставляет активным сигнал управления движением вперед и назад в течении 100 мс (активизируется таймер), после чего порт вывода обнуляется. Если в течение 100 мс поступил новый сигнал управления движением, то таймер сбрасывается в исходное состояние, если же время вышло за пределы 100 мс, то таймер дает команду на обнуление всех выводов порта.


Предыдущая Следующая






Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book8_103.html on line 122

Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book8_103.html on line 122

Warning: include() [function.include]: Failed opening './news.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/picprof/data/www/picprof.com/book/book8_103.html on line 122