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

Views: 1386


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



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


  • PIC32MZ – Core Timer (библиотека)PIC32MZ – Core Timer (библиотека)
    Views: 548 Переработанные файлы от Microchip, библиотека для работы с Core Timer.
  • Гаджеты для домашней автоматики – Датчик приближенияГаджеты для домашней автоматики – Датчик приближения
    Views: 1983 Управление светодиодным освещением – Датчик приближения. Данный гаджет предназначен для управления внутренним освещением мебели. Датчик позволяет определить закрытие или открытие дверцы или ящика и при этом включать или …
  • Сумеречное релеСумеречное реле
    Views: 1453 Реле управления освещением, датчик день-ночь – одним словом фотореле для управления освещением или формирования сигнала для системы умный дом о понижении или повышении освещенности относительно заданного уровня. Реле выполнено по классической схеме, конденсаторный блок питания, от сети переменного тока …
  • Применение typedef, struct и unionПрименение typedef, struct и union
    Views: 8731 Полезные описания переменных Часто необходимо в памяти расположить последовательно разные виды данных, что бы потом можно было их использовать. Полезные ссылки Взято и переработано с сайта http://www.butovo.com/~zss/cpp/struct.htm http://cppstudio.com/post/9172/ …
  • Регулятор влажностиРегулятор влажности
    Views: 1389 Регулятор ILLISSI-CH-1000 предназначен для контроля и регулировки относительной влажности в диапазоне от 0 до 100%. Регулятор позволяет работать как в режиме осушения, так и увлажнения. Для измерения возможно …
  • CAN – Controller Area NetworkCAN – Controller Area Network
    Views: 1093 Controller Area Network (CAN) первоначально был создан немецким поставщиком автомобильных систем Робертом Бош в середины 1980-х для автомобильной промышленности как метод для обеспечения возможности надежной последовательной связи. Целью было сделать автомобили более надежными, …
  • Ссылки на интересные источникиСсылки на интересные источники
    Views: 844 Сбор 3D моделей от André L’Hérault конденсаторы, резисторы, индуктивности dropbox IPC-SM-782 Surface Mount Design and Land Pattern Standard Видео уроки по Altium designer Alexey Sabunin https://www.youtube.com/channel/UCG7N5CqXpyK8nQjr1EmMgng Сергей Булавинов https://www.youtube.com/channel/UCISAMXRnN_Qw9UTjUwZI1Jw Robert Feranec https://www.youtube.com/user/matarofe …
  • Проект с использованием MCC часть 14Проект с использованием MCC часть 14
    Views: 831 С выводом данных на дисплей мы справились (но могу сразу сказать библиотеку графики к этой статьи пришлось доработать, поэтому в этом проекте она обновлена). У нас на текущем …
  • Altium Designer first projectAltium Designer first project
    Views: 287 Эта статья подразумевает, что у вас установлен и настроен Altium Designer как описано в статье  Altium Designer my setup system and project structure.  Обратите внимание! Библиотека постоянно обновляется, …
  • PIC32MZ – прерывания (заметки)PIC32MZ – прерывания (заметки)
    Views: 454 Виды формирования запоминая контекста при входе в прерывания. Компилятор представляет три варианта AUTO – когда запоминания места возврата из подпрограммы возложено на программу, т.е все создается программно. Этот …



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

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.

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

НазадДалее