Სარჩევი:
- ნაბიჯი 1: მასალები
- ნაბიჯი 2: ჟოლო პი
- ნაბიჯი 3: გაყვანილობა
- ნაბიჯი 4: მონაცემთა ბაზა
- ნაბიჯი 5: კოდი
- ნაბიჯი 6: საქმე
ვიდეო: EasyTalk: მარტივი კომუნიკაცია და კალენდარი თქვენს გვერდით: 6 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
მე მქვია კობი მარშალი, ვსწავლობ ჰაუესტში, ბელგიაში და ვარ სტუდენტი მულტიმედია და კომუნიკაციის ტექნოლოგია (MCT). ჩემი პირველი წლის ბოლო დავალებისთვის, მე უნდა შემექმნა IoT მოწყობილობა.
სახლში ჩვენ გვაქვს ეს პრობლემა, რომ ჩემი ძმა ყოველთვის თამაშობს და როდესაც დედაჩემს ქვედა სართულიდან რაღაცის თქმა სჭირდება, მას უნდა იყვიროს, რადგან ის ყურსასმენებს ატარებს და ვერაფერს ისმენს. მე მინდოდა ამ პრობლემის მოგვარება მისთვის, ასე რომ მე ავაშენე მოწყობილობა, სადაც შეგიძლიათ გააგზავნოთ შეტყობინებები ვებ გვერდიდან. იგი ასევე გამოიყენება როგორც კალენდარი, სადაც შეგიძლიათ შეინახოთ თქვენი საკუთარი მოვლენები ან შეიტანოთ გარე კალენდარი URL– ზე. ეს მოწყობილობა ასევე ინახავს ტემპერატურისა და ჰაერის ხარისხის ღირებულებებს, ასე რომ თქვენ შეგიძლიათ ნახოთ რამდენად ჯანსაღია ის, როდესაც თამაშობთ ან მუშაობთ, რადგან ხშირად ვერ ამჩნევთ.
ამ მოწყობილობას ეწოდება EasyTalk და აგვარებს ამ პრობლემას. ეს არის პატარა მოწყობილობა, რომელიც იყენებს OLED ეკრანს, ასე რომ თქვენ შეგიძლიათ ნახოთ თქვენი მოვლენები, დრო ან ტემპერატურა და ჰაერის ხარისხი ახლავე. როდესაც შეტყობინება იგზავნება, ის შეამჩნევს თქვენ შეტყობინების ხმით და აჩვენებს შეტყობინებას ეკრანზე, სადაც შეგიძლიათ უპასუხოთ დიახ ან არა.
თუ გსურთ ააშენოთ ეს ნივთი ან გსურთ ნახოთ როგორ მზადდება, მე მტკიცედ გირჩევთ რომ წაიკითხოთ. თუ გსურთ მეტი იცოდეთ ჩემს შესახებ, შეგიძლიათ გადახვიდეთ ჩემს პორტფოლიოში.
ნაბიჯი 1: მასალები
პირველი ნაბიჯი არის შეაგროვოს ყველა მასალა ამ პროექტში გამოსაყენებლად. მე ვაპირებ გულახდილი ვიყო შენთან. ეს არ არის იაფი მოწყობილობა, საერთო ღირებულება 271 ევროა. ქვემოთ მოცემულია მათი ჩამონათვალი და რამდენიმე ფოტო გასარკვევად.
- ჟოლო Pi 4 მოდელი B - 4 GB
- Pibow Coupé 4 - ნინძა
- 12 x Premium Jumperwires op strip - 40 stuks - M/M - 20 სმ
- 6 x Premium Jumperwires op strip - 40 stuks - M/F - 20 სმ
- 2 x 36 პინიანი დაწყობის სათაური
- 40 პინიანი მამრობითი ყუთის სათაური
- 40 ქინძისთავი Regenboog GPIO კაბელი
- მონოქრომული 2.42 "128x64 OLED გრაფიკული ჩვენების მოდულის ნაკრები
- Kleine Metalen სპიკერი შეხვდა Draadjes - 8 ohm 0.5W
- Adafruit Mono 2.5W კლასი D აუდიო Versterker
- 3.5 მმ Aux Jack კაბელი
- 7 მმ ძაფი მომენტალური ღილაკი
- ტუიმელშაქელაარი
- PIR Bewegingssensor
- DS18B20 ციფრული ტემპერატურის სენსორი
- Grove - Lucht kwaliteit სენსორი v1.3
- გროვი - I2C ADC
- ჟოლო Pi 4 USB-C ხმოვანი
- ფლექსიბელის მინი სტატია
- 470 Ohm რეზისტორები
- 4, 7K Ohm რეზისტორი
- სითბოს შემცირება მილები
- 6 x ხრახნები M2 x 6 მმ
- 6 x ხრახნები M2 x 8 მმ
- 3 x ხრახნი M2 x 16 მმ
- ალუმინი 3 მმ
მე ასევე გავაკეთე Bill Of Materials (BOM), ასე რომ თქვენ შეგიძლიათ ნახოთ რამდენი გადავიხადე ყველა მასალისთვის და სად მივიღე ისინი.
ნაბიჯი 2: ჟოლო პი
ამ პროექტისთვის ჩვენ ვიყენებთ Raspberry Pi- ს, რადგან მისი დაყენება ადვილია და მისი გამოყენება ბევრ რამეშია შესაძლებელი. ის იდეალურია იმისთვის, რისი გაკეთებაც გვინდა.
ჩამოტვირთეთ Raspberry Pi Desktop OS და დააინსტალირეთ თქვენს Raspberry Pi– ზე. თქვენ უნდა ჩართოთ SPI, I2C და One Wire raspi-config– ში. მე გირჩევთ გამორთოთ ზოგიერთი რამ ჩატვირთვის პარამეტრებშიც, რათა ის ჩატვირთოს უფრო სწრაფად. გარდა ამისა, მე ვიყენებ ზოგიერთ ბიბლიოთეკას, რომელიც თქვენ უნდა დააინსტალიროთ პიპთან ერთად, რომ გააკეთოთ ეს.
pip3 დააინსტალირეთ:
- adafruit-circuitpython-ssd1305
- ics
- კოლბა
- Flask-Cors
- Flask-JWT- გაფართოებული
- mysql-connector-python
თქვენ ასევე გჭირდებათ apache2 ვებსაიტის შესაქმნელად, აქ ჩვენ ვიყენებთ apt:
sudo apt დააინსტალირეთ apache2 -y
თქვენ უნდა შექმნათ უკაბელო კავშირი, რადგან თქვენ ვერ მიიღებთ UTP კაბელს Raspberry Pi– ში, როდესაც ის საქმეშია.
თქვენ ასევე დაგჭირდებათ MariaDB– ის დაყენება, რათა შეძლოთ მონაცემთა ბაზაზე წვდომა.
ნაბიჯი 3: გაყვანილობა
შემდეგი ნაბიჯი არის ყველაფრის ერთმანეთთან შეერთება და ტესტირება, მუშაობს თუ არა ყველა კომპონენტი. მე შევქმენი PCB პურის დაფის მოსაშორებლად და გაყვანილობის გასაადვილებლად, რომ მოწყობილობა იყოს უფრო პატარა. ეს აუცილებელია, რადგან ის დადგება თქვენი მონიტორის გვერდით და ვერ დაიკავებს დიდ ადგილს, ასე რომ არ მოგაშორებთ თქვენს საქმეს.
ნაბიჯი 4: მონაცემთა ბაზა
ეს მოწყობილობა იყენებს ნორმალიზებულ MySQL მონაცემთა ბაზას, რომ შეინახოს მთელი თავისი ინფორმაცია და აჩვენოს ეს ვებსაიტზე და თავად მოწყობილობაზე. მე შევქმენი ის MySQL Workbench– ში.
ამ მონაცემთა ბაზაში არის 5 ცხრილი.
Table Activiteiten (= აქტივობები, მოვლენები) გამოიყენება კალენდრის ყველა მოვლენის შესანახად. ეს ასევე მოიცავს სხვა კალენდარიდან შემოტანილ ყველა მოვლენას.
მაგიდის აპარატი (= მოწყობილობები) გამოიყენება სხვადასხვა ტიპის მოწყობილობების შესანახად, რომლებიც გამოიყენება ცხრილში Historiek (= ისტორია). ამ პროექტში გამოიყენება ორი სენსორი, ტემპერატურის სენსორი და ჰაერის ხარისხის სენსორი, მაგრამ მე ასევე მაქვს მესამე „მოწყობილობა“, ვებსაიტი, რომელიც ინახავს ვებ – გვერდიდან მოწყობილობაზე გაგზავნილ შეტყობინებებს.
ცხრილი Gebruikers (= მომხმარებლები) ინახავს მომხმარებლებს. მათ შეუძლიათ შევიდნენ პაროლით და მიუთითონ მეტსახელი, რომელიც გამოჩნდება შეტყობინებით მოწყობილობაზე გაგზავნისას.
Table Historiek (= ისტორია) გამოიყენება სენსორის მნიშვნელობებისა და მოწყობილობაზე გაგზავნილი შეტყობინებების შესანახად.
და ბოლოს ცხრილის ბმულები (= URL– ები) ინახავს გარე კალენდრის ყველა URL– ს.
ნაბიჯი 5: კოდი
მე გირჩევთ შექმნათ ახალი მომხმარებელი, რადგან ეს საუკეთესო პრაქტიკაა, მაგრამ ეს არ არის აუცილებელი, ასევე შეგიძლიათ გამოიყენოთ ნაგულისხმევი pi მომხმარებელი.
Frontend კოდი მოთავსებულია ნაგულისხმევ html საქაღალდეში apache2– დან. თქვენ შეგიძლიათ იპოვოთ ეს საქაღალდე/var/www/html.
უკანა მხარისთვის, თქვენ უნდა შექმნათ საქაღალდე თქვენს სახლის საქაღალდეში და იქ ჩაწეროთ ყველა კოდი.
ჩვენ ასევე უნდა შევცვალოთ ზოგიერთი მნიშვნელობა ამ კოდში. ჯერ გადადით app.py. 23 -ე ხაზზე დააყენეთ ერთი მავთულის ტემპერატურის სენსორის სახელი. ეს ალბათ თქვენთვის განსხვავებული იქნება. სწორი სახელის საპოვნელად გახსენით ტერმინალი და ჩაწერეთ:
ls/sys/bus/w1/მოწყობილობები
და მოძებნეთ სტრიქონი, რომელიც შედგება მრავალი განსხვავებული რიცხვისგან და შეცვალეთ ის 23 -ე ხაზზე.
სხვა რაც ჩვენ უნდა შევცვალოთ არის config.py ფაილში, მონაცემთა ბაზის პაროლის შეცვლა.
თუ გსურთ რომ ეს ჩატვირთვისას იმუშაოს, თქვენ ასევე უნდა შეცვალოთ EasyTalk.service ფაილი. უბრალოდ შეცვალეთ WorkingDirectory და მომხმარებელი. თქვენ უნდა დააკოპიროთ ეს ფაილი შემდეგი ბრძანებით:
sudo cp EasyTalk.service/etc/systemd/system/EasyTalk.service
შემდეგ გაუშვით:
sudo systemctl დაიწყეთ EasyTalk.service
და შემდეგ ჩართეთ ის, რომ დაიწყება ჩატვირთვისას
sudo systemctl ჩართეთ EasyTalk.service
ნაბიჯი 6: საქმე
მე გადავწყვიტე საქმის 3D ბეჭდვა, რათა ის იყოს რაც შეიძლება პატარა. ნაბეჭდი შედგება 3 ნაწილისგან, ყუთი თავად, სახურავი და დინამიკის დამჭერი, რადგან მას არ აქვს ხვრელები ჭანჭიკების შესაკრავად.
თქვენ დაგჭირდებათ რამდენიმე თამამი, ასევე ყველაფრის ერთმანეთთან გასაფორმებლად.
- 6 x ხრახნები M2 x 6 მმ
- 6 x ხრახნები M2 x 8 მმ
- 3 x ხრახნი M2 x 16 მმ
თუმცა გულწრფელი ვიქნები. 4-5 საათი დამჭირდა ამ ნივთის ასაშენებლად. იმის გამო, რომ ის ძალიან პატარაა, ყველაფერი უბრალოდ ჯდება და ძნელია ხატების გაბრწყინება ზოგჯერ, მაგრამ მუშაობს თუ ამას ყურადღებით გააკეთებ.
მე ასევე შევქმენი PCB, რომ შეცვალოს breadboard, თქვენ ჯერ უნდა შეაერთოთ სათაურები და 5 რეზისტორი (4 x 470 Ohm, 1 x 4.7K Ohm).
როდესაც თქვენ გაქვთ PCB, მე გირჩევთ დაიწყოთ კაბელების შედუღება ყველაფერზე, რაც უნდა დაუკავშიროთ PCB- ს.
როდესაც ეს კეთდება, თქვენ აპირებთ დააგდოთ OLED დისპლეი და დააკავშიროთ მას PCB. ეკრანი ინახავს PCB- ს. ამისათვის გამოიყენეთ 6 მმ ხრახნები.
შემდეგ თქვენ ხრახნით ჰაერის ხარისხის სენსორს იქ, სადაც უნდა წასულიყო, მაგრამ ეს ცოტა სახიფათოა, რადგან ADC უკავშირდება მას. ამის გასაკეთებლად ისე, რომ ორი კომპონენტი არ შეეხოთ ერთმანეთს, თქვენ იყენებთ 16 მმ ხრახნებს 3 x 5 მმ ალუმინის მილებით, რომლებიც უნდა დაინახოთ. მე ეს ორი ხრახნით გავაკეთე, რადგან მესამეს ვერ მივაღწიე. თქვენ აკავშირებთ 4 მავთულს, სადაც ისინი უნდა წავიდნენ PCB– ზე.
შემდეგ თქვენ აკავშირებთ აუდიო გამაძლიერებელს PCB– სთან და ათავსებთ დინამიკს 3D ბეჭდვით დამჭერთან ერთად.
ამ ნაბიჯების შემდეგ, უმძიმესი ნაწილები დასრულდა და თქვენ შეგიძლიათ ყველაფერი დანარჩენი დაუკავშიროთ PCB- ს და დააკრათ იგი ადგილზე. გაითვალისწინეთ, რომ თქვენს მიერ ნაჩვენებ ფოტოებში მე ვიყენებ ტემპერატურის განსხვავებულ სენსორს, საბოლოო პროდუქტისთვის, მე გამოვიყენე ტემპერატურის სენსორი გრძელი კაბელით, რომელიც ამოიწურება ყუთიდან, რადგან ის გაზომავდა სითბოს შიგნიდან.
როდესაც ეს ყველაფერი ადგილზეა, თქვენ უნდა გააფუჭოთ ჟოლო Pi. მე ვიყენებ ამ საქმეს, რადგან არ ვენდობი მის მიერ წარმოქმნილ სითბოს, ეს საქმე დაცულია, ასე რომ 3D ბეჭდვა არ დნება. სანამ დააინსტალირებთ მას, თქვენ უნდა დააკავშიროთ დენის კაბელი და aux კაბელი (რომლითაც თქვენ უნდა გახსნათ და შეაერთოთ ერთი მავთული და შემდეგ დაუკავშიროთ Raspberry Pi– ს PCB– ს), რადგან ამის შემდეგ ვერ მიაღწევთ მას.
შემდეგ უბრალოდ დააკავშირეთ GPIO სათაურის კაბელი PCB– დან Raspberry Pi– სთან და შეამოწმეთ მუშაობს თუ არა ყველაფერი სახურავის დახურვამდე.
ბოლოში არის ხვრელი, სადაც შეგიძლიათ დააკავშიროთ შტატივი, მაგრამ ეს არ არის სურვილისამებრ.
Ის არის! ვიმედოვნებ, რომ მოგეწონათ ამ სტატიის კითხვა! -კობი
გირჩევთ:
გზის ველოსიპედი დღისით და გვერდით ხილული 350mA მსუბუქი (ერთ საკანში): 11 ნაბიჯი (სურათებით)
გზის ველოსიპედით დღისით და გვერდით ხილული 350mA სინათლე (ერთ საკანში): ამ ველოსიპედის შუქს აქვს წინა და 45 ° მოპირკეთებული ქარვისფერი LED- ები 350mA- მდე. გვერდითი ხილვადობა აუმჯობესებს უსაფრთხოებას კვეთაზე. ქარვა შეირჩა დღის ხილვადობისთვის. შუქი დამონტაჟდა საჭის მარცხენა წვეთზე. მისი ნიმუშები შეიძლება განსხვავებული იყოს
მოდელის რკინიგზის განლაგება ავტომატური გვერდით: 13 ნაბიჯი (სურათებით)
მოდელის რკინიგზის განლაგება ავტომატური გვერდით: მატარებლის მოდელის განლაგება დიდი ჰობია, მისი ავტომატიზირება მას ბევრად უკეთესს გახდის! მოდით შევხედოთ მისი ავტომატიზაციის რამდენიმე უპირატესობას: დაბალფასიანი ოპერაცია: მთლიანი განლაგება კონტროლდება Arduino მიკროკონტროლით, L298N თვის გამოყენებით
მარტივი Arduino LoRa კომუნიკაცია (5 კმ -ზე მეტი): 9 ნაბიჯი
მარტივი Arduino LoRa გამოთქმა (5 კმ-ზე მეტი): ჩვენ ვაპირებთ E32-TTL-100– ის გამოცდას ჩემი ბიბლიოთეკით. ეს არის უკაბელო გადამცემი მოდული, მუშაობს 410 441 MHz (ან 868MHz ან 915MHz) SEMTECH– ის ორიგინალური RFIC SX1278 საფუძველზე, გამჭვირვალე გადაცემა შესაძლებელია, TTL დონეზე. მოდული იღებს LORA
მოდელის რკინიგზის განლაგება ავტომატური გასასვლელი გვერდით (V2.0): 13 ნაბიჯი (სურათებით)
მოდელის რკინიგზის განლაგება ავტომატური გასასვლელი ბილიკით (V2.0): ეს პროექტი არის რკინიგზის ავტომატიზაციის ერთ -ერთი წინა მოდელის, რკინიგზის მოდელის განლაგება ავტომატური გადახურვით. ეს ვერსია ამატებს მოძრავი შემადგენლობით ლოკომოტივის შეერთების და გათიშვის მახასიათებელს. ოპერაცია
გვერდით ამოძრავებული დინამიკები: 8 ნაბიჯი
გვერდით ორიენტირებული დინამიკები: ეს ინსტრუქცია გასწავლით თუ როგორ შექმნათ დინამიკების ნაკრები. მაგრამ ეს დინამიკები არ ქმნიან ხმას ელექტრომაგნიტის ზევით და ქვევით, ისინი იყენებენ ელექტრომაგნიტებს მუდმივი მაგნიტების ვიბრირებისთვის გვერდიგვერდ