Мазмуну:

Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат: 10 кадам (сүрөттөр менен)
Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат: 10 кадам (сүрөттөр менен)

Video: Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат: 10 кадам (сүрөттөр менен)

Video: Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат: 10 кадам (сүрөттөр менен)
Video: Подруги_Рассказ_Слушать 2024, Июль
Anonim
Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат
Акылдуу ойготкуч саат: Raspberry Pi менен жасалган акылдуу ойготкуч саат

Сиз качандыр бир убакта акылдуу саатты кааладыңыз беле? Андай болсо, бул сиз үчүн чечим!

Мен Smart Alarm Clock жасадым, бул веб -сайтка ылайык ойготкуч убактысын өзгөртө турган саат. Ойготкуч өчкөндө үн чыгат (ызы -чуу) жана 2 жарык күйөт (2 LED). Светодиоддор караңгы болгондо гана жанат (жарык сенсору). Светодиоддор бөлмөнүн жарык болушун камсыздайт, ошондо сиз табигый турасыз. Сигналды өчүрүү үчүн баскычты басыңыз. Тындыруу функциясын колдонгуңуз келгенде (+5 мүнөт), сиз УЗИ сенсорунун алдында колуңузду кармашыңыз керек. Эгерде кыймыл аныкталса (УЗИ сенсору), ЖКнын абалы өзгөрөт.

ЖКнын абалы:

  1. Сайттын IP-дареги
  2. Саат / дата
  3. Кийинки ойготуу убактысы
  4. Температура жана нымдуулук

Бул менин изилдөө тармагымдагы биринчи долбоорум: Howest шаарындагы мультимедия жана байланыш технологиясы (MCT) (Kortrijk belgium).

1 -кадам: Компоненттер жана материалдар

Компоненттер жана материалдар
Компоненттер жана материалдар
Компоненттер жана материалдар
Компоненттер жана материалдар
Компоненттер жана материалдар
Компоненттер жана материалдар

Менин долбоорум үчүн мен төмөндө тизмектей турган бир нече бөлүктөрдү колдондум, мен Excel файлын компоненттердин бардык тиешелүү баалары менен кошо заказ кылган веб -сайттарды да кошом.

Компоненттер

  • Raspberry Pi 3 модели B+
  • Raspberry Pi электр менен камсыздоо
  • Lcd дисплей
  • Коңгуроо
  • LDR
  • 2 Led's
  • DHT-11
  • HC-SR04 УЗИ аралык сенсор
  • Button
  • Триммер

Материалдар:

  • Жыгач 7 мм
  • Жыгач 2см
  • Жабылган фильм

Куралдар:

  • Soldering
  • Супер клей
  • Көрдүм
  • Бурамалар
  • Бургулоо

Төмөндөгү PDF файлында сиз баалардын толук тизмесин көрө аласыз.

2 -кадам: Аппараттык жабдууларды бириктирүү

Аппараттык жабдууларды бириктирүү
Аппараттык жабдууларды бириктирүү
Аппараттык жабдууларды бириктирүү
Аппараттык жабдууларды бириктирүү

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

  1. 15 см аралыкта кыймылды аныктоочу УЗИ аралык сенсору бар (өзүн -өзү коддуу аралык) жана ал LCDдин абалын өзгөртөт, бирок эгер ойготкуч күйгүзүлсө, сигналды 5 мүнөткө тындырат.
  2. ЖК экраны бар, ал 4 статусту көрсөтөт (ip-дарек, күн/убакыт, кийинки ойготкуч, темп/юм)
  3. Абанын температурасын жана нымдуулугун өлчөөчү dht11
  4. Сигналды өчүрүү баскычы же эгер 3 секунддан көп бассаңыз, rpi өчөт
  5. Орнотулган ойготкуч учурдагы убакытка дал келсе, ызы -чуу үчүн
  6. Бөлмөдөгү жарыкты өлчөө үчүн LDR сенсору
  7. 2 Караңгы болсо, бөлмөнү жарыктандыруу үчүн -> LDR

3 -кадам: Маалыматтар базасынын модели (mySQL)

Маалыматтар базасынын модели (mySQL)
Маалыматтар базасынын модели (mySQL)

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

Бул маалымат базасы менен сиз көптөгөн нерселерди көрсөтө аласыз:

  • Температура
  • Нымдуулук
  • Жарык мааниси
  • Ойготуу убактысы коюлду/өчүрүлдү/тындырылды
  • Эгерде сигнализация иштесе
  • Эгерде жарыктар күйүп турган болсо

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

4 -кадам: Raspberry Pi менен байланыш

Raspberry Pi менен байланыш
Raspberry Pi менен байланыш

Биринчиден, сиз Putty жүктөп алышыңыз керек, алардын веб -сайтында акысыз версия бар. Сизге Raspbian да керек болот, аны бул жерден жүктөп алсаңыз болот.

Putty'ди ачканыңызда, "сессияны" чыкылдатууңуз керек болот. Муну аткаргандан кийин, "Алыскы хост" астындагы Piнин IP дарегин толтурушуңуз керек болот. Андан кийин сиз тандай турган колдонуучунун атын киргизе аласыз. андан кийин "OK" чыкылдатыңыз.

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

5 -кадам: Raspberry Piдеги программалык камсыздоо

Raspberry Pi боюнча программалык камсыздоо
Raspberry Pi боюнча программалык камсыздоо

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

Биринчиден, төмөнкү буйрукту киргизүү менен тутумуңуздун пакеттер тизмесин жаңыртыңыз: sudo apt-get update Кийинки, төмөнкү буйрук менен бардык орнотулган пакеттериңизди акыркы версияларына жаңыртыңыз: sudo apt-get dist-upgrade Сиз пакеттерди орноткондон кийин кээ бир китепканаларды орнотуу керек:

  • Flaskflask_cors
  • RPI. GPIO
  • Дата убакыт
  • жип салуу
  • убакыт
  • субпроцесс
  • mysq
  • lSocketIO

6 -кадам: Raspberry Piде веб -серверди орнотуу

Raspberry Piде веб -серверди орнотуу
Raspberry Piде веб -серверди орнотуу

Putty консолуңузга өтүңүз.

биз Apache веб -серверин орнотобуз. Муну менен сиз тармакка туташкан каалаган түзмөктө вебсайтты ача аласыз. Төмөнкү буйрукту териңиз жана enter баскычын басыңыз: sudo apt-get install apache2

Эми папкага өтүңүз:/var/www/html/Бул жерде сиз бардык файлдарыңызды веб -сайтыңыздан жайгаштыра аласыз жана index.html баракчасы сиздин Пи IPиңизди караган сайын ачылат. index.htmlге I тамгасын жазуудан сак болуңуз, антпесе ал индекстин баракчасын автоматтык түрдө ачпайт.

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

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

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

Мен Ultrasonic сенсор, жарык, LDR жана ЖК үчүн кээ бир класстарды коддогон. Мен DHT11-сенсор үчүн китепканаларды колдондум. (импорттук Adafruit_DHT) Акыры мен долбоордун толук иштеши үчүн бир гана файлды колдоном, бул app.py. Ошондой эле бул файлда мен кээ бир маршруттарды коддогом, андыктан мен маалымат базамдагы маалыматтарды окуй алам жана json объектине жөнөтөм, кийин мен аны JavaScript файлдарымда колдондум.

8 -кадам: Программалык камсыздоо: Вебсайт

Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт
Программалык камсыздоо: Вебсайт

Анткени мен сайтта ойготкуч коюуга мүмкүнчүлүк түздүм. Ошентип, мен муну кылууга уруксат берүү үчүн вебсайт жасадым. Сайт аркылуу сиз нымдуулукту, температураны жана тарыхты көрө аласыз.

Pi жүктөлүп жатканда, ал менин питон скриптимди иштете баштайт. Бул веб -сайтта көрсөтүлүүчү маалыматтарды алуу жана ойготкучту орнотуу үчүн кам көрөт. Сайт ошондой эле жооп берет, ошондуктан ал мобилдик телефондо функцияларын жоготпостон же башка жол менен ачылышы мүмкүн.

Менин кодумду githubдан ушул жерден тапса болот.

9 -кадам: Ишти куруу

Ишти куруу
Ишти куруу
Ишти куруу
Ишти куруу
Ишти куруу
Ишти куруу

Мен үчүн, мен саатты тууроо үчүн кутуча курам.

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

10 -кадам: Колдонуучу Manuel

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

Окуу үчүн рахмат.

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