Цифровой измеритель давления на базе микросхемы PSoC
Белорусский национальный технический университет
Факультет приборостроительный
Кафедра «Информационно-измерительная техника и технологии»
КУРСОВОЙ ПРОЕКТ
по дисциплине «Программируемые цифровые устройства»
Тема: «Цифровой измеритель давления на базе микросхемы PSoC»
Исполнитель: студентка ПСФ 4 курса, группы 113815
Еровченко Наталья Сергеевна
Руководитель: доцент, кандидат физико-математических наук, доцент
(ученое звание, ученая степень, должность)
Кривицкий Петр Геннадьевич
Минск 2009
Белорусский национальный технический университет
Кафедра «Информационно-измерительная техника и технологии»
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовому проекту
по дисциплине «Программируемые цифровые устройства»
Тема: «Цифровой измеритель давления на базе микросхемы PSoC»
Исполнитель:__________________
(подпись)
студентка 4 курса, 113815 группы
Руководитель:_________________
Минск 2009
РЕФЕРАТ
Курсовой проект содержит 43 с., 17 рис., 5 табл., 14 источн., 6 прил.
МИКРОСХЕМА, МИКРОКОНТРОЛЛЕР, ДАТЧИК, ИЗМЕРИТЕЛЬ ДАВЛЕНИЯ, СВЕТОДИОДНЫЙ ИНДИКАТОР, ПОСЛЕДОВАТЕЛЬНЫЙ ИНТЕРФЕЙС, СЕТЕВОЙ АДАПТЕР.
Цель работы - разработка цифрового измерителя давления на базе микросхемы PSoC используя датчик давления MPXAZ4100A с отображением результата на светодиодном индикаторе и подсоединением к ПК через USB-порт.
Объектом исследования представленной курсовой работы является цифровой измеритель давления.
При написании данного курсового проекта были обозначены следующие основные задачи:
- изучение исходных данных к проекту;
- выбор элементной базы;
- описание электронной схемы и её функционирование;
- описание алгоритма работы программы.
Область возможного практического применения: индикаторы уровня, индикаторы утечки, спортивное и медицинское оборудование, барометры, насосы, альтиметры и т.д.
СОДЕРЖАНИЕ
Введение |
5 | ||
1 |
Обзор литературы |
6 | |
1.1 |
Полупроводниковые датчики давления компании Моторола |
6 | |
1.2 |
Датчики давления SCP1000 |
12 | |
2 |
Выбор элементной базы. Обоснование выбора |
15 | |
2.1 |
Микросхема PSoC |
15 | |
2.2 |
Датчик MPXAZ4100A |
19 | |
2.3 |
7-сегментный светодиодный |
22 | |
2.4 |
Последовательный интерфейс USB |
24 | |
2.5 |
Сетевой адаптер AC-DC |
28 | |
3 |
Схемотехническая часть (описание электронной схемы и ее функционирования) |
29 | |
4 |
Программная часть (описание разработанных алгоритмов и программ) |
30 | |
4.1 |
Описание алгоритма основной программы |
30 | |
4.2 |
Описание алгоритма опроса датчика давления |
30 | |
Заключение |
31 | ||
Список использованных источников |
32 | ||
Приложение 1. Техническое задание |
33 | ||
Приложение 2. Текст программы |
38 | ||
Приложение 3. Перечень элементов |
40 | ||
Приложение 4. Структурная схема программы |
41 | ||
Приложение 5. Функциональная электрическая схема |
42 | ||
Приложение 6. Принципиальная электрическая схема |
43 | ||
ВВЕДЕНИЕ
В настоящее время одним из наиболее динамично развивающихся направлений в области элементной базы измерительных систем является разработка полупроводниковых датчиков. Совершенствование полупроводниковых технологий открывает новые возможности для миниатюризации компонентов и реализации интегрированных решений для широкой номенклатуры изделий. Это приводит с одной стороны к удешевлению датчиков, а с другой - делает их более удобными и простыми в использовании.
Микросхемы PSoC фирмы Cypress представляют собой 8-битный микроконтроллер, содержащий микропроцессорное ядро и массив цифровых и аналоговых блоков, позволяющий реализовывать необходимые пользователю периферийные функции, как вполне стандартные, так и такие необычные для микроконтроллеров, так, например, аналоговые фильтры и инструментальные усилители.
Программируемая система на кристалле (PSoC) позволят реконфигурировать “на лету” состав и функции как аналоговой, так и цифровой периферии. Другими словами, PSоC способен, перебирая различные архитектуры аналоговой матрицы и цифровой периферии, путем записи управляющего слова в специальные регистры, превращаться в тысячи различных устройств, насколько хватит воображения разработчика.
Целью курсового проекта является разработка цифрового измерителя давления на базе микросхемы PSoC с исходными данными:
- микроконтроллер типа PSoC;
- датчик MPXAZ4100A;
- последовательный интерфейс USB;
- 4-символьный 7-сегментный светодиодный индикатор с общим катодом;
- питание: сетевой адаптер АC-DC с Uвых=9-15 В.
1 ОБЗОР ЛИТЕРАТУРЫ
Датчики давления - измерительные преобразователи давления жидкости или газа в электрический, пневматический и др. вида выходной сигнал; служит также для измерения разряжений и перепада давлений.
Наиболее массовыми электрическими элементами, используемыми для измерения величины силы давления, являются резистивные и полупроводниковые тензометрические датчики, а также пьезоэлектрические преобразователи. Тензометрический датчик измеряет силу косвенным методом - путем измерения деформации калиброванного элемента, вызванной действием данной силы. Для измерения давления, можно конвертировать его соответствующим преобразователем в силу, а затем измерить ее тензометрическим методом.
1.1 Полупроводниковые датчики
В наиболее широком ассортименте компания Моторола выпускает датчики давления. Полупроводниковая технология позволила создать упругий элемент датчика давления в виде кремниевой диафрагмы, непосредственно на которую методом ионной имплантации внедряют тензорезистивную структуру. Сцепление тензорезистора и кремниевой мембраны на молекулярном уровне позволяет исключить погрешности, связанные с передачей деформации от упругого элемента к тензорезистору.
Изготавливаемый таким способом монолитный кремниевый измеритель давления, запатентованный фирмой Моторола, получил название X-ducer из-за крестообразного расположения четырех выводов (рисунок 1). Одна пара выводов элемента давления служит для подачи питающего напряжения, а на второй паре датчик развивает разность потенциалов, линейно зависящую от приложенного напряжения и механического давления.
Рисунок 1 – Чувствительный элемент X-ducer
Кристалл датчика, объединяясь с подложкой, может образовывать абсолютный или дифференциальный чувствительный элемент (рисунок 2).
Рисунок 2 – Дифференциальный (а) и абсолютный (б) чувствительные элементы
Внутри абсолютного элемента при помощи подложки образуется вакуумный промежуток, относительно которого и выполняются измерения. У дифференциального чувствительного элемента пространство открыто для поступления внешней среды с обеих сторон диафрагмы, но всегда оговаривается, что большее давление должно подаваться со стороны P1, а меньшее - со стороны P2.
Основным классификационным признаком для деления датчиков фирмы Моторола на группы является степень интеграции. Различают следующие типы датчиков:
- некомпенсированные датчики (Uncompensated);
- термокомпенсированные и калиброванные датчики (Compensated);
- интегрированные датчики (Integrated);
- медицинские датчики (Medical).
Простейшие некомпенсированные датчики содержат на кристалле собственно один элемент X-ducer.
Более сложные термокомпенсированные и калиброванные датчики включают также термисторы для коррекции температурной погрешности нуля и чувствительности датчика, а также дополнительные подгоночные резисторы, сопротивления которых в процессе производства подстраиваются лазером для минимизации разброса нулевого смещения и чувствительности датчиков от образца к образцу.
Наконец, в схему датчиков, которые называются интегрированными или датчиками со стандартным выходным сигналом, введен дополнительный усилитель, который приводит выходное напряжение датчика к стандартному входному диапазону интегральных АЦП.
Медицинские датчики по степени интеграции можно было бы отнести к термокомпенсированным датчикам, но они выделены в отдельную группу, поскольку их тип корпуса, рабочий и температурный диапазоны соответствуют специальным медицинским приложениям.
По виду измеряемого давления различают
- абсолютные (для измерения абсолютного давления);
- дифференциальные (для измерения разности давлений);
- относительные (для измерения избыточного над атмосферным давления);
- вакуумные датчики (для измерения степени разрежения).
Датчики давления разделяют также по типам корпусов, в которые упаковываются чувствительные элементы. На рисунке 3 показана внутренняя конструкция круглого базового корпуса. Видно, что чувствительный элемент приклеен к внутренней поверхности корпуса и защищен специальным гелем, который равномерно передает давление на мембрану и в тоже время изолирует выводы чувствительного элемента от внешней среды.
Рисунок 3 – Конструкция базового корпуса
Кроме базового корпуса широко распространены и другие типы корпусов, предназначенные как для монтажа на поверхность, так и для пайки в отверстие (рисунок 4). Имеются корпуса с шагом выводов 2,54 мм (SOP и DIP) и с шагом 1,27мм (MPAK и SSOP). Корпуса медицинских датчиков выполнены из специальных нетоксичных, неаллергичных материалов, пригодных для дезинфекции и прошедших необходимые медицинские тесты. Кроме четырех или трех (у датчиков со стандартным выходным сигналом) рабочих выводов корпуса датчиков имеют дополнительные технологические выводы, которые используются во время лазерной подгонки внутренних резисторов.
Рисунок 4 – Корпуса датчиков давления: (а) базовые корпуса, (б) SOP, (в) DIP, (г) MPAK, (д) SSOP, (е) Medical Chip Pak
Рассмотренные типы корпусов не имеют специальных приспособлений для крепления датчика и для подвода среды, в которой измеряется давление. Для этих целей необходим внешний дополнительный порт. Моторола предлагает исполнения датчиков в корпусе без порта или с портом. На рисунке 5 изображены корпуса датчиков с портами и указаны их обозначения, использующиеся при маркировке.
Рисунок 5 – Порты датчиков давления Моторола: а) одиночный порт для базового корпуса (суффиксы AP, GP); б) дифференциальный порт для базового корпуса (суффикс DP); в) порт "печная труба" для базового корпуса (суффиксы AS, GS); г) аксиальный порт для базового корпуса (суффиксы ASX, GSX); д) порт для корпуса MPak (суффикс AS/GS); e) порт для корпуса SSOP (суффикс AC6); ж) аксиальный порт для корпуса DIP (суффикс GС7U); з) аксиальный порт для корпуса SOP (суффикс AC6/GC6); и) одиночный порт для корпуса SOP (суффиксы AP/GP); к) вакууумный порт для корпуса SOP (суффикс GVP); л) дифференциальный порт для корпуса SOP (суффикс DP).
Датчик с дифференциальным чувствительным элементом может быть дифференциальным, относительным или вакуумным в зависимости от типа используемого порта. Дифференциальный датчик (суффикс DP) имеет два ввода для подачи среды с обеих сторон мембраны. Относительный датчик (суффиксы GP, GS, GSX) имеет один ввод для повода среды со стороны большего давления Р1 и отверстие в корпусе, через которое окружающий воздух свободно поступает с другой стороны мембраны. Вакуумный датчик (суффикс VP), наоборот, имеет ввод со стороны меньшего давления P2.
Пределы измерений абсолютных датчиков могут лежать в диапазоне от 100кПа до 700кПа. Дифференциальные датчики могут также иметь меньшие (до 4кПА) и большие (до 1000кПа) пределы измерения.
Датчики давления Моторола имеют линейную характеристику преобразования со смещением нуля. В технической документации приводятся диапазоны возможных значений напряжения смещения, соответствующего нулевому давлению, и размаха выходного напряжения, соответствующего изменению входного сигнала во всем диапазоне измерений. Для исключения ошибок, связанных с разбросом номинальных значений начального смещения и чувствительности, в измерительном устройстве должны быть предусмотрены средства калибровки датчиков.
Составляющими погрешности датчиков давления Моторола являются нелинейность, гистерезис при изменении температуры и гистерезис при изменении давления, температурный дрейф начального смещения и чувствительности. Наиболее точные датчики cерии MPX4xxx и MPX6xxx имеют суммарную приведенную погрешность 1,5%.
Инерционность у всех типов датчиков характеризуется временем отклика на скачок входного сигнала 1 мс и временем, необходимым датчику, чтобы войти в рабочий режим после включения питания - 20мс.
Большинство датчиков давления Моторола предназначены для работы в сухом воздухе. Однако, сейчас Моторола также предлагает датчики серии MPXAZ, обладающие повышенной защитой от воздействия среды благодаря введению дополнительного барьера. Эти датчики были разработаны для использования в условиях повышенного загрязнения воздуха на борту автомобиля.
В настоящее время прослеживается тенденция дальнейшей миниатюризации датчиков давления. Так, датчики в появившихся недавно корпусах MiniPack и SSOP c шагом выводов 1,27мм, являются более экономичными и предлагаются по более низким ценам. Появляются новые типы портов для этих миниатюрных корпусов. Развитие также идет по пути увеличения точности датчиков. Так, датчики нового подсемейства MPX6xxx имеют по сравнению со своими предшественниками лучшую термокомпенсацию в области верхней границы температурного диапазона. В ближайшее время ожидается появление датчиков семейства MPXY, которые объединяют в себе функции измерения давления и температуры. Они ориентированы на применение в системах контроля давления в шинах.
Трудно перечислить все возможные приложения датчиков давления Motorola. Они используются в автомобильной и авиационой технике, например, для построения индикаторов уровня топлива, в альтиметрах, измерителях давления масла, измерителях давления воздуха в шинах; в медицине для построения тонометров и спирометров; на производстве на основе датчиков давления строятся, например, уровнемеры, барометры, устройства контроля качества воздушных фильтров; датчики давления применяются также в бытовых пылесосах, стиральных машинах и даже для построения электронных ударных инструментов [1].
1.2 Датчики давления SCP1000
Датчик давления SCP1000 от компании VTI Technologies – датчик абсолютного давления высочайшей точности, имеющий разрешение 1.5 Па и минимальный ток потребления 10 мкА. Миниатюрные габаритные размеры позволяют использовать его в малых портативных устройствах (рисунок 6).
Рисунок 6 - Датчики давления SCP1000
Основные характеристики датчика давления SCP1000:
- диапазон измерений 30 – 120 кПа;
- однополярный источник питания +2.4…3.3 В;
- 4 режима измерений и режим пониженного энергопотребления;
- полностью калиброванный компонент с температурной компенсацией;
- стандартный цифровой выходной интерфейс: SPI или I2C;
- портативные габаритные размеры: диаметр 6.1 мм, высота 1.7 мм;
- максимальное допустимое давление 1 МПа;
- безсвинцовое исполнение, соответствие RoHS.
Датчик поддерживает 4 режима измерений, а также имеет режим пониженного энергопотребления stand-by
- 17-битное разрешение (8 см атмосферного столба), скорость считывания 2 Гц;
- 7-битное разрешение (8 см атмосферного столба), скорость считывания 2 Гц, малое энергопотребление (10 мкА/1 Гц);
- 15-битное разрешение (20 см атмосферного столба), скорость считывания 9 Гц;
- 15-битное разрешение (20 см атмосферного столба), скорость считывания 9 Гц, сверхнизкое энергопотребление.
Например, в режиме низкого энергопотребления SCP1000 имеет полное разрешение 3 Па и потребляет только 3.5 мкА. Во всех режимах разрешение выходной информации для давления составляет 19 бит, для температуры – 14 бит. Если измерения давления проводятся на разных высотах относительно уровня моря, то на каждый 80 м необходимо сделать поправку –1%.
Датчики SCP1000 – это оптимальное решение для тех приборов с автономным батарейным питанием, где необходимо получить точное атмосферное давление с поправкой на высоту относительно уровня моря. Такие датчики впервые позволяют рассчитать абсолютную высоту, угол уклона и набор высоты, что может быть использовано в спортивных анализаторах (расчет потраченной энергии, эффективность тренировки) или в изучении профиля местности. Кроме того, 4 встроенных режима измерений дают возможность выбрать особое сочетание точности и тока потребления для эффективной оптимизации работы датчика в конкретных условиях эксплуатации.
Благодаря высокой точности, малой мощности потребления и удобства интеграции, датчики давления SCP1000 становятся идеальным решением для спортивного и фитнес инструментария, домашних погодных станций и профессионального медицинского оборудования.
Выпускаются две модели с разными выходными интерфейсами:
- SCP1000-D01 - 30 – 120 кПа, SPI интерфейс;
- SCP1000-D11 - 30 – 120 кПа, I2C интерфейс [2].
2 Выбор элементной базы. Обоснование выбора
2.1 Микросхема PSoC
PSoC (программируемая система на кристалле) - это микроконтроллеры, в которых помимо процессорного ядра, есть матрица из аналоговых и цифровых блоков, которые являются функционально законченными узлами и могут соединяться между собой. Наличие этих блоков позволяет существенно уменьшить количество внешних электронных компонентов, что особенно сказывается на себестоимости разрабатываемого устройства. Все функции блоков, внутренние соединения между ними, конфигурация микроконтроллера, и даже контакты ввода вывода могут перепрограммироваться пользователем. Также есть возможность непосредственно во время работы чипа PSoC можно динамически менять внутренние ресурсы, получая при этом функционально новую систему.
PSoC микроконтроллеры построены на базе восьмиразрядного ядра М8С гарвардской архитектуры (в которой память программ и память данных раздельные) и имеют тактовую частоту 24МГц. Встроенное микропроцессорное ядро M8C может тактироваться от внутреннего генератора частоты в диапазоне от 93,7КГц до 24МГц. Встроенные RC генераторы на 24 МГц и 32КГц позволяют приложениям некритичным к высокой стабильности частоты обойтись без внешнего кварца. Объем ОЗУ, в зависимости от серии, составляет 256 – 2048 байт и более. Объем ПЗУ также зависит от серии и составляет 2 – 32 Кбайт и более. ПЗУ реализовано на основе перепрограммируемой флэш-памяти, которая допускает до 100000 циклов записи/стирания. Организация флэш-памяти в виде массива из секторов размером 64 (или 128) байт дает дополнительную возможность для эмуляции EEPROM внутри PSoC.
Все микроконтроллеры выпускаются в промышленном температурном диапазоне (минус40С +85С) и в DIP и SMD корпусах (от 8 до 100 и более ножек). Доступны также микросхемы в расширенном температурном диапазоне (минус 40С +105С) [3].
В курсовом проекте была выбрана микросхема типа CY8C29466 со следующими характеристиками:
- Процессор с гарвардской архитектурой, который обладает следующими качествами:
- быстродействие процессора M8C до 24 МГц;
- умножающее устройство 8x8, 32-разрядный накопитель;
- малая потребляемая мощность при высоком быстродействии;
- рабочее напряжение 3,0 В…5,25 В;
- рабочее напряжение от 1,0 В при использовании встроенного импульсного преобразователя;
- промышленный температурный диапазон: -40°C…+85°C.
- Периферийные устройства (блоки PSoC) включающие:
- 12 аналоговых блоков PSoC с полным размахом напряжения, которые содержат:
- АЦП с разрешением до 14 разрядов;
- ЦАП с разрешением до 9 разрядов;
- усилители с программируемым усилителем;
- программируемые фильтры и компараторы.
- 16 цифровых блоков PSoC, которые содержат:
- 8…32-разрядные таймеры, счетчики и ШИМ;
- модули CRC и PRS;
- до 4 полнодуплексных УАПП;
- несколько ведущих или подчиненных SPI;
- схему подключения ко всем линиям ввода-вывода.
- комплексные периферийные устройства.
- Прецизионная программируемая синхронизация, в которую входят:
- внутренний генератор ±2,5% 24/48 МГц;
- 24/48 МГц с опциональным кварцевым резонатором 32,768 кГц;
- опциональный внешний генератор частотой до 24 МГц;
- внутренний генератор для сторожевого таймера и таймера режима сна.
- Гибкая встроенная память со следующими характеристиками:
- 32 кбайт флэш-памяти программ с износостойкостью 50 тыс. записи/стирания;
- 2 кбайт статического ОЗУ для хранения данных;
- внутрисистемное последовательное программирование (ISSP);
- частичное обновление флэш-памяти;
- гибкие режимы защиты;
- эмуляция ЭСППЗУ во флэш-памяти.
- Программируемая конфигурация выводов, которая обладает следующими качествами:
- нагрузочная способность на всех линиях ввода-вывода 25 мА;
- все линии ввода-вывода могут переводиться в одно из следующих состояний: подтягивающий резистор к плюсу или к минусу, высокоимпедансное, двухтактный выход или открытый сток;
- до 12 аналоговых входов на всех линиях ввода-вывода;
- 4 аналоговых выхода с нагрузочной способностью 40 мА на любых линиях ввода-вывода;
- конфигурируемое прерывание на всех линиях ввода-вывода.
- Дополнительные системные ресурсы включающие:
- ведущий, подчиненный и многомастерный интерфейс I2C с частотой синхронизации до 400 кГц;
- сторожевой таймер и таймер режима сна;
- программируемый детектор снижения напряжения;
- встроенная схема супервизора;
- встроенный прецизионный источник опорного напряжения (ИОН).
- Полный набор средств для проектирования, обладающий следующими характеристиками:
- свободное программное обеспечение для проектирования;
- полнофункциональный внутрисхемный эмулятор и программатор;
- полноскоростная эмуляция;
- сложная структура точек прерывания;
- 128 кбайт трассировочной памяти;
- комплексные события;
- Си-компиляторы, Ассемблер и Линкер.
Расположение выводов CY8C29466 в 28-выводном корпусе представлено на рисунке 7:
Рисунок 7 - Расположение выводов CY8C29466
Описание выводов CY8C29466 приведено в таблице 1 [4].
Таблица 1 - Описание выводов CY8C29466
2.2 Датчик MPXAZ4100A
Фирма Motorola является одним из лидеров в области производства датчиков давления. Это достигается использованием запатентованного элемента X-duser в качестве основы кристалла датчика, тогда как в традиционных полупроводниковых датчиках давления используются четыре чувствительных к давлению и температуре резистора.
Применяя при создании датчиков давления сочетание таких современнейших методов производства, как лазерная компьютерная настройка, тонкоплёночная металлизация, микромеханическая и биполярная полупроводниковая технологии, компания Motorola добилась наилучшего сочетания себестоимости производимых датчиков давления и их высокой конкурентоспособности за счёт получения высокоточной линейной характеристики аналогового выходного сигнала, пропорционального прилагаемому давлению.
Датчик MPXAZ4100A сериии Manifold Absolute Pressure (MAP) фирмы Motorola предназначен для измерения абсолютного атмосферного давления. Абсолютные измерения производятся за счет использования подготовки (кондиционирования) сигнала на кристалле, температурной компенсации и калибровки. Температурная компенсация находится в диапазоне от минус 40°C до 125°C, точность ±1,8% в диапазоне температур от 0°C до 85°C при высокой линейности, чувствительности и стабильности смещения. Основные параметры приведены в таблице 2.