Სარჩევი:
- ნაბიჯი 1: მოამზადეთ პი
- ნაბიჯი 2: გააფორმეთ ეს ყველაფერი
- ნაბიჯი 3: შეამოწმე შენი I2C
- ნაბიჯი 4: დააინსტალირეთ MySQL და PhpMyAdmin
- ნაბიჯი 5: დააინსტალირეთ პითონის მოდულები
- ნაბიჯი 6: კოდი მონაცემთა ბაზაში შესასვლელად
- ნაბიჯი 7: კოდი ტემპერატურის ჩვენებისათვის
- ნაბიჯი 8: 3D ბეჭდვით დანართი
- ნაბიჯი 9: გასაკეთებელი
ვიდეო: ჟოლოს პი ბარომეტრი ამინდის საათი: 9 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ამ სასწავლო ინსტრუქციაში მე გაჩვენებთ თუ როგორ უნდა ავაშენოთ ძირითადი თერმომეტრი / ბარომეტრი საათის გამოყენებით Raspberry Pi 2 Raspberry Pi 2 -ით BMP180 I2C სენსორით ადაფრუტის 4 ციფრიანი 7 სეგმენტის I2C ეკრანზე. Pi ასევე იყენებს DS3231 რეალურ დროში I2C საათის მოდულს, რომ შეინარჩუნოს დრო, როდესაც Pi განახლდება.
საათი გადის 4 საფეხურზე თითოეული 5 წამის განმავლობაში. ჯერ აჩვენებს ტემპერატურას ცელსიუსში, შემდეგ ფარენჰეიტში, შემდეგ ბარომეტრულ წნევას kPa * - ში (ეს რიცხვი მიდის მარცხნივ ციფრების შეზღუდული რაოდენობის გამო) და ბოლოს გვიჩვენებს ბარომეტრული წნევის ცვლილების ტენდენციას ახლა და საშუალო მაჩვენებელს შორის წინა საათი.
რაც ამ საათს უმეტესობისგან განასხვავებს ის არის, რომ ის იყენებს MySQL მონაცემთა ბაზას Pi– ზე BMP180– დან მონაცემების ყოველ წუთში შესასვლელად. ვინაიდან ამჟამინდელი ბარომეტრიული წნევა არ არის ისეთი ღირებული, როგორც მისი მოძრაობა ზემოთ ან ქვემოთ მოცემულ პერიოდში, ის იყენებს ამ მონაცემთა ბაზას, რომ გამოთვალოს საშუალოდ ერთი საათის ინტერვალი 2 საათიდან 1 საათის წინ და ადარებს მას მიმდინარე წნევას. ბარომეტრული წნევის მნიშვნელოვანი ზრდა ჩვეულებრივ მიუთითებდა ამინდის პირობების გაუმჯობესებაზე, ხოლო დიდ ვარდნას შეუძლია გააფრთხილოს მოსალოდნელი ქარიშხალი.
საათი მოთავსებულია 3D დაბეჭდილ ABS კორპუსში, BMP180 ვენტილირებული თავსახურით საათის უკანა მხარეს, რათა თავიდან იქნას აცილებული Pi- ს მიერ წარმოქმნილი სითბოს გავლენა ტემპერატურის მაჩვენებლებზე. მე მოგაწვდით Autodesk 123D Design სქემატურს, თუ გსურთ თქვენი საკუთარი ბეჭდვა.
საათი იკვებება სტანდარტული USB კედლის მეჭეჭით და ჯამში იღებს დაახლოებით 450 mA- ს.
ძალიან ბევრ დეტალს არ შევაწყობ Pi და I2C– ის ძირითად დაყენებაზე, რადგან ეს უკვე ბევრ სხვა ინსტრუქციაშია გაშუქებული, რომლებთანაც მე მოგაწვდით ბმულებს.
ნაბიჯი 1: მოამზადეთ პი
შექმენით თქვენი Raspberry Pi - დეტალები Raspberrypi.org– ზე
- ჩამოტვირთეთ და დააინსტალირეთ თქვენი არჩეული Linux Distribution SD ბარათზე - მე გამოვიყენე Raspbian
- შეაერთეთ პი და ჩატვირთეთ
- მე გამოვიყენე მიკრო WiFi ადაპტერი, რომ დავუკავშირო pi ჩემს როუტერს, რადგან საათის კორპუსი ფარავს Ethernet პორტს.
- მე გამოვიყენე უსათაურო რეჟიმი, სადაც თქვენ უკავშირდებით pi– ს SSH– ის გამოყენებით, ასე რომ ყველაფერი რაც თქვენ გჭირდებათ ჩართული არის ძალა.
- I2C– ის კონფიგურაცია Pi– ზე - მე შევასრულე ეს ინსტრუქციები ადაფრუტის საიტზე.
ნაბიჯი 2: გააფორმეთ ეს ყველაფერი
ყველა მოდული, რომელსაც მე ვიყენებ ამ პროექტში არის 5V ტოლერანტული და იყენებს I2C- ს, რომელიც არის 2 მავთულის პროტოკოლი, რომელიც გამოიყენება IC– ებისთვის ერთმანეთთან კომუნიკაციისთვის, ამიტომ გაყვანილობა საკმაოდ მარტივია. შეაერთეთ ყველა VCC 5V- თან, ყველა საფუძველი ერთად და ყველა SCA და SCL ხაზი ერთად სქემატური სქემის მიხედვით. სამუშაო დასრულებულია.
ნაბიჯი 3: შეამოწმე შენი I2C
I2C ინსტალაციის ნაწილია i2cdetect– ის გაშვება, რომელიც უნდა გამოიყურებოდეს თანდართულ სურათზე, თუ ყველაფერი სწორად არის შეკრული.
ქვემოთ მოცემულია შესაბამისი მისამართები
- 0x70 = 7 სეგმენტის ჩვენება
- 0x77 = BMP180 თერმომეტრი / ბარომეტრის სენსორი
- 0x68 = DS3231 რეალურ დროში საათის მოდული
- 0x57 = DS3231 ბორტზე EEPROM განგაშის მონაცემების შესანახად.
ნაბიჯი 4: დააინსტალირეთ MySQL და PhpMyAdmin
MySQL– ის დაყენება საკმაოდ სწორია თუ მიჰყვებით აქ გაკვეთილს
sudo apt-get დააინსტალირეთ mysql- სერვერი
მე ასევე დავაყენე phpMyAdmin, რომელიც არის ვებ – გვერდი, რომელიც მუშაობს Apache– ზე და რომლის საშუალებითაც შეგიძლიათ შექმნათ და მართოთ mySQL მონაცემთა ბაზები. გაკვეთილი აქ
sudo apt-get დააინსტალირეთ phpmyadmin
დაინსტალირების შემდეგ მე შევქმენი მონაცემთა ბაზა სახელწოდებით BP180 phpMyAdmin– ის გამოყენებით, სურათის მიხედვით სტრუქტურით.
მე ასევე ვიყენებ პითონის მოდულს, სახელწოდებით mysqlDB, რომლის ინსტალაციაც შეგიძლიათ
sudo apt-get დააინსტალირეთ python-mysqldb
ნაბიჯი 5: დააინსტალირეთ პითონის მოდულები
ჩამოტვირთეთ და დააინსტალირეთ პითონის ქვემოთ მოყვანილი მოდულები, რომლებსაც გამოიყენებთ სენსორებთან დასაკავშირებლად.
- Adafruit_BMP085 მოდული
- SDL_DS3231 მოდული
- Adafruit 7 სეგმენტის მოდული
ნაბიჯი 6: კოდი მონაცემთა ბაზაში შესასვლელად
ქვემოთ მოყვანილი კოდის ფრაგმენტი გამოიყენება ტემპერატურისა და ბარომეტრული წნევის შესასვლელად და ეწოდება cron სკრიპტიდან (Linux– ის დაგეგმილი ამოცანები), რომელიც მუშაობს ყოველ 5 წუთში. იმის გასაგებად, თუ როგორ გამოიყენოთ crond, გადახედეთ ამ გაკვეთილს.
NB! ნუ შეგაწუხებთ ჩემი კოდირების უნარების გაფუჭება, მე არ ვარ დეველოპერი, ასე რომ, ალბათ, ამის გასაკეთებლად მილიონი უკეთესი, სწრაფი, რბილი, სუფთა გზა არსებობს
თქვენ შეამჩნევთ კოდში, რომ ტემპერატურა 7 გრადუსით არის შემცირებული, რაც ექვივალენტურია ჟოლოს პი წარმოქმნილი სითბოს, თუნდაც კორპუსის გარედან დამონტაჟებული BMP180. როდესაც მე თავდაპირველად მქონდა იგი საცხოვრებლის შიგნით, ის იყო დაახლოებით 15 გრადუსი უფრო ცხელი ვიდრე გარემო. როგორც ჩანს, საკმაოდ სწორხაზოვანია, მაგრამ მე არ მქონია შესაძლებლობა, რომ რაიმე უკიდურესობა გამომეცადა. თქვენი გამოცდილების გამოხმაურება დასაფასებელი იქნება.
ნაბიჯი 7: კოდი ტემპერატურის ჩვენებისათვის
ამ კოდს ეწოდება შემომავალი ეკრანის მეშვეობით შესავლის მიხედვით.
კიდევ ერთხელ, მე არ ვარ დეველოპერი, ამიტომ კოდი მართლაც უხეშია, მაგრამ მუშაობს
ნაბიჯი 8: 3D ბეჭდვით დანართი
შემდეგი არის დანართის დიზაინი. ეს საკმაოდ რთული იყო, რადგან ფორმა მიდრეკილია გადახრისკენ, რადგან გარეთა გარსის ნაწილები მხოლოდ 2 მმ სისქისაა. მე ჯერ დავხატე Pi- ს და ყველა ნაწილის იმიტირებული ვერსიები და შემდეგ დავაპროექტე გარს მის გარშემო. ბეჭდვას დაახლოებით 7 საათი დასჭირდა ჩემს RapMan 3.2 -ზე (რაც საკმაოდ ნელი პრინტერია) 0.25 ფენის სიღრმეზე.
თანდართული სქემა შესრულებულია Autodesk 123D Design– ში, რაც, ჩემი აზრით, არის უფასო პროგრამული უზრუნველყოფის ფანტასტიკური ნაწილი.
გაითვალისწინეთ, რომ ზოგიერთი ხვრელი, როგორიც Pi– ს დასამაგრებლად არის საჭირო, არ არის დიზაინში, რადგან უკეთესია ამის შემდეგ გაბურღვა, თუ თქვენი ბეჭდვა ცოტა გახდება. მყარი ხელით 3 მმ საბურღი არის ყველაფერი რაც თქვენ გჭირდებათ. მონიშნეთ ბიტის სიღრმე ნიღაბიანი ლენტით, რათა შემთხვევით არ წახვიდეთ პირდაპირ თქვენს 7 -საათიან ბეჭდვაში, როგორც მე.
ნაბიჯი 9: გასაკეთებელი
- რეალურ დროში საათი იყო დამატება მას შემდეგ, რაც დანართი დაბეჭდილ იქნა მე -5 ჯერ, ასე რომ ის ამჟამად ცხელადაა მიმაგრებული შიგთავსის მხარეს, რომელიც არ გამოიყურება კარგად, ამიტომ მინდა ხელახლა გავაკეთო დიზაინი და დავამატო ადგილი მისთვის.
- 7 სეგმენტის ეკრანის სიკაშკაშე ამჟამად არის ყველაზე მსუბუქი, რაც არ არის ოპტიმალური ძლიერი განათების პირობებში. მე მინდა დავამატო ფოტო რეზისტორი შიგთავსის თავზე და შეცვალოს 7 სეგმენტის სიკაშკაშე გარემოს შუქის პირობებიდან გამომდინარე.
- არსებობს მცირედი დიზაინის პრობლემები ბაზის ბზარებთან დაკავშირებით, რომელიც ასევე გამოსწორდება.
- ნებისმიერი იდეა მისასალმებელია.
ვიმედოვნებ, რომ ისიამოვნეთ ამ სასწავლო ინსტრუქციით და აღმოჩნდით საკმარისად შთამაგონებელი თქვენი წასაყვანად. იდეა არის უზრუნველყოს პლატფორმა, რომელიც შეგიძლიათ გამოიყენოთ თქვენი საკუთარი იდეების დასამატებლად. Გაერთე!
გირჩევთ:
IoT ბარომეტრი: 5 ნაბიჯი (სურათებით)
IoT ბარომეტრი: გაზომეთ და დაარეგისტრირეთ ტემპერატურა და ატმოსფერული წნევა ამ IoT ბარომეტრით. მე მინდა წარმოგიდგინოთ IoT ბარომეტრი. ის იძლევა ტემპერატურისა და წნევის მონაცემების გაზომვის და შენახვის საშუალებას Adafruit IoT პლატფორმაზე. მე გამოვაქვეყნე მსგავსი პროექტი, რომელიც მ
ESP32 ამინდის ამინდის სადგური: 16 ნაბიჯი (სურათებით)
ESP32 Weathercloud ამინდის სადგური: გასულ წელს, მე გამოვაქვეყნე ჩემი ყველაზე დიდი Instructable დღემდე სახელწოდებით Arduino Weathercloud Weather Station. ძალიან პოპულარული იყო მე ვიტყოდი. ის ნაჩვენები იყო Instructables– ის მთავარ გვერდზე, Arduino– ს ბლოგში, Wiznet მუზეუმში, Instructables Instagram– ში, Arduino Instagr
ჟოლოს ჟოლოს საათი უყურეთ მას ესმის და იგრძენი: 5 ნაბიჯი (სურათებით)
Raspberry Pi Oled Clock Watch It Hear It and Feel It: ეს არის ჭკვიანი საათი, რომელიც აჩვენებს დროს OLED ეკრანზე და ასევე შეგიძლიათ მოისმინოთ დრო სხვადასხვა დროის ინტერვალში, რაც სავსეა ბრმა ადამიანებისთვის და ის ასევე ცვლის დროინდელ ფერს დროთა განმავლობაში ბინდის შუქი საღამოს ნარინჯისფერი ხდება ყვითელი და მოსწონს
ნიქსი საათის განწყობის ბარომეტრი: 7 ნაბიჯი (სურათებით)
ნიქსის საათის განწყობის ბარომეტრი: პროგრესის შეუმჩნეველი მსხვერპლი არის სახლის ანეროიდული ბარომეტრი. ამ დღეებში, თქვენ მაინც შეგიძლიათ იპოვოთ მაგალითები ოთხმოცდაათზე მეტი ადამიანის სახლში, მაგრამ მილიონობით სხვა ნაგავსაყრელზე ან იბეიზეა. სინამდვილეში, ძველი სკოლის ბარომეტრი არ მეხმარებოდა
Acurite 5 in 1 ამინდის სადგური Raspberry Pi და Weewx გამოყენებით (სხვა ამინდის სადგურები თავსებადია): 5 ნაბიჯი (სურათებით)
Acurite 5 in 1 ამინდის სადგური Raspberry Pi და Weewx– ის გამოყენებით (სხვა ამინდის სადგურები თავსებადია): როდესაც მე ვიყიდე Acurite 5 in 1 ამინდის სადგური, მინდოდა შემეძლოს ამინდის შემოწმება ჩემს სახლში ყოფნისას. როდესაც სახლში მივედი და დავაყენე მივხვდი, რომ ან ეკრანი კომპიუტერთან უნდა მქონოდა ჩართული, ან მათი ჭკვიანი კერა შემეძინა