Смекни!
smekni.com

Устройство ультразвукового измерения дальности (стр. 2 из 6)


Таблица 2. Характеристики ПКУП МУП-4

Наименование параметра, единица измерения Значение
Частота максимальной передачи, кГц 37…45
Звуковое давление на расстоянии 0,3 м при
Uвх=5В на частоте максимального излучения, дБ
96
Чувствительность на частоте максимального приема, мВ/Па 30
Ширина полосы излучения по уровню 0,5, кГц 0,5
Ширина полосы приема по уровню 0,5, кГц 0,5
Диаграмма направленности, Град
По уровню 0,7 макс. 45
По уровню 0,5 макс. 70
Емкость на частоте 1 кГц, пФ 2500
Входной импеданс на частоте максимального излучения, кОм 0,2
Предельное допустимое значение напряжения сигнала на входе, В 12

Рис. 5. Блок индикации.

Блок индикации представлен на рис. 5. DD1 – дешифратор семи сегментного индикатора. Он преобразует входной двоичный код в символы семи сегментного индикатора. Резистор R20 подтягивает вход 3 разрешения работы дешифратора к напряжению +5В. Резисторы R5-R11 служат для ограничения тока через сегменты индикаторов. Резисторы R1-R4 служат для ограничения тока через базы транзисторов Т1-Т4 и обеспечивают защиту выходов микроконтроллера. Транзисторы Т1-Т3 предназначены для коммутации питания подаваемого на индикаторы. Транзистор Т4 коммутирует включение точки на индикаторах. Светодиодные индикаторы служат для отображения информации. На входе питания индикатор имеет напряжение около 4,5В, получаемое за счет того, что транзисторы Т1-Т3 подключены по схеме эмиттерного повторителя. На переходе база-эмиттер имеет место небольшое, около 0,5В, падение напряжения, т.е. 5-0,5=4,5В (напряжение на входе питания индикатора). Ток через выводы микроконтроллера на должен превышать максимальный разрешенный ток величиной в 20мА, при напряжении в 5В. Тогда по закону Ома имеем: R=U/I или R=5/0,020=250Ом. Для R1-4 был выбран номинал в 300Ом для обеспечения более стабильной работы схемы. Согласно документации на индикаторы они должны иметь входное напряжение не более 2,5В при токе 20мА. Т.к. мы имеем на входе питания индикатора напряжение в 4,5В – следует его уменьшить. Лишние 2В гасятся с помощью резисторов R5-R11. Их номинал: 2В/0,020А=100Ом. В качестве HL1…HL3 выбраны индикаторы цифровые красного цвета свечения КЛЦ202В (арсенид-галлия-алюминия) в пластмассовом корпусе, состоящие из дискретных элементов, изготовленные по эпитаксиально-диффузионной технологий. Индикатор имеет 7 сегментов и децимальную точку, излучающие при подаче прямого тока. Различные комбинации элементов, обеспечиваемые внешней коммутацией, позволяют воспроизвести любую цифру от 0 до 9 и децимальную точку. Высота знака 20 мм. Параметры индикаторов и их принципиальная схема представлены ниже. Биполярные транзисторы типа n-p-n КТ3102 используемые в схеме имеют следующие параметры:

- Uкбои=50В - максимально допустимое импульсное напряжение коллектор-база;

- Uкэои=50В - максимально допустимое импульсное напряжение коллектор-эмиттер;

- Iкmaxи=200мА - максимально допустимый импульсный ток коллектора;

- Pкmaxт=0,25Вт - максимально допустимая постоянная рассеиваемая мощность коллектора с теплоотводом;

- h21э≥200 - статический коэффициент передачи тока биполярного транзистора в схеме с общим эмиттером;

- Iкбо≤0,05мкА - обратный ток коллектора;

- fгр≥150МГц - граничная частота коэффициента передачи тока в схеме с общим эмиттером;

Таблица 3. Основные электрические параметры КЛЦ202В

Наименование параметров, режим измерения,единица измерения Буквенное обозначение Не менее Не более
Средняя сила света элемента отображения при Iпр=20 мА , мкд 0,5 .
Средняя сила света точки при Iпр=20 мА , мкд 0,07 .
Постоянное прямое напряжение для элемента при Iпр=20 мА , В Uпр . 2,5
Постоянное прямое напряжение для точки при Iпр=20 мА , В Uпр . 2,5

Рис. 6. Схема электрическая принципиальная КЛЦ202В.

Рис.7. Блок цифрового управления.

Блок цифрового управления представлен на рис. 7. Блок цифрового управления представляет собой однокристальный микроконтроллер PIC16C84 имеющий подключения согласно технической документации производителя. Между входами питания микроконтроллера 14 и 5 ставится керамический конденсатор С9 обеспечивающий сглаживание пульсаций напряжения вызванных работой схемы. Ко входам OSC1 и OSC2 микроконтроллера подключен керамический резонатор QZ1 после которого установлены конденсаторы С5 и С6 необходимые для обеспечения правильного функционирования, согласно требованию производителя. Вход 1 микроконтроллера подтянут к земле через резистор R12 номиналом 1кОм, что является типовой защитой от помех в том случае, когда кнопка S2 разомкнута. Цепочка из резистора R21 и конденсатора С10 является типичной схемой подключения входа MCLR микроконтроллера (сброс памяти при включении питания) и обеспечивают необходимую задержку по времени для стабильного запуска микроконтроллера. Керамический резонатор QZ1 на 4.0 МГц имеет следующие параметры:

- резонансная частота,кГц: 4000;

- точность настройки (при 25 С) ,%: 0.3;

- температурный коэффициент (в диапазоне -20…+80С) ,%: 0.3;

- максимальное резонансное сопротивление ,Ом: 30;

- встроеный конденсатор,пФ: 30;

- рабочая температура,С: -20…+80.


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

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

Обобщенная блок-схема

Рис. 8. Обобщенная блок-схема.

Более подробно рассмотрим каждый блок приведенной на рис. 8. обобщенной блок схемы.

Список директив, файл, слово CPU

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

;==============================================================

; программа для ультразвукового дальномера

;==============================================================

;список директив

list P=16C84 ;директива определяющая тип процессора

#include <P16C84.INC> ;файл, описывающий специфические переменные, соответствующие процессору

_config b'00000000000001' ;слово конфигурации CPU

;==============================================================

С помощью директивы list указываем ассемблеру тип процессора. Подключаем соответствующий файл описания. Затем следует слово конфигурации CPU, которое при программировании микроконтроллера будет размещено по адресу расположенному за пределами пользовательской памяти программ. Слово конфигурации CPU содержит 14 бит. Биты 13-8 CP – защита программного кода (1=защита отключена, 0=защита установлена). Выбираем 0. Бит 7 DP – защита памяти данных EEPROM (1=защита отключена, 0=защита установлена). Выбираем 0. Биты 6-4 CP – защита программного кода (1=защита отключена, 0=защита установлена). Выбираем 0. Бит 3 PWRTE – разрешение задержки при включении питания (1=задержка отключена, 0=задержка установлена). Выбираем 0. Бит 2 WDTE – разрешение включения сторожевого таймера (1=сторожевой таймер включен, 0=сторожевой таймер отключен). Выбираем 0. Биты 1-0 FOSC1-FOSC0 – выбор режима тактового генератора (11=RC-генератор, 10=HS-резонатор, 01=XT-резонатор, 00=LP-резонатор). Выбираем 01 т.к. используем стандартный керамический резонатор 4МГц.

Описание переменных

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

;==============================================================

;описание используемых переменных ;(назначение адресов ячеек для хранения переменных)

NUMIMP equ 0x0C ;рабочая переменная для подсчета числа импульсов

TIMER1 equ 0x0D ;рабочая переменная для подсчета времени 1

TIMER2 equ 0x0E ;рабочая переменная для подсчета времени 2

LAPSE equ 0x0F ;рабочая переменная для подсчета погрешности перевода времени

DIGIT1 equ 0x10 ;рабочая переменная индикатора дециметров

DIGIT2 equ 0x11 ;рабочая переменная индикатора метров

DIGIT3 equ 0x12 ;рабочая переменная индикатора декаметров

;==============================================================

В этом блоке описывается в каких ячейках ОЗУ (регистрах общего применения) будут хранится значения наших переменных. Назначение переменных понятно из комментариев приведенной выше части листинга программы.


Исполняемая программа

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

;==============================================================

;исполняемая программа

org 0х000 ;вектор сброса процессора, начальный адрес

clrf PORTA ;очистили выходные защелки порта А

clrf PORTB ;и порта В

clrf TMR0 ;очистка таймера TMR0

bsf STATUS, RP0 ;включили банк 1

movlw b’00011110’ ;настроили на вывод линию RA0,

movwf PORTA ;остальные линии порта A на ввод

movlw b’00000000’ ;настроили на вывод все линии порта B

movwf PORTB ;RB0…RB7

bcf OPTION_REG, 7 ;включили подтягивающие резисторы

bcf OPTION_REG, 5 ;включили режим таймера для TMR0

bcf STATUS, RP0 ;включили банк 0

;==============================================================

Указываем адрес начала программ, вектор сброса процессора. Обнуляем значения в выходных защелках обеих портов. Обнуляем значение таймера. Затем установив в 1 бит RP0 регистра STATUS, мы получаем доступ к регистровому банку 1. Теперь обращаясь к регистрам PORTA и PORTB, мы обращаемся не к выходным защелкам, а к регистрам состояния этих портов, и настраиваем часть линий на ввод, а часть линий на вывод, что соответствует схеме приведенной в приложении. Используя бит 7 RBPU регистра OPTION_REG включаем встроенную нагрузку порта B, для чего устанавливаем бит в 0. С помощью бита 5 T0CS выбираем источник тактирования для таймера TMR0. Для использования внутренней тактовой частоты CLKOUT, устанавливаем в 0 этот бит. В конце установив в 0 бит RP0 регистра STATUS, мы получаем доступ к регистровому банку 0.