Государственный Университет Аэрокосмического Приборостроения Дипломный проект Разработка ультразвукового измерителя дальности Руководитель: канд.техн.наук, начальник СКБ ГУАП А. М. Астапкович Студент гр. 2421 А. В.Бурдуков СОДЕРЖАНИЕ ВВЕДЕНИЕ ................................................................................................................... 5 1 Обзор списка использованных источников ........................................................ 8 1.1 Исторические сведения ........................................................................................ 8 1.2 Особенности эхолокации у бабочек............................................................... 11 1.3 Особенности эхолокации у летучих мышей ..................................................... 14 1.4 Обзор ультразвуковых систем измерения дальности....................................... 17 1.5 Использование ультразвуковых дальномеров в охранных системах ......... 23 1.6 Обзор мобильных роботехнических систем ..................................................... 28 2. Специальная часть.................................................................................................. 32 2.1 Выбор прототипа .................................................................................................. 32 2.2 Выбор сетевой топологии ................................................................................... 34 2.3 Выбор типа шины................................................................................................. 35 2.4 Общие требования................................................................................................ 37 3. Разработка схемы электрической принципиальной сетевого модуля измерителя дальности ................................................................................................ 38 3.1 Выбор элементной базы и разработка структурной схемы ............................. 38 3.1.1 Ультразвуковые преобразователи ................................................................... 38 3.1.2 Основной микроконтроллер............................................................................ 40 3.1.3 CAN-контроллер ........................................................................................... 41 3.1.4 Разработка структурной схемы измерителя ................................................... 43 3.2 Разработка принципиальной схемы ................................................................... 46 3.2.1 Выходной каскад измерительной части ......................................................... 46 3.2.2 Предварительный усилитель приёмной части ультразвукового измерителя дальности..................................................................................................................... 48 3.2.3. Разработка логической схемы измерительной части ................................... 49 3.3 Выбор элементной базы ...................................................................................... 51 3.4 Расчёт узлов модуля ультразвукового измерителя дальности ........................ 53 3.5 Принципиальная схема основного модуля ультразвукового измерителя дальности..................................................................................................................... 56 4. Конструкторско-технологическая часть .............................................................. 59 4.1 Разработка технических условий на ультразвуковой измеритель дальности 59 4.1 Требования по устойчивости к внешним воздействиям .................................. 60 4.2 требования к конструкции .............................................................................. 61 4.3 требования к надежности ................................................................................ 61 4.4 комплектность .................................................................................................. 61 4.5 Маркировка....................................................................................................... 62 4.6 Консервация и упаковка ...................................................................................... 62 4.7 Требования безопасности .................................................................................... 63 4.8 Правила приемки ............................................................................................. 63 4.9 Транспортирование и хранение ...................................................................... 63 2 4.10 Указания по эксплуатации .............................................................................. 64 4.11 Гарантии изготовителя .................................................................................... 64 4.12 Конструкция основного модуля ..................................................................... 64 4.13 Конструкция комплекта ультразвуковых передатчика и приёмника ......... 69 5. Экспериментальная проверка ультразвуковой системы измерения дальности ...................................................................................................................................... 71 5.1 Макетное испытание измерителя дальности..................................................... 71 5.2 Разработка программного обеспечения для макетных испытаний модуля ... 74 5.3 Описание программных модулей для основного модуля ультразвуковой системы измерения дальности .................................................................................. 75 5.4 макетное испытание измерителя дальности ...................................................... 79 5.5 постановка задачи для эксперимента ................................................................. 81 5.6 Используемое аппаратное обеспечение ............................................................. 82 5.7 описание бортового контроллера робота «феникс 3» ...................................... 83 5.8 Используемый радиоканал .................................................................................. 86 5.9 Подготовка эксперимента ................................................................................... 88 5.10 Проведение эксперимента ................................................................................. 90 6. Бизнес-план производства и реализации ультразвукового измерителя дальности..................................................................... Error! Bookmark not defined. 6.1 Резюме .................................................................. Error! Bookmark not defined. 6.2 Научно-технический задел ................................. Error! Bookmark not defined. 6.3 Анализ положения в отрасли ............................. Error! Bookmark not defined. 6.4 Суть разрабатываемого проекта ........................ Error! Bookmark not defined. 6.4.1 Назначение ........................................................ Error! Bookmark not defined. 6.4.2 Форма реализации ............................................ Error! Bookmark not defined. 6.4.3 Новизна.............................................................. Error! Bookmark not defined. 6.5 План маркетинга................................................... Error! Bookmark not defined. 6.5.1 Описание характеристик товара ...................... Error! Bookmark not defined. 6.5.2 Анализ рынка сбыта .......................................... Error! Bookmark not defined. 6.5.3 Разработка стратегии ценообразования и продвижения товара на рынок ...................................................................................... Error! Bookmark not defined. 6.6 Производственный план ..................................... Error! Bookmark not defined. 6.6.1 Место изготовления .......................................... Error! Bookmark not defined. 6.6.2 Перечень технологических процессов ............ Error! Bookmark not defined. 6.6.3 Перечень необходимого оборудования .......... Error! Bookmark not defined. 6.6.4 Потребность в кадрах ....................................... Error! Bookmark not defined. 6.6.5 Утилизация отходов и охрана окружающей среды ...... Error! Bookmark not defined. 6.7 Организационный план ....................................... Error! Bookmark not defined. 6.8 Финансовый план ................................................. Error! Bookmark not defined. 6.8.1 Планирование разработки ................................ Error! Bookmark not defined. 3 6.8.2 Определение себестоимости программного обеспечения . Error! Bookmark not defined. 6.8.3 Оценка экономической эффективности инвестиционного проекта .....Error! Bookmark not defined. 6.8.3.1 Критерии эффективности коммерческих инвестиций .... Error! Bookmark not defined. 6.8.3.2 Расчёт экономической эффективности экономического проекта ......Error! Bookmark not defined. 6.9 Анализ рисков и неопределенностей ................. Error! Bookmark not defined. 6.9.1 Возможность ошибки при постановке или анализе задачиError! Bookmark not defined. 6.9.2 Срыв графика работ в результате ошибки в оценке времени разработки ...................................................................................... Error! Bookmark not defined. 6.10 Экологические и социально-экономические аспекты проекта ..............Error! Bookmark not defined. 7. Безопасность и санитарно-гигиенические условия труда на рабочем месте пользователя ПЭВМ................................................... Error! Bookmark not defined. 7.1 Общие положения ............................................... Error! Bookmark not defined. 7.2 Параметры микроклимата .................................. Error! Bookmark not defined. 7.3 Вредные вещества и пыль .................................. Error! Bookmark not defined. 7.4 Выбор системы вентиляции ............................ Error! Bookmark not defined. 7.5 Требования к шуму ............................................. Error! Bookmark not defined. 7.6 Требования к вибрации....................................... Error! Bookmark not defined. 7.7 Обоснование выбора системы освещения ........ Error! Bookmark not defined. 7.8 Электробезопасность .......................................... Error! Bookmark not defined. 7.9 Электромагнитные излучения и уровень ионизации воздуха ...............Error! Bookmark not defined. 7.10 Меры пожарной безопасности ......................... Error! Bookmark not defined. 7.11 Эргономические показатели ............................ Error! Bookmark not defined. 7.12 Выводы по разделу............................................ Error! Bookmark not defined. ЗАКЛЮЧЕНИЕ .......................................................................................................... 91 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ ................................................ 93 ПРИЛОЖЕНИЕ А - Текст подпрограммы модуля начальной микроконтроллера ультразвукового измерителя дальности .................................................................. 95 ПРИЛОЖЕНИЕ Б - Текст подпрограммы модуля таймера циклических измерений программы модуля начальной микроконтроллера ультразвукового измерителя дальности ................................................................................................ 97 ПРИЛОЖЕНИЕ В - Текст подпрограммы модуля 4. Обработчик прерывания CAN.............................................................................................................................. 98 ПРИЛОЖЕНИЕ Г - Схема электрическая принципиальная основного модуля ультразвукового измерителя дальности .................................................................. 99 4 ПРИЛОЖЕНИЕ Д - Схема электрическая принципиальная выходного каскада ультразвукового измерителя дальности (1 канал) ................................................ 100 ПРИЛОЖЕНИЕ Е..................................................................................................... 101 ПРИЛОЖЕНИЕ Ж ................................................................................................... 102 5 ВВЕДЕНИЕ Настоящий дипломный проект выполнен в рамках студенческого научноисследовательского проекта Феникс-3, в рамках которого проводилось экспериментальное изучение возможностей использования нейронных систем в контуре управления автономным роботом. История серии студенческих исследовательских проектов иллюстрируется на рисунке 1. Описание проектов и результаты экспериментов с этими роботами отражены в публикациях и на сайте [1-4]. 1) 2) 3) a) c) b) Модель SOFA-2009 4) 5) d) где: 6) e) f) 1 - робот Феникс-1, 2 - робот Феникс-2, 3 - робот Феникс-3, 4 - виртуальный полигон, 5 - виртуальный робот Феникс2, 6 - модель SOFA-2009. Рисунок 1 - Семейство проектов Феникс 6 Согласно легенде проекта автономный робот Феникс-3 предназначен для автономного патрулирования в заданном районе с целью обнаружения очагов возгорания. В случае обнаружения источника робот должен приблизиться к очагу возгорания и используя бортовой огнетушитель погасить огонь. Система обеспечивала возможность дистанционного управления перемещением робота по командам оператора посредством высокоуровневых команд. Для ориентации на местности предполагается использовать купольную видеокамеру с поворотным механизмом и трансфокатором в вандалозащищенном исполнении. При перемещении в заданную точку или выполнении высокоуровневой команды на патрулирование автономный робот функционирует в изменяющейся окружающей среде, и на пути его следования могут оказаться препятствия. Соответственно, робот должен быть оснащен системой избежания столкновений. Настоящий универсального модуля, дипломный проект предназначенного посвящен для разработке использования в многоканальных ультразвуковых измерителях дальности для подсистемы избежания столкновений. Рисунок 2 - Основной модуль ультразвуковой системы измерения дальности В рамках дипломного проекта была разработан и испытан универсальный многоканальный сетевой модуль с САN-интерфейсом и его программное 7 обеспечение (рисунок 2). Контроллер был разработан на основе микроконтроллера PIC18F458, перепрограммируемой ПЛИС Altera MAX7000 и контроллера интерфейса Controller Area Network (CAN) MCP2510. На основе разработанного модуля была отмакетирована система избежания столкновений для автономного робота Феникс-3. В ходе испытаний была подтверждена работоспособность разработанного модуля и системы в целом и получен ряд результатов, существенных для выбора структуры систем управления автономными роботами. Полученные результаты, выводы и предложения по дальнейшему развитию системы суммированы в заключении. Ряд результатов выполненной работы опубликован в [3 - 4]. Работа [3] была представлена на международных конкурс ISA работ и была удостоена серебряной медали. 8 студенческих научных 1 Обзор списка использованных источников 1.1 Исторические сведения История использования дистанционно-управляемых роботов и интеллектуальных спускаемых аппаратов для исследования планет берет свое начало во второй половине прошлого века. Использование мобильных роботов для исследований началось с успешной посадки Луны-17 (советская автоматическая межпланетная станция для изучения Луны и космического пространства) 17 ноября 1970. После ее мягкой посадки на Луне в Море Дождей, Луна-17 развернула первый планетоход на поверхности Луны – Луноход-1 (Рисунок 3). Основными целями миссии Луны были сбор информации о топографии лунной поверхности и изучение химического и механического состава лунного грунта. Оборудованный телевизионными камерами и инструментами для измерения свойств грунта, 700 килограмовый Луноход-1 удаленно управлялся в реальном времени командой из 5 людей из Симферопольского центра космической связи. После работы на протяжении 11 месяцев на лунной поверхности, Луноход-1 Рисунок 3 - Луноход-1 9 успешно проехал 10,54 км, передал более 20000 ТВ картинок с более чем 20 ТВ панорамами и провел более 500 экспериментов с лунным грунтом. Существенный прогресс микропроцессоров обеспечил возможность создания автономных планетоходов. мобильных Мобильность аппаратов, планетоходов получивших обеспечивает название существенное увеличение результативности с точки зрения решаемых исследовательских задач по сравнению со стационарными исследовательскими аппаратами. Навигационная система на планетоходах позволяет им пройти к местам, недоступным для стационарных посадочных аппаратов и выполнять те же научные исследования на месте или либо отбирать почвенные пробы, которые затем могут быть возвращены в спускаемые аппараты для дальнейшего анализа. В начале исследований планетоходов, мини-луноходы с массой в несколько сотен килограмм, как Луноход 1, были основным центром исследования. Например, Mars Sample Return (межпланетная Missions космическая миссия на Марс, целью которой является сбор образцов марсианского грунта и доставка его на Землю для анализа.) Национального управления США по аэронавтике и исследованию космического пространства (NASA) в 1980-х включала использование 1000 килограммового планетохода, способного передвигаться на сотни километров. Однако, ограничения финансирования скоро уменьшили размер космических аппаратов и сократили масштабы задач, которые могли быть предприняты, которые в свою очередь принудили разработку технологий планетоходов уделять больше возможностей более легким и маленьким комплексам. Помимо того, что это более эффективно по цене, меньшая конструкция планетохода обеспечивает быстрое создание прототипов и масштабируемость. Советский ПрОП-М (Прибор оценки проходимости), запущенный в 1971 автоматическими межпланетными станциями Марс-3 и Марс-6, был первым успешным микро-планетоходом с массой 4 килограмма, совершившем посадку на Марсе. Следы движения, 10 оставленные планетоходом ПрОП-М, который является первым бесколесным планетоходом, должны были быть записаны телекамерами на Марсе-3 и Марсе6, так чтобы свойства материала Марсианской почвы могли быть определены. К сожалению, никакие полезные данные не были возвращены планетоходом. При этом важно подчеркнуть, что основной характеристикой, которая отличает планетоходы от стационарных спускаемых исследовательских аппаратов, является их способность к перемещению в автономном режиме. В качестве аргумента можно рассмотреть, например, марсоход. Задержка при Рисунок 4 - Mars PathFinder передаче команды на Марс составляет десятки минут, что делает бесперспективным использование дистанционно-управляемых аппаратов в режиме ручного управления оператором. мобильный робот должен обеспечивать Соответственно, автономный возможность выполнения высокоуровневых команд оператора. Например, переместится в заданную точку и выполнить предписанный набор операций. Первый успех к американским марсианским микро-планетоходам пришел в 1997 году и связан с проектом NASA Mars Path finder, которая состояла из стационарного посадочного аппарата и марсохода Sojourner. Успешное развертывание 11,5 килограммового марсохода и его посадочного аппарата продемонстрировало возможность дешевой посадки и исследования Марса. В 11 дополнение к его основным научным целям, связанным с исследованием петрологии и Марсианской атмосферы, Sojourner также послужил платформой для определения производительности планетоходов в плохо понимаемой местности Марса. Кроме того, Sojourner был оснащен поведением автономного объезда препятствий, что позволяло контролировать его только командами высокого уровня, посылаемыми с Земли раз в марсианские сутки (Марсианские сутки, 24 часа, 39 минут, и 35.244 секунд). Основываясь на успехе Sojourner, был запущен проект Mars Exploration Rover (MER), состоящий из двух планетоходов. Два планетохода Spirit и Opportunity совершили посадку в 2004 г. на обратной стороне Марса. Основной целью был поиск следов воды на Марсе. Таким образом, можно констатировать, что подсистема избежания столкновений является необходимым компонентом системы управления автономным мобильным роботом. Целью дипломной работы является разработка системы избежания препятствий, реализуемой на базе ультразвуковых дальномеров, что определило дальнейшую структуру обзора. 1.2 Особенности эхолокации у бабочек Еще в прошлом веке было известно, что многие ночные бабочки в полете сами издают короткие щелчки. Бабочки семейства “совки” в полете также могут щелкать в такт с маховыми движениями крыльев. Предположение о способности ночных бабочек к эхолокации впервые высказал английский энтомолог Г.Е. Хинтон на заседании Лондонского Королевского энтомологического общества в 1955 г. Бабочка при столкновении с острыми предметами, например с сучками или хвоей, может повредить крылья. Такие дефекты, с одной стороны, понижают реальную чувствительность совок к ультразвуковым сигналам летучих мышей из-за роста собственного шумовогофона (поврежденные 12 бабочки начинают заметно «шуршать» в полете) и, с другой — акустически демаскируют их перед хищниками. Повреждения крыльев также снижают маневренность насекомого. Таким образом, качество аэродинамики крыльев и их структурная целостность во многом определяют резерв времени, который есть у бабочки для того, чтобы избежать нападения летучей мыши. Использование повреждений эхолокации крыльев, т.е. уменьшает оправдано с вероятность точки зрения механических повышения индивидуальной безопасности. Идея вызвала резонанс: появилось несколько работ, в том числе с теоретическими расчетами возможной дальности действия эхолокатора бабочек. Оценки разных исследователей отличались более чем на порядок — от 10 см до 2 м. Экспериментальное изучение особенностей эхолокации ночных бабочек было выполнено в работах [5-7]. Ниже приводится изложение ряда экспериментальных результатов, важных для постановки задачи. Эксперименты строились, исходя из предположения, что бабочки, обнаружив препятствие, попытаются избежать столкновения. Действительно, в большинстве случаев совки в темноте реже сталкивались с акустически «светлыми» преградами, но только на фоне эмиссии собственных щелчков, т.е. они использовали эхолокационную информацию для ориентации в пространстве [7]. Однако некоторые бабочки определенно стремились к источнику эха. Видимо, эти насекомые пытались сесть на обнаруженный субстрат, что весьма характерно для испуганных совок. Позже в сходных экспериментальных условиях мы обнаружили особую («мертвую») зону, внутри которой наблюдалось резкое снижение способности подопытных насекомых маневрировать после восприятия эха от шаровых преград. Другими словами, поведение насекомых зависит также от относительных координат встречных предметов. 13 Анализ результатов экспериментов позволил оценить максимальную дальность действия эхолокатора совок — примерно 30—40 см. Реальный уровень эха зависит от многих условий: неровности отражающей поверхности, угла ее наклона и т.д. Такие факторы, как правило, неблагоприятно влияют на амплитуду отраженной волны. Это приводит к уменьшению радиуса чувствительности эхолокатора в несколько раз по сравнению с максимально возможным. Однако есть исключения: например, коэффициент отражения обычного древесного листа со стороны вогнутой поверхности может быть больше единицы за счет концентрации акустических волн. Если зондирующий сигнал отражается от препятствия со сложной формой поверхности, например коры большого дерева, то можно ожидать появления на входе тимпанальных органов последовательности акустических импульсов, разделенных малыми (0,1—0,3 мс) временными интервалами, пропорциональны ми перепадам в рельефе поверхности. Реакция слуховых рецепторов в этом случае эквивалентна действию одиночного щелчка с большей амплитудой. За счет такого эффекта потери при отражении эхолокационных сигналов могут быть частично скомпенсированы. Анализ траекторий полета совок около шаровых отражателей показал, что уже спустя 30 мс после излучения зондирующего щелчка (период одного взмаха крыльев) бабочка поворачивает в сторону от преграды. Такое быстродействие достигается за счет прямых контактов слуховых рецепторов с нейронами, участвующими в управлении полетом. Видимо, основное на значение эхолокатора совок — контроль за положением окружающих предметов около работающих крыльев, т.е. как раз на тех ракурсах, где возможности зрения, особенно низки из-за больших угловых скоростей смещения элементов окружения. На малых углах визирования (т.е. прямо перед насекомым) способность бабочек реагировать на эхо заметно ограничена (мертвая зона). 14 Этот факт позволяет предположить, что зрение и эхолокация в своих возможностях дополняют друг друга. Как было выяснено в специальных экспериментах, предъявление бабочкам изображений быстро приближающихся предметов может инициировать у них эмиссию эхолокационных щелчков. Это говорит о том, что задача слежения за встречными объектами передается в центральной нервной системе насекомого последовательно от зрительной системы к эхолокационной. Совместное действие этих двух систем обеспечивает безопасность в «полет ном коридоре» в кронах деревьев и кустарников, где расстояния между ветками и листьями измеряются сантиметрами. 1.3 Особенности эхолокации у летучих мышей Известно, что насекомоядные летучие мыши испускают короткие импульсы высокочастотных звуков. Характеристики последних варьируют у различных видов, и есть данные, свидетельствующие о связи этих различий с разными стратегиями питания. Приведенные ниже данные заимствованы с сайта [8]. Летучие мыши, охотящиеся в чистом небе или вокруг крон деревьев, обычно испускают "щебет", состоящий тонов постоянной частоты), которые при приближении к насекомому-жертве сменяются модулированными тонами с быстро понижающейся частотой (частотно модулированный зондирующий импульс). У разных видов тон постоянной частоты может иметь высоту в пределах 150 - 30 кГц и длиться от нескольких миллисекунд до 60 мс. Частотно модулированный тон обычно имеет очень малую длительность - 1 - 2 мс, а частота его снижается с более, чем 100, до менее 30 кГц. 15 Хотя компонент с постоянной зондирующей частотой используется для сканирования окружающего пространства в радиусе до 50 м в поисках жертвы, он также полезен и для обнаружения (благодаря эффекту Доплера) движения жертвы по направлению к охотнику или прочь от него. Частотномодулированный компонент используется большинством летучих мышей (но не всеми) для определения направления движения жертвы при непосредственной атаке. Широкий набор частот в частотно-модулированном зондирующем импульсе обеспечивает летучей мыши детальную информацию о движении жертвы, дистанции до нее и т.д. Направление, откуда приходит эхо, определяется очень точно. Поведенческие эксперименты показали, что летучие мыши различают источники эха, удаленные друг от друга на 0,3 см на дистанции 30 см. Нейрональные механизмы, вовлеченные в этот процесс, располагаются в нижнем четверохолмии и слуховой коре. Многие нейроны в этих областях реагируют на пары стимулов, разделенные специфическими интервалами, и практически не реагируют на одиночные стимулы. Известны два основных класса нейронов. В первом из них латентный период ответа на тон высокой интенсивности длиннее, чем на более слабый тон той же частоты. Как и в случае системы определения направления на источник звука сов, полагают, что соответствующие клетки образуют синаптические контакты с нейронамидетекторами совпадений, и последние активируются только при строго определенном интервале между испусканием звука и приходом эха (определяющем расстояние до цели) Второй класс нейронов настроен просто на максимальную реакцию при определенном интервале между испусканием звука и приходом эха. Здесь мы снова сталкиваемся с развившимся до удивительной сложности механизмом кратковременной памяти, подобный тем, который встречается в слуховой 16 системе, в частности при определении направления на источник звука путем сравнения времени получения бинаурального сигнала. Микроэлектродные отведения показывают, что более 50% клеток слуховой коры малой бурой ночницы Myotis lucifugus наиболее эффективно отвечают на пару импульсов, сходных с теми, которые испускает этот вид. Наибольший ответ достигался в ответ на интенсивный первый стимул, за которым следовал более слабый импульс. Схожие клетки обнаружены в коре американского усатого голоспина (Pteronotus parnellii). У этого вида импульсы биосонара состоят из компонента постоянной частоты длительностью 15 мс, за которым следует короткий частотно-модулированный компонент. Каждый импульс включает 4 основные гармоники, которые обычно обозначаются как ПЧ1-4 и ЧМ1-4 . Таким образом, можно констатировать, что разработанные в процессе эволиции системы ультразвуковой эхолокации используют сложные формы зондирующих импульсов и позволяют решать задачи распознавания образом. При этом представляется важным подчеркнуть тот факт, что для обработки ультразвуковых сигналов используется нейронная сеть. Причем в случае, бабочки-совки, данная сеть имеет скромные размеры. 17 1.4 Обзор ультразвуковых систем измерения дальности Бурный прогресс в области электроники и потребности практики обеспечили условия для разработки и использования широкой гаммы Рисунок 5 - LV-MaxSonar-EZ1 ультразвуковых дальномеров. Одним из немаловажных условий широкого распространения такого рода устройств явилась их экономичность и многофункциональностью. Следует указать, что как таковая среда распространения для ультразвуковых колебаний не ограничивается воздухом. Ультразвуковой дальномер - устройство для измерения расстояния, бесконтактным способом. Принцип действия ультразвукового дальномера заключается в следующем: Дальномер состоит из двух частей - приемной и передающей - обе части, как правило, управляются микроконтроллером - он нужен так же для 18 последующей передачи результатов измерения. Расстояние меряется следующим образом: приемная часть излучает через резонирующий элемент пачку импульсов с частотой 40кГц. Отразившись от препятствия ультразвуковой импульс попадает на аудиопреобразователь приемной части и фиксируются схемой. В качестве примера типового модуля подобного измерителя можно привести модуль «LV-MaxSonar-EZ1» производства MaxBotix inc. внешний вид которого представлен на рисунке 5. Модуль представляет собой одноканальный измеритель расстояния от 15 см до 6,45 м с разрешением около 25 мм. Модуль предназначается для систем безопасности, ультразвуковых систем ориентации и робототехники. Особенности модуля: - установленный ультразвуковой сонар MaxSonar-UT; - схема управления сонаром на базе микроконтроллера PIC16F676; - напряжение питания +2,5...+5В; - ток потребления 2…3мА; - рабочая частота 42кГц; - интервал считывания показаний 50мс (20Гц); - постоянная работа с возможностью управления моментом считывания показаний; - выходные данные: последовательные 9600 бод, 8, 1, N; аналоговые Uпит/512/дюйм; ШИМ 147мкс/дюйм; - удвоенное напряжение управления сонаром (Uпитх2); 19 Рисунок 6 - Модуль PING Другим примером измерителя расстояния подобного класса может служить модуль PING)))™ Ultrasonic Distance Sensor производства Parallax inc. Его внешний вид представлен на рисунке 6. Модуль обладает следующими характеристиками: - Напряжение питания – 5 В - Ток потребления – 30 mA; 35 mA макс. - Измеряемое расстояние – 2 см to 3 м - Рабочая частота – 40 кГц. - Светодиодный индикатор активности 20 Рисунок 7 - Модуль SRF08 - Период измерения – 200 мкс - Размеры – 22 x 46 мм Измеритель расстояния Devantech SRF08 Range Finder - аналогичный модуль, но с интерфейсом I2C (Рисунок 7). Модуль имеет характеристики: - Напряжение питания: 5В - Потребляемый ток: 15mA раб. 3mA в режиме ожидания - Рабочая частота 40 кГц Рисунок 8 - Ультразвуковой дальномер 21 - Максимальное измеряемое расстояние 6м - Минимальное измеряемое расстояние 3 см - Максимальный коэффициент усиления 1025 (32 ступени регулировки) Модуль имеет встроенный дополнительный датчик освещённости. Информация о расстоянии передаётся в виде значений мкс, миллиметров и дюймов. Габаритные размеры – 43 x 20 x 17 mm Как пример реализации измерителя дальности, интегрированного в составе какого-либо микропроцессорного устройства, а не выполненного в виде законченного модуля, можно привести статью «Ультразвуковое измерение дальности на MSP430» Рисунок 8. [9] В этом примере описан ультразвуковой дальномер на базе микропотребляющего МК MSP430F413 фирмы Texas Instruments. Рисунок 9 - Модуль PS-2103A 22 Микроконтроллер вычисляет расстояние между прибором и объектом и выводит значение на 2-цифровой ЖКИ со статическим управлением при помощи встроенного ЖК-драйвера. Расстояние отображается с точностью около 2,5 см. Минимально измеряемое расстояние 20см, максимальное измеряемое расстояние – 2.5 м, что определяется физическими характеристиками используемого излучателя. Амплитуда отражённого сигнала зависит от материала объекта, его формы и размера. Звукопоглощающие предметы, такие, как ковры и отражающие объекты небольшой площади плохо отражают сигнал, для таких предметов максимально измеряемое расстояние меньше. В данном приборе также использованы керамические ультразвуковые излучатели на частоту 40 кГц. Примером ультразвукового дальномера в «индустриальном» исполнении может служить модуль PS-2103A (PASCO) Измеряемое расстояние – от 15 cм to 8 м. На расстояниях до 2м имеется дополнительная защита от шумов и ложных срабатываний (Рисунок 9). Из проведённого обзора можно сделать следующие выводы: - Схемы ультразвуковых измерителей расстояния варьируются от простейших, состоящих из нескольких микросхем средней степени интеграции и нескольких дискретных компонентов, до достаточно сложных комплексных систем. - Как показывает анализ, значительная часть ультразвуковых измерителей имеют в своем составе достаточно мощные управляющие микропроцессорные средства. - Все системы ультразвуковых измерителей расстояния можно поделить на 2 группы: 23 a. Мощные законченные модули в промышленном исполнении с максимальной дальностью примерно до 8 м. b. Встраиваемые ультразвуковые модули и подсистемы с максимальным измеряемым расстоянием примерно до 2. 5 м. 1.5 Использование ультразвуковых дальномеров в охранных системах Близкой по функциям и требованиям, предьявляемым к подсистемам избежания столкновений роботов, являются ультразвуковые дальномеры охранных систем. Рисунок 10 - Внешний вид типового объёмного ультразвукового излучателя В охранных системах из ультразвуковых сенсоров чаще всего используются объемные ультразвуковые извещатели (рисунок 10). Они в частности применяются для охраны музейных ценностей. Они детектируют попытку проникновения в охраняемую витрину (объем), перемещения предметов в охраняемом объеме. 24 Рисунок 11 - Метод обнаружения В состав подобного извещателя входят акустический излучатель, акустический приемник и блок обработки сигнала (БОС). В блоке излучателя находится пьезоэлектрический ультразвуковой преобразователь, преобразующий электрическое напряжение в акустические колебания воздуха в охраняемом объеме. ультразвуковой В приемный приемнике располагается преобразователь пьезоэлектрический акустических колебаний в электрический сигнал. На выходе приемника сигнал поступает в блок обработки сигнала, который посылает извещение в зависимости от заложенного в него алгоритма. Один из возможных методов обнаружения в охранных системах представлен на рисунке а. Излучатель BF1 и приемник ВМ1 располагается на противоположных стенах помещения, под потолком (для снижения влияния внутренней обстановки). Излучатель BF1 возбуждает в пространстве помещения стабильные по частоте и амплитуде ультразвуковые колебания. Микрофон (приемник) ВМ1 преобразовывает принятый из пространства ультразвуковой сигнал в электрический. Далее, в блоке обработки этот сигнал усиливается, 25 детектируется и анализируется по амплитуде. В случае, если амплитуда отражённого сигнала начинает резко изменяться во времени, формируется сигнал тревоги. Отчего происходят колебания амплитуды принятого ультразвукового сигнала? Предположим, что помещение идеально, т. е. представляет собой герметически замкнутое пространство, ограниченное жесткими стенами. Поскольку излучение пьезопреобразователя не является остронаправленным, к микрофону ВМ1 вместе с прямой волной приходят волны, отраженные от стен, потолка и пола. Энергия волны в зоне микрофона ВМ1, как, впрочем, и на любой поверхности помещения, есть результат интерференции всех подающих волн. Пока в помещении не происходит какого-либо перемещения отражающих или поглощающих поверхностей или изменения физических свойств среды, интерференционная картина, а значит и уровень энергии волны в каждой точке, будут постоянны. Любое движение в помещении приведет к изменению пути прохождения ультразвуковых интерференционной картины. волн, Это а следовательно, приведет к к колебаниям изменениям амплитуды выходного сигнала микрофона ВМ1. Регистрируя эти колебания, можно обнаружить перемещение в замкнутом пространстве. Данный способ обнаружения подвижных объектов обеспечивает очень высокую чувствительность при высокой экономичности, поскольку волна от излучателя BF1 к приемнику ВМ1 проходит через помещение по наиболее короткому пути, а следовательно имеет наименьшее затухание. Однако в реальных условиях эта система практически неработоспособна из-за чрезвычайно высокой вероятности ложных срабатываний. Система реагирует даже на поток воздуха, т. к. сложение скорости звука со скоростью воздуха способно изменять характер прохождения волны, что будет воспринято как перемещение объектов. 26 Для повышения устойчивости системы излучатель BF1 и приемник ВМ1 располагают на одной стене (рисунок 11, б). При этом длина пути, проходимого волной, увеличивается в два раза, что потребует значительного увеличения излучаемой мощности. Но при этом из-за того, что волна проходит через поток воздуха дважды компенсируется, — что туда и обратно, повышает приращение устойчивость скорости устройства к взаимно ложным срабатываниям в условиях относительно равномерных потоков воздуха, движущихся в любых направлениях. В реальных условиях потоки воздуха могут быть весьма неравномерными. Кроме того, существенный вклад в нестабильность интерференционной картины в реальном помещении вносят деформации стекол и дверей в результате порывов ветра снаружи, разного рода вибрации и другие факторы. Все это привело к тому, что охранная система, построения по описанному выше принципу, оказалась нежизнеспособной. Существенно повысить помехоустойчивость позволяет применение иного метода детектирования сигнала — не по амплитуде, а по частоте. Если объект перемещается вдоль направления распространения волны (рисунок 11, б), то благодаря эффекту Доплера отраженная от него волна будет иметь некоторое смещение по частоте относительно излучаемой. Из-за разнонаправленного отражения волн в реальном помещении эффект Доплера проявляется и при строго перпендикулярном указанному перемещению объекта, правда, несколько слабее. Поэтому объект, движущийся в любом направлении, будет обнаружен. Несмотря на достоинства, детектирование с использованием эффекта Доплера не снимает полностью проблему ложных срабатываний. Существует определенный порог интенсивности воздушных потоков и других факторов, выше которого датчик будет регистрировать ложные перемещения. Поэтому для повышения помехоустойчивости часто применяют различные методы 27 вторичной обработки: фильтрацию принятого сигнала, спектральный анализ и т.д. Упрощённая структурная схема, реализующая данный подход, приведена на рисунке 12. Рисунок 12 Структурная схема обнаружителя Излучатель BF1 служит нагрузкой эталонного генератора G1. Рабочую частоту выбирают как компромисс между помехоустойчивостью и затуханием ультразвуковых колебаний в воздухе. Чем больше частота, тем меньше мешающее влияние естественных и искусственных шумов, воспринимаемых датчиком, однако с увеличением частоты повышается затухание волн, и для нормальной работы датчика приходится увеличивать мощность излучения (пропорционально квадрату частоты). Чаще всего используется частота около 40 кГц. На неё как правило рассчитаны серийные модели пьезопреобразователей. Мощность излучения выбирается из соображений приемлемой экономичности, требуемого уровня принимаемого сигнала и объема контролируемого пространства. Входной усилитель А1 должен обеспечивать уверенный прием отраженного сигнала в условиях значительного колебания его амплитуды. Для снижения влияния помех необходима высокая избирательность усилителя в 28 интервале fg ± fd- где fg — рабочая частота генератора, fd — доплеровский сдвиг, в реальных условиях не превышающий 1 кГц. Для исключения зависимости входного сигнала от амплитудной составляющей в усиленном принятом сигнале выделяют точки перехода через «нуль» и формируют сигнал прямоугольной формы. Эту функцию выполняет пороговый элемент U1. Фазовый детектор U2 преобразует фазовую модуляцию сигнала в широтноимпульсную. Фильтр нижних частот Z1 сглаживает импульсы с выхода фазового детектора U2 и преобразует их в амплитудно-модулированный сигнал. Частота среза фильтра Z 1 равна реальной верхней частоте доплеровского сдвига, в нашем случае 1 кГц. Фильтр верхних частот Z2 ограничивает снизу частотную полосу, воспринимаемую устройством. Он играет особую роль в устойчивости всей системы к ложным срабатываниям. Как показывает анализ охранных систем, для обеспечения универсальности и надёжности систем охраны структура извещателей должны быть сетевой. 1.6 Обзор мобильных роботехнических систем Кроме перечисленных выше направлений ультразвуковые датчики находят широкое применение в системах ориентации в пространстве различных роботехнических комплексов и устройств. Чаще всего в роботах экспериментального назначения применяют готовые универсальные измерители расстояния, описанные в пункте 1.3, однако используются и специализированные модули. Например, робот Garcia (Acroname Robotics, США) на рисунке 13 может быть укомплектован двумя ультразвуковыми модулями SRF08, что позволит ему избегать столкновений с препятствиями [11]. 29 Рисунок 13 - Робот Garcia В качестве примера мобильного робота для исследовательских применений приведём изделие NOMAD 200 (Nomadic tech.) [10]. Внешний вид представлен на рисунке 14. Оно представляет собой мобильную роботехническую систему. Имеются приме6ры использования этой роботехническо й платформы для проведения широкого спектра исследования в области искусственного интеллекта. Имеет 6 встроенных сенсорных модулей: тактильный, инфракрасный, ультразвуковой, датчик освещения, видеокамера и компас; а также бортовую ЭВМ. Для передвижения используется 3 колёсных механизма. Максимальная скорость перемещения – 24 дюйма в секунду. Максимальная скорость вращения – 60º в секунду. Встроенной батареи питания хватает примерно на 7 часов непрерывной работы. В комплекте прилагается управляющее ПО с графическим интерфейсом и симулятором. Применительно к теме данного диплома опишем подробнее его ультразвуковой модуль. 30 Рисунок 14 - NOMAD 200 Ультразвуковая система ориентации в пространстве Sensus 200, интегрированная в робот, представляет собой 16-канальный ультразвуковой измеритель расстояния. Он позволяет производить измерение расстояния до объектов вокруг робота от 17 до 255 дюймов с точностью 1%. Внешний вид Рисунок 15 - Sensus 200 31 модуля приведён на рисунке 15. Каждый из 16 измерителей расстояния представляет собой классический ультразвуковой локатор, определяющий расстояние по времени прохождения в пространстве ультразвукового импульса от сенсора к объекту и назад. В качестве них в модуле используются стандартные ультразвуковые преобразователи. Для работы с ними в модуль установлена плата измерителя расстояния Polaroid 6500. Ширина диаграммы направленности каждого из преобразователей составляет 25º. Рабочая частота сенсоров – 49,4 кГц. Напряжение питания – 5 или 12 В, потребляемый ток не более 100 мА. Как недостаток можно указать несетевую архитектуру данного модуля. Отсутствие гибкости. Вместе с тем ряд исследований, выполненный с использованием данной платформы, показывают целесообразность комплексирования систем ульразвуковой эхолокации с системами ИК-зрения и видеосистемой робота в рамках пожсистемы объезда препятствий. Так речь о создании исследовательского робота, представляется необходимым разработать сетевой ультразвуковой датчик. 32 2. Специальная часть 2.1 Выбор прототипа Настоящая работа исследовательского проекта является составной частью студенческого Феникс-3, в рамках которого проводились и планируются эксперименты по широкому кругу проблем, связанных с использованием нейронных систем в контуре управления автономным роботом. Как следует из обзора, автономная навигация является необходимым компонентом роботов для исследования планет и спутников из-за задержки в прохождении сигнала, что делает невозможным реал-таймовое управление таким роботом. В качестве содержательного примера, можно указать, например, робот-марсоход, для которого с время задержки в прохождении команд управления варьируется в интервале от 3 до 22 мин. Этот разброс связан с тем, что расстояние до Марса меняется в пределах от 56 млн. км. до 400 млн.км. Соответственно, автономная система управления должна обеспечивать, по крайней мере, возможность перемещения в указанную точку поверхности с объездом возникающих препятствий. Для решения такого рода задачи требуется, чтобы автономный робот мог решать задачи собственной текущей локализации, обнаружения и идентификации возможных препятствии, планирования безопасного маршрута для достижения предписанной конечной точки без столкновений с препятствиями. Причем следует подчеркнуть особую важность надежного решения последней из перечисленных задач и, соответственно, важности соответствующей подсистемы. В случае неудачного столкновения существует риск повреждения робота и, как следствие, срыва выполняемой научной 33 программы. Схожие требования предъявляются к автономным мобильным роботам, оперирующим в помещениях (indoor robots). В этом случае система избежания столкновений обеспечивает минимизацию ущерба от столкновений с окружающими робота материальными ценностями, но при существенно более мягких требований по массогабаритным параметрам по сравнению с роботами для космических исследований. Можно констатировать, что выбор способов реализации подсистемы избежания столкновений, является компромиссом между целым рядом требований по реализуемости, мобильности, управляемости, безопасности и стоимости реализации, вытекающих из назначения робота. Для решения как научных, так и прикладных задач требуется соответствующая стендовая база. Как следует из обзора литературы, для этих целей используют как специально разрабатываемые под применения мобильные платформы, так и платформы конкретные универсального назначения. Одной из таких универсальных платформ является исследовательский робот Nomad 200, который широко используется рядом робототехнических лабораторий мира. Этот робот, а точнее его подсистема избежания столкновений была выбрана в качестве прототипа для выработки требований к разрабатываемой подсистеме робота Феникс-3. Как следует из обзора литературы, в роботе Nomad 200 использована многоканальная и неоднородную систему датчиков, которая включает в себя многоканальные ультразвуковые и лазерные дальномеры, несколько видеокамер и многоканальный датчик контакта с препятствиями. Так в частности многоканальный ультразвуковой дальномер обеспечивает возможность измерения дальности по 16-каналам. Естественно, что не все они задействованы при проведении тех или иных экспериментов. 34 2.2 Выбор сетевой топологии Реализация многоканальной системы сбора данных с несколькими десятками интеллектуальных датчиков практически невозможна без использования сетевой структуры. Соответственно, одним из ключевых вопросов является вопрос выбора топологии информационно-управляющей сети робота и типа реализации физического уровня интерфейса в сети (выбор типа шины). (1) (2) (3) (4) где: 1- шина, 2 - кольцо, 3 - звезда, 4 ячеистая топология Рисунок 16 - Топологии сетей Можно выделить четыре базовых топологий, используемых на практике (Рисунок 2.1.): шина (а), кольцо(б), звезда(в), ячеистая топология(г). 35 Остальные способы являются комбинациями базовых. В общем случае такие топологии называются смешанными или гибридными, но некоторые из них имеют собственные названия, например «Дерево». Исходя из специфики работы системы было принято шинную топологию с последовательным типом шины, использовать как наиболее экономичную по затратам на ее реализацию. 2.3 Выбор типа шины Существует множество последовательных интерфейсов, используемых на практике. Однако в робототехнике наиболее распространёнными являются: Ethernet, CAN, I2C, SPI, RS232, RS485. Одним из важных аргументов при выборе того или иного типа шинного интерфейса является поддержка данного типа интерфейса средствами предполагаемой к использованию микропроцессорной платформы. Это требование в свою очередь связано с экономикой проекта в части стоимости реализации выбранного решения. Ethernet имеет ряд преимуществ, таких как хорошая поддержка со стороны PC-совместимого оборудования, высокая скорость обмена данными, высокая надёжность. Однако при его применении требуется сложная аппаратная и программная часть на стороне подключаемых модулей. Кроме того, при использовании витой пары (наиболее распространённый физический канал) физическая топология сети представляет собой «дерево» или «звезду», что сводит на нет преимущества логической шинной топологии. Последовательный интерфейс RS232 имеет простую аппаратную реализацию, хорошую программную поддержку, как в PC-совместимом оборудовании, так и в микроконтроллерах, обладает неплохой помехозащищённостью. Недостаток состоит в том, что он рассчитан только на 36 соединение двух устройств, что делает невозможным реализацию шинной топологии. Последовательный интерфейс RS485 обладает преимуществами RS232, но при этом позволяет объединять на шине более 2 устройств. Однако в нём отсутствует своя поддержка адресации, а также слабо развиты средства контроля целостности передаваемых данных. СКБ ГУАП в своих разработках использует микропроцессорную платформу PICmicro (Microchip,USA). Ряд семейств этой платформы имеет в своем составе аппаратно реализованные модули протоколов I2C и SPI и имеют поддерживаюшие эти модули библиотеки, реализованные на языке С. Интерфейсы I2C и SPI предназначены главным образом для обмена данными между близко расположенными микроконтроллерными устройствами и, как следствие, обладают невысокой устойчивостью к помехам и не могут работать на больших протяжённостях линий связи. Последовательная шина CAN разработана специально для применения в промышленной автоматизации и автомобильной электронике. Также часто применяется в бортовой системе мобильных роботов. Она обладает высокой помехозащищённостью, имеет хорошую аппаратную и программную поддержку со стороны микроконтроллеров широкого применения и в частности микропроцессорной платформы PICmicro. В случае необходимости подключения сетевых модулей к PC-совместимому оборудованию следует использовать переходник CAN-USB. Исходя из требований к бортовой системе робота использование шины CAN наиболее предпочтительно. Так как в роботе предполагается использование большого числа разнообразных датчиков и исполнительных устройств, объединённых в единую сеть, то целесообразна разработка универсального модуля, на основе которого можно строить не только ультразвуковой измеритель дальности, но и, при 37 коррекции ПО контроллера и незначительном изменении схемотехники, другие функциональные узлы робота. Например, инфракрасные измерители расстояния, модули управления сервоприводами и т.д. Модуль должен иметь как информационные входы для подключения датчиков, так и выходы для исполнительных устройств, причём выходы должны быть способны выдавать напряжение выше питающего информационную часть модуля (для излучателей измерителя дальности, сервоприводов и т.д. до 12 В при токе примерно до 1 А). Максимальное измеряемое расстояние определяется в основном тормозным путём робота при экстренном торможении и в нашем случае может быть принято равным 2м. Минимальное расстояние определяется механической конструкцией робота, и его можно принят равным 10 см. Минимальная дискретность шага измерения расстояния определяется точностью работы механической части робота и принимается равной 2 см. 2.4 Общие требования Учитывая сказанное выше можно сформулировать следующие требования к разрабатываемому устройству: Требуется разработать многоканальный ультразвуковой измеритель дальности с CAN-интерфейсом, устанавливаемый на мобильный робот. Требуемые технические характеристики: - Диапазон измеряемых расстояний – от 10 см до 2 м. - Разрешение по измеряемому расстоянию – не более 2 см. - Число каналов измерения - 4 - Рабочая частота – 40 кГц. - потребляемый ток – не более 300 мА. 38 3. Разработка схемы электрической принципиальной сетевого модуля измерителя дальности 3.1 Выбор элементной базы и разработка структурной схемы 3.1.1 Ультразвуковые преобразователи Предварительным этапом создания электрической принципиальной схемы базового блока ультразвуковой системы является выбор соответствующей элементной базы. В данном разделе приводится описание базовых компонентов модуля, существенным образом определяющих структуру разрабатываемого устройства. При выборе элементной базы были учтены реальные возможности реализации в части наличия инструментария и доступности элементной базы. Рисунок 17 - Ультразвуковые пьезореобразователи Как показал проведённый обзор выпускаемых изделий, в качестве акустических преобразователей, как правило, используются узкополосные ультразвуковые пьезопреобразователи с резонансной частотой порядка 40 – 50 кГц. Наиболее распространёнными являются устройства, работающие на частоте 40 кГц. Исходя из соображений был выбран серийно выпускаемый комплект пьезопреобразователей, состоящий из излучателя MA40S8S и приёмника 39 MA40S8R фирмы MuRata. Внешний вид преобразователей представле на рисунке 17. Параметры данных компонентов приведены в таблице 1. Таблица 1 - Технические характеристики пьезоизлучателя MA40S8S и приёмника MA40S8R Наименование MA40S8S MA40S8R 40 кГц 40 кГц 120 дБ - -63 дБ 0,2 – 4 м 0,2 – 4 м направленности 60° 60° Собственная ёмкость 2,5 пФ 2,5 пФ Номинальная рабочая частота Уровень звукового давления в максимуме диаграммы направленности Чувствительность Диапазон измеряемых расстояний Ширина диаграммы Так как в качестве приёмника используется пьезопреобразователь, необходимо, чтобы входной каскад приёмного усилителя имел высокое входное сопротивление, порядка 100 ком. 40 3.1.2 Основной микроконтроллер Исходя из имеющихся возможностей СКБ в качестве платформы для разработки базоваго модуля ультразвукового измерителя дальности была выбрана микропроцессорная платформа PICmicro (Microchip,США). В рамках данной платформы существует множество семейств, включающих в себя 8, 16 и 32битные микроконтроллеры. В качестве микроконтроллера для основного узла модуля был выбран PIC18F458. Особенности данного микроконтроллера приведены в таблице 2. Таблица 2 - Базовые параметры микроконтроллера PIC18F45 Наименование параметра Значение 1 2 Линейно адресуемая память до 2 МБайт программ Линейно адресуемая память данных до 4 кБайт Производительность до 10 млн. оп./с Тактовая частота до 40 МГц (поддержка 4 - 10 МГц резонаторов и встроенный синтезатор частот) Система приоритетов для прерываний 2 уровня Математические возможности Встроенный аппаратный умножитель Выходной ток До 25 мА на выходную линию 41 Продолжение таблицы 2 1 2 Внешние прерывания 3 входа Последовательные интерфейсы 3-wire SPI™ I2C™ USART АЦП Встроенный 10-бит 8 каналов Встроенная FLASH-память программ 32 кБ Встроенное ОЗУ данных 1,5 кБ Выбранные микроконтроллеры выпускаются в 28-выводных и 40/44выводных корпусах. 28-выводные изделия не имеют модуля ведомого параллельного порта, а число реализованных каналов АЦП равно 5. Для обеспечения максимальной универсальности устройства был выбран вариант в 44-выводном корпусе типа TQFP для поверхностного монтажа. 3.1.3 CAN-контроллер В соответствии с постановкой задачи базовый модуль должен обеспечивать возможность обмена данными по CAN-интерфейсу. Для реализации этого интерфейса необходимо использовать соответствующий интерфейсный набор микросхем. Так как в качестве основного микроконтроллера узла выбрано изделие производства Microchip, то целесообразно использовать CAN-модуль этого же производителя. В качестве контроллера интерфейса был выбран MCP2510. Его основные характеристики приведены в таблице. 3.3. 42 Таблица 3 - Базовые параметры контроллера интерфейса MCP2510 Наименование параметра Значение Поддерживаемые протоколы CAN 2.0A, CAN 2.0B интерфейса Стандартный и расширенный фрейм данных Интерфейс взаимодействия с основной SPI вычислительной системой Скорость передачи данных Программируемая до 1 Мбит/с Длина сообщения от 0 до 8 байт Буферизация Два приемных буфера Три буфера передачи Адресация 6 полных адресных фильтра 2 полных масок фильтра адреса Выходы прерываний 2 на приёмных буферах, 3 на передающих Дополнительные возможности Режим самодиагностики Программируемый предделитель тактового сигнала Режим энергосбережения Для подключения контроллера в линию CAN необходимо использовать дополнительную микросхему-драйвер. В качестве таковой в документации на контроллер рекомендуется использовать PCA82C250 (NXP semiconductors), 43 которая согласует вход и выход интерфейсного контроллера (RX и TX) с двухпроводной линией связи CAN. Для индикации наличия обмена данными по шине CAN также целесообразно параллельно линиям RX и TX включить светодиоды. В случае неисправности сети это позволит быстро обнаружить неисправный узел. 3.1.4 Разработка структурной схемы измерителя С учетом вышесказанного, была предложена реализующая разновидность классического структурная схема, импульсного локатора. приведенная на рисунке 18. Приведем краткое описание принципа действия предложенной схемы. МК PIC18F458 с интервалом в 100 мс формирует запускающий импульс, который запускает формирователь пачки импульсов и одновременно запускает на счёт 16-битный счётчик времени. Формирователь пачки импульсов вырабатывает пачку импульсов частотой 40 кГц и длительностью 40 мкс. 44 1 3 5 2 4 6 7 8 где: 1 – контроллер шины CAN; 2 – микроконтроллер PIC18F458; 3 – 16-битный счётчик: 4 – формирователь пачки импульсов; 5 – ультразвуковой приёмник; 6 – ультразвуковой излучатель; 7 – делитель частоты; 8 – опорный кварцевый генератор. Рисунок 18 - Структурная схема сетевого ультразвукового дальномера (1 канал) Излучённый ультразвуковой сигнал отражается от объекта и возвращается назад. Фронт первого принятого импульса останавливает счётчик времени, а также формирует сигнал окончания цикла измерения. При поступлении этого сигнала МК считывает значение, накопившееся в счётчике. Делитель частоты 45 формирует сигналы требуемых частот для схемы. В частности, на счётчик для подсчёта времени подаются импульсы с периодом 1 мкс. Таким образом, можно найти расстояние до объекта, как L 340 T 10 6 м. 2 (1), где Т – число, накопленное в счётчике. Теоретическое минимальное измеряемое расстояние составляет Lmin Исходя из 340 40 10 6 0,0068 м = 6,8 мм. 2 принципа действия системы (2). ультразвукового зрения, максимальное разрешение, с которым производится измерение расстояния, составляет L 340 10 6 0,00017 м = 0,17 мм. 2 (3). Следует отметить, что максимальное расстояние ограничивается тремя факторами: мощностью излучателя, эффективным коэффициентом отражения от препятствия и чувствительностью приемника. В силу сделанного выбора единственным фактором остающимся в распоряжении разработчика является мощность, которая в свою очередь зависит от выбираемого напряжения питания ультразвукового излучателя. Применительно к проекту PHOENIX-3 имеется возможность выбора напряжения питания 12 В от бортового аккумулятора или 5 В от преобразователя напряжения для питания бортового контроллера. 46 В схеме нет специального сигнала для случая, когда сигнал не достигнет приёмника. При этом, когда счётчик отсчитает 2 16 импульсов, он останавливается, и формируется сигнал окончания счёта. Таким образом, максимальное время измерения расстояния составляет примерно 65536 · 10 -6 = 0,07 с, что вполне достаточно для поставленной задачи. 3.2 Разработка принципиальной схемы 3.2.1 Выходной каскад измерительной части Рисунок 19 - Принципиальная схема усилителя Как видно из структурной схемы, сканирующие импульсы, формируемые ПЛИС, поступают на пьезоизлучатель. Мощности выходных буферов ПЛИС недостаточно для работы с пьезоизлучателем. Кроме того, для увеличения мощности излучаемых импульсов необходимо иметь возможность подавать напряжение выше питающего основную часть схемы (т.е. 5 В). Отсюда следует 47 необходимость использования дополнительной схемы выходного усилителя мощности. Предлагаемая принципиальная схема усилителя представлена на рисунке 19. Пьезопреобразователь подключается к разъёму J1 На разъём J2 подаются входные импульсы вида, представленного на рисунке 20. Каскад состоит из двух идентичных сборок дифференциальных пар и предусилителя. Рассмотрим работу одной из сборок. В исходном состоянии транзистор предусилителя закрыт. Также закрыты и транзисторы Q1 и Q5. При подаче лог. 1 на вход транзистор предусилителя открывается. При этом напряжение на базы транзисторов Q1 и Q5 подаётся напряжение с делителя, образованного транзисторами R1, R3 и R7, транзисторы открываются. Q1 подключает один вход пьезопреобразователя к источнику питания, а Q5 соединяет другой вход с общим проводом. Аналогично при подаче лог.1 открывается другая пара транзисторов, и пьезопреобразователь подключается к Vcc и земле, но с обратной полярностью. 1 2 tЗ Рисунок 20 - Входные импульсы. Наличие обусловлено временного зазора необходимостью между противофазными исключения сквозных импульсами токов через дифференциальный каскад. Минимальная длительность зазора определяется быстродействием транзисторных ключей. 48 3.2.2 Предварительный усилитель приёмной части ультразвукового измерителя дальности Мощности принимаемых отражённых ультразвуковых импульсов недостаточно для подачи их непосредственно на вход триггера остановки счёта, интегрируемого в ПЛИС. Поэтому требуется разработка дополнительного предусилителя принятого сигнала. Требования к данному узлу приведены в таблице 4. Таблица 4 - Требования к предусилителю Наименование Значение Входное сопротивление усилителя не менее 100 ком Выходное напряжение не менее 2,5 В Коэфииициент усиления по 103 напряжению Потребляемый ток не более 10 мА Напряжение питания 5В Предлагаемая принципиальная схема узла представлена в приложении Е. Узел устройства, состоит из входного выполненного на трёхкаскадного диодных усилителя, ограничителях и порогового выходного усилительного каскада. Входной усилитель обеспечивает усиление сигнала, поступающего от пьезодатчика, до требуемого уровня. Предварительно принимаем, что один 49 каскад может обеспечить коэффициент усиления не менее 10. Следовательно, достаточно использовать 3 каскада, включенные последовательно. Пороговое устройство служит для снижения вероятности ложных срабатываний от шумовых сигналов. Принцип действия основан на нелинейности ВАХ диодов. Если аппроксимировать её прямыми линиями, то уровень отсечки будет составлять примерно 0,7 В. Для симметричного двухстороннего ограничения усиливаемого сигнала снизу используется симметричное включение пары диодов. Требуемый порог ограничения (около 1,5 В) получается путём последовательного включения двух пар диодов. Этот порог также определяет требуемое выходное напряжение предыдущих усилительных каскадов. Выходной каскад служит для согласования узла со входным сопротивлением ПЛИС, а также для ограничения выходного сигнала сверху, преобразовывая таким образом его в последовательность прямоугольных импульсов. 3.2.3. Разработка логической схемы измерительной части Как было показано выше в пункте 3.1.4, большая часть измерительной части блока будет реализовываться на основе ПЛИС. Так как разрабатываемый блок должен иметь 4 канала измерения дальности, то для обеспечения возможности независимого проведения измерений структуры измерительной части должны быть продублированы в каждом из каналов. Вначале выполним разработку данного узла для одного из каналов измерения. Согласно структурной схеме, узел должен содержать делители опорной частоты, формирователь импульсов ультразвуковой частоты, счётчик времени и схемы управления. Схема, реализующая представлена в приложении Ж. 50 вышеперечисленные узлы, Схема собрана в графическом редакторе среды разработки Max+ 10.0 из готовых библиотечных модулей программы. Тактовая частота 20 МГц поступает с основного тактового входа ПЛИС. Через повторители она проходит на тактовые входы микроконтроллера (выход PIC_CLK) и контроллера шины CAN (CAN_CLK). Для формирования ультразвуковых импульсов и тактового сигнала счётчика импульсов используется сигнал 10 МГц, получаемый из основного делением на 2. Эту операцию выполняет узел freqdiv. Далее для формирования ультразвуковых импульсов сигнал 10 МГц делится на 125 при помощи узла счётчика с программируемым коэффициентом пересчёта LPM_COUNTER. Полученный сигнал удвоенной относительно рабочей частоты излучателя используется для получения противофазных сигналов основной частоты. Они формируются при помощи D-триггера и инвертирующего логического элемента. Два элемента «И» служат для формирования противофазных импульсов определённой длительности. Когда на их общий вход подано напряжение логической 1 противофазные сигналы проходят на выходной каскад усилителей мощности и далее на пьезоизлучатель. Если подано напряжение лог. 0 на выходах также устанавливается напряжение лог. 0, и выходные каскады усилителей мощности закрыты. Измеритель временных интервалов состоит из предварительного делителя на 10, реализованного на узле программируемого делителя LPM_COUNTER, и узла счётчика, также выполненного на основе LPM_COUNTER, но без фиксированного коэффициента пересчёта. Поскольку тактовым для счётчика является сигнал непосредственно частотой в 1 МГц, микросекундах. то происходит Счётчик отсчёт 16-разрядный, времени что возможность измерять временные интервалы до 216 = 65536 микросекунд. 51 даёт Запуск отсчёта времени осуществляется активным сигналом clk_en. Сброс счётчика и делителя в исходное состояние осуществляется кратковременной подачей сигнала aclr. После выполнения цикла измерения значение временного интервала, отсчитанного счётчиком, необходимо передать для обработки в микроконтроллер. Для упрощения подключения и считывания данных используем один из параллельных портов ввода-вывода микроконтроллера. Однако поскольку сам микроконтроллер, а также его порты ввода-вывода являются восьмиразрядными, для обеспечения возможности считывания 16битного значения счётчика используем мультиплексирование шины данных. Мультиплексирование осуществляет компонент BUSMUX. При подаче на его вход напряжения лог. 0 на выход поступает значение младших 8 бит счётчика, а при подаче 1 – старших. Длительность ультразвуковых импульсов задаётся делением сигнала 80 кГц на 16 с помощью узла делителя freqdiv. Таким образом, длительность импульсов составляет 16 / 80 = 0,2 мс. 3.3 Выбор элементной базы Для реализации основной части схемы, включая счётный узел, целесообразно использовать ПЛИС, так как это позволяет уменьшить требуемое число дискретных компонентов, уменьшить габариты устройства и повысить надёжность. Выберем ПЛИС MAX 7000 (Altera, USA) Её основные параметры приведены в таблице.3.5 52 Таблица 5 - Базовые параметры ПЛИС MAX 7000 Наименование параметра Значение Тип запоминающих элементов Перепрограммируемые (технология EEPROM) Интерфейс программирования ISP (JTAG) Напряжение питания 5В Ёмкость 2500 логических вентилей, 128 макроячеек, 8 логических блоков Тип выходов В качестве использовать источника монолитную С открытым стоком тактового сигнала микросборку было тактового принято генератора решение ACH-20-D (ABRACON corp.) на 20 МГц. Достаточно высокая основная тактовая частота позволит добиться большей универсальности устройства, так как далее делением частоты с помощью ПЛИС можно будет получать требуемые тактовые частоты, как для внешних компонентов, так и для внутренних структур, реализуемых в ПЛИС. Для предотвращения повреждения микросхемы контроллера интерфейса в случае случайного замыкания линии связи CAN на источник питания рекомендуется использовать оптронную развязку драйвера шины и контроллера. В качестве развязывающих оптронов можно использовать изделия HCPL2630 (Fairchild semiconductors), включенные в разрыв линий RX и TX. Они представляют собой быстродействующие опторазвязывающие элементы, имеющие выход с открытым коллектором. Максимальная разность потенциалов изолируемых участков – до 2,5 кВ. 53 Для защиты от неправильной полярности подключения напряжения питания необходимо установить защитный диод, в качестве которого может быть выбран любой, подходящий по максимальному прямому току и обратному напряжению. Желательно при этом иметь минимальное падение напряжения на его переходе, чему в полной мере удовлетворяют диоды Шоттки. Например, 10BQ015 (International Rectifier). Его максимальный прямой ток – 1А, максимальное обратное напряжение – 15 В. Прямое падение напряжения – не более 0,32 В. Для индикации наличия напряжения питания и обмена данными по шине CAN необходимо предусмотреть наличие индикационных светодиодов. В качестве них можно использовать, например, KP-1608MGC (Kingbright). 3.4 Расчёт узлов модуля ультразвукового измерителя дальности Выберем транзисторы для выходного каскада. Учитывая ёмкостный характер нагрузки, значение выходного тока каскада можно определить как: IH UП XH (4), где ХН – реактивное сопротивление нагрузки. Для синусоидального сигнала его можно оценивать по формуле: XH 1 , 2 f CH (5), где СН – ёмкость пьезопреобразователя, f – рабочая частота. Отсюда получим: XH 1 5000 Ом, (6) 2 40 10 2,5 10 9 3 54 IH 12 2,4 10 -3 А, 5000 (7) Поскольку в нашем случае на преобразователь подаётся прямоугольный сигнал, полученное значение тока необходимо умножить на поправочный коэффициент: I H I H 3 4,16 10 -3 А. (8) Отсюда примем максимальный выходной ток транзисторов равным I H 1,1 4,6 10 -3 А. Максимальное прямое напряжение UКЭ определяется напряжением питания и должно составлять U КЭ 1,6 12 1,6 19,2 В. По этим параметрам выберем транзисторы BC548C (npn) и BC558C(pnp). Их основные параметры приведены в таблице 6. Таблица 6 - Базовые параметры транзисторов Наименование BC548C BC558C UКЭ МАХ 30 В 30 В IК МАХ 500 мА 100 мА PМАХ 625 мВт 500 мВт h21Э 125 220 Рассчитаем каскады усиления для узла приёмного усилителя[12]: 55 За основу возьмём схему однокаскадного усилителя, приведённую на рисунке 21. Рисунок 21 - Каскад усиления Выберем оптимальный ток коллектора каскада. Так как каскад является маломощным, можно принять его равным примерно 0,8 мА. Тогда найдём сопротивление в цепи коллектора как: Rк=0.5Еп/Iк = 0,5 · 5 / (0,8·10-3) = 3,2 · 103 Ом. (9) Сопротивление в цепи базы: Rб=0.75Еп / Iб=0.5 · 5 · 70 / (0,8 · 10-3) = 219 · 103 Ом. (10) Сопротивление в цепи эмиттера определяется исходя из требуемого коэффициента усиления: Кu= S Rвх= Rк/(rэ+Rэ)= - Rк/( (25/Iк)+Rэ). (11) 56 Следовательно: Rэ = Rк/Ku – 25/Iк = 3200/10 – 25/(0,8) = 288,75 Ом. (12) Выберем стандартные значения сопротивлений: Rэ = 300 Ом, Rк = 3,3 кОм, Rб = 220 кОм. В качестве транзисторов выберем BC847 в корпусе SOT23 для поверхностного монтажа. Его основные параметры приведены в таблице 7. Таблица 7 -Базовые параметры транзистора BC847 Наименование BC847 UКЭ МАХ 45 В IК МАХ 100 мА PМАХ 250 мВт h21Э 90 3.5 Принципиальная схема основного модуля ультразвукового измерителя дальности Полная принципиальная схема сетевого модуля ультразвукового измерителя дальности приведена в приложении Г. Как видно по схеме, модуль включает в себя микроконтроллер PIC18F458, ПЛИС Altera EPM7128, интерфейсные микросхемы для шины CAN, тактовый генератор, 4 схемы выходных усилителей мощности, 4 входа для подключения 57 ультразвуковых приёмников, интерфейсные разъёмы для программирования ПЛИС и микроконтроллера, элементы питания и индикации. Для обмена данными со счётчиком внутри ПЛИС используется порт RD микроконтроллера. Для выбора текущего канала (т.е. одной из 4 структур измерителей в ПЛИС) используются линии порта RE 0 и 1. Для выбора младших/старших байт, считываемых из 16-битного счётчика, используется линия RE2. Цикл измерения инициализируется микроконтроллером, который подаёт на выход порта RC0 короткий импульс лог. 0. Об окончании цикла измерения сигнализирует уровень лог.0 на входе RC1 микроконтроллера. Для взаимодействия с интерфейсной микросхемой CAN микроконтроллер подключен к ней линиями интерфейса SPI, а также несколькими линиями порта RB, обеспечивающими циклы сброса, выбора микросхемы, а также вызова аппаратного прерывания интерфейса CAN. В качестве тактового сигнала для схемы использована микросборка ACH-20D. Её напряжение питания 5В, выходной сигнал имеет ТТЛ-уровни. Однако для большей универсальности устройства предусмотрена возможность использования дополнительного тактового генератора на основе встроенного в микросхему MCP2510. В этом случае в схему устанавливаются дополнительные элементы X1, C22 и C23. Для оптронной развязки интерфейсной микросхемы MCP2510 и микросхемы-драйвера использовано два оптрона HCPL2630. Параллельно входу и выходу RX и TX подключены светодиоды индикации. Для программирования микроконтроллера по интерфейсу ISP предусматривается разъём J1, подключенный к линиям RB6, RB7 и Reset согласно спецификации на микроконтроллер [13]. Для программирования ПЛИС установлен разъём J5, на который выведены линии JTAG. 58 Для подключения ультразвуковых приёмников установлены разъёмы j8 – j12. Для исключения ложных срабатываний при отсутствии подключения приёмника установлены резисторы утечки R44 – R47. Модуль питается от бортовой сети робота напряжением 12В. Для питания остальных компонентов схемы, требующих источника 5В, предусмотрена возможность установи микросхемы линейного стабилизатора типа 7805 с максимальным выходным током не менее 1А. Для защиты от неправильного подключения полярности питания предусмотрен защитный диод D1, включенный в разрыв источника 12В. 59 4. Конструкторско-технологическая часть 4.1 Разработка технических условий на ультразвуковой измеритель дальности Ультразвуковой измеритель дальности должен соответствовать требованиям настоящих технических условий и комплекта конструкторской документации. Требуется разработать многоканальный ультразвуковой измеритель дальности с CAN-интерфейсом, устанавливаемый на мобильный робот. Основные параметры разрабатываемого устройства приведены в таблице 8. Таблица 8 - Технические характеристики Схема измерения Диапазон измеряемых расстояний Разрешение по измеряемому расстоянию Число каналов измерения Рабочая частота Физический - транспортный уровень сетевого интерфейса Питание Потребляемый ток Классический импульсный локатор От 10 см до 2 м. Не хуже 2 см. Не менее 4 40 кгц. СAN-bus Автономные источник постоянного тока напряжением 12в/ 5 в Не более 300 мА В целях дальнейшей унификаций решений Феникс требуется рассмотреть возможность 60 в рамках всего проекта обеспечения универсальность предлагаемых решений в части возможности подключения датчиков типа сухой контакт, датчиков и исполнительных устройств обладающих интерфейсами RS232 и SPI. Контроллер измерителя должен допускать применение различных датчиков и исполнительных механизмов, не только ультразвуковых. Настоящие технические условия распространяются на ультразвуковой измеритель дальности, обеспечивающий измерение расстояния до объектов по 4 каналам и передачу данных по интерфейсу CANbus. Ультразвуковой измеритель должен работать в сетях постоянного тока напряжением 12В. 4.1 Требования по устойчивости к внешним воздействиям Ультразвуковой измеритель должен устойчиво работать при следующих значениях внешних факторов: Вибрации с частотой от 2 до 80 Гц; Ударах с ускорением 5 g и частотой в пределах от 40 до 80 ударов в минуту; работа в любом положении в пространстве; относительная влажность воздуха 75 3 % при температуре 45 2 0 C ; Температура окружающей среды от 0 до плюс 40 0 C ; измеритель должен оставаться работоспособным при следующих отклонениях напряжения питания и частоты номинальных значений: o Длительное отклонение напряжения – плюс 10%, минус 20%; 61 o Кратковременные отклонения напряжения - 20% на время 0,1 с. 4.2 Требования к конструкции Конструкция измерителя должна обеспечивать удобство монтажа и замены комплектующих изделий. Тип корпуса определяется на этапе проектирования. 4.3 Требования к надежности Назначенный срок службы – 10 лет; Назначенный ресурс – 90000 ч; Вероятность безотказной работы за 2000 ч наработки должна быть не менее 0, 97. 4.4 Комплектность В комплект поставки должны входить: Основной модуль измерителя - 1 шт.; Комплект ультразвуковых сенсоров - 1 компл.; Комплект эксплуатационных документов - 1 экз. В комплект эксплуатационных документов должны входить: Руководство по эксплуатации - 1 экз.; Паспорт - 1 экз.; 62 4.5 Маркировка Маркировка должна производиться с учетом требований ГОСТ 18620-80 и ОСТ 5.6083-82. Таблички с маркировочными данными должны быть закреплены на наружной поверхности корпуса. Маркировка должна быть нанесена на таблички способом, обеспечивающим ясность и сохранность надписей в течении всего срока эксплуатации. На табличках должны быть указаны: Товарный знак предприятия изготовителя; Условное наименование изделия в соответствии с настоящими техническими условиями; Заводской номер; Год изготовления. 4.6 Консервация и упаковка Консервация и упаковка должны производиться с учетом требований ГОСТ 9.014-78 и ОСТ 5.6083-82. Ультразвуковой измеритель дальности должен быть подвержены консервации и иметь упаковку, предохраняющую от повреждения при транспортировании и хранении. 63 4.7 Требования безопасности Устройство должно иметь защиту по цепи питание, исключающую короткое замыкание источника питания. Пожарная безопасность должна обеспечиваться применением надежных контактных соединений, не требующих обслуживания в течение периода непрерывной работы, закрытием кабельных вводов, максимальным применением негорючих и трудногорючих материалов, соблюдением электрических зазоров и расстояний утечки по поверхности изоляции. 4.8 Правила приемки Правила приемки должны быть в соответствии с ОСТ5.6083-82. Объем и последовательность испытаний должны быть в соответствии с ОСТ5.6083-82. 4.9 Транспортирование и хранение Условия транспортирования по группе 2 ГОСТ 15150-69. Погрузку, крепление и транспортирование КНЭ осуществлять в закрытом подвижном составе в соответствии с «Правилами перевозки грузов» и «Техническими условиями погрузки и крепления грузов», утвержденными МПС. Условия хранения по группе 2 ГОСТ 15150-69. 64 4.10 Указания по эксплуатации Эксплуатация ультразвукового измерителя дальности должна производиться в соответствии с «Руководством по эксплуатации». 4.11 Гарантии изготовителя Изготовитель гарантирует требованиям настоящих потребителем правил соответствие технических кинетического условий транспортирования, при хранения, накопителя соблюдении монтажа и эксплуатации. Гарантийный срок службы 1 год со дня установки измерителя в систему при условии соблюдения требований по эксплуатации, но не более 1,5 лет со дня отгрузки изготовителем. В течение гарантийного срока эксплуатации изготовитель своими силами и средствами устраняет дефекты, выявленные в этот период, при условии соблюдения потребителем правил транспортирования, хранения, монтажа и эксплуатации. После истечения гарантийного срока эксплуатации изготовитель все работы по ремонту производит при наличии соответствующего договора. 4.12 Конструкция основного модуля В целях минимизации стоимости модуля и, соответственно, системы в целом было принято использовать готовый промышленный корпус. Для этих целей был выбран пластиковый корпус BOX-G025 производства фирмы 65 «Мастер Кит». Его габаритные размеры - 72х50х21 мм. Внешний вид корпуса представлен на рисунке 22, а чертёж –на рисунке 23. Рисунок 22 - Внешний вид корпуса основного модуля Рисунок 23 - Корпуса основного модуля Как следует из принципиальной схемы, подключение питания, линии CAN и комплектов излучатель-приёмник осуществляется через разъёмные соединения. Минимально необходимое число контактов: - для разъёма питания – 3, - для линии CAN – 3, 66 - для подключения комплекта излучатель-приёмник – 5. Разъёмные соединения должны просто монтироваться на корпус модуля, быть устойчивыми к вибрации и тряскам, иметь небольшие размеры и массу. Этим требованиям вполне удовлетворяют разъёмы серии 719 производства Binder, Германия. Марки разъёмов, выбранные для модуля, приведены в таблице 9. Таблица 9 - Разъёмы основного модуля ультразвукового измерителя дальности Назначение Число Тип Номер заказа по каталогу контактов производителя 1 разъёма питания 3 Вилка 09-9749-30-03 2 разъём линии CAN 4 Розетка 09-9766-30-04 3 разъём 5 Розетка 09-9792-30-05 подключения комплекта излучательприёмник Внешний вид разъёмов приведён на рисунке 24, а габаритные размеры – на рисунке 25. 1 2 Рисунок 24 - Внешний вид разъёмов 67 1 2 Рисунок 25 - Габаритные размеры разъёмов Размеры выбранного корпуса определяют габаритные размеры печатной платы основного модуля, а именно, 56 х 36 мм. Для удобства размещения компонентов и упрощения разводки было принято решение использовать двухстороннюю печатную плату. Чертёж разработанной печатной платы представлен на рисунке 26 Для разработки печатных плат использована САПР OrCAD 9.23. 68 основного модуля и приёмника 56 рисунок 26 - Печатная плата основного модуля На плате размещаются микросхемы и компоненты для поверхностного монтажа. Разъёмы соединяются с контактными площадками изолированными проводниками. 69 4.13 В Конструкция комплекта ультразвуковых передатчика и приёмника качестве акустического оформления для ультразвуковых пьезопреобразователей использованы самодельные алюминиевые корпуса с винтовым креплением. Внешний вид комплекта представлен на рисунке 27, а чертёж одного корпуса – на рисунке 28. К одному основному модулю подключается до четырёх таких комплектов. Рисунок 27 - Внешний вид передатчика и приёмника Рисунок 28 - Чертёж акустического оформления 70 Рисунок 29 - Чертёж печатной платы приёмного модуля Для приёмного модуля была разработана печатная плата, чертёж которой представлен на рисунке 29. Ультразвуковой пьезопреобразователь устанавливается непосредственно на плате приёмника. В качестве остальных элементов использованы компоненты для поверхностного монтажа. Плата с пьезопреобразователем монтируется в корпусе и фиксируется при помощи уплотнителя. Полученный модуль соединяется с основным блоком трёхпроводным кабелем. Излучатель монтируется аналогичным образом. Но для подключения к основному блоку используется двухпроводный кабель. Оба кабеля оканчиваются одним разъёмным соединением. В качестве разъёма использован пятиштырьковая вилка из серии 719, соответствующая разъёму на основном модуле. 71 5. Экспериментальная проверка ультразвуковой системы измерения дальности 5.1 Макетное испытание измерителя дальности Для экспериментальной проверки предложенных решений была собрана плата основного модуля и установлена в выбранный ранее корпус. На корпусе были смонтированы разъём питания, подключения линии CAN и один разъём для подключения комплекта излучатель-приёмник. Внешний вид печатной платы основного модуля приведён на рисунке 30, а собранного модуля в корпусе – на рисунке 31. Рисунок 30 - Печатная плата основного модуля 72 Рисунок 31 - Собранный основной модуль Также был изготовлен один комплект пьезоизлучатель-приёмник (рисунок 32). Рисунок 32 - Макетный комплект излучательприёмник В качестве внешней системы для работы ультразвуковой системы была использована макетная плата на основе микроконтроллера PIC18F458 в корпусе DIP40 (рисунке 33). На плате была установлена микросхема CAN интерфейса MCP2510 и драйвер шины. Схемотехника CAN интерфейса была сделана аналогично использованной в основном измерительном модуле. Это позволило проверить 73 работоспособность предлагаемой производителем библиотечки подпрограмм как при работе в качестве ведомого устройства, так и ведущего. Для обеспечения возможности оперативного управления ходом выполнения программы на макетной плате предусмотрено наличие кнопочного ряда, подключенного к порту ввода-вывода микроконтроллера. Для отображения принимаемой информации на макетной плате предусмотрен ЖКиндикатор, по системе команд совместимый с контроллером KS0066. Для работы с ним использовалась стандартная библиотечка подпрограмм, предлагаемая производителем микроконтроллера. Рисунок 33- Макетная плата на основе микроконтроллера PIC18F458 Также на макетной плате предусмотрена возможность установки интерфейсов RS-232 и RS-485 для обмена данными с PC-совместимыми ЭВМ и другими системами, оборудованными данными интерфейсами. Для упрощения схемы при макетировании для питания основного модуля использовался стабилизированный источник напряжением 5В, микросхема линейного стабилизатора на 5В не устанавливалась. Соответственно, для 74 питания выходного усилителя ультразвуковых импульсов также использовался источник 5В. 5.2 Разработка программного обеспечения для макетных испытаний модуля Для проведения испытаний использовалось тестовое низкоуровневое ПО. Как следует из постановки задачи, оно должно выполнять следующие функции: - выполнить при включении питания первоначальную настройку аппаратной части микроконтроллера, инициализировать контроллер интерфейса CAN. - периодически запускать цикл измерения в ПЛИС. При поступлении сигнала окончания цикла измерений считать данные из внутреннего счётчика ПЛИС во внутренний буфер в ОЗУ микроконтроллера. - при поступлении запроса по шине CAN передавать значение измеренного временного интервала прохождения ультразвукового импульса из буфера ОЗУ во внешнюю систему. Для наиболее рационального использования вычислительных ресурсов микроконтроллера, структура ПО строилась на основе обработки событий. Таким образом, структуру ПО микроконтроллера была разделена на 4 программных модуля. Запуск каждого из модулей привязано к определённым событиям, что, в частности, было реализовано через систему аппаратных прерываний и систему приоритетов. Функции модулей: Модуль начальной инициализации: он выполняется при первом включении устройства. Он выполняет начальную настройку 75 оборудования, прерываний, а также настройку микросхемы CANинтерфейса. Обработчик таймера циклических измерений: для проведения периодических измерений расстояния целесообразно использовать один из таймеров микроконтроллера в качестве источника событий для выполнения периодических циклов инициализации процесса измерения. Таймер вызывает прерывания с определённым временным интервалом, и обработчик подаёт сигнал START на вход ПЛИС. Обработчик сигнала готовности данных: при поступлении сигнала DRDY считывает 16-битные данные из счётчика ПЛИС в ОЗУ. Обработчик прерывания CAN: при поступлении из внешней системы запроса данных передаёт считанные значения времени по интерфейсу CAN. Для работы с интерфейсом CAN была использована готовая библиотечка процедур can2510.h. Она содержит в себе основные функции для обмена данными по шине CAN и конфигурирования интерфейса. Также используется стандартный файл заголовков p18F458.h. 5.3 Описание программных модулей для основного модуля ультразвуковой системы измерения дальности Ниже приводится детализированное описание разработанных программных модулей. Модуль начальной инициализации. Этот модуль выполняется однократно при включении питания системы. Текст подпрограммы приведён в приложении А. 76 Действия, выполняемые модулем: - отключение встроенного АЦП микроконтроллера, который по умолчанию включен и входы которого при этом работают вместо портов ввода вывода общего назначения. - настройка линий портов ввода-вывода общего назначения в соответствие с выполняемыми ими функциями. - установка приоритетов прерываний для встроенных аппаратных средств микроконтроллера. - настройка SPI-интерфейса контроллера, а затем – микросхемы интерфейса MCP2510. - разрешение аппаратных прерываний. Модуль таймера циклических измерений. Обработчик таймера циклических измерений: выполняется по переполнению таймера 1. Текст подпрограммы приведён в приложении Б. Программный модуль запускается при условии появления флага прерывания PIR1bits.TMR1IF и выполняет следующие операции: - делает выбор рабочего канала измерения, подавая на адресные линии А0 и А1 сигналы в соответствии с номером канала. - формирует короткий импульс Start, запускающий в ПЛИС цикл измерения. - сбрасывает флаг прерывания от таймера, подготавливая таким образом выполнение следующего цикла измерений. Действия, связанные непосредственно с формированием сигналов для ПЛИС вынесены в отдельную процедуру MeasureCycle. Так как в данном случае 77 требуется обеспечить измерения только по одному каналу, то номер канала будет всегда равен 0. Модуль обработки сигнала. Обработчик сигнала готовности данных: считывает 16-битные данные из выходного регистра счётчика временного интервала, находящегося в ПЛИС, в буферные ячейки памяти микроконтроллера. Текст подпрограммы также приведён в приложении Б. Для считывания всех двух байт данных через 8-разрядный порт ввода-вывода микроконтроллера производится переключение мультиплексора данных ПЛИС. Выполняемые последовательно действия: - выбор старшего байта данных установкой сигнала L/H высокоговуровня. - считывание байта данных через порт RD. - выбор младшего байта данных установкой сигнала L/H низкого уровня. - считывание байта данных через порт RD в другую ячейку памяти. Подпрограмма выполняется при установленном флаге внешнего прерывания INTCONbits.INT1IF, который устанавливает сигнал DRDY. Для обеспечения оперативного считывания значения измеренного временного интервала данное прерывание также имеет высокий приоритет. Следует отметить, что запуск очередного цикла измерений должен осуществляться только после считывания предыдущего значения измеренного временного интервала, в противном случае считанные данные будут искажены. Для исключения возможности возникновения подобной ситуации обработчик данного прерывания и обработчик таймера расположены один за другим по ходу выполнения программы. При 78 возникновении одного из высокоприоритетных прерываний вначале производится проверка активности флага INT1IF. Если он установлен, производится считывание, и только после этого, если необходимо, запуск нового цикла измерений. Модуль CAN-интерфейса. Настройка CAN-интерфейса вынесена в отдельную процедуру CANconfig. Этот модуль обеспечивает инициализацию контроллера шины и конкретизирует сетевые настройки. Обработчик прерывания CAN: когда из внешней системы по интерфейсу CAN приходит запрос данных, микросхема контроллера интерфейса MCP2510 формирует сигнал аппаратного прерывания INT0. Обработчик данного события передаёт считанные значения времени по интерфейсу CAN во внешнюю систему. Текст подпрограммы приведён в приложении В. Обработчик выполняет следующие операции: - Производит проверку, что в приёмном буфере контроллера интерфейса CAN находится команда запроса данных. - Считывает команду из приёмного буфера CAN. - Производит запись в передающий буфер контроллера CAN считанное ранее значение временного интервала и инициализирует передачу. Последняя операция вынесена в отдельную процедуру NextReadOp. Так как процесс обмена данными протекает сравнительно медленно, а событие запроса данных может носить нерегулярный характер, и не завязано с циклами самого процесса измерения, то данное прерывание настраивается на низкий приоритет и, соответственно, обрабатывается после высокоприоритетных. 79 5.4 Макетное испытание измерителя дальности Производилось определение расстояния до различных объектов и наблюдение результата на индикаторе приёмного узла. (Рисунок 34) В качестве препятствия использовались объекты с различными коэффициентами отражения ультразвука, как, например, стекло, картон, ткань. Рисунок 34 - Макетные испытания ультразвукового измерителя дальности c препятствием из стекла Результаты проверки подтвердили работоспособность устройства в целом. При этом были получены оценки технических характеристик устройства для разных отражающих поверхностей, приведённые в таблице 10. 80 Таблица 10 - Экспериментальные технические характеристики ультразвукового измерителя дальности параметр стекло картон шерстяная ткань минимальное 10 см 10 см 10 см 1,5 м 1м 25 см 2 мм 2 мм 2 мм измеряемое расстояние максимальное устойчиво измеряемое расстояние разрешающая способность не хуже Полученные результаты соответствуют требованиям, изложенным ранее, и согласуются с теоретическими для случая хорошо отражающей поверхности. Вместе с тем, из полученных данных следует максимальное расстояние обнаружения препятствия сильно зависит от коэффициента отражения, т.е. от материала из которого состоит препятствие. Из этих результатов следует ряд выводов, важных для проектирования систем, включающих в себя ультразвуковые измерители расстояний: использование ультразвуковых измерителей расстояния без использования дополнительной поддержки оправдано только в случае, если условия работы системы чётко оговорены (отражающая способность объектов, пределы измерения расстояния до них); использование измерителей в динамически изменяющихся условиях работы без дополнительной поддержки не гарантирует получение 81 заявленных результатов. Подобная ситуация имеет место, в частности, при использовании робототехнических комплексов и систем в полевых условиях. Однако, зависимость параметров от условий работы в равной степени свойственна другим типам измерителей расстояния (видео, лазерные). Отсюда следует, что использование ультразвуковых датчиков в данном применении целесообразно измерителей использовать расстояния. совместно Это с позволяет другими типами скомпенсировать расхождения в возможностях датчиков и обеспечить запас по надёжности системы в целом; исходя из вышесказанного, представляет интерес определение оптимальных комбинаций типов датчиков для использования в мобильных системах, а также оптимальных способов их комбинирования. Вместе с тем, полученные результаты подтвердили работоспособность предлагаемых схемотехнических и программных решений, что позволило перейти к натурным испытаниям разработанного модуля. 5.5 Постановка задачи для эксперимента Как было сказано ранее в обзоре ультразвуковых систем, измерители расстояния, подобные разработанному, широко применяются в системах ориентации в пространстве различных роботехнических устройств. После успешного завершения макетных испытаний измерителя была проведена проверка разработанного модуля в рабочих условиях в составе упрощенного варианта системы избежания столкновений. 82 В качестве макета был использован мобильный робот Феникс-3. Структура системы управления была аналогичной использованной в студенческих исследовательских проектах Феникс-1,2 [1 - 3]. Однако следует указать, что ряд структурных узлов был существенно переработан. Для проведения натурных испытаний разработанная система измерения дальности монтировалась на экспериментальный колёсный робот Феникс-3 с дистанционным управлением. Ультразвуковые датчики монтировались по периметру робота, что даёт возможность измерять расстояние до объектов по пути движения. Собираемая информация в реальном времени передаётся и записывается на ПК, размещённый на борту робота, как и информация о действиях оператора, управляющего роботом. Также имеется возможность управления перемещением робота по командам с бортового ПК. Система обеспечивала возможность дистанционного управления перемещением робота по командам оператора. При этом подсистема избежания столкновений непрерывно производит измерение расстояний до препятствий спереди и сзади. Если какое-нибудь из этих расстояний станет меньше определённого порога, производится экстренная остановка движения робота и блокирование управления, что обеспечивает защиту от столкновений с препятствиями. Важно было проверить работоспособность ультразвуковой части устройства в реальных рабочих условиях. 5.6 Используемое аппаратное обеспечение В натурных подсистемы экспериментах избежания использовался упрощённый вариант столкновений. В целях упрощения размещения системы и снижения стоимости было принято решение ограничиться двумя 83 сенсорами, установленными спереди и сзади на корпусе робота, что даёт возможность измерения расстояния до встречных объектов по пути движения. Как показали проведённые ранее испытания, устройство способно обеспечивать требуемые технические характеристики при питании только от источника 5В, поэтому для упрощения была использована общая плата преобразователя питания 12 – 5В, которая используется на роботе также для питания основного контроллера. 5.7 Описание бортового контроллера робота «феникс 3» Плата бортового контроллера представляет собой модернизированную макетную плату, использованную для других разработок. Эта решение было продиктовано временными ограничениями, отведенными на реализацию проекта, а также для снижения себестоимости реализации. Она содержит микроконтроллер PIC18F2320, а также пассивные элементы и элементы индикации. Плата закреплена на специальном несущем основании, которое устанавливается в отсек робота. К ней с помощью разъёмных соединителей подключается передняя панель, на которой размещены разъёмы питания, соединения с выходными мостами, элементы внешней индикации, и управления. На макетной плате также закрепляется радиоприёмный модуль. Контролер вырабатывает управляющие сигналы, поступающие на мосты управления двигателями. Мосты обеспечивают усиление по мощности сигналов ШИМ, сформированных платой контроллера, а также переключение их полярности в соответствии с сигналом направления вращения. Эти мосты были заимствованы из проекта робота “Феникс-2”. 84 Схема электрическая принципиальная платы контроллера и мостов управления двигателями робота приведена в Приложении Г и Приложении Д соответственно. Контроллер устанавливается в доработанную корзину стандарта “Евромеханика”, образующую приборный отсек робота. Как видно из рисунка, коммуникации мостов и датчиков робота оказалось целесообразным вынести на переднюю панель контроллера. Внешний вид модуля контроллера робота «Феникс-3» представлен на рисунке 35. В ходе эксперимента он выполнял следующие функции: - управление выходными мостами коллекторных двигателей привода колёс робота. - приём и декодирование сигналов пульта дистанционного управления оператора. - взаимодействие с внешней системой по интерфейсу RS-232 (управление внешней системой скоростью вращения колёс, экстренная остановка, передача информации вовне о командах оператора). Для осуществления функции принудительного управления перемещением робота (экстренное торможение) необходимо наличие внешней системы с интерфейсом RS-232. В качестве такой системы было решено использовать портативный компьютер. 85 Рисунок 35 - Модуль контроллера робота «Феникс-3» Поскольку установка интерфейса CAN в компьютер была экономически нецелесообразна из-за высокой стоимости промышленного интерфейсного конвертора, было принято решение на время эксперимента заменить в ультразвуковом измерителе интерфейс CAN на уже имеющийся в наличии RS232. Это было достигнуто аппаратной доработкой основного модуля измерителя и коррекцией его низкоуровневого ПО. Поскольку в интерфейсе RS-232 отсутствует какой-либо собственный протокол обмена данными, был реализован программно и использован собственный протокол ASK-bus 3.1. Для обмена данными с основным модулем ультразвукового измерителя дальности и контроллером робота было разработано специализированное высокоуровневое программное обеспечение. Данное ПО устанавливается на портативный компьютер и обеспечивает выполнение следующих функций: - запрос и приём данных о расстоянии от ультразвукового измерителя дальности, 86 - анализ полученных данных и сравнение расстояния до объекта с пороговым значением, - в случае если оно ниже порогового подача команды экстренной остановки контроллеру робота. Более подробно контроллер описан в [14-15]. 5.8 Используемый радиоканал Для экспериментов использовался комплект системы дистанционного управления Hitec FOCUS 6 (рисунок 36). Он включает в себя пульт управления и приёмник. Структура сигнала, выделяемого приёмником, представлена на рисунке 37. Рисунок 36 - Пульт дистанционного управления 87 20 мс ±0,6 мс 1,6 ms Рисунок 37 - Структура сигнала управления Сигнал управления представляет собой пачку из 6 импульсов. Первые 4 импульса содержат информацию о положении по осям X и Y первой и второй ручек управления. 5 импульс содержит информацию о положении переключателя «gear», а шестой – о положении ручки «CH6». В среднем положении ручек длительность соответствующего импульса составляет 1,6 мс. При изменении положения ручек соответственно увеличивается или уменьшается длительность импульсов. В крайних положениях изменение длительность изменяется примерно на 0,6 мс. Длительность паузы между импульсами составляет примерно 1,5 мс. После завершения передачи пачки, через 20 мс начинается формирование новой пачки в соответствии с текущим положением ручек управления. Далее производится частотная модуляция радиосигнала в соответствии с сформированным сигналом. Центральная частота несущей – 40,675 МГц. Приёмник радиосигнала выделяет модулирующую пачку из принятого радиосигнала. 88 Приём сигналов осуществляется приёмным модулем из комплекта дистанционного управления, установленным на основную плату контроллера (рисунок 40). Декодирование сигналов управления выполняется программно с помощью низкоуровневого ПО, записываемого в память микроконтроллера на приёмной стороне. Для отсчёта временных интервалов используется один из встроенных таймеров микроконтроллера. 5.9 Подготовка эксперимента Для измерения расстояния до объектов было установлено 2 комплекта излучатель-приёмник спереди и сзади робота, как показано на рисунке 38. Сам измерительный модуль и ноутбук также были установлены на робот (рисунок 39). Так как в использованном ноутбуке отсутствовал встроенный интерфейс RS-232, то были дополнительно установлены переходники USBRS232 для обмена данными между компьютером, основным модулем ультразвукового измерителя расстояния и контроллером робота, как это показано на рисунке 40. Рисунок 39 - Размещение основного модуля и ноутбука 89 Рисунок 40 - Переходники USB-RS232 Соединение ноутбука с ультразвуковым измерителем осуществлялось с помощью специального кабеля с разъёмами «719» - DB9, а с контроллером робота – при помощи стандартного кабеля интерфейса RS-232. Питание основного модуля измерителя и контроллера робота осуществляется от бортовой аккумуляторной батареи робота напряжением 12В через модуль преобразователя напряжения 12 – 5В. Выходные мосты двигателей робота питаются от отдельного комплекта аккумуляторных батарей также напряжением 12В. Портативный компьютер имеет встроенный источник питания. 90 5.10 Проведение эксперимента Рисунок 41 - Испытания системы Испытания установленной системы производились в полевых условиях (рисунок 41). Как показали предварительные испытания, в выбранной конфигурации максимальное стабильно измеряемое расстояние составляет 1 м при отражении от препятствия из картона. Учитывая, что большинство статических объектов в полевых условиях обладают не худшей отражательной способностью, выбрано пороговое расстояние равное 0,8 м. В ходе эксперимента робот на скорости около 3 м/с был направлен в кирпичную стену вначале при движении вперёд, а затем при движении назад. После достижения порогового значения робот останавливался на расстоянии примерно 0,2 м. Отсюда можно сделать вывод, что время реакции системы в целом составило (0,8-0,2)/3 = 0,2 с. По результатам испытаний можно сделать следующие выводы: 91 - Полученные результаты подтвердили работоспособность предлагаемых схемотехнических и программных решений в целом. - Суммарное время реакции системы оказалось равным 0,2 с. Для данного случая оно оказалось достаточным для выполнения поставленной задачи, однако в целом для систем реального времени оно является достаточно большим. Требуется проведения дополнительных исследований задержек, вносимых отдельными узлами системы и в частности, определение реального значения времени, требуемого на получение данных о расстоянии до объекта. ЗАКЛЮЧЕНИЕ Выполненное макетирование и проведенные натурные эксперименты позволили сформулировать ряд выводов: - проведённые испытания подтвердили работоспособность предлагаемых схемотехнических и программных решений в целом. - требуется проведения дополнительных исследований задержек, вносимых отдельными узлами системы и в частности, определение реального значения времени, требуемого на получение данных о расстоянии до объекта. - использование измерителей в динамически изменяющихся условиях работы без дополнительной поддержки не гарантирует получение заявленных результатов. Поэтому использование ультразвуковых измерителей расстояния без использования дополнительной поддержки допустимо только в случае, если условия работы системы чётко 92 оговорены (отражающая способность объектов, пределы измерения расстояния до них). В противном случае необходимо использовать комплексирование системы другими типами датчиков. - представляется перспективным исследование структуры системы с одним источником зондирующих сигналов и несколькими приёмниками. В заключение автор выражает благодарность коллективу СКБ ГУАП и команде проекта Феникс-3 да всестороннюю поддержку в реализации данного проекта. 93 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 1.Проект “Робот Феникс-1”/ Д.А.Астапкович, А.А.Гончаров, А.С.Дмитриев, А.В.Михеев // Сборник докладов пятьдесят девятой международная студенческая научно-техническая конференция ГУАП. Часть I, 18-22 апреля 2006, г,Санкт-Петербург. ГУАП. С.211-216. 2. A. Dmitriev, A. Mikheev, Autonomous Robot "PHOENIX-1". URL: http://guap.ru/guap/skb/docs/dmitr_mih.doc 3. Проект Феникс-2 URL: http://guap.ru/guap/skb/pr_f2_main.shtml 3. А.В. Бурдуков. Автономный робот “Феникс-3”. Научная сессия ГУАП: Сборник докладов Часть II, Вычислительные системы и программирование, 26 октября 2009, г,Санкт-Петербург, с.116-122. 4. A. Burdukov, Autonomous robot “Phoenix-3”, proc. “Information and communication technologies and higher education-priorities of modern society development”, International forum, department of operative polygraphy, SUAI, may 26-30 2009, p/41-49 5. Г.Н. Горностаев Введение в этологию насекомых фотоксенов. // Тр. Вестн. энтомол. об-ва. 1984. Л.: Наука, Т.66. С.101—167. 6 Д.Н. Лапшин, Д.Д. Воронцов, Активация эмиссии эхолокационных сигналов совок (Noctuidae, Lepidoptera) в ответ на ретрансляцию эхоподобных стимулов// ДАН. 1998. Т.362. №4. С.567—569. 7 Д.Н. Лапшин, М.В.Федорова, Р.Д. Жантиев Ультразвуковая эхолокация у совок (Lepidoptera, Noctuidae) // ДАН. 1993. Т.331. №6. С.781—783. 8. Ультразвуковая локация летучих мышей. URL: http://medbiol.ru/medbiol/ssb/001604ac.htm 9. Обзор систем безопасности. URL: http://www.gaw.ru/html.cgi/txt/app/micros/msp430/slaa136a.htm 94 . 10. Nomad 200 hardware manual. Part number: DOC00005, Nomadic technologies inc. 11. Garcia Robot Using Two SRF08 Rangers for Obstacle Avoidance URL: http://www.acroname.com/examples/10039/10039.html 12. URL: http://zpostbox.narod.ru/az4.htm 13.DS41159E. PIC18FXX8 Data Sheet (Microchip corp.) 14. А.В. Бурдуков Макетирование многоканальной системы ультразвукового зрения робота "Феникс-3" http://guap.ru/guap/skb/burdukov2.doc 15. А.В. Бурдуков Система дистанционного управления роботом "Феникс 3" http://guap.ru/guap/skb/burdukov.doc 95 ПРИЛОЖЕНИЕ А - Текст подпрограммы модуля начальной микроконтроллера ультразвукового измерителя дальности #include "p18F458.h" #include <can2510.h> #include <string.h> #pragma config OSC=ECIO #pragma config OSCS = OFF #pragma config WDT = OFF #pragma config LVP = OFF void CANconfig(void) { Can2CAN=CAN2510Init(CAN2510_RESET & CAN2510_CLKOUT_OFF & CAN2510_RXB0_STDMSG & CAN2510_RXB0_STDMSG, CAN2510_BRG_4x, CAN2510_RXB0_EN & CAN2510_RXB1_EN, CAN2510_SPI_FOSC4, CAN2510_SPI_MODE00, CAN2510_SPI_SMPMID); Can2CAN=CAN2510Init(CAN2510_RESET & CAN2510_CLKOUT_OFF & CAN2510_RXB0_STDMSG & CAN2510_RXB0_STDMSG, CAN2510_BRG_32x, CAN2510_RXB0_EN & CAN2510_RXB1_EN, CAN2510_SPI_FOSC4, CAN2510_SPI_MODE00, CAN2510_SPI_SMPMID); начальные настройки if (Can2CAN==0) { //если удалось его запустить Can2CAN=CAN2510SetMsgFilterStd(CAN2510_RXB0, 0xffff, mask0); Can2CAN=CAN2510SetMsgFilterStd(CAN2510_RXB1, 0xffff, mask0); CAN2510SetBufferPriority(CAN2510_TXB0, CAN2510_PRI_HIGH); CAN2510SetMode(CAN2510_MODE_NORMAL); } } void setup(void){ ADCON0bits.ADON=0; //выкл АЦП ADCON1=6; CANCON=0x30; CMCON=7; TRISB=255; //вкл вход INT TRISC=0xE2; TRISD=0xff; TRISEbits.TRISE0=0; TRISEbits.TRISE2=0; PORTC=0; //настройка таймера 1 T1CON=0x35; T3CON=0x9D; //Настраиваем прерывания RCONbits.IPEN=1; //Разрешить систему приоритетов INTCON2bits.INTEDG0=0; //разрешение прерываний и установка приоритетов для CAN-а. 96 INTCONbits.INT0IE=0; IPR1bits.TMR1IP=1; //высокий приоритет прерывания таймеру 1 PIE1bits.TMR1IE=1; //разрешить прерывания от таймера 1 PORTBbits.RB1=0; //начальное состояние управляющих линий контроллера CAN //PORTBbits.RB2=0; mask0[0]=2; mask0[1]=0; mask0[2]=0; mask0[3]=0; CANconfig(); INTCONbits.GIEH=1; //Разрешаем высокоуровневые прерывания INTCONbits.GIEL=1; //Разрешаем низкоуровневые прерывания } 97 ПРИЛОЖЕНИЕ Б - Текст подпрограммы модуля таймера циклических измерений программы модуля начальной микроконтроллера ультразвукового измерителя дальности void InterruptHandlerLow(void); void InterruptHandlerHigh(void); void MeasureCycle(unsigned char channel); #pragma code InterruptVectorHigh=0x08 //это выполнится на высокоприоритетном прерывании void InterruptVectorHigh(void) { _asm goto InterruptHandlerHigh //там основной обработчик _endasm } void MeasureCycle(unsigned char channel) { PORTEbits.RE0=channel; //выбираем рабочий канал PORTCbits.RC0=1; //запуск посылки импульса и начала измерений PORTCbits.RC0=0; } #pragma code #pragma interrupt InterruptHandlerHigh //основной обработчик void InterruptHandlerHigh() { if (INTCONbits.INT1IF) { PORTEbits.RE2=1; //читаем данные из ПЛИС HiDist4=PORTD; //вначале старший байт PORTEbits.RE2=0; LoDist4=PORTD; //потом и младший INTCONbits.INT1IF=0; } if (PIR1bits.TMR1IF) { MeasureCycle(0); PIR1bits.TMR1IF=0; } 98 ПРИЛОЖЕНИЕ В - Текст подпрограммы модуля 4. Обработчик прерывания CAN if (INTCONbits.INT0IF) { ReadType=CAN2510DataReady(CAN2510_RXBX); if ((ReadType==2) | (ReadType==3)) { ReadType=CAN2510DataRead(CAN2510_RXB1,&ReadID,&ReadLength,ReadBuffer); NextReadOp(); } if ((ReadType==1) | (ReadType==3)) { ReadType=CAN2510DataRead(CAN2510_RXB0,&ReadID,&ReadLength,ReadBuffer); NextReadOp(); } void NextReadOp(void) { if (ReadType==CAN2510_STDRTR) { WriteBuffer[0]=HiDist4; WriteBuffer[1]=LoDist4; CAN2510LoadBufferStd(CAN2510_TXB0, 1, ReadLength, WriteBuffer); CAN2510LoadBufferStd(CAN2510_TXB0, 1, 2, WriteBuffer); CAN2510SendBuffer(CAN2510_TXB0); } 99 ПРИЛОЖЕНИЕ Г - Схема электрическая принципиальная основного модуля ультразвукового измерителя дальности 100 ПРИЛОЖЕНИЕ Д - Схема электрическая принципиальная выходного каскада ультразвукового измерителя дальности (1 канал) 101 ПРИЛОЖЕНИЕ Е 102 ПРИЛОЖЕНИЕ Ж 103