Цифровой вольтметр ch-c3200 » Программирование устройств на PIC микроконтроллерах


Логин:
Пароль:
О сайте:

Pic.Rkniga.ru - Сайт как для начинающих, так и для опытных радиолюбителей, разрабатывающих свои устройства на популярных PIC микроконтроллерах.
Здесь можно обмениваться сообщениями на форуме, а также добавлять на сайт статьи и схемы своих устройств.

Меню сайта
Главная Форум по PIC микроконтроллерам Форум Статьи по PIC микроконтроллерам Статьи Справочная информаци по PIC микроконтроллерам Справочник Литература по PIC микроконтроллерам Литература Схемотехника Схемотехника устройств на PIC микроконтроллерах Микроконтроллеры Программаторы Все по программированию PIC микроконтроллеров Программы, Софт Программы Ссылки
Опрос

Какими микроконтроллерами вы чаще всего пользуетесь


PIC10
PIC12
PIC16
PIC18
PIC24
PIC32
Другими


Последние материалы
  • Тестовая плата для отладки программ на микроконтроллере PIC18F4550
  • Кнопка On/OFF на PIC12F629.
  • Часы с синхронизацией от китайского будильника
  • ШИМ регулятор на PIC16F628A.
  • Счетчики прямого и обратного счета на PIC16F628A.
  • Таймер отключения питания для мультиметра и не только.
  • Измеритель напряжения и тока
  • Маршрутный компьютер для электровелосипеда
  • Простой двухканальный термометр на PIC16F690 и датчиках DS18B20
  • Электронная "Незабудка" для забывчивых
  • Популярные материалы
    Случайная книга
    Цифровой вольтметр ch-c3200
    Автор публикации: alex Просмотров: 9753 Добавлен: 6-07-2012, 18:57 Комментарии: 1

         В этой статье рассмотрен пример создания простого вольтметра постоянного тока на печатной плате ch-c0030pcb. Дан краткий принцип построения цифровых вольтметров, описание схемы, прошивки контроллеров, а также программа на ассемблере с комментариями. Большой популярностью пользуются цифровые вольтметры среди автолюбителей для контроля напряжения бортовой сети автомобиля. Поэтому рассматриваемая конструкция, ориентирована на возможность питания от бортовой сети автомобиля (12-24 вольта) и для индикации и контроля питающего напряжения.
         Для реализации этого проекта нам потребуется PIC-контроллер с аналого-цифровым преобразователем (АЦП). По монтажному месту нам подойдут из серии PIC16 — PIC16F819 или PIC16F88.

    Схема вольтметра.

    Цифровой вольтметр ch-c3200

    Позиционное обозначение элементов сохранено согласно монтажной схемы платы. Питание подается на контакты 1,2 соединителя, контакты 3,4 используются для подключения индикатора или исполнительного устройства. Подается контролируемое напряжение на контакт 9. Контролируемое напряжение не должно превышать 100 вольт.Измерение напряжения. Для измерения напряжения будем использовать вход AN0. При помощи перемычек R20 и R18 сконфигурируем входную цепь. В качестве делителя входного напряжения будем использовать резисторы R1 и R2. Соотношение 20/1 позволит нам измерять постоянные напряжения до 100 вольт. В качестве опорного напряжения будем использовать напряжение стабилизатора питания контроллера.

    Цифровой вольтметр ch-c3200

    В выбранных нами контроллерах встроен десяти разрядный АЦП, это значит, что выбранный нами диапазон опорного напряжения 5.0 вольт он «разделит» на 1024 значения. Т.е. если на вход контроллера AN0 подавать напряжение от 0 до 5 вольт, то с регистров АЦП ADRESH и ADRESL сможем сосчитать значение от 0 до 1023.

    Значит, в нашем случае весовое значение одного разряда АЦП составит 5/1024 =0,0048828125 вольта.

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

    Например, при измерении мы получили значение 359. Для вычисления напряжения нам необходимо 359*0,0048828125 = 1,7529296875. Или округленно 1,8 вольта.

    Но как нам измерять напряжения выше 5 вольт? Для этого и используется входной делитель на резисторах R1 и R2. Выберем R2=10 кОм, почему 10, потому если входные цепи АЦП требуют, что бы источник имел сопротивление не ниже 10 кОм. А в целях уменьшения входного тока, возьмём максимальное значение. R1 выберем равное = 200 кОм  для обеспечения необходимого диапазона входного напряжения.

    Коэффициент деления 200/10=20. Это значит, что напряжение, поступающее на вход делителя, будет уменьшено на его выходе в 20 раз. При максимальном входном напряжении на входе контроллера 5 вольт мы сможем измерять напряжения 5*20=100 вольт,(или для нашего случая 99,9 вольта). Такой диапазон достаточен для многих устройств, включая и автомобильную технику.

    И так если мы выбрали для индикации минимального значения 0,1 вольт, то диапазон индицируемых значений составит от 0,1 до 99,9 вольт.

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

    Программа.

    Для работы контролера, необходимо программа, которая будет выполнять все наши требования по работе устройства. Программа написана на ассемблере с применение среды MPLAB IDE v8.83.

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

    Выбор PIC-контроллера.

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

    Сборочный чертеж верхняя сторона платы.

    Цифровой вольтметр ch-c3200

    Сборочный чертеж нижняя сторона.

    Цифровой вольтметр ch-c3200

    Программирование контроллера.

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

    Для этого применяется соединитель CON1 (отверстие в плате).


    Цифровой вольтметр ch-c3200




    От того как правильно будет выполнена калибровка зависит точность паказаний нашего вольтметра. Для этого необходимо выполнить три правила:
    1. Калибруют по максимальному значению измеряемого диапазона.
    Что это значит? Если вы планируете измерять диапазон напряжений например, от 0 до 30 вольт, то необходимо выставить 30 вольт и по этому уровню калибровать вольтметр.
    2. Калибровать надо по прибору более высокого класса.
    Если вы желаете получить точность +/- 0,1 вольта выставить с точностью до сотых — 30,00. Реально это сделать из того что есть под руками сложно, поэтому надо попытаться установить максимально точно.
    3. Подгонять показания надо как можно точнее выбирать точку смены индикации.

    Файлы в архиве:
    Описание вольтметра.
    Программа (ассемблер, MPLAB — V8.76) PIC16F88 (PIC16F819).
    Схема вольтметра.
    Прошивка для контроллера PIC16F88.
    Сборочный чертеж платы.

    chiftrvoltmetr.rar [494,22 Kb] (cкачиваний: 723)

    Комментарии
    LActos 5 июня 2014 00:01 Группа: Посетители
    Сделал этот вольтметр на PIC16F88 все заработало.
    КОМУ НУЖНА СОЕДИНЕННАЯ ЕЛЕКТРИЧЕСКАЯ ПРИНЦИПИАЛЬНАЯ СХЕМА МОЙ СКАЙП lactos123, А ТАКЖЕ ОБРАЩАЙТЕСЬ ПО ДРУГИМ ВОПРОСАМ ПО ЭТОМУ ПРИБОРУ.