Читаем Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С полностью

Парящий робот должен удовлетворять следующим общим требованиям:

1. Быть автономным;

2. Иметь рабочую область размером 16×16 футов. (40,6×40,6 см);

3. Весить не больше, чем 2,5 фунта (1,14 кг);

4. Обладать собственными средствами взлета и посадки;

5. Использовать двигатели постоянного тока;

6. Поднимать до 4,5 фунтов (2,05 кг), включая собственный вес;

7. Поддерживать постоянную высоту парения;

8. Осуществлять движение во всех направлениях;

9. Избегать препятствий;

10. Иметь энергонезависимую память данных;

11. Стоить не более $500,00.

7.5.2. Системы HCS12 используемые в проекте

В этом проекте будут использоваться следующие под системы HCS12:

• Подсистема входного захвата таймера;

• Модуль АЦП;

• Подсистема ШИМ.

7.5.3. Теоретическое обсуждение

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

Для управления использовалась T-плата компании ImageCraft с МК семейства HCS12 (рис. 7.22). Частота тактирования МК равна 25 МГц, резидентная Flash-память программ МК равна 256 Кб, оперативная память — 12 Кб и энергонезависимая память данных типа EEPROM — 4 Кб. Для бортовой схемы весьма желательна миниатюризация платы. Для управления двигателями постоянного тока используется встроенный модуль ШИМ. Пьезогирометрические датчики для трех осей вращения обеспечивают изменение углов тангажа, крена и рыскания для управления парящим роботом. Выходы гиродатчика поданы на вход таймера МК и используются, чтобы корректировать скорости вращения всех четырех двигателей парящего робота. В дополнение к гиродатчикам, на роботе установлены четыре инфракрасных датчика. Они обнаруживают преграды, когда робот приближается к стенкам или препятствиям. Выходы датчиков поданы на входной порт АЦП, их сигналы обеспечивают выбор алгоритма управления полетом, позволяющего избежать столкновений со стенками или препятствиями.

Рис. 7.22. Плата с МК НCS12


В качестве гиродатчиков используются три пьезогиродатчика GYA350 компании Futaba. Мы выбрали эти датчики, поскольку они специально предназначены для авиамоделей. Датчик весит 26 г и размещается в корпусе 27 мм×27 мм×20 мм. Он обеспечивает сигналы ШИМ частотой 55 Гц, при этом изменение ширины импульса указывает направление движения датчика и, следовательно, направление движения парящего робота. Этот гиродатчик может также работать в режиме поддержки заданного направления (режим heading-hold), при котором микроконтроллер может определить ширину импульса на выходе датчика летящего робота. При использовании функции входного захвата таймера, робот проверяет направление, оценивая выходные ШИМ сигналы гиродатчиков.

В дополнение к гиродатчикам робот использует для измерения расстояния четыре инфракрасных пары передатчик/приемник GP2D12 фирмы Sharp, чтобы избежать столкновения с любыми объектами. Эти датчики могут обеспечивать диапазон выходных напряжений, соответствующих расстоянию обнаружения от 10 до 80 см. Эти напряжения преобразуются в соответствующие цифровые значения с помощью модуля ATD микроконтроллера. Датчик легок и размещается в корпусе 45 мм×14 мм×20 мм.

Для взлета использовались четыре двигателя постоянного тока Graupner Speed300, питающиеся от постоянного напряжения 6 В. Каждый двигатель весит 50 г при диаметре вала в 2 мм и потребляемом токе до 5 A. На валу двигателя установлена маленькая пластмассовая шестерня, которая приводит во вращение большую шестерню на оси пропеллера, как показано на рис. 7.21.

7.5.4. Структура программы и блок-схема алгоритма

Схема подключения на рис. 7.23 показывает связи компонентов парящего робота с контроллером. На рис. 7.24 схематично показана конструкция робота со всеми компонентами. Обратите внимание, что ШИМ-сигналы регулирующие скорость вращения подаются на ИС силового коммутатора, которая обеспечивают достаточный ток для двигателей постоянного тока. Чтобы обеспечить питание системы используется несколько батарей. Сигналы поступают в МК от датчиков, а выходные сигналы МК управляют ИС коммутаторов двигателей.

Рис. 7.23. Схема подключения управляющих компонентов парящего робота

Рис. 7.24. Диаграмма движения робота со всеми бортовыми компонентами


На рис. 7.25 представлена структура программы для парящего робота, в которой показаны направления потоков данных между программными модулями. На рис. 7.26 показана блок-схема алгоритма программы для управления роботом.

Перейти на страницу:

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT