Мониторинг температуры

Visits: 1367


Настоящий проект создан как обучающий с применением библиотек ds18b20 и LCDHD44780 и компилятора Microchip MPLAB XC8 C Compiler V1.12. Если необходимо иметь информацию по состоянию температуры в помещении или в здании, с количеством до 6 точек (16), то вы сможете использовать этот проект как основу. Для его реализации необходимо приобрести или собрать самостоятельно процессорную плату ILLISSI-4B-09-primum на контроллере PIC18F26K22 (хотя можно выполнить на любом контролере включая и 16 серию). Приобрести любой символьный индикатор, желательно 4 строчный (на драйвере HD44780). и датчики температуры DS18B20 (количество вы определяется самостоятельно для настоящего проекта 6, для вашего не более 16).

Для настоящего проекта необходимо, чтобы организовать возможность индикации температуры, это 4-строчный символьный индикатор на драйвере HD44780, плата ILLISSI-4B, и от 2 до 6 датчиков температуры DS18B20.

illissi_mt_02

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

Если используется стандартная плата ILLISSI-4B, то на ней необходимо запаять резисторы ка это сделан в статье DS18B20 — удаленный контроль температуры.

Далее подключаем индикатор как описано в Библиотека для работы с LCD индикаторами на драйвере HD44780.

Этот проект позволяет одновременно считывать и выводить на индикатор температуру по 6 точкам. При необходимости можно добавить клавиатуру и изменить проект, для вывода информации до 16 точек (стандартные возможности библиотеки).

Программа работает в режиме постоянного тестового сканирования датчиков, что позволяет производить “горячую” замену датчиков. Библиотека автоматически выполняет все функции по чтению адреса датчика, установки на место отключенного датчика – нового или добавление датчиков.

while(1)
 {
     if (Test_DT()==0)// это позволит наблюдать, как отключаются и поключаются датчики
     {// в динамике
         CursorLCD(1,0);
         if (ET00==0)
         {
            StringLCD("Д1-");
            BinDec(TEMPDAT[0],1);
            SendLCDd(0xEF);
         }
         else
         {
            CursorLCD(1,4);
            StringLCD("1 err ");
         }
          CursorLCD(1,11); 
         if (ET01==0)
         {
             StringLCD("Д2-");
             BinDec(TEMPDAT[1],1);
             SendLCDd(0xEF);
         }
         else
         {
              CursorLCD(1,14);
              StringLCD("2 err ");
         } 
         CursorLCD(2,0); 
         if (ET02==0)
         {
              StringLCD("Д3-");
              BinDec(TEMPDAT[2],1);
              SendLCDd(0xEF);
        }
         else
         {
             CursorLCD(2,4);
             StringLCD("3 err ");
         }
*******
   CursorLCD(0,3);
   StringLCD("кол. дат: ");
   BinDec(naydendatch,0);
   StringLCD("шт.");
 }
 else
 {
   CursorLCD(0,2);
   StringLCD("обрыв линии");
   __delay_ms(10);
   __delay_ms(10);
   __delay_ms(10);
 }
 CLRWDT(); // сброс сторожевого таймера
 }

Если для программы которой необходимо только измерять температуру, до достаточность в место функции Test_DT() использовать функцию Celsio () только для измерения температуры.


Схема подключения LCD.

illissi_mt_10

Схема подключения датчиков температуры DS18B20.

illissi_mt_11


Фото проекта.


  • Индикация температуры и состояния

    Индикация температуры и состояния
  • Лого программы

    Лого программы
  • Вид проета

    Вид проета
  • Тестовая сборка для датчиков DS18B20

    Тестовая сборка для датчиков DS18B20
  • Индикация температуры

    Индикация температуры
  • Индикация обрыва линии связи с датчиками температуры

    Индикация обрыва линии связи с датчиками температуры
  • Плата ILLISSI-4B с подключенным индикатором

    Плата ILLISSI-4B с подключенным индикатором



Видио проекта.

 


Схема проекта [wpdm_file id=97 template=”link-template-calltoaction3.php”]Файлы проекта. (Компилятор С, Microchip MPLAB XC8 C Compiler V1.12. MPLAB V8.8)[wpdm_file id=98 template=”link-template-calltoaction3.php”]



Это может быть интересно


  • Гаджеты для домашней автоматики – Датчик движенияГаджеты для домашней автоматики – Датчик движения
    Visits: 1428 Управление светодиодным освещением – Датчик движения. Данный гаджет предназначен для управления освещением рабочих столов (кухонных столов), освещение прихожих, освещение зеркал в прихожих, автоматическое включение света в коридорах. Датчик позволяет …
  • MPLAB X IDE – управление проектамиMPLAB X IDE – управление проектами
    Visits: 909 Среда  MPLAB X IDE позволяет оперативно работать с несколькими проектами, например, если у вас в работе несколько проектов: Для того чтобы переключиться достаточно выбрать другой проект: Для выбора …
  • CCP – модуль в режиме Compare на примере PIC18CCP – модуль в режиме Compare на примере PIC18
    Visits: 3068 CCP – модуль можно использовать в трех режимах: Capture – позволяет захватывать входной сигнал и определять его параметры (длительность или частоту). Дополнительно управлять внутренними модулями. Compare –  позволяет …
  • MCC PIC24 – модуль OUTPUT COMPARE – в режиме генератора звуковых сигналовMCC PIC24 – модуль OUTPUT COMPARE – в режиме генератора звуковых сигналов
    Visits: 600 При проектировании простых устройств автоматики, часто необходимо иметь механизм звукового оповещения. Самый верхний уровень, это формирование голосовых сообщений, но об этом, как то по позже… В самом примитивном …
  • PIC18 – System ArbitrationPIC18 – System Arbitration
    Visits: 554 Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый …
  • Проект с использованием MCC часть 12-1Проект с использованием MCC часть 12-1
    Visits: 912 В настоящее время без визуализации информации уже не интересно. Поэтому научимся выводить информацию на дисплей. Для это возьмет простенький OLED RET012864E/REX012864J я такой приобретал в фирме “Гамма-Украина”, описание можно …
  • Audio-bluetooth modules F-6188 (BK8000L)Audio-bluetooth modules F-6188 (BK8000L)
    Visits: 2266Следующий модуль на чипе BK8000L. Заводское обозначение F-6188 также основным производителем не выпускается и отдан на тиражирование. с нижней стороны имеет маркировку В этом варианте мне попалась вроде полноценная …
  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Visits: 2750 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • Проблемы классической светомузыкиПроблемы классической светомузыки
    Visits: 2043 Светомузыка – что это такое? Определение: Светомузыка  (жаргонное: цветомузыка)  — вид искусства, основанный на способности человека ассоциировать звуковые ощущения со световыми восприятиями. Такое явление в неврологии получило название …
  • Проект с использованием MCC часть 10Проект с использованием MCC часть 10
    Visits: 797 Алгоритм управления освещением от нажатия кнопки. Обработка удержания кнопки: Мы должны проверить кнопка в настоящий момент нажата и флаг удержания установлен, если да Проверить таймер удержания “отработал” – …



Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

Продолжайте читать

НазадДалее