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

Visits: 1345


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



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


  • AD9833 – Programmable Waveform GeneratorAD9833 – Programmable Waveform Generator
    Visits: 2722 Простой генератор звуковых частот на AD9833. Для тестирования БПФ в светомузыке мне нужен был генератор звуковых частот. Я  использовал советский Г3-112, но он себя давно изжил.  Все думал купить …
  • Проект с использованием MCC часть 02Проект с использованием MCC часть 02
    Visits: 2225 Когда мы запустили конфигуратор, самое главное понять, что с этим делать и как проверить, то что мы делаем работает или нет. Для начала настроим регистры конфигурации микроконтроллера и настроем …
  • Проект с использованием MCC часть 16Проект с использованием MCC часть 16
    Visits: 1030 Продолжим изучение EUSART. На этом этапе отработает передачи данных с ПК и получения эха. Для этого в основной цикл программы добавим код if(EUSART_DataReady) // проверим флаг готовности данных …
  • Оптосимистор и его применениеОптосимистор и его применение
    Visits: 19362 Эрве Кадино “Цветомузыкальные установки” Ответ на вопрос – управление мощным тиристором или симистором, от терморегулятора. Статья в pdf[wpdm_file id=129 template=”link-template-calltoaction3.php”] Оптосимистор принадлежат к классу оптронов и обеспечивают очень хорошую …
  • Стабилизатор тока для светодиодов SN3350Стабилизатор тока для светодиодов SN3350
    Visits: 2568 SN3350 ближайший аналог ZXLD1350 Как собрать готовый вариант, читайте во второй части – http://catcatcat.d-lan.dp.ua/stabilizator-toka-na-sn3350-chast-2/ 40V  драйвер светодиодов с внутренним ключом  SN3350 – импульсный понижающий преобразователь, разработанный для того, чтобы эффективно управлять одним или …
  • Altium Designer my setup system and project structureAltium Designer my setup system and project structure
    Visits: 577 Используйте только последнее обновление!!! Updates https://catcatcat.d-lan.dp.ua/altium-designer-my-libraries-project-templates-system-settings-by-catcatcat-v23-09/        Тут хочу поделиться как я настраиваю Altium Designer и как я использую файлы DXPPreferences.DXPPrf для быстрой конфигурации и получения …
  • LED модуль P10C4V12LED модуль P10C4V12
    Visits: 3057 LED панели на обычных регистрах типа 74HC595. Они выпускаются как монохромные так двух и полно цветные, особенность, что они предназначены для текстовой информации и имеют один уровень яркости. Общую яркость …
  • Moving average – скользящее среднееMoving average – скользящее среднее
    Visits: 2178 Скользящая средняя, скользящее среднее (англ. moving average, MA) — общее название для семейства функций, значения которых в каждой точке определения равны среднему значению исходной функции за предыдущий период. Скользящие средние обычно используются с данными временных рядов для сглаживания …
  • BMP280 – температура и атмосферное давление – учебный проектBMP280 – температура и атмосферное давление – учебный проект
    Visits: 2007 Учебный проект на PIC32 и светодиодной панели P5 (2121)-168-6432-80 (32*64). Проект позволяет ознакомиться с простой графикой и с чтением давления и температуры с датчика BMP280. Для тестирования необходимо …
  • Цифровой спидометр для автомобиляЦифровой спидометр для автомобиля
    Visits: 10124  Универсальность печатной платы ch-c0030pcb позволяет создавать на её основе разнообразные устройства. Одним из таких устройств является электронный спидометр для автомобиля, в котором можно задать два компаратора скорости, например,  для …



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

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

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

НазадДалее