» Електроника » Ардуино »Ардуино сат са температурним сензором и без РТС-а

Ардуино сат са температурним сензором и без РТС-а

Ардуино сат са температурним сензором и без РТС-а

Добар дан, данас ћу поделити упутства како направити сат помоћу собног термометра. Сат ради Ардуино УНО, ВГ12864Б графички екран користи се за приказ времена и температуре. Као температурни сензор - дс18б20. За разлику од већине других сатова, нећу користити РТС (Реал Тиме Цлоцк), већ ћу покушати без овог додатног модула.

За ово домаће Следеће компоненте су потребне:
- Ардуино УНО (или било која друга Ардуино компатибилна плоча)
- Графички екран ВГ12864Б
- сензор температуре дс18б20
- Отпорник 4.7 Ком 0.25 В
- Отпорник 100 охм 0,25 В
- Одељак за батерије за 4 АА батерије типа "прст"
- Погодна кутија
- Мала датотека
- Лак за нокте (црна или боја тела)
- Мало танке пластике или картона
- електрична трака
- повезивање жица
- плочица
- Дугмад
- лемљење
- Лемљење, колофонија
- Двострана трака

Корак 1 Припрема кућишта.
Наши сатови би требали бити негдје смјештени. Морате наћи одговарајућу кутију. Главна ствар је да се у њега ставе екран ВГ12864Б, Ардуино и мала плоча за дугмад. Минимална величина кутије је 7 к 7 к 10 цм. Ако користите малу Ардуино плочу, можете је утиснути у кутију и мању, али ја ћу описати поступак користећи Ардуино УНО као пример. Материјал од кога се израђује кутија је по могућности пластичан, ако је, као и моје, гвожђе, исплати се водити рачуна о изолацији, тако да унутра нема шта да се "обилази". Преферира се пластика јер се лакше реже. С кутијом је, рецимо, случај наших сатова. Сада је потребно изрезати прозор испод екрана димензија 6,5к4 цм. Ако је кутија гвожђа, изузетно је тешко то пажљиво учинити. Без обзира на то како се трудите, у близини ће се појавити уситњена боја и храпавост. Стога прво прво исечемо, за ово можете користити „брусилицу“, бушилицу са млазницом за сечење или глодалицу, уопште, по вашем избору, са оним што имате при руци. Након тога чистимо ивице филеом. Сву уситњену боју фарбамо лаком за нокте, одговарајуће боје. Резултат треба бити следећи:


Корак 2 Припремите графички екран.
Са повезивањем екрана на први поглед настају многи проблеми и потешкоће. Али ако се прво позабавите њиховим врстама, постаће много лакше и разумљивије. На контролеру кс0107 / кс0108 постоји много варијација и врста екрана.Сви екрани су обично подељени у 4 врсте:
Опција А: ХДМ64ГС12Л-4, Цристалфонтз ЦФАГ12864Б, Спаркфун ЛЦД-00710ЦМ, НКЦ Елецтроницс ЛЦД-0022, ВинСтар ВГ12864Б-ТМЛ-Т
Опција Б: ХДМ64ГС12Л-5, Лумек ЛЦМ-С12864ГСФ, Футурлец БЛУЕ128Кс64ЛЦД, АЗ приказује АГМ1264Ф, Дисплаитецх 64128А БЦ, Адафруит ГЛЦД, ДатаВисион ДГ12864-88, Топваи ЛМ12864ЛДВ, Дигитрон СГ12864ИЈ, К12864ИЈ, К12864ИИ, К12864ИЈ, К12 К64ИИ КК
Опција Ц: Схензхен Јингхуа Дисплаис Цо Лтд. Јм12864
Опција Д: Винтек-каскаде ВД-Г1906Г, Винтек-ГЕН / ВД-Г1906Г / КС0108Б, Винтек / ВД-Г1906Г / С6Б0108А, ТЕЦДИС / И19061 / ХД61202, Варитроник / МГЛС19264 / ХД61202

Листа није потпуна, има их пуно. Најчешћи и, по мом мишљењу, згодан ВГ12864Б3 В2.0. Екран се може повезати са Ардуино-ом преко серијског или паралелног порта. Када се користи са Ардуино УНО, боље је одабрати серијску везу - тада су нам потребна само 3 излаза микроконтролера, уместо најмање 13 линија када су повезани преко паралелног порта. Све је повезано прилично једноставно. Постоји још једна нијанса, у продаји се могу наћи две врсте дисплеја, са уграђеним потенциометром (за подешавање контраста) и без њега. Ја сам изабрао и саветујем вам да исто урадите са уграђеним.


То смањује број делова и време лемљења. Такође је вредно поставити отпорник од 100 Охма за позадинско осветљење. Ако директно повежете 5 волти, постоји ризик од прегоревања позадинског осветљења.
ВГ12864Б - Ардуино УНО
1 (ГНД) - ГНД
2 (ВЦЦ) - + 5 В
4 (РС) - 10
5 (Р / В) - 11
6 (Е) - 13
15 (ПСБ) - БНД
19 (БЛА) - кроз отпорник - + 5В
20 (БЛК) - БНД

Најприкладније је сакупити све иза екрана и из њега извући 5 жица ради повезивања са Ардуино УНО. Резултат треба бити овако:


За оне који још увек бирају паралелну везу, дат ћу табелу веза.


И изглед опција екрана Б:


Корак 3 Прикључите сензор температуре.
Као што сам рекао, користићемо ДС18Б20 интегрисани сензор за мерење температуре. Изабрао сам га због његове високе тачности мерења, грешка није већа од 0,5 ° Ц. Сензор је калибриран у тренутку израде, нису потребна додатна подешавања. Опсег мерења температуре -55 ... + 125 ° Ц Постоје два начина рада: са спољним извором напајања и „лажном струјом“. Када радите у режиму спољног напајања, веза је следећа:


Када користи "лажну снагу" сензор прима снагу из комуникационе линије. У овом су режиму довољне две жице за спајање дс18б20 на микроконтролер. Унутрашњи кондензатор сензора се пуни због енергије на комуникационој линији на ниском нивоу на магистрали. Режим "паразитска исхрана" има много функција и зато га не препоручујем. Али ако се ипак одлучите за употребу, ево дијаграма:


Или можете користити побољшани дијаграм ожичења када користите „лажну снагу“:


Неколико сензора може бити укључено у једну комуникацијску линију. За наше сатове један је довољан. Повезујемо жицу са „ДК“ дс18б20 пин на „пин 5“ Ардуино УНО.

Корак 4 Припрема плоче са тастерима.
За подешавање времена и датума на сату користићемо три дугмета. Ради практичности, лемите три дугмета на плочи и извуците жицу.


Повезујемо се на следећи начин: жица заједничка за сва три дугмета повезана је на „ГНД“ Ардуино. Прво дугме служи за улазак у режим подешавања времена и пребацивање времена и датума, повезивање са "Пин 2". Друго, дугме за повећање вредности, је „Пин 3“, а треће, дугме за смањење вредности, је „Пин 4“.

Корак 5 Спајање свега.
Да бисте избегли кратки спој, изолирајте екран. У круг омотамо електричном траком, а на полеђини причвршћујемо двострану траку, изрезану по величини, траку изолацијског материјала. Погодан је густи картон или танка пластика. Користио сам пластику из папирног таблета. Испоставило се следеће:


На предњој страни екрана уз ивицу лепимо двострану траку на пенастој основи, најбоље црну.


Заслон повезујемо са Ардуином:


Плус спајамо из преграде за батерију на „ВИН“ Ардуино, минус на „ГНД“. Постављамо га иза Ардуина. Пре уградње у кућиште, не заборавите да повежете температурни сензор и плочу с тастерима.


Корак 6 Припремите и напуните скицу.
Сензору температуре потребна је библиотека ОнеВире.
оневире.рар [16,75 Кб] (преузимања: 154)


Излаз на екран је преко библиотеке У8глиб:
у8глиб.рар [906.95 Кб] (преузимања: 156)


Да бисте изменили и испунили скицу, инсталирајте ове две библиотеке. Постоје два начина за то. Само распакујте ове архиве и непакиране датотеке ставите у мапу „библиотеке“ која се налази у мапи са инсталираним Ардуино ИДЕ.Или друга опција је да се библиотека инсталира директно у програмском окружењу. Без отпакирања преузетих архива, у Ардуино ИДЕ-у одаберите мени Скетцх - Цоннецт Либрари. На самом врху падајуће листе одаберите ставку "Додај. Зип библиотека". У дијалогу који се појави одаберите библиотеку коју желите додати. Отворите поново мени Скетцх - Цоннецт Либрари. На самом дну падајуће листе требало би да видите нову библиотеку. Сада се библиотека може користити у програмима. Не заборавите да поново покренете Ардуино ИДЕ након свега овога.

Сензор температуре ради према протоколу Оне Вире и има јединствену адресу за сваки уређај - 64-битни код. Сваки пут је тражење овог кода непрактично. Зато прво морате да повежете сензор на Ардуино, попуните скицу која се налази у менију Датотека - Примери - Температура Далласа - ОнеВиреСеарцх. Затим покрените Алати - Порт Монитор. Ардуино би требао пронаћи наш сензор, уписати његову адресу и тренутна очитања температуре. Копирамо или једноставно записујемо адресу нашег сензора. Отворите скицу Ардуино_ВГ12864Б_Терм, потражите линију:

бите аддр [8] = {0к28, 0кФФ, 0кДД, 0к14, 0кБ4, 0к16, 0к5, 0к97}; // адреса мог сензора 


Записујемо адресу вашег сензора између награда, замењујући адресу мог сензора.

Залиха:

//у8г.сетПринтПос (44, 64); у8г.принт (сек); // Штампање секунди да бисте проверили исправност курса


Приказује секунде поред „Подаци“. Ово је неопходно да бисте тачно одредили ток времена.
Ако се сат жури или заостаје, требало би да промените вредност у линији:

иф (мицрос () - превмицрос> 494000) {// промена на другу за подешавање је 500000


Експериментално сам одредио број на коме сат иде сасвим тачно. Ако вам се сат жури, требало би да повећате овај број, ако ја заостанем, смањите га. Да бисте одредили тачност курса и потребне су вам секунде за закључивање. Након тачног калибрације броја, секунде се могу коментарисати и тако уклонити са екрана.

Испуните скицу.
ардуино_вг12864б_терм.рар [3.64 Кб] (преузимања: 314)

7
9
5.3

Додајте коментар

    • осмехнасмеши секакаокдонткновиахоонеа
      шефеогреботинабудаладада-даагресивантајна
      извиниплесданце2данце3пардонпомоћпића
      станипријатељидоброгоодгоодзвиждукзалутатијезик
      димпљескатицраиизјавитиисмијавајућидон-т_ментионпреузимање
      топлотаирефуллаугх1мдасастанакмоскингнегативан
      нот_икокицеказнитичитатиуплашитиплашипретрага
      подругљивтханк_иоуовото_цлуеумникакутнаслажем се
      лошепчелаблацк_еиеблум3поцрвењетихвалити седосаде
      цензурисанпријатносецрет2претипобедаиусун_беспецтацлед
      шокреспектлолпреведендобродошликрутоииа_за
      иа_добриипомагачне_хулиганне_отходифлудзабраназатвори

Саветујемо вам да прочитате:

Предајте га смартфону ...