Изработване на прост термометър на микроконтролер. Електронен термометър с дистанционен сензор DS18B20 на микроконтролера Attiny2313 Схеми на термометри на пикови микроконтролери

Описание на работата на термометъра

Целта на този термометър е просто да показва температурата. Малки разлики от други подобни схеми са само във формата на извеждане на температурата на LED индикатора, който е 4-цифрен суперярък CA04-41SRWA. DS18B20 се използва като температурен датчик при нормална връзка с отделен захранващ проводник.

Веригата е проектирана да се захранва от батерии, така че когато захранването е включено, индикаторът не показва нищо. Програмата на термометъра се инициализира и веднага преминава в режим на заспиване. Режимът на заспиване на микроконтролера ви позволява да пестите енергия от захранването. Когато натиснете бутона, свързан към PORTB0, индикацията се включва.
Индикаторът показва подсказка:



След това самите температурни показания се показват на индикатора.



Типът изход за четене е както следва:






Изходната форма се различава само при ниски положителни температури. При посочване на такава температура към символа „градус“ се добавя знакът „С“. Тоест градуси по Целзий Символът „градус“ присъства на индикатора при всяка измерена температура.

Температурният сензор DS18B20 измерва температурата с резолюция от 0,0625 градуса по Целзий. Термометърът отчита показанията от сензора и ги закръгля до най-близката десета от градуса. Десетите от градуса се показват във всички режими на дисплея, с изключение на температури под -10 градуса по Целзий. Това се прави така, че показанията на отрицателните температури винаги да имат знак минус.

Показанията присъстват на индикатора за 30 секунди. След това устройството отново преминава в режим на заспиване и индикаторът се изключва.


Моделиране на термометър в Proteus


Моделът Proteus направи възможно разработването на софтуерната част на термометъра, без да се сглобява самото устройство в хардуера. Всички режими са тествани. Няма грешки в симулацията в програмата.



Самият модел можете да изтеглите от линка: termo_i_v2.DSN

Принципна схема на термометър


Веригата е начертана въз основа на дизайна на печатната платка. Първо, окабеляването на печатната платка беше направено така, че дължината на проводниците и местоположението на частите да бяха оптимални и едва след като портовете на микроконтролера PIC16F628A на печатната платка съответстваха на щифтовете на индикатора CA04-41SRWA, беше съставена точна електрическа схема.


Платка за термометър


Здравейте скъпи посетители. Получаваме пожелания от вас за увеличаване на обхвата на регулиране на температурата и нейната индикация, представена на уебсайта термометър-термостат.

Диаграмата на новия термостат е показана на фигура 1.

По принцип почти не се различава от собствената си. Като цяло, това е огромен плюс на схеми, използващи микроконтролери.
Схемата е базирана на микроконтролер PIC16F628A. Като сензор се използва един от добре познатите и популярни цифрови температурни сензори DS18B20. Реалните температурни показания, стойността на зададената стабилизираща температура и необходимия хистерезис се изобразяват на седемсегментен трицифрен LED индикатор с общ анод. Резисторите R1…R4 са издърпващи резистори. R1 изтегля шината за данни от температурния сензор DS18B20 към захранващата шина на веригата плюс пет волта. R2…R4 издърпва съответните щифтове на микроконтролера към шината плюс пет волта.

Резисторите от пет до дванадесет са гасителни или ограничаващи резистори за тока, протичащ през светодиодите. Чрез промяна на стойността на тези резистори можете да регулирате яркостта на индикаторните сегменти. Понякога има индикатори с различна яркост на отделните сегменти, този дефект също може да бъде отстранен с помощта на тези резистори. За настройка на контрола на температурата се използват два бутона със съответните знаци „+” и „-”, това са бутони SB2 и SB3. Със същите бутони можете да зададете необходимия хистерезис от 0,1 ˚С до 0,9 ˚С при натискане на бутон SB1 - “Хистерезис”. Сигналът за управление на превключващия ключ се премахва от пин 17 на чипа DD1. Не нарисувах ключовата диаграма, изберете я сами, например от статията ""

Моля, имайте предвид, че не съм тествал устройството хардуерно, всичко беше симулирано в Proteus.

Съответно не съм нарисувал печатната платка, но ако искате да повторите този термостат, можете да ми изпратите чертежа на адрес - [имейл защитен]Това ще бъде много полезно за начинаещи „радиоразрушители“ (шегувам се). Не знам за идеите на тези посетители, които поискаха да подобрят термостата, но може би те бяха химици, за които точността на температурата на разтворите е важна. Мисля, че и вие ще намерите приложение за това устройство. Би било хубаво да коментирате къде може да се приложи. Късмет. К.В.Ю.

Отговор

Lorem Ipsum е просто фиктивен текст на печатарската и наборната индустрия. Lorem Ipsum е стандартният фиктивен текст в индустрията от 1500 г. насам, когато неизвестен печатар взел галера с шрифт и го разбъркал, за да направи книга с типови типове. Той е оцелял не само пет http://jquery2dotnet.com/ века , но също така и скокът към електронния набор, оставайки по същество непроменен.Той беше популяризиран през 60-те години на миналия век с издаването на листове Letraset, съдържащи пасажи от Lorem Ipsum, и по-скоро със софтуер за настолни публикации като Aldus PageMaker, включително версии на Lorem Ipsum.

Устройството е предназначено за измерване на температура в целия диапазон на сензора DS18B20 (от -55 до +125 градуса), с точност до 0,1 градуса. Точността от 0,1 е много условна, т.к Точността на самия сензор DS18B20, декларирана от производителя, е 0,5 градуса. Въпреки това хората много често се обръщаха към мен с предложение да направя термометър с показание до 0,1 градуса, което и направих.

Термометърът измерва температурата и я показва на 4-цифрен LED индикатор. Различните температурни диапазони се обозначават по различен начин:
-55.0...-10.0 - във формат -ХХ.Х без символа за градус
-9.9...0.1 - във формат -Х.Х и символ за степен
0.0...9.9 - във формат X.X и символ за степен
10.0...99.9 - XX.X и символ за степен
100.0...125.0 - XXX.X без символ за степен


Освен това термометърът има функция за намаляване на яркостта на индикаторите. Яркостта се избира с бутона S. Докато бутонът е натиснат, яркостта е висока, ако не е натиснат, яркостта е ниска. Вместо бутон можете да свържете сензор за светлина, така че яркостта да се променя автоматично в зависимост от времето на деня (по-точно нивото на осветеност).

Термометърът е сглобен на 2 печатни платки. Индикаторно табло и контролно табло. Платките се запояват под ъгъл от 90 градуса, според контактните площадки. Когато инсталирате чипа 7805, трябва да отрежете фланеца на радиатора. Индикаторът може да бъде всякакъв, червен или зелен. Важно е да е с динамичен дисплей с общ анод.

Термометърът ще работи правилно само със сензори DS18B20, DS1820, DS18S20 и др. Не е подходящ за този термометър! За захранване на устройството е подходящо всяко стабилизирано или нестабилизирано захранване, произвеждащо постоянно напрежение от 7...12 волта. Например, можете да използвате ненужно зарядно устройство за вашия мобилен телефон. Ако изходното напрежение на захранването не надвишава 8 волта, тогава вместо стабилизатора 7805 можете да използвате 78L05, но ако стане много горещо, ще трябва да увеличите съпротивлението в индикаторните катоди до 220 ома.

Часовник на PIC16F628A и температурен сензор DS18B20.

4 сегментен LED индикатор.

Промяна на анимирания дисплей.

Вариант на обикновен часовник на популярния и достъпен микроконтролер PIC16F628A. Всъщност проектът AVR започна с тях.

Описание на часовника.


1. Функции.

– часовник, формат на показване на времето 24 часа, часове:минути.

– цифрова корекция на точността. Възможна е ежедневна корекция ±25 сек. Зададената стойност от 1 час 0 минути 30 секунди ще бъде добавена/извадена от текущото време.

– термометър.

– индикация. Алтернативно.

– персонализирана анимация на променящите се показания.

– използване на енергонезависима памет на микроконтролера за запазване на настройките при изключване на захранването.

– ако в основен режим натиснете бутонаПЛЮС , тогава часът се показва на индикаторите, ако щракнете върхуМИНУС - температура. При отпускане на бутоните се възобновява автоматичната промяна на показанията.

2. Настройка.

2.1. Когато захранването е включено, часовникът е в основен режим.

2.2. Чрез натискане на бутонКОМПЛЕКТ влиза в режим на настройки и избира параметър за инсталиране. Налични за монтаж на свой ред:

- минути;

- гледам;

– секунди (нулиране на нула, когато натиснете бутонитеПЛЮС илиМИНУС );

– корекционна стойност. В най-значимата цифра символът "с ";

– време на индикация на текущото време. В най-високите цифри символите "tc ". Диапазон на настройка 0÷99 сек. Ако е зададено на 0, времето няма да се показва;

– време за индикация на температурата. В най-високите цифри символите "tt ". Диапазон на настройка 0÷99 сек. Ако е зададено на 0, температурата няма да се показва;

– избор на анимационен ефект. В най-високите цифри символите "Е.Ф. ". Ако е зададено на 0, промените на информацията ще бъдат извършени без ефект, ако е избран автоматичен режим (символА ), тогава ефектите ще се променят последователно. Ако режимът е избранr , тогава ефектите ще се променят на случаен принцип.

– изберете скорост на анимация. В най-значимата цифра символът "П ". Диапазонът на настройка е 0÷99. Една единица съответства на приблизително 2 ms, колкото по-висока е стойността, толкова по-бавна е анимацията.

2.3. Настройваният параметър мига.

2.4. Чрез задържане на бутонитеПЛЮС / МИНУС параметърът се задава бързо.

3. Бележки.

Необходимо е да се балансира скоростта на анимацията и времето, необходимо за показване на информация. Ако е избрана бавна анимация и кратко време за показване, може да се окаже, че информацията няма време да се актуализира напълно преди следващата смяна.

Когато основното захранване е изключено (+12V) индикацията изгасва, часовникът продължава да тече. MK се захранва от резервен източник.

Архивът включва фърмуер за индикатори с общ катод и анод, проект в Proteus и описание.

Въпроси, пожелания във форума.

11.03.2015

Добавен е актуализиран фърмуер за индикатор с общ катод. Новият фърмуер има повече анимационни ефекти и малки промени в алгоритъма. Подробно описание в архива.

Дигитален термометър, сглобен от нулата, не само ще ви служи по предназначение, но, както всичко, което се прави със собствените ви ръце, ще повиши самочувствието ви (и може би след няколко години ще стане ценен като спомен).

Без съмнение цифровият термометър в домакинството е полезно нещо, но не много функционално: освен за измерване на температурата, той не е ориентиран към нищо друго. В това отношение термометърът на микроконтролера ще бъде по-полезен, тъй като има способността да включва и изключва всяко натоварване в зависимост от температурните промени.

Ако обаче искате да направите нещо полезно със собствените си ръце, тогава като първа стъпка такъв дизайн е напълно оправдан - опитът, който придобивате, е безценен.

Така че, като начало, нека изберем най-простата схема на термометъра, изградена на микроконтролер PIC16F84A, цифров температурен сензор DS18B20 с точност на измерване до 0,5 градуса и четирицифрен LED индикатор с общ анод. В моя случай беше използван дисплей FYQ-3641BG-21E.

Предимството на схемата е нейната простота - от отделни елементи ще ни трябва дузина резистори, няколко кондензатора и 4 MHz кварцов резонатор. Основният недостатък е, че както всички електронни устройства, термостатът изисква източник на захранване.

Използването на батерии прави устройството мобилно, но животът на един комплект батерии може да бъде само 1-2 седмици. Захранването на термометъра от електрическата мрежа го „свързва“ към всеки контакт, което не винаги е удобно.

Ще добавя, че диаграмата не показва захранващата връзка към микроконтролера - плюсовата мощност се подава към щифт 14, а минусовата мощност се подава към щифт 5 на микросхемата.