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

Views: 1368


Настоящий проект создан как обучающий с применением библиотек 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”]



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


  • REFERENCE CLOCK OUTPUT MODULEREFERENCE CLOCK OUTPUT MODULE
    Views: 491 REFERENCE CLOCK OUTPUT MODULE Модуль формирования опорного тактового сигнала Модуль опорного тактового сигнала обеспечивает возможность посылать сигнал синхронизации на тактовый опорный выходной контакт или контакты (CLKR) в зависимости от …
  • Простой цифровой милливольтметр постоянного токаПростой цифровой милливольтметр постоянного тока
    Views: 4091 Простой цифровой вольтметр постоянного тока. Три диапазона измерений с автоматическим переключением 1 – 0,001 – 0,999 V, 2 – 0,01-9,99 V, 3 – 0,1-99,9. Четыре управляемых выхода с возможностью задания функции контроля …
  • Проект с использованием MCC часть 16Проект с использованием MCC часть 16
    Views: 1076 Продолжим изучение EUSART. На этом этапе отработает передачи данных с ПК и получения эха. Для этого в основной цикл программы добавим код if(EUSART_DataReady) // проверим флаг готовности данных …
  • PIC32MZ – прерывания (заметки)PIC32MZ – прерывания (заметки)
    Views: 441 Виды формирования запоминая контекста при входе в прерывания. Компилятор представляет три варианта AUTO – когда запоминания места возврата из подпрограммы возложено на программу, т.е все создается программно. Этот …
  • ch-светомузыка от теории до реализацииch-светомузыка от теории до реализации
    Views: 673 Сразу оговоримся технология или теория ch-светомузыки, это постоянно развивающийся процесс и то что будет сказано сегодня завтра может быть опровергнуто и считаться ошибочным. Назовем само решение проблемы автоматического …
  • MPLAB X IDE – управление проектамиMPLAB X IDE – управление проектами
    Views: 956 Среда  MPLAB X IDE позволяет оперативно работать с несколькими проектами, например, если у вас в работе несколько проектов: Для того чтобы переключиться достаточно выбрать другой проект: Для выбора …
  • ch-4050 – дифференциальный терморегуляторch-4050 – дифференциальный терморегулятор
    Views: 1858 ch-4050 – это не новая модель, это расширенная версия универсального терморегулятора ch-4000. Различия коснулись в появлении новой функции дифференциального регулирования. Это вид регулирования по разности температур измеренного двумя …
  • VU Meter Tower ART – part 2VU Meter Tower ART – part 2
    Views: 978 Проект – VU Meter Tower ART получил продолжение в своем развитии. Теперь можно заказать набор деталей из акрила для самостоятельной сборки. В проект корпуса внесено целый ряд доработок, …
  • TDA7294 part 1TDA7294 part 1
    Views: 258 TDA7294 має унікальні дані для створення підсилювачів звукової частоти HI-FI класу. Варіант застосування є конфігурація BRIDGE (мостова схема включення), де використовуються два TDA7294, як показано на схематичній діаграмі …
  • Проект с использованием MCC часть 15Проект с использованием MCC часть 15
    Views: 1528 EUSART – Универсальный асинхронный приёмопередатчик (УАПП, англ. Universal Asynchronous Receiver-Transmitter, UART) — узел вычислительных устройств, предназначенный для организации связи с другими цифровыми устройствами. … читать на вики. Внесем изменения в нашу схему, …



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

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

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

НазадДалее