Мазмұны:

Ақылды дабыл: 6 қадам
Ақылды дабыл: 6 қадам

Бейне: Ақылды дабыл: 6 қадам

Бейне: Ақылды дабыл: 6 қадам
Бейне: Өлді деп жерлемек болған еді. Бірақ Алланың қалауымен тірілген Бала 2024, Қараша
Anonim
Ақылды дабыл
Ақылды дабыл

Мектептен маған жоба жасауға тапсырма берілді. Мен ақылды дабылды таңдадым, себебі мен әрқашан дабылды ұйықтаймын және сол кезде мектепті сағындым. Сіз дабылды жарық, дыбыс және қозғалыс болған жағдайда ғана өлтіре аласыз, сондықтан көзді ашпай ұйықтап қалуға немесе оны кейінге қалдыруға болмайды. Сондай -ақ, ұйқы режимін көруге, дабылдарды орнатуға және жаңа дабылдарды жасауға болатын веб -сайт бар.

Жабдықтар

Жобаны құру үшін бірнеше материалдар қажет. төмендегі тізімді таба аласыз. Сіз сонымен қатар материалдардың есебінен бәрін қоса, бағаны таба аласыз.

  1. Таңқурай пи 3
  2. T-өтпелі тақта
  3. PIR сенсоры
  4. Жарық сенсоры
  5. Дыбысты анықтайтын сенсор
  6. Зумер
  7. СКД дисплей
  8. Түйме

1 -қадам: Жабдық

Аппараттық құрал
Аппараттық құрал

Барлығын салуды бастамас бұрын мен фризде 2 схеманы (1 электрлік және 1 нан тақтасында) жасадым және оларда ақаулар жоқ екеніне көз жеткіздім. Бәрі жақсы екеніне көзім жеткен соң, мен жобаны бастадым. Ең алдымен, мен дыбыстық сигнал мен түймеден бастадым, себебі бұл ең қарапайым компоненттер. Осыдан кейін мен дисплейді таңқурай пиіне қостым. Соңында мен сенсорларды қостым. жарық сенсоры мен қозғалыс сенсоры оңай, себебі сізге басқа ештеңе қажет емес, бірақ PIR сенсорына қосымша нәрсе қажет. PIR қысқа тұйықталуға жол бермеу үшін кернеу көпірін қолдану қажет. Бұл бәрі жақсы болатынына сенімді болу үшін сізге қосымша 1к ом және 2к ом резисторды қолдану қажет дегенді білдіреді. Түйреуіштердің нақты қолданылуы мен барлығын pi -ге қалай қосу керектігін схемалардан табуға болады.

2 -қадам: мәліметтер базасы

Дерекқор
Дерекқор

Деректерді сақтау үшін маған мәліметтер базасы қажет болды.

Менің мәліметтер қорымда 6 кесте бар.

  1. Сенсор
  2. Тарих_сенсорлары
  3. Адам
  4. Дабыл_кісі
  5. Ұйқы_атасы
  6. Дабыл

мәліметтер базасында 2 бөлім бар. Сенсорлар үшін 1 және адам мен оның барлық статистикасы үшін 1.

Сенсорлық кестеде идентификатор мен атау бар. Бұл кесте идентификаторы, мәні, Sensor_id және аты бар History_sensors -қа қосылған. sensor_id сенсор қандай мәнге ие екенін білу үшін қажет, ал датчик сенсор оны қашан өлшегенін білу үшін қажет.

Кесте адамында идентификатор, аты мен пароль бар. Кіру үшін пароль мен атау қажет, сондықтан ешкім сізге дабыл қоя алмайды. Бұл кесте sleep_pattern кестесіне және Alarm_person кестесіне қосылған. Sleep_patern кестесінде идентификатор, Ұйқы уақыты, Күні, Тұлға нөмірі, Ұйқы уақыты мен Ояну уақыты бар. Міне, сіздің ұйқыңыздың ата -анасы туралы график құру үшін сақталған деректер.

Alarm_person кестесінде Person_id, Alarm_id және уақыт бар. Бұл кесте қажет, себебі әр түрлі адамдар бір уақытта дабылды қолдана алады және 1 адам бірнеше дабылды қолдана алады. Соңғы кесте - дабыл үстелі. Бұл идентификатор мен сипаттаманы қамтиды.

3-қадам: Артқы жағы

Артқы жағы
Артқы жағы
Артқы жағы
Артқы жағы

Артқы жағында маған әр түрлі функцияларды жазу керек болды.

  1. үстел сенсорларын сұраңыз
  2. history_sensors кестесін сұраңыз
  3. ұйқы режимін сұраңыз
  4. жаңа дабыл қою
  5. үстел дабылын сұраңыз
  6. пайдаланушыны тіркеу
  7. кіру
  8. history_sensors кестесіне датчиктердің мәндерін қойыңыз

Мен пихармды қолдандым және кодты питонда жаздым.

барлық функциялар үшін мен @app.route, содан кейін мекенжайды қолданамын. әр уақытта сізге басқа адресті пайдалану қажет, себебі олай болмайды. Осыдан кейін мен әдісімен if функциясын мән ретінде жазамын, егер бұл рас болса, ол кодты орындайды. if мәнінде деректерді алу немесе деректерді қою үшін try catch және sql операторы бар.

Сенсорлары бар функциялар үшін бұл басқаша. Мұнда мен @app.route қолданбадым, тек сенсорға арналған функция жасадым. мұнда сіз түйреуіштерді жариялайсыз және кері шақыру функциясын жасайсыз. осылайша сенсор бірдеңені анықтаған кезде функция орындалады. Қайта шақыру функциясында мен сенсор бірдеңе анықтаған кезде жұмыс істейтін if қолдандым. If ішінде sql операторы бар деректерді кестеге қою коды бар. Сондай -ақ, ұйықтау бар, себебі олай болмаған жағдайда кестеде тек 1 анықтау үшін тым көп мәндер болады.

Менің github -те сіз жобаның толық кодын таба аласыз.

4 -қадам: веб -сайт

Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт
Веб -сайт

Менің веб -сайтым үшін мен html және css -пен жұмыс істедім, менің веб -сайтымда 11 html беттері бар.

Беттер көп, себебі бәрі веб -сайтта жұмыс істейді. сіз дабылды орнатуға, дабылды қосуға және өшіруге болады. Параметрлер бетінде пароль мен электрондық поштаны өзгертуге болады. Сізде ұйқы режиміне арналған бет бар. Сіз ұйықтаған және оянған сәтті қоса аласыз. Позитивті нәрсе - әр бет бірдей көрінеді және көбінесе сол нәрселерді пайдаланады, сондықтан CSS әр бетте жиі бірдей болады.

5-қадам: алдыңғы жақ

Алдыңғы жағы JavaScript-те жазылған.

6 -қадам: іс

Іс
Іс
Іс
Іс

Менің жағдайым үшін мен ағашты таңдадым. Оны кесу соншалықты қиын емес, әдемі көрінеді. Менің корпусым 14 см -ден 26 см, биіктігі 7,5 см. Бұл өте үлкен, себебі бәрі сәйкес болуы керек. Мен сенсорларға, түймеге және дисплейге тесіктер жасадым, сондықтан уақыт көрінеді, сенсорлар қозғалысты немесе жарықты анықтай алады. Оларды жасау үшін мен лазерлік кескішті қолдандым. Корпустың ішінде менің тақтайшам мен таңқурай пи отырады.

Ұсынылған: