WWW.DISUS.RU

БЕСПЛАТНАЯ НАУЧНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

 

МИНОБРНАУКИ РОССИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ»
МГТУ МИРЭА
Допущен к защите Заведующий кафедрой ИС _______________В.К. Батоврин «____» ___________ 2013 г.
Попов Артём Михайлович
УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР НА ОСНОВЕ МИКРОКОНТРОЛЛЕРА
Направление 200100.68 Приборостроение Магистерская программа 200100.68.22 «Измерительные информационные технологии и системы»
Магистерская диссертация
Научный руководитель кандидат технических наук,
доцент Мошкин В.В.
Москва 2013

РЕФЕРАТ

43 страницы, 19 иллюстраций, 3 таблицы, 5 приложения, 19 использованных источников, 3 плаката.

УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР, ЗОНДИРУЮЩИЙ СИГНАЛ, ПОСЛЕДОВАТЕЛЬНОСТЬ БАРКЕРА, ПОМЕХОЗАЩИЩЕННОСТЬ, КОРРЕЛЯЦИЯ, МОДУЛЯЦИЯ, КОНТРОЛЛЕР.

Объектом исследования является ультразвуковой дальномер.

Цель работы – проведение исследовательских работ и создание экспериментального образца ультразвукового дальномера, обладающего повышенной помехозащищённостью и дальностью приёма зондирующего сигнала.

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

Область применения результатов – использование полученных результатов для осуществления измерений.

Значимость работы – в ходе выполнения работы использован метод кодирования с помощью последовательности Баркера и корреляционная обработка принимаемого сигнала, при этом удалось повысить помехозащищенность зондирующего сигнала и дальность работы ультразвукового дальномера. Разработаны алгоритм работы приёмника и передатчика ультразвукового дальномера, прототип конструкции прибора и программное обеспечение ультразвукового дальномера, соответствующее целям и задачам, возлагаемым на устройства ультразвуковой дальнометрии.

СОДЕРЖАНИЕ

РЕФЕРАТ 2

СОДЕРЖАНИЕ 3

НОРМАТИВНЫЕ ССЫЛКИ 5

ВВЕДЕНИЕ 6

1. Основы построения дальномеров 8

1.1. Назначение дальномеров 8

1.2. Типы дальномеров 8

1.3. Устройство и принцип действия ультразвукового дальномера 11

1.4. Контроль достоверности детектирования зондирующего сигнала в ультразвуковых дальномерах. 16

2. Сигналы 17

2.1. Краткие технические сведения. 17

2.2. ФМ сигналы, манипулированные по фазе кодами Баркера 18

2.3. Выводы. 20

3. Разработка компьютерной модели ультразвукового дальномера. 22

3.1. Введение в LabVIEW 22

3.2. Моделирование затухания сигнала 25

3.3. Описание компьютерной модели. 29

3.4. Результаты моделирования. 29

3.5. Выводы. 34

4. Лабораторный стенд. 35

4.1. Описание лабораторного стенда. 35

4.2. Результаты измерений, выполненных с помощью лабораторного стенда. 37



4.3. Выводы 40

5. Макет прибора 41

5.1. Комплектующие. 41

5.2. Разработка программного обеспечения 42

5.3. Результаты измерения дальности с использованием макета 43

ЗАКЛЮЧЕНИЕ 44

Приложение 1. 47

Приложение 2. 49

Приложение 3 51

Приложение 4 57

Приложение 5 58

НОРМАТИВНЫЕ ССЫЛКИ

В настоящей магистерской диссертации используются ссылки на следующие стандарты и нормативные документы:

«Магистерская диссертация. Положение о выпускной квалифицированной работе магистров» СМКО МИРЭА 7.5.1/02.П.31-11 от 21 февраля 2011 г.

ГОСТ 1.52001 Стандарты межгосударственные, правила и рекомендации по межгосударственной стандартизации. Общие требования к построению, изложению, оформлению, содержанию и обозначению.

ГОСТ 7.12003 Система стандартов по информации, библиотечному и издательскому делу. Библиографическая запись. Библиографическое описание. Общие требования и правила составления.

ГОСТ 7.322001 Система стандартов по информации, библиотечному и издательскому делу. Отчет о научно-исследовательской работе. Структура и правила оформления.

ГОСТ 8.41781 Государственная система обеспечения единства измерений. Единицы физических величин.

ВВЕДЕНИЕ

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

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

Целью данной работы является попытка создания ультразвукового дальномера, производящего более точные измерения, либо способного производить измерения на большие расстояния относительно существующих дальномеров с похожей элементной базой. Увеличение дальности дальномеров, либо улучшение их точности, позволит решить множество бытовых и производственных задач. Так же при увеличении дальности дальномеров появится возможность использовать их для измерения больших расстояний, что фактически открывает новую область применения этих устройств. Поэтому работы, направленные на исследования вопросов повышения точности и дальности измерений ультразвуковых дальномеров являются достаточно АКТУАЛЬНЫМИ.

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

Магистерская диссертация состоит из введения, четырёх разделов, заключения и пяти приложений.

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

Для достижения поставленной задачи необходимо:

  • Произвести исследование ультразвуковых дальномеров;
  • Выбрать сигнал, удовлетворяющий требованиям;
  • Произвести исследование выбранного сигнала;
  • Написать микропрограмму ультразвукового дальномера, реализующую выбранные методы;

В ходе выполнения работы планируется увеличить дальность действия разработанного дальномера относительно дальномеров с похожей элементной базой приблизительно в 1,5 раза.

1. Основы построения дальномеров

1.1. Назначение дальномеров

Дальномер — устройство, предназначенное для определения расстояния от наблюдателя до объекта. Используется в геодезии, для наводки на резкость в фотографии, в прицельных приспособлениях оружия, систем бомбометания и т.д.

Дальномерные приспособления делятся на активные и пассивные:

  • Активные:
    • Звуковой дальномер
    • Световой дальномер
    • Лазерный дальномер
  • Пассивные:
    • Дальномеры, использующие оптический паралакс (напр. Дальномерный фотоаппарат)
    • Дальномеры, использующие сопоставление объекта какому-либо образцу

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

Измерение расстояний дальномерами пассивного типа основано на определении высоты h равнобедренного треугольника ABC, например по известной стороне AB = l (базе) и противолежащему острому углу b (т. н. параллактическому углу).

1.2. Типы дальномеров

Первый тип дальномера – это лазерный дальномер. Лазерный дальномер — прибор для измерения расстояний с применением лазерного луча. Широко применяется в инженерной геодезии, при топографической съёмке, в военном деле, в навигации, в астрономических исследованиях, в фотографии.

Лазерная дальнометрия является одной из первых областей практического применения лазеров в зарубежной военной технике. Первые опыты относятся к 1961 году, а сейчас лазерные дальномеры используются и в наземной военной технике (артиллерийские, таковые), и в авиации (дальномеры, высотомеры, целеуказатели), и на флоте. Эта техника прошла боевые испытания во Вьетнаме и на Ближнем Востоке. В настоящее время ряд дальномеров принят на вооружение во многих армиях мира.

Лазерный дальномер - это устройство, состоящее из импульсного лазера и детектора излучения. Измеряя время, которое затрачивает луч на путь до отражателя и обратно и зная значение скорости света, можно рассчитать расстояние между лазером и отражающим объектом.

 1. Современные модели лазерных дальномеров. Второй тип – это-2

Рис. 1.1. Современные модели лазерных дальномеров.

Второй тип – это оптические дальномеры. Оптические дальномеры - обобщенное название группы дальномеров с визуальной наводкой на объект (цель), действие которых основано на использовании законов геометрической (лучевой) оптики. Распространены оптические дальномеры: с постоянным углом и выносной базой (например, нитяной дальномер, которым снабжают многие геодезические инструменты - теодолиты, нивелиры и т. д.); с постоянной внутренней базой - монокулярные (например, фотографический дальномер) и бинокулярные (стереоскопические дальномеры). 

Оптический дальномер (светодальномер) - прибор для измерения расстояний по времени прохождения оптическим излучением (светом) измеряемого расстояния.  Оптический дальномер содержит источник оптического излучения, устройство управления его параметрами, передающую и приёмную системы, фотоприёмное устройство и устройство измерения временных интервалов. Оптический дальномер делятся на импульсные и фазовые в зависимости от методов определения времени прохождения излучением расстояния от объекта и обратно.

 2. Современный оптический дальномер. Третий тип дальномера – это-3

Рис. 1.2. Современный оптический дальномер.

Третий тип дальномера – это ультразвуковой дальномер. Ультразвуковой дальномер - устройство для измерения расстояния, бесконтактным способом. Принцип действия ультразвукового дальномера заключается в следующем:

Дальномер состоит из двух частей - приемной и передающей - обе части, как правило, управляются микроконтроллером - он нужен так же для последующей передачи результатов измерения. Расстояние меряется следующим образом: приемная часть излучает через резонирующий элемент пачку импульсов с частотой от 40кГц. Отразившись от препятствия ультразвуковой импульс попадает на аудио преобразователь приемной части и фиксируются схемой.

Рис. 1.3. Современный ультразвуковой дальномер

Давайте подробнее остановимся на принципе действия ультразвуковых дальномеров.

1.3. Устройство и принцип действия ультразвукового дальномера

Существует несколько методов работы ультразвукового дальномера.

Первый метод – метод непосредственного обнаружения. В данном методе обработка отражённого от объекта сигнала производится в той же точке, что и излучение. В момент времени T0 (Рис. 1.4) ультразвуковой передатчик излучает сигнал — пачку импульсов, продолжительностью t, которая распространяется в окружающей среде со скоростью звука C. Когда сигнал достигает объекта, часть сигнала отражается и приходит в приёмник в момент времени T1. Электронная схема устройства обработки сигнала определяет расстояние до объекта, измеряя время T1 – T0.

Для измерений расстояния может применяться как схема, использующая одну и ту же головку датчика для излучения и приёма, так и схема, в которой излучение и приём производят две разные головки.

 4. Сигнал на чувствительном элементе УЗ-датчика измерительной схемы с-5

Рис. 1.4. Сигнал на чувствительном элементе УЗ-датчика измерительной схемы с одной головкой

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

Второй метод – это метод отслеживания порога обнаружения. Он состоит в том, что пороговое напряжение детектора, подаваемое на компаратор, формируется напряжением, переменным во времени и повторяющим форму огибающей «хвоста» пачки импульсов, получаемого при затухании колебаний мембраны.

 5. Уменьшение «мёртвого» времени датчика. Метод отслеживания порога -6

Рис. 1.5. Уменьшение «мёртвого» времени датчика. Метод отслеживания порога

Применение метода отслеживания порога чувствительности позволило уменьшить «слепую» зону в 2-2,5 раза. Однако использование датчиков вблизи границы «слепой» зоны требует тщательной проработки. Поэтому в характеристиках датчика по дальности в табл. 1.1 приводится как диапазон зондирования, так и диапазон настройки.

Характеристики датчиков с сокращённой «слепой» зоной

и функцией настройки диапазона регулирования

Таблица 1.1

Дальность, мм (частота) «Слепая» зона, мм Диапазон зондирования, мм Диапазон настройки, мм
500 (390 кГц) 0…30 30…350 50…500
2000 (175 кГц) 0…80 80…2000 120…2000
4000 (85 кГц) 0…200 200…4000 240…4000
6000 (65 кГц) 0…350 350…6000 400…6000




Третий метод – метод перехода через ноль. Данный метод широко применяется в ультразвуковых устройствах, в которых определяется время задержки эхосигнала относительно зондирующего импульса.

Сущность измерений заключается в следующем. Анализируется высокочастотный ультразвуковой сигнал – Рис. 1.6. В схеме измерения используется аналоговый компаратор. Как только импульс превышает порог компаратора, прибор выводит информацию о том, что ультразвуковой сигнал обнаружен. Далее, измерение задержки производится в момент перехода через нулевое значение.

Главное достоинство данного способа измерений состоит в том, что найденное время задержки не зависит от амплитуды сигнала. Если сигнал превысил порог компаратора, измерение происходит автоматически.

Метод перехода через ноль при всех своих достоинствах предъявляет достаточно жесткие требования к форме ультразвукового сигнала. Необходимо обеспечить высокую скорость нарастания переднего фронта. В противном случае может наблюдаться захват второго или даже третьего периода колебаний.

 6. Измерение задержки ультразвукового сигнала методом перехода через-7

Рис. 1.6. Измерение задержки ультразвукового сигнала методом перехода через ноль

Практика разработки пъезопреобразователей показывает, что довольно трудно управлять формой акустических импульсов. Обычно применяют сильное демпфирование пъезопластин, которое позволяет расширить полосу пропускания и одновременно дает возможность получить короткие ультразвуковые импульсы.

Четвёртый метод – ультразвуковой метод. Одним из способов применения ультразвука является определение расстояния. Ультразвуковой импульс, посылаемый устройством, отражается от препятствия и поступает обратно к приемнику, как эхо, что фиксируется датчиками.

 7 Отражение звука от различных объектов Информация о расстоянии до-8

Рис.1.7 Отражение звука от различных объектов

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

Замеряя время между посылом и получением эха, можно определить, насколько далеко находится объект. Приборы, использующий подобный принцип, называются сонарами. Аналогично работают радары.

1.4. Контроль достоверности детектирования зондирующего сигнала в ультразвуковых дальномерах.

Ультразвуковые дальномеры обеспечиваю высокую точность измерений. Их погрешность могла бы составлять сотые доли миллиметра, но из-за разной скорости звука в воздухе при разных температурах, погрешность среднестатистического серийного ультразвукового дальномера составляет 0,5%.


2. Сигналы

2.1. Краткие технические сведения.

Одной из основных технических характеристик ультразвукового дальномера является его разрешающая способность по дальности, определяемая шириной основного лепестка сигнала на выходе схемы его обработки. При оптимальной (квазиоптимальной) обработке длительность выходного сигнала обратно пропорциональна ширине спектра входного сигнала. В современной радиолокации в качестве зондирующих сигналов наиболее широко применяются сложные сигналы, т.е. сигналы с внутриимпульсной модуляцией, для которых произведение длительности на ширину спектра может значительно превышать единицу. [2] Поскольку шириной спектра зондирующего сигнала определяется разрешающая способность ультразвукового дальномера по дальности, то применение сложных сигналов позволяет увеличить ширину спектра зондирующего сигнала без уменьшения его длительности и энергии и, следовательно, повысить разрешающую способность ультразвукового дальномера по дальности при сохранении максимальной измеряемой дальности. Для получения сложного сигнала простой радиоимпульс модулируется по частоте, фазе или амплитуде. Одними из наиболее распространенных сложных сигналов являются фазоманипулированные сигналы (ФМ-сигналы) [1], представляющие собой последовательность простых радиоимпульсов, фаза которых от импульса к импульсу меняется по определенному закону. Выбор конкретного закона изменения фазы ФМ-сигнала преследует цель получения сигнала, автокорреляционная функция которого имеет возможно более низкий уровень боковых лепестков. Такими свойствами обладают сигналы, манипулированные по фазе кодами Баркера.

2.2. ФМ сигналы, манипулированные по фазе кодами Баркера

ФМ сигнал, манипулированный по фазе кодом Баркера, представляет собой последовательность из N простых радиоимпульсов, начальная фаза которых принимает значение 0 или в соответствии с выбранным кодом. [1]

 1. Сигнал Баркера Автокорреляционная функция таких сигналов имеет-9

Рис.2.1. Сигнал Баркера

Автокорреляционная функция таких сигналов имеет минимально возможный уровень боковых лепестков, равный 1/N, где N - число элементарных сигналов, составляющих сложный сигнал. В качестве примера на рис. 1,а изображена комплексная огибающая ФМ сигнала, манипулированного по фазе кодом Баркера для N = 7, а на рис. 1,б комплексная огибающая его нормированной автокорреляционной функции. Сама автокорреляционная функция ФМ-сигнала может быть получена вписанием в комплексную огибающую АКФ высокочастотного косинусоидального заполнения с частотой, равной несущей частоте сигнала.[1]

Ширина спектра ФМ-сигнала f определяется длительностью парциального импульса 0 и примерно равна 1/0. Отсюда база ФМ-сигнала

.

К сожалению, не существует кодов Баркера при N>13. В табл. 1 приведены ФМ- сигналы, манипулированные по фазе кодами Баркера для нечетных N. Знаками "+" и "-" обозначены элементарные радиоимпульсы, имеющие положительную и отрицательную комплексные амплитуды.

Последовательности Баркера

Таблица 2.1

Длина Последовательности
2 +1 -1 +1 +1
3 +1 +1 -1
4 +1 -1 +1 +1 +1 -1 -1 -1
5 +1 +1 +1 -1 +1
7 +1 +1 +1 -1 -1 +1 -1
11 +1 +1 +1 -1 -1 -1 +1 -1 -1 +1 -1
13 +1 +1 +1 +1 +1 -1 -1 +1 +1 -1 +1 -1 +1

Вычисление автокорреляционной функции ФМ-сигналов сводится к определению ее значений в дискретных точках, соответствующих временным сдвигам, кратным длительности элементарного импульса. [7-9] Это нетрудно сделать с помощью ромбовидной таблицы 2, построенной для N = 7. Первая строка этой таблицы получается умножением исходного ФМ-сигнала, записанного в виде знаков его комплексной огибающей, на знак последнего элемента сигнала. Вторая строка получается умножением исходного ФМ-сигнала на знак предпоследнего элемента сигнала и записывается со сдвигом на один элемент вправо и т.д. Столбцы полученной таблицы суммируются, и полученные числа определяют значения комплексной огибающей автокорреляционной функции

Дискретные точки, соответствующие временным сдвигам
ФМ-сигнала в дискретных точках

Таблица 2.2

+ + - - + -
- - - - + + - +
+ + + + - - + -
- - - - + + - +
- - - - + + - +
+ + + + - - + -
+ + + + - - + -
+ + + + - - + -
-1 0 -1 0 -1 0 7 0 -1 0 -1 0 -1

2.3. Выводы.

Таким образом, сигнал манипулированный по фазе кодом Баркера идеально подходит для детектирования, так как его автокорреляционная функция в N раз уже автокорреляционной функции синусоиды (рис. 2.2), где N – число элементарных сигналов, составляющих сложный сигнал. В конечном итоге именно эта характеристика автокорреляционной функции сигнала, фазоманипулированного кодом Баркера, была решающей при выборе именно этого сигнала.

 2. Автокорреляционные функции сигнала, фазоманипулированного кодом-14

Рис. 2.2. Автокорреляционные функции сигнала, фазоманипулированного кодом Баркера, и синусоиды.


3. Разработка компьютерной модели ультразвукового дальномера.

3.1. Введение в LabVIEW

Для построения математической модели был выбран язык программирования LabVIEW. Существует два основных отличия LabVIEW от других языков программирования. Во-первых, LabVIEW реализует концепцию графического программирования G, поэтому исходный код представляет собой блок-диаграмму (соединенные друг с другом пиктограммы элементов языка), которая затем компилируется в машинный код. Несмотря на такой подход в языке G используются те же конструкции и методы программирования, что и в других языках: типы данных, циклы, переменные, рекурсия, обработка событий и объектно-ориентированное программирование. [5]

Вторая отличительная особенность LabVIEW - это поддержка выполнения кода, написанного на языке G, в режиме потока данных (потоковое программирование), в то время как традиционные текстовые языки (например, C и C++) обеспечивают выполнение кода в виде последовательности команд. В основе языков потокового программирования (таких как G, Agilent VEE, Microsoft Visual Programming Language и Apple Quartz Composer) лежит концепция потока данных, который и определяет последовательность выполнения функциональных узлов программы.

Поначалу может показаться, что отличие подобного подхода от традиционного не существенно, однако на практике оказывается иначе. А именно, потоковое программирование в среде LabVIEW позволяет разработчику полностью сфокусироваться на данных и путях их обработки. Узлы программы - функции, циклы и прочие конструкции языка - получают данные через входы, производят их обработку и выводят данные с помощью выходов. Как только значения параметров поступают на каждый из входных терминалов узла, происходит выполнение кода узла (обработка поступивших данных), после чего значения выходных параметров оказываются доступными на выходных терминалах узла для дальнейшей их передачи на другие узлы согласно логике потока данных. Соответственно, из двух последовательно связанных узлов, второй сможет быть выполнен только после получения данных от предыдущего.

Языки потокового программирования, такие как LabVIEW, позволяют автоматически распараллеливать выполнение кода. В отличие от языков с последовательным выполнением команд, таких как C и C++, графические языки изначально содержат в себе информацию о том, какие участи кода следует выполнять параллельно. Рассмотрим, к примеру, шаблон проектирования «Производитель/Потребитель», в котором два цикла While выполняются независимо: первый цикл генерирует или получает данные, а второй – обрабатывает их. Несмотря на то, что циклы выполняются параллельно, данные между ними успешно передаются с помощью механизма очередей, которые поддерживаются и в стандартных языках.

Параллелизм становится всё более важным способом увеличить производительность программ, которые не могут эффективно работать на последних моделях процессоров по причине последовательного выполнения кода. Более 40 лет разработчики центральных процессоров наращивали производительность своей продукции за счет увеличения тактовой частоты, однако теперь это стало невозможно в силу чрезмерного энергопотребления и тепловыделения микросхем. Поэтому, в настоящее время разработчики уделяют особое внимание разработке новых архитектур - многоядерных процессоров.

Чтобы до конца использовать все преимущества многоядерной архитектуры процессора, программы должны содержать участки кода, которые могут выполняться независимо (т.е. быть многопоточными). В обычных текстовых языках создание и управление потоками должно быть реализовано явным образом, что является сложной задачей для неопытного специалиста в программировании.

Явное преимущество языка G по сравнению с обычными текстовыми языками программирования заключается в том, что реализация многопоточных приложений является весьма простой задачей. Встроенный компилятор самостоятельно определяет участки кода, имеющие параллельно расположенные узлы, и организует раздельные потоки для их параллельного исполнения. В компьютерной терминологии такой механизм называется «неявный параллелизм», т.е. реализация параллелизма осуществляется автоматически средствами разработки, а не специально написанным кодом.

Помимо поддержки многопоточности на многоядерных системах, язык G позволяет создавать приложения для параллельных вычислений на ПЛИС – интегральных микросхемах с программируемой логикой, в которых выполнение независимых участков кода организуется абсолютно независимыми участками микросхемы, которые не влияют на производительность друг друга.

Изначально, программирование ПЛИС было прерогативой узкоспециализированных разработчиков, владеющих глубокими знаниями языков разработки цифрового оборудования. Постепенно, инженеры других специализаций стали всё чаще использовать ПЛИС для систем, требующих точной синхронизации, управления с высокой скоростью, в качестве интерфейсов цифровых протоколов и основы устройств обработки цифровых сигналов, в радиоизмерениях и телекоммуникациях – во многих областях электроники, где требовалась высокая скорость, гибкость и жесткий детерминизм. Язык G очень хорошо подходит для программирования ПЛИС, потому что в его основе лежит работа с параллельными потоками данных. Именно поэтому он становится всё более популярным среди разработчиков, которым требуются параллельные детерминированные вычисления.

Несмотря на то, что язык G идеально подходит для организации распараллеливания кода, а также скрывает тонкости управления памятью, он не является наиболее оптимальным выбором для решения некоторых задач. В частности, математические формулы и уравнения могут быть более наглядно представлены в текстовом виде, поэтому в LabVIEW реализованы механизмы добавления на блок-диаграмму текстового кода.

Например, в LabVIEW есть узел, называющийся Formula Node, который позволяет рассчитывать значения по текстовым формулам и выполнять текстовые программы с C-подобным синтаксисом.

3.2. Моделирование затухания сигнала

Для правильного математического моделирования ультразвукового дальномера необходимо правильно смоделировать затухание ультразвуковой волны во время прохождения необходимого расстояния, а так же потери при отражении ультразвука от границы раздела двух сред. [4]

Одной из основных характеристик ультразвука является его затухание. Затухание ультразвука – это уменьшение амплитуды и, следовательно, интенсивности звуковой волны по мере ее распространения. Затухание ультразвука происходит из-за ряда причин. Основными из них являются [1-4]:

  • убывание амплитуды волны с расстоянием от источника, обусловленное формой и волновыми размерами источника;
  • рассеяние ультразвука на неоднородностях среды, в результате чего уменьшается поток энергии в первоначальном направлении распространения;
  • поглощение ультразвука, т.е. необратимый переход энергии звуковой волны в другие формы, в частности в тепло.

Первая из этих причин связана с тем, что по мере распространения волны от точечного или сферического источника энергия, излучаемая источником, распределяется на все увеличивающуюся поверхность волнового фронта и соответственно уменьшается поток энергии через единицу поверхности, т.е. интенсивность звука. Для сферической волны, волновая поверхность которой растёт с расстоянием r от источника как r2, амплитуда волны убывает пропорционально , а для цилиндрической волны — пропорционально .

Рассеяние ультразвука происходит из-за резкого изменения свойств среды – её плотности и модулей упругости — на границе неоднородностей, размеры которых сравнимы с длиной волны. В газах это могут быть, например, жидкие капли, в водной среде — пузырьки воздуха, в твёрдых телах — различные инородные включения или отдельные кристаллиты в поликристаллах и т. п. Особый интерес представляет рассеяние на хаотически распределённых в пространстве неоднородностях.

Поглощение ультразвука может быть обусловлено различными механизмами. Большую роль играет вязкость и теплопроводность среды, взаимодействие волны с различными молекулярными процессами вещества, с тепловыми колебаниями кристаллической решётки и др.

3атухание звука, обусловленное рассеянием и поглощением, описывается экспоненциальным законом убывания амплитуды с расстоянием, т. е. амплитуда пропорциональна , а интенсивность – в отличие от степенного закона убывания амплитуды при расхождении волны, где – коэффициент затухания звука.

Коэффициент затухания выражают либо в децибелах на метр (дБ/м), либо в неперах на метр (Нп/м).

Для плоской волны коэффициент затухания по амплитуде с расстоянием определяется по формуле

, (3.1)

  • где – коэффициент затухания с расстоянием, 1/м,
  • L – расстояние, м,
  • p(0), p(L) – амплитуда звукового давления в исходной точке и на расстояние L, Па

Коэффициент затухания от времени определяется

, (3.2)

  • где – коэффициент затухания от времени, 1/с,
  • T – время, с,
  • p(0), p(T) – амплитуда звукового давления в начале и через время T соответственно, Па

Для измерения коэффициента также используют единицу дБ/м, в этом случае

, (3.3)

Децибел (дБ) – логарифмическая единица измерения отношения энергий или мощностей в акустике.

, (3.4)

  • где A1 – амплитуда первого сигнала,
  • A2 – амплитуда второго сигнала

Тогда связь между единицами измерения (дБ/м) и (1/м) будет:

, (3.5)

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

, (3.6)

  • где Z – волновое сопротивление,,
  • p – плотность, кг/м3,
  • с – скорость звука, м/с

Коэффициенты отражения и прохождения будут определяться следующим образом

, (3.7)

  • где R – коэффициент отражения звукового давления,
  • Z1 – волновое сопротивление первого вещества, в котором распространяется звуковая волна, кг/(м2с),
  • Z2 – волновое сопротивление второго вещества, в которую проходит звуковая волна, кг/(м2с)

, (3.8)

  • где D – коэффициент прохождения звукового давления

Стоит отметить также, что если вторая среда акустически более «мягкая», т.е. Z1>Z2, то при отражении фаза волны изменяется на 180.

Коэффициент пропускания энергии из одной среды в другую определяется отношением интенсивности волны, проходящей во вторую среду, к интенсивности падающей волны

, (3.9)

3.3. Описание компьютерной модели.

Для подтверждения теоретических результатов главы 2 была построена компьютерная модель в среде LabVIEW с использованием раздела 2 для эмуляции шума и отражений. Модель состоит из генератора сигнала, фазоманипулированного кодом Баркера, с N = 13, где N – число элементарных сигналов, составляющих сложный сигнал, генератора синусоиды такой же длинны, а так же квадратурного коррелятора, обрабатывающего сигналы. Перед обработкой сигналы подвергались воздействию шумов, что должно было эмулировать прохождение сигнала через реальную среду. [11]

Так же программа позволяет использовать режим набора статистики. Этот режим перебирает амплитуды шума от 0, до 3 уровней сигнала и производит заданное количество измерений для каждого из уровней. Шаг усиления шума выставлен как 0,1 от опорного сигнала. После каждого измерения программа рассчитывает среднеквадратичное отклонение синуса и сигнала, фазоманипулированного кодом Баркера, а так же максимальное значение ошибки для обоих этих сигналов.

Эти два параметра в полной мере позволяют сравнить положительный, либо отрицательный эффект использования сигнала, фазоманипулированного кодом Баркера.

Блок схема, а так же лицевая панель прибора представлены в приложении 1.

3.4. Результаты моделирования.

При моделировании были представлены два типа шума: простой белый шум, как наиболее лёгкий из шумов, и белый шум по Гауссу, представляющий гораздо более существенную проблему для прибора. [12]

Белый шум — стационарный шум, спектральные составляющие которого равномерно распределены по всему диапазону задействованных частот. Примерами белого шума являются шум близкого водопада (отдаленный шум водопада — розовый, так как высокочастотные составляющие звука затухают в воздухе сильнее низкочастотных), или шум Шоттки на клеммах большого сопротивления. Название получил от белого света, содержащего электромагнитные волны частот всего видимого диапазона электромагнитного излучения.

В природе и технике «чисто» белый шум (то есть белый шум, имеющий одинаковую спектральную мощность на всех частотах) не встречается (ввиду того, что такой сигнал имел бы бесконечную мощность), однако под категорию белых шумов попадают любые шумы, спектральная плотность которых одинакова (или слабо отличается) в рассматриваемом диапазоне частот.

Аддитивный белый Гауссовский шум — вид мешающего воздействия в канале передачи информации. Характеризуется равномерной спектральной плотностью, нормально распределённым значением амплитуды и аддитивным способом воздействия на сигнал. Наиболее распространённый вид шума, используемый для расчёта и моделирования систем радиосвязи. Термин «аддитивный» означает, что данный вид шума суммируется с полезным сигналом. В противоположность аддитивному, можно указать мультипликативный шум — шум, перемножающийся с сигналом.

Для выражения погрешности измерений было рассчитано среднеквадратическое отклонение для правильного ответа.

Среднеквадратическое отклонение  — в теории вероятностей и статистике наиболее распространённый показатель рассеивания значений случайной величины относительно её математического ожидания.

Измеряется в единицах измерения самой случайной величины. Равно корню квадратному из дисперсии случайной величины. Среднеквадратическое отклонение используют при расчёте стандартной ошибки среднего арифметического, при построении доверительных интервалов, при статистической проверке гипотез, при измерении линейной взаимосвязи между случайными величинами.

Среднеквадратическое отклонение:

Практически все значения нормально распределённой случайной величины лежат в интервале . Более строго — не менее чем с 99,7 % вероятностью значение нормально распределённой случайной величины лежит в указанном интервале (при условии, что величина истинная, а не полученная в результате обработки выборки).[6]

Так как ответ, вычисленный после обработки зашумлённого сигнала есть ни что иное как случайная величина, близкая к абсолютному значению ответа, то среднеквадратическое отклонение можно использовать для вычисления области, в которую попадут все вычисленные ответы, с учётом погрешности вычисления при том или ином уровне шума. Единственное условие для вычисления среднеквадратического отклонения, необходимость осуществления большого количества вычислений для одинакового уровня шума, что позволит создать массив данных для обработки. В математической модели было произведено 1024 измерения для каждого уровня шума с амплитудой от 0,1 до 3 единиц.

Сначала проанализируем графики для белого шума.

Для каждого значения амплитуды белого шума производилось 1024 расчёта отклонения ответа от нормы, после чего массив из 1024 значений рассчитывался по формуле среднеквадратического отклонения. Это позволило наглядно отобразить степень погрешности при расчёте ответа в зависимости от измеряемой длинны. График среднеквадратического отклонения при белом шуме (График 1), показывает уровень отклонений от нормы, в которые попадает 75% всех измерений. Как мы можем видеть из графика, погрешности синусоиды начинают расти при уровне белого шума равном 1,6 уровня сигнала и выше. Что касается погрешностей при использовании сигнала, фазоманипулированного кодом Баркера, то разброс погрешностей остаётся приемлемым в плоть до достижения значения амплитуды шума, равной двум амплитудам сигнала.

Теперь рассмотрим график максимальной ошибки при белом шуме (График 2). Синусоида, после приближения уровня амплитуды шума к значению 1,5 уровня амплитуды сигнала, начинает вести себя всё более и более хаотично, пока на отметке амплитуды шума равной 2 уровня сигнала не превращается практически в набор случайных значений. Что же касается сигнала, фазоманипулированного кодом Баркера, максимальный уровень ошибки начинает возрастать для него в районе амплитуды шума, равной две амплитуды сигнала и довольно линейно возрастает и далее.

Если бы при общей линейности возрастания максимальной погрешности среднеквадратическое отклонение было более линейным, можно было бы с уверенностью говорить о возможности использования прибора при амплитуде шума, превышающей амплитуду сигнала более чем в 2 раза, но в данном случае точность такой системы существенно снижаться и на отметке уровня амплитуды шума в 2,5 уровня амплитуды сигнала уже будет существенный разброс.

3.5. Выводы.

При использовании модели с белым шумом с Гауссовским распределением подтверждаются все выводы обычного белого шума, с той лишь разницей, что максимальное стабильное соотношение при использовании сигнала, фазоманипулированного кодом Баркера, когда амплитуда шума равна амплитуде сигнала. Синусоида же начинает давать неверные результаты уже при уровне амплитуды шума в 0,5 амплитуды сигнала.

Так как белый шум с Гауссовским распределением более точно отражает реальные характеристики шума, можно смело говорить о практически двукратном увеличении точности прибора при использовании сигнала, фазоманипулированного кодом Баркера. Что же касается дальности работы, тут тоже ожидается существенный прирост.

Таблицы для белого шума с Гауссовским распределением даны в приложении 2.

4. Лабораторный стенд.

4.1. Описание лабораторного стенда.

После проведения математического моделирования, для подтверждения расчётных результатов был собран лабораторный стенд, состоящий из микроконтроллера PIC16F876 для генерации импульсов, платы ввода/вывода и виртуального прибора для обработки результатов, принятых датчиком.

Формирователь излучаемого сигнала построен на микроконтроллере PIC16F876. [14-18] На выходах RB<1:0> PORTB формируются противофазные пачки из 13 прямоугольных импульсов. Длительность пачки 100 мкс, что соответствует пространственной длине звукового импульса около 1,65 см. Частота возбуждения излучателя 40 кГц, период следования пачек 5 мс.

 1 Генерируемые сигналы Выводы излучателя MA40B8S подключены-41

Рисунок 4.1 Генерируемые сигналы

Выводы излучателя MA40B8S подключены непосредственно к выводам RB<1:0>. При этом размах сигнала на излучателе составляет около 9 В при напряжении питания схемы 5 В.

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

Схема приемника построена на ультразвуковом датчике MA40B8R и операционных усилителях AD823.

 2 Схема усилителя Принятый сигнал оцифровывается с помощью DAQ--43

Рисунок 4.2 Схема усилителя

Принятый сигнал оцифровывается с помощью DAQ- платы PCI-MIO-16E-4 компании National Instruments и вводился в ПК. Разрядность АЦП- 12 бит, максимальная частота преобразования 1 МГц.

На рисунке ниже показано соотношение длительностей излучаемого и принятого сигналов (расстояние от отражающей поверхности до приемо-передатчика составляет 10 см).

 3 Пример работы стенда Обработка сигнала производилась в LabVIEW в-44

Рисунок 4.3 Пример работы стенда

Обработка сигнала производилась в LabVIEW в программной реализации квадратурного коррелятора. Синусный и косинусный опорные сигналы представляют собой цифровые отсчеты радиоимпульсов из четырех периодов колебаний. Каждый опорный сигнал состоит из 100 отсчетов.

 4 Квадратурный коррелятор Для лабораторного моделирования было-45

Рисунок 4.4 Квадратурный коррелятор

Для лабораторного моделирования было написано две микропрограммы для микроконтроллера. Одна из них отвечает за генерацию синусоиды, другая отвечает за генерацию сигнала, фазоманипулированного кодом Баркера (Приложение 3).

4.2. Результаты измерений, выполненных с помощью лабораторного стенда.

Через лабораторную модель были переданы оба вида сигналов, что позволило оценить существования преимущества сигнала, фазоманипулированного кодом Баркера, в реальных условиях работы.

В начале давайте посмотрим как ведёт себя автокорреляционная функция сигнала при измерении расстояния в 10 см.

Рис. 4.5. Автокорреляционные функции сигналов на расстоянии в 10 см

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

Теперь давайте увеличим расстояние до одного метра.

Рис. 4.6. Автокорреляционные функции сигналов на расстоянии в 1 м

На расстоянии 1 метр обе функции по-прежнему показывают хороший результат.

Теперь посмотрим на результаты измерения на расстоянии в пять метров.

Рис. 4.7. Автокорреляционные функции сигналов на расстоянии в 5 м

Автокорреляционная функция синуса имеет уже несколько максимумов, что обуславливается тем, что мы подошли практически к переделу дальности.

Теперь давайте посмотрим на автокорреляционные функции при дальности в 10 метров.

Рис. 4.8. Автокорреляционные функции сигналов на расстоянии в 10 м

Как видно из автокорреляционных функций, на расстоянии в 10 метров синус перестал детектироваться. Что же касается сигнала, фазоманипулированного кодом Баркера, он по-прежнему детектируется.

4.3. Выводы

Лабораторные испытания показали, что максимальная дальность ультразвукового дальномера, использующего фазоманипулированный сигнал Баркера, превышает максимальную дальность дальномера, использующего синусоиду, при прочих равных условиях. Было экспериментально установлено что лабораторный стенд, использующий в качестве зондирующего сигнала синусоиду, имеет максимальное расстояние работы около восьми метров. Что касается дальномера, использующего сигнал, фазоманипулированный по коду Баркера, его максимальная дальность составляет примерно 12 метров.


5. Макет прибора

5.1. Комплектующие.

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

Его спецификации:

  • Вид монтажа: SMD/SMT
  • Встроенный в чип АЦП: да
  • Высота: 1.4 мм
  • Диапазон напряжения питания: 1.65 В, 3 В... 1.95 В, 3.6 В
  • Длина: 7 мм
  • Интерфейс: I2C, I2S, SPI, SSC, TWI, UART, USB
  • Количество линий ввода/вывода: 21
  • Количество таймеров: 3
  • Рабочий диапазон температур: - 40 C... + 85 C
  • Размер ОЗУ: 8 Кб
  • Размер памяти программ: 32 Кб
  • Тактовая частота максимальная: 55 МГц
  • Тип корпуса: LQFP
  • Тип памяти программ: Flash
  • Шина данных: 32 бит
  • Ширина: 7 мм
  • Ядро: ARM7TDMI
  • RoHS: да

Для усиления сигнала перед АЦП можно использовать ту же схему, которая использовалась в лабораторном стенде, но у микроконтроллера нет ЦАП, а использование ножек микроконтроллера и резисторов для генерации сигнала, как это было сделано в лабораторном стенде, в данном случае не представляется возможным.

Для генерации сигнала был взят ЦАП AD7249. Он позволяет генерировать сигнал до 10 В с максимальной частотой 125 кГц. Схема его подключения представлена на рисунке:

5.2. Разработка программного обеспечения

Программное обеспечение состоит их трёх основных групп [1-4].

Первая группа, это отправка сигнала. После инициализации программы и настройки всех регистров, программа ожидает нажатия кнопки. Это сделано для того что бы результат измерения не сбивался выполнением следующего результата измерения.

Когда прерывание состоялось, включается ШИМ и запускается таймер 1, отсчитывающий необходимое для передачи одного уровня время (восьмая часть периода). После срабатывания таймера на ЦАП, через ножку А0, передаются значения, а ШИМ выступает в качестве тактового генератора. Так происходит до тех пор, пока все точки сигнала, фазоманипулированного кодом Баркера, не будут переданы. После отправки последней точки наступает время второй группы. Система переключается на приём сигнала и слушает порт АЦП. В это время запускается таймер 2. С порта АЦП, во время прерывания таймера 1, считывается значение, услышанное дальномером в этот момент времени. Это значение записывается в массив принятых значений (103 позиция), состоящий из 104 точек. После этого происходит вычисление автокорреляционной функции в данный момент времени. Если это значение оказывается большим, чем значение, занесённое в переменную 1, то значение переменной 1 перезаписывается на только что полученное а в переменную 2 записывается количество отсчётов таймера 1. После математической обработки массив принятых значений сдвигается влево и программа снова ожидает прерывания таймера 1. Это продолжается до тех пор, пока не истечёт время таймера 2. После того как время таймера 2 истекло, наступает время третьей группы. Значение, занесённое в переменную 2, умножается на значение таймера 1 перемножается со скоростью звука. Полученное число делится пополам, округляется до сотых и выводится на экран как ответ прибора.

5.3. Результаты измерения дальности с использованием макета

После того как прибор был собран мы произвели тестовые замеры расстояния до объекта. По результатам измерений была составлена таблица работы прибора.

Таблица 5.1

Дальность (метры) 0,2 1 5 10 15
Измеренное расстояние 0,20 1,00 5,00 10,01 6,24

Макет показал себя хорошо на заданном диапазоне измерений. На границе диапазона приём сигнала неустойчивый, и не каждый зондирующий сигнал поддаётся расшифровке. За границей диапазона прибор выдаёт случайные числа, принимая за правильный ответ пики шума. Мы намеренно не ставили порог срабатывания прибора для предотвращения уменьшения дистанции измерения. При приближении к границе функционирования рекомендуется проводить более одного измерения дальности для оценки точности измерений.

ЗАКЛЮЧЕНИЕ

В ходе выполнения работы были получены следующие результаты:

  1. Выявлен оптимальный вид модуляции зондирующего сигнала;
  2. Исследованы методы обработки сигналов измерительной информации, обеспечивающих помехоустойчивость ультразвукового дальномера;
  3. Разработана структурная схема ультразвукового дальномера;
  4. Разработан алгоритм работы ультразвукового дальномера;
  5. Разработано программное обеспечение микропроцессорного ультразвукового дальномера;
  6. Разработан макет конструкции ультразвукового дальномера.

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

  1. Варакин Л. Е. Системы связи с шумоподобными сигналами. – М.: Радио и связь, 1985 – 384 с.
  2. Ширман Я. Д., Манжос В. Н. Теория и техника обработки радиолокационной информации на фоне помех. –М.: Радио и связь, 1981 – 416 с.
  3. Сикарев А. А., Лебедев О. Н. Микроэлектронные устройства формирования и обработки сложных сигналов. – М.: Радио и связь, 1983 – 216 с.
  4. Ксендзук А.В. Использование шумоподобных сигналов в радиолокационных системах дистанционного зондирования // Электромагнитные волны и электронные системы.- Москва, Россия.- Т. 9. № 9-10, 2004.- с. 62-72.
  5. National Instruments. Системы сбора данных. М.: Т. 9. № 9-10, 2003. – 383 с.
  6. Блейхут Р. Быстрые алгоритмы цифровой обработки сигналов: Пер. с англ. - М.: Мир, 1989. - 448 с.
  7. Гольденберг Л.М., Матюшкин Б.Д., Поляк М.Н. Цифровая обработка сигналов: 2-е изд. перераб. и доп. - М.: Радио и связь, 1990. - 256 с.
  8. Оппенгейм А., Шафер Р. Цифровая обработка сигналов: Пер. с англ. - М.: Связь, 1979. - 416 с.
  9. Оппенгейм А., Шафер Р. Цифровая обработка сигналов: Пер. с англ. - М.: Техносфера, 2006. - 856 с.
  10. Прокис Дж. Цифровая связь: Пер. с англ. - М.: Радио и связь, 2000. - 800 с.
  11. Рабинер Л., Гоулд Б. Теория и применение цифровой обработки сигналов: Пер. с англ. - М.: Мир, 1978. - 848 с.
  12. Сергиенко А.Б. Цифровая обработка сигналов: - СПб.: Питер, 2002. - 608 с.
  13. Скляр Б. Цифровая связь. Теоретические основы и практическое применение: Пер. с англ. - М.: Издательский дом "Вильямс", 2003. - 1104 с.
  14. Майк Предко - Устройства управления роботами. Схемотехника и программирование.
  15. ООО «Микро-Чип» PIC 16F87X Однокристальные 8-разрядные FLASH CMOS микроконтроллеры компании Microchip Technology Incorporated. Москва 2002
  16. Microchip Technology Incorporated “PICDEM 2 PLUS Demonstration Board User's Guide”  2007
  17. Microchip Technology Incorporated “PICDEM 2 Plus User Guide (old version and schematics)”  2004
  18. ООО «Микро-Чип» MPLAB IDE интегрированная среда разработки для микроконтроллеров серии PICmicro компании Microchip Technology Incorporated. Москва 2001

Приложение 1

Лицевая панель модели дальномера

Блок схема модели.

Приложение 2

Приложение 3

Программа формирования сигнала,

фазоманипулированного кодом Баркера:

;**********************************************************************

;

list p=16f876 ; list directive to define processor

#include <p16f876.inc> ; processor specific variable definitions

__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_ENABLE_OFF & _LVP_OFF & _DEBUG_OFF & _CPD_OFF

;**********************************************************************

COUNTER1 EQU 0x20

COUNTER2 EQU 0x21

COUNTER3 EQU 0x22

COUNTER4 EQU 0x23

COUNTER5 EQU 0x24

COUNTER6 EQU 0x25

POINTER1 EQU 0x04

POINTER2 EQU 0x06

POINTER3 EQU 0x08

POINTER4 EQU 0x09

POINTER5 EQU 0x0a

POINTER6 EQU 0x0b

ORG 0x000 ; processor reset vector

clrf PCLATH ; ensure page bits are cleared

goto main ; go to beginning of program

main

clrf PORTA ;Все выводы PORTA переводим в '0'

bsf STATUS,0x05 ;Выбираем Bank 1 RAM (адреса 80h - FFh)

;

movwf TRISB ;Все линии PORTB переключаем на выход

movlw b'00000111'

movwf ADCON1

movlw b'00000000'

movwf OPTION_REG

bcf STATUS,5 ;Возвращаемся в Bank 0 RAM (адреса RAM 00h - 7Fh)

;********** Конец Инициализации процессора *********

ret movlw 0x03

movwf COUNTER2

movlw 0x04

movwf COUNTER3

movlw 0x02

movwf PORTB

timer movlw 0x0A

movwf COUNTER1

pauza decfsz COUNTER1,F

goto pauza

decfsz COUNTER2,F

goto inc

decfsz COUNTER3,F

goto dec

movlw 0x01

movwf COUNTER2

goto ret

inc incf PORTB,0x01

goto timer

dec decf PORTB,0x01

movlw 0x01

movwf COUNTER2

goto timer

END

Программа формирования синусоиды

;**********************************************************************

;

list p=16f876 ; list directive to define processor

#include <p16f876.inc> ; processor specific variable definitions

__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_ENABLE_OFF & _LVP_OFF & _DEBUG_OFF & _CPD_OFF

;**********************************************************************

COUNTER1 EQU 0x20

COUNTER2 EQU 0x21

COUNTER3 EQU 0x22

COUNTER4 EQU 0x23

COUNTER5 EQU 0x24

COUNTER6 EQU 0x25

POINTER1 EQU 0x04

POINTER2 EQU 0x06

POINTER3 EQU 0x08

POINTER4 EQU 0x09

POINTER5 EQU 0x0a

POINTER6 EQU 0x0b

ORG 0x000 ; processor reset vector

clrf PCLATH ; ensure page bits are cleared

goto main ; go to beginning of program

main

clrf PORTA ;Все выводы PORTA переводим в '0'

bsf STATUS,0x05 ;Выбираем Bank 1 RAM (адреса 80h - FFh)

;

movwf TRISB ;Все линии PORTB переключаем на выход

movlw b'00000111'

movwf ADCON1

movlw b'00000000'

movwf OPTION_REG

bcf STATUS,5 ;Возвращаемся в Bank 0 RAM (адреса RAM 00h - 7Fh)

;********** Конец Инициализации процессора *********

ret movlw 0x03

movwf COUNTER2

movlw 0x0C

timer movlw 0x0A

movlw 0x01

movwf COUNTER2

goto ret

inc incf PORTB,0x01

goto timer

dec decf PORTB,0x01

movlw 0x01

movwf COUNTER2

goto timer

END

Приложение 4

Принципиальная схема макета дальномера

Приложение 5

Алгоритм работы дальномера



 





<


 
2013 www.disus.ru - «Бесплатная научная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.