Мазмуну:

Alarmostat: 10 кадам
Alarmostat: 10 кадам

Video: Alarmostat: 10 кадам

Video: Alarmostat: 10 кадам
Video: За двумя зайцами (1961) фильм 2024, Ноябрь
Anonim
Alarmostat
Alarmostat
Alarmostat
Alarmostat

Бул колдонмодо мен кантип Howestтеги 1MCT үчүн менин мектеп долбоорум, Alarmostatти кантип курууну айтып берейин. Концепция ууру сигналын жана термостатты биринде камтыган түзмөк жасоодо. Менин дизайным сөзсүз түрдө жакшыртылышы мүмкүн, андыктан көрсөтмөлөрдү так аткаруунун кажети жок. Чыгармачыл бол!

Керектүү компоненттер төмөндө келтирилген жана так электрдик схеманы сүрөттөн табууга болот (мен сиздин жабдууларыңыздын бузулушуна жооптуу эмесмин:))

Жабдуулар

-Raspberry Pi (мен 3B+колдондум) адаптер жана SD карта менен

-Нан тактасы

-GPIO сынык тактасы ыңгайлуу болушу мүмкүн

-Кыймыл сенсору (HCRS501)

-Эшик магнит которгуч (ada375)

-бир нече лед жана резистор

-активдүү сигнал

-айланма кодер (keyes-0.40)

-2x16 лкд дисплей

-74hc595 shiftregister lcd айдайт

-MFRC522 rfid окурманы

-көп зымдар

-кап жасоо үчүн материалдар жана аны бириктирүү үчүн шаймандар

(кошумча панель электр энергиясы)

1 -кадам: Файлдарды алуу

Бул долбоордун файлдарын бул репозиторийлерден тапса болот:

github.com/thomasdebiehw/project-backend

github.com/thomasdebiehw/project-frontend

Арткы жагы - бул Python / Flask программасы, ал биздин аппараттык жабдууларыбыз менен байланышат жана андан маалыматты веб -интерфейс болгон фронтендге чейин тейлейт.

Кодду жек көрбөгүлө, анын айрымдары начар жана түшүнүксүз жазылганын билем, бирок эй, ал иштейт:)

Туура иштеши үчүн кээ бир нерселерди өзгөртүүгө туура келиши мүмкүн, мисалы, mysql колдонуучусу же программалар иштеген IP-даректери сыяктуу.

Бул файлдарды кайда коюу керек экенин билүү үчүн алдыңкы каттын окуусун окуңуз

Пи файлдарыңызды алыңыз (же аларга сонун өзгөртүүлөрдү киргизиңиз) жана баарын Пи менен туташтырууга даяр болуңуз.

2 -кадам: туташуу

Туташууда
Туташууда
Туташууда
Туташууда

Компоненттерди туташтыруудан мурун Пиңизди өчүрүңүз. Электрдик схема өзүн -өзү түшүндүрүүчү болушу керек, бирок көңүл буруунун бир бөлүгү - кыймыл сенсору. Эмнегедир анын схемасы электрдик схемада башкача. Мен компоненттердин функциясын түшүндүрүү үчүн сүрөттө аннотацияларды коштум.

Кыйынчылыктарга туш болгондо, эмне кылгыңыз келет, бир нерсе - тышкы панель электр энергиясын колдонуу. Мен rfid окурманы иштебей калганда кээ бир көйгөйлөргө туш болдум. Мен бийликтин көйгөйү экенине толук ишенбейм, бирок мен тышкы булакты колдонгондон кийин аны башыман өткөргөн жокмун жана бул да зыян келтирбейт.

Эгерде сиз муну кылгыңыз келсе, GND пиндерин Pi менен электр энергиясын бириктириңиз. Тышкы камсыздоонун жыйынтыгына компоненттерден +3.3v же +5v баарын сайыңыз, ошондо сиз жакшы болушуңуз керек.

Pi'нин 3.3 же 5v электр энергиясына туташтырбаңыз. Эгерде сиз каталарды кетирбөө үчүн буларды толугу менен ажыратып коюңуз.

Экинчи сүрөттө менин тестирлөөнү көрө аласыз

3 -кадам: Тестирлөө

Тестирлөө
Тестирлөө

Берилиштерди импорттоо менен MySQL Workbench аркылуу Пи маалымат базасын коюшуңуз керек. Репозиторийдеги файл базанын таштандысы. Болбосо, кээ бир көйгөйлөргө туш болушуңуз мүмкүн, анткени Pi MySQLдин ордуна MariaDBди колдонот. Сиз ошондой эле жаңы колдонуучу түзүшүңүз керек же коддогу бул грамоталарды өзгөртүшүңүз керек болот. Сиз тиркелген сүрөттө ERDди көрө аласыз

Сиз Alarmostat программасын дароо иштетүүгө аракет кылсаңыз болот, бирок мен алгач компоненттерди өзүнчө текшерүүнү сунуштайм. Сиз github репоуна киргизилген класстарды колдонуп, бардык компоненттериңизди текшерүү үчүн бир аз программа түзө аласыз. Бул көйгөйлөрдү чечүүнү бир топ жеңилдетет.

Качан сиздин компоненттериңиз иштээрин билсеңиз, биз ишти кура баштайбыз.

4 -кадам: Case

Case
Case
Case
Case
Case
Case
Case
Case

Иш сиз каалаган нерсенин баары болушу мүмкүн. Эгерде сиз меникине окшош прототип жасоону кааласаңыз, анда бир нече талаптар бар.

-Алдыңкы плитанын тетиктерин орнотуу үчүн кээ бир оюктар

-Эшиктин кандайдыр бир механизми

-Ичинде орун жетиштүү

Мен калыңдыгы 6 мм болгон жыгачты колдондум. Эгер сиз аны лазер менен кескиңиз келсе, бул абдан бышык жана идеалдуу, бирок компоненттерди бурамасыз алдыңкы бөлүккө орнотуу кыйын болушу мүмкүн.

Мен сүрөттө көрсөтүлгөн бурамаларга жайгашып, андан кийин аларды натыйжалуу кыскартуу үчүн жаңгактарды колдондум. Мен сиздин бурамаларыңыз колдонулган материалдын канчалык алыс экенин текшерүүнү сунуштайм, анткени бул бөлүктөр ар кандай болушу мүмкүн.

Кээ бир бөлүктөрүндө жакшы бургулоо тешиктери жок болчу (keyes-040, hcsr501, leds), ошондуктан мен аларды ысык клей мылтыгын колдонуп бекиттим. Бул эң таза чечим эмес, бирок баары жакшы болот. Бир ширетүүчү темирдин кереги жок болушу мүмкүн, бирок мен ada375 эшик сенсоруна жакшыраак зымдарды ширетүү үчүн колдондум, анткени алар өтө эле бошоп кетишти.

Мен корпуска орнотулган бөлүктөр:

-2 лед

-ada375

-hcsr501

-lcd

-айланма экодер

-тез окурман

Калганы нан тактасына бекитилет. (Температура сенсорун корпустун сыртына орнотуу жакшыраак болушу мүмкүн)

5 -кадам: Менин ишим боюнча айрым эскертүүлөр

Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр
Менин ишим боюнча кээ бир эскертүүлөр

Сиз жогорудагы иштин долбоорун таба аласыз. Бул жерде өлчөмдөр:

алдыңкы такта: 40.5 x 30 см

компоненттин корпусунун капталдары: 20 x 30 см

үстү жана асты: 20 x 20 см

Мен сенсор зымдарын өтүү үчүн капталында кичинекей тешик жасадым, ал эми чоңураагы арткы панелде электр жана Ethernet кабелдери үчүн. Алдыңкы 2 леддин тешиктери да бургуланган

Бир кеңеш: Бул ченемдерди көчүрбөңүз! Мен үчүн үстүнкү табак 20.6 x 21.2 см болушу керек болчу, анткени мен жыгачтын калыңдыгын эсепке албадым. Жана бул туура болсо дагы, Pi жана компоненттер отурган корпус жетишерлик чоң эмес. Мен нан панелинин электр энергиясынын кошумча узундугун эсепке алган жокмун, жана мен аны диагоналдуу түрдө ошол жерге жайгаштыра алганыма бактылуу болдум.

Мен болжол менен бирдей өлчөмдөгү алдыңкы тарелканы колдонууну сунуштайм жана арткы корпусту 5 см кеңирээк кылып коюуну сунуштайм. Эшикти жана сенсорлорду бир аз четине жылдыруу үчүн сол жакта жетиштүү боштук калды.

Же, билесиңерби.. Өзүңөрдүн дизайныңарды түзгүлө!

6 -кадам: Ассамблея

Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея

Мен бул тартипте иштөөнү эң оңой деп таптым:

1: жыгачыңызды керектүү өлчөмдө кесип алыңыз

2: алдыңкы табакты алып, компоненттер үчүн оюктарды жасаңыз (эгер сиз муну лазер менен кесүүнү кааласаңыз, файл тиркелет, бирок леддер үчүн эки кошумча тешик керек)

3: керектүү компоненттерди алдыңкы тактага орнотуңуз

4: Бул компоненттерди сыноо-туташтыруу. Иштей турган жериңиз барда муну жакшыраак кылыңыз. Мен аларды тийиштүү зымдарды баш түрүнө айландыруу үчүн скотч менен чаптадым. Бул баары ордунда турганда аларды туташтырууну бир топ жеңилдетет

5: малина пиин ички корпуска орнотуңуз (же аны орнотуу үчүн башка чечимди табыңыз, анткени SD картаны алып салуу дээрлик мүмкүн эмес) Мен колдонгон жаңгактар Пи темир казыктары менен байланышып калгандыктан, түбүн каптадым. электр тасмасы менен.

7 -кадам: Көбүрөөк жыйын

Көбүрөөк Ассамблея
Көбүрөөк Ассамблея
Көбүрөөк Ассамблея
Көбүрөөк Ассамблея
Көбүрөөк Ассамблея
Көбүрөөк Ассамблея
Көбүрөөк Ассамблея
Көбүрөөк Ассамблея

Эми аны бириктиргиле (мен өтө күчтүү жыгач желимин колдондум, анткени бул жыгачтын калыңдыгы 6 мм болгон мыктар же бурамалар менен бактылуу болгон эмес)

Мен корпустун эки каптал панелин астынкы плитанын сырткы четине жабыштырдым жана арткы панелди астынкы табактын үстүнө, каптал плиталардын ортосуна койдум. Бул аны күчтүү кылат, бирок капталдан жана алдыңкы панелдерден 6мм бийик чыгып, арткы плитанын үстүн майдалоого туура келди.

8 -кадам: туташуу

Туташууда
Туташууда
Туташууда
Туташууда
Туташууда
Туташууда

Акырында, иштин ичиндеги компоненттерди кайра туташтырууга убакыт келди. Мен жөн эле нан тактасын ага бекитилген бардык кабелдер менен түшүрдүм, анан орнотулган компоненттерди бир -бирден туташтырдым.

Көрүнүп тургандай, бул чынында өтө таза эмес, андыктан аны туура орнотуунун жакшы жолун табышыңыз мүмкүн

9 -кадам: Программалык камсыздоо

Сиз системаны куралдандыруу жана куралсыздандыруу үчүн rfid окурманы колдонууну кааласаңыз, маалымат базасына колдонуучуну кошууга туура келет. Workbench аркылуу пиңизге туташып, Alarmostat маалымат базасын тандап, төмөнкү буйрукту аткарыңыз:

INSTERT INTO alarmostat.user (iduser, username, usertype, userpassword, userrfidtag) БААЛУУЛУКТАР (DEFAULT, '#колдонуучунун аты', 'колдонуучу', '#пароль', '#rfidid')

туура маанилер менен # алмаштырыңыз. Сиз rfididти репозиторийден rfidtest.py скриптин иштетүү менен таба аласыз. Ал тегиңиздин идентификаторун көрсөтөт:

Программаны баштоодо иштетүү үчүн, окуу текстин караңыз:

10 -кадам: Сиз даярсыз

Сен даярсың
Сен даярсың

Бүттү! сиз элестеткен үйүңүздү коргоого жана температураны көзөмөлдөөгө даярсыз! Көңүл ачыңыз жана кодго жаңы мүмкүнчүлүктөрдү кошууга аракет кылыңыз!

Сунушталууда: