Სარჩევი:

სმარტ სიგნალიზაცია: 6 ნაბიჯი
სმარტ სიგნალიზაცია: 6 ნაბიჯი

ვიდეო: სმარტ სიგნალიზაცია: 6 ნაბიჯი

ვიდეო: სმარტ სიგნალიზაცია: 6 ნაბიჯი
ვიდეო: როგორ დავაკავშიროთ fitpro-საათი android და IOS ის აპლიკაციასთან 2024, ნოემბერი
Anonim
სმარტ სიგნალიზაცია
სმარტ სიგნალიზაცია

სკოლიდან მივიღე დავალება პროექტის შესაქმნელად. მე ავირჩიე სმარტ სიგნალიზაცია, რადგან მე ყოველთვის მძინავს ჩემი სიგნალიზაცია და მენატრება სკოლა მაშინ. თქვენ შეგიძლიათ გაანადგუროთ თქვენი განგაში მხოლოდ იმ შემთხვევაში, თუ არსებობს სინათლე, ხმა და მოძრაობა, ასე რომ თქვენ არ შეგიძლიათ დაიძინოთ ან დაიძინოთ იგი თვალების გახსნის გარეშე. ასევე არსებობს ვებგვერდი, სადაც შეგიძლიათ ნახოთ თქვენი ძილის რეჟიმი, დააყენოთ სიგნალიზაცია და შექმნათ ახალი სიგნალიზაცია.

მარაგები

პროექტის შესაქმნელად საჭიროა გარკვეული მასალები. თქვენ შეგიძლიათ იპოვოთ სია ქვემოთ. თქვენ ასევე შეგიძლიათ ნახოთ ყველაფერი მასალების ანგარიშში, ფასის ჩათვლით.

  1. ჟოლო პი 3
  2. T-cobbler გარღვევის დაფა
  3. PIR- სენსორი
  4. სინათლის სენსორი
  5. ხმის გამოვლენის სენსორი
  6. ბუზერი
  7. LCD დისპლეი
  8. ღილაკი

ნაბიჯი 1: აპარატურა

ტექნიკა
ტექნიკა

სანამ დავიწყებდი ყველაფრის აგებას, მე გავაკეთე 2 სქემა (1 ელექტრო და 1 პურის დაფაზე) გაყინვაზე და გავკონტროლე ისინი, რათა დარწმუნებულიყვნენ, რომ მასში ხარვეზები არ იყო. მას შემდეგ რაც დავრწმუნდი, რომ ყველაფერი კარგად იყო, დავიწყე პროექტი. უპირველეს ყოვლისა დავიწყე ზუზერის და ღილაკით, რადგან ეს იყო ყველაზე მარტივი კომპონენტები. ამის შემდეგ მე დავამატე ჩემი ეკრანი ჟოლოს პი. ბოლოს მე დავუკავშირე ჩემი სენსორები. სინათლის სენსორი და მოძრაობის სენსორი ადვილია, რადგან თქვენ სხვა არაფერი გჭირდებათ, მაგრამ PIR სენსორს სჭირდება რაიმე დამატებითი. იმის უზრუნველსაყოფად, რომ PIR არ გააკეთებს მოკლე ჩართვას, თქვენ უნდა გამოიყენოთ ძაბვის ხიდი. ეს ნიშნავს, რომ თქვენ უნდა გამოიყენოთ დამატებითი წინააღმდეგობა 1k ohm და 2k ohm, რომ დარწმუნდეთ, რომ ყველაფერი კარგად მიდის. ქინძისთავების ზუსტი გამოყენება და როგორ დაუკავშიროთ ყველაფერი პი -ს შეგიძლიათ იხილოთ სქემებში.

ნაბიჯი 2: მონაცემთა ბაზა

Მონაცემთა ბაზა
Მონაცემთა ბაზა

ყველა მონაცემის შესანახად მჭირდებოდა მონაცემთა ბაზა.

ჩემი მონაცემთა ბაზა შეიცავს 6 ცხრილს.

  1. სენსორი
  2. ისტორიის_სენსორები
  3. პირი
  4. სიგნალიზაციის_ პირი
  5. ძილი_მამულო
  6. მაღვიძარა

მონაცემთა ბაზაში არის 2 ნაწილი. 1 სენსორებისთვის და 1 პიროვნებისთვის და მისი ყველა სტატისტიკა.

სენსორების ცხრილი შეიცავს ID- ს და სახელს. ეს ცხრილი დაკავშირებულია ისტორიის_სენსორებთან, რომელსაც აქვს ID, მნიშვნელობა, Sensor_id და სახელი. sensor_id საჭიროა ვიცოდეთ რომელი სენსორს აქვს მნიშვნელობა და თარიღი საჭიროა იმის გასარკვევად როდის გაზომა სენსორმა.

მაგიდის პირი შეიცავს პირადობის მოწმობას, სახელს და პაროლს. პაროლი და სახელი საჭიროა სისტემაში შესასვლელად, ასე რომ ვერავინ შეძლებს განგაშის დაყენებას თქვენთვის. ეს მაგიდა დაკავშირებულია sleep_pattern მაგიდასთან და Alarm_person მაგიდასთან. Sleep_patern მაგიდა შეიცავს ID, Hours_sleep, Date, Person_id, Bedtime და Wake_up_time. ასე რომ, აქ არის მონაცემები, რომლებიც ინახება თქვენი ძილის მამასახლისის შესახებ.

მაგიდა Alarm_person შეიცავს Person_id, Alarm_id და დროს. ეს ცხრილი საჭიროა, რადგან სხვადასხვა ადამიანებს შეუძლიათ ერთდროულად გამოიყენონ სიგნალიზაცია და 1 ადამიანს შეუძლია გამოიყენოს მრავალჯერადი სიგნალიზაცია. ბოლო მაგიდა არის განგაშის მაგიდა. ეს შეიცავს პირადობის მოწმობას და აღწერას.

ნაბიჯი 3: უკანა ნაწილი

უკანა ნაწილი
უკანა ნაწილი
უკანა ნაწილი
უკანა ნაწილი

უკანა ნაწილში მომიწია სხვადასხვა ფუნქციის დაწერა.

  1. მოითხოვეთ მაგიდის სენსორები
  2. მოითხოვეთ მაგიდის ისტორია_სენსორები
  3. მოითხოვეთ ძილის რეჟიმი
  4. დააყენეთ ახალი სიგნალიზაცია
  5. მოითხოვეთ მაგიდის სიგნალიზაცია
  6. მომხმარებლის რეგისტრაცია
  7. შესვლა
  8. განათავსეთ სენსორების მნიშვნელობები ცხრილში history_sensors

მე გამოვიყენე pycharm და დავწერე კოდი პითონში.

ყველა ფუნქციისთვის ვიყენებ @app.route- ს და შემდეგ მისამართს. ყოველ ჯერზე თქვენ უნდა გამოიყენოთ განსხვავებული მისამართი, რადგან წინააღმდეგ შემთხვევაში ის არ იმუშავებს. ამის შემდეგ მე ვწერ if ფუნქციას მეთოდით მნიშვნელობით, ასე რომ როდესაც ეს სიმართლეა ის ასრულებს კოდს. if ღირებულებაში არის try catch და sql განცხადება მონაცემების მისაღებად ან მონაცემების გადასატანად.

სენსორებთან დაკავშირებული ფუნქციებისთვის ეს განსხვავებულია. აქ მე არ გამოვიყენე @app.route, მაგრამ მხოლოდ ფუნქცია გავაკეთე სენსორისთვის. აქ თქვენ აცხადებთ თქვენს ქინძისთავებს და აკეთებთ გამოძახების ფუნქციას. ამ გზით ყოველ ჯერზე სენსორი აღმოაჩენს რაღაც ფუნქცია შესრულებულია. გამოძახების ფუნქციაში გამოვიყენე, თუ მუშაობს, როდესაც სენსორი აღმოაჩენს რაღაცას. If- ში დგას კოდი ცხრილში მონაცემების განთავსებისთვის sql განცხადებით. მასში ასევე არის ძილი, რადგან სხვაგვარად ის ძალიან ბევრ მნიშვნელობას დააყენებს ცხრილში მხოლოდ 1 ამოცნობისთვის.

ჩემს github– ში შეგიძლიათ იხილოთ პროექტის სრული კოდი.

ნაბიჯი 4: საიტი

ვებგვერდი
ვებგვერდი
ვებგვერდი
ვებგვერდი
ვებგვერდი
ვებგვერდი

ჩემი ვებსაიტისთვის ვიმუშავე html– ით და css ჩემი ვებ გვერდი შეიცავს 11 html გვერდს.

იმდენი გვერდია, რადგან ყველაფერი მუშაობს ვებსაიტის საშუალებით. შეგიძლიათ დააყენოთ მაღვიძარა, დაამატოთ მაღვიძარა და წაშალოთ ერთი. პარამეტრების გვერდზე შეგიძლიათ შეცვალოთ თქვენი პაროლი და ელ. თქვენ გაქვთ გვერდი თქვენი ძილის ნიმუშისთვის. თქვენ ასევე შეგიძლიათ დაამატოთ მომენტი, როდესაც დაიძინეთ და როდესაც გაიღვიძეთ. დადებითი ის არის, რომ ყველა გვერდს აქვს ერთი და იგივე გარეგნობა და იყენებს ძირითადად ერთსა და იმავე ნივთებს, ამიტომ css ხშირად ერთნაირია ყველა გვერდზე.

ნაბიჯი 5: წინა ნაწილი

წინა ნაწილი დაწერილია javascript– ში.

ნაბიჯი 6: საქმე

საქმე
საქმე
საქმე
საქმე

ჩემი საქმისთვის შევარჩიე ხის გამოყენება. მისი გაჭრა არც ისე რთულია, გამოიყურება ლამაზი. ჩემი საქმე არის 26 სმ 14 სმ სიმაღლეზე 7, 5 სმ. ეს ძალიან დიდია, რადგან ყველაფერია საჭირო, რომ მოერგოს. მე ხვრელები გავაკეთე სენსორებისთვის, ღილაკისთვის და LCD– ისთვის, რათა დრო ხილული იყოს და სენსორებს შეეძლოთ მოძრაობის ან სინათლის გამოვლენა. ამის გასაკეთებლად გამოვიყენე ლაზერული საჭრელი. კორპუსის შიგნით ზის ჩემი პურის დაფა და ჟოლოს პი.

გირჩევთ: