Სარჩევი:
- მარაგები
- ნაბიჯი 1: კოდი პირველი/აპარატურა მეორე
- ნაბიჯი 2: აპარატურა და გაყვანილობა
- ნაბიჯი 3: 3D დაბეჭდილი საცხოვრებელი
ვიდეო: Wifi ჩართულია OLED ESP32 მანქანის საზომი: 3 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
შესავალი ჯერ…
მე ვაკეთებ მანქანის მრიცხველებს, როგორც ერთგვარი ისევ და ისევ ჰობი. იხილეთ https://www.instructables.com/id/Remote-Car-Monit… და https://www.instructables.com/id/Remote-Car-Monit… კიდევ ორი უახლესი მაგალითისთვის. განსაკუთრებით მომწონს ის, რაც მანქანის ორიგინალურ ნაწილებს ერწყმის. მაშ, რატომ არის ეს განსხვავებული და რით იყო შთაგონებული მისი აშენება. პასუხი არის ორი რამ:
1) ESP32 - მინდოდა ახალი ბავშვი გამომეცადა ბლოკის ჩიპზე, მით უმეტეს, რომ არდუინოზე დაფუძნებული ინსტრუმენტთა ქსელი საკმაოდ მომწიფებულია. ESP32– ის ერთ – ერთი საინტერესო რამ არის IOT თავისი ჩაშენებული wifi და bluetooth შესაძლებლობებით. საზოგადოებამ დაწერა მრავალი ბიბლიოთეკა ამის გასაადვილებლად (ვებ სერვერები, AP– ები, wifi კლიენტები, mDNS და ა.შ. და ა.
2) იაფი OLED ეკრანები - ჯერ კიდევ 2007 წელს გავაკეთე საზომი TFT გამოყენებით, რომელიც იჯდა საათის ადგილას GD (2004-2007) WRX– ზე. TFT მოდის სხვადასხვა არომატით. ზოგი უკეთ მუშაობს ღამით, ზოგი უკეთ მუშაობს დღის განმავლობაში და ა.შ. მაგრამ არცერთი მათგანი არ მუშაობს ყველა პირობებში. მე ვერ მივხვდი ჩემი შეცდომის შესახებ, სანამ ერთ -ერთი საზომი, რომელიც მე გამოვიყენე, უსარგებლო იყო ფორუმის წევრის მზიანი ტრეკის დროს. შეიყვანეთ OLED, რომლებიც გასაოცარია საავტომობილო პროგრამებისთვის. ისინი არ არიან ძალიან კაშკაშა ღამით და (რაც მთავარია) ჩანს მზის უმეტეს პირობებში.
ეს არის ორი ინსტრუქციისთვის, რადგან მე დავწერე ყველაფერი ორი საერთო მანქანის გაზომვისთვის, ზეთის წნევა და ტურბო წნევა. ორივე არსებითად ერთი და იგივეა: მცირე ზომის ფაქტორების მრიცხველი ანიმაციური ანალოგური OLED დისპლეით, დისკრეტული რიცხვებითა და მაქსიმალურით. ორივე ასევე ფუნქციონირებს როგორც wifi AP და ვებ სერვერები. როდესაც მათ კომპიუტერთან ან მობილურ ტელეფონთან აკავშირებთ, ეკგ -ს მოძრავი ჩარტის ნახვა შესაძლებელია (ეს გარკვეულწილად ინოვაციური ნაწილია).
მარაგები
HELTEC ESP32 მოდული-მიიღეთ wifi ვარიანტი
ზეთის წნევის სპეციფიკური ნაწილები:
ზეთის წნევის სენსორი - მე გამოვიყენე ავტომატი 5222 ზეთის წნევის სენსორის შესაერთებელი ნაწილები - ეს განსხვავდება მანქანისა და დაყენების ადგილის მიხედვით. გთხოვთ გაეცნოთ მომსახურების სახელმძღვანელოებს, ფორუმებს, ტექნიკას და ა.შ. და გააკეთეთ ეს სწორად ისე, რომ არ მოხდეს ზეთის გაჟონვა
გაზომვის კონკრეტული ნაწილები:
- ჰაერის წნევის სენსორი (მხოლოდ იმ შემთხვევაში, თუ გსურთ გაზარდოთ ლიანდაგი) -
- საჰაერო შლანგი
- T ფიტინგები
ბიბლიოთეკები, რომლებიც მე გამოვიყენე, აუცილებელი იყო:
Smoothiecharts - https://smoothiecharts.org/ შესანიშნავი და მსუბუქი ცოცხალი განახლების სქემები. ძალიან კონფიგურირებადია და არ ემყარება js ბიბლიოთეკის მითითებას ინტერნეტში სხვაგან. ეს იძლევა "ლოკალური- IOT" ტიპის კონფიგურაციის საშუალებას და მთელი ბიბლიოთეკა ჯდება ერთ სტრიქონში ვებ სერვერის განცხადებაში კოდში!
ESPAsyncWebServer -https://github.com/me-no-dev/ESPAsyncWebServer- აკეთებს რასაც ყუთში ამბობს და კარგად აკეთებს
ThingPulse OLED გრაფიკული ბიბლიოთეკა (ზოგჯერ დარეკეთ squix ბიბლიოთეკაში) - https://github.com/ThingPulse/esp8266-oled-ssd130… - ძალიან ეფექტური და პირდაპირი გრაფიკა ESP ჩიპებისთვის. ნება მომეცი, გავაკეთო ზარმაცი პროგრამირება და მაინც მივიღო დამაჯერებელი ანიმაციები.
ინსტრუმენტები/სხვა:
გამაგრილებელი რკინა - გამოიყენება გრძელი საკაბელო სენსორების გასაკეთებლად, ბორტზე სათაურების დასამონტაჟებლად, შეკუმშვის შესამცირებლად და ა.
screwdriver/სოკეტების/სხვა მანქანის ინსტრუმენტები - აუცილებელია სენსორების დაყენება მანქანაზე
ორმაგი ცალმხრივი ლენტი - გაზომვების დაყენება საცხოვრებელში და მანქანაში საცხოვრებლის დაყენება (ცხელი წებო და სხვა ნივთები შეიძლება მუშაობდეს, მაგრამ მე მირჩევნია 3M ორმაგი ცალმხრივი გარე მორთვა ლენტი. ის კარგად იტევს და მისი ამოღება შესაძლებელია საგნების დაზიანების გარეშე.)
მაკრატელი - ფირზე და მილების დასაჭრელად და საცობებზე
სამაგრები - ნივთების ერთმანეთთან დასაჭერად, მავთულხლართების გასაშლელად და ძრავის ნაწილში, სენსორების დასაჭერად და ა.
ნაბიჯი 1: კოდი პირველი/აპარატურა მეორე
კოდის ჩამოტვირთვა შესაძლებელია აქ:
ზეთის წნევა -
გაზრდის წნევას -
გაზარდეთ ზეწოლა სახეებით ანალოგური სანახავი საშუალებების ნაცვლად -
გრაფიკული კოდი: ThingPulse ბიბლიოთეკა იმდენად ეფექტურია, რომ თქვენ შეგიძლიათ დახაზოთ xbms ერთმანეთზე და მიიღოთ დამაჯერებელი შედეგები!
გაზომვის სურათები რეალურად მოვიდა ღია კოდის გრაფიკული საცავიდან (https://thenounproject.com/). მხატვარი Iconic, CY (https://thenounproject.com/icon/490005/).
მე gimp გამოვიყენე 20 სხვადასხვა ჩარჩოს ნემსით, რომელიც თითოეულ ტკიპის ნიშანზე მიუთითებდა. ღიმილიანი სახის ხატები არის NOVITA ASTRI, ID და აქ არის:
შემდეგ ეს ყველაფერი გადავიყვანე const uint8_t მასივებად ამ ტექნიკის გამოყენებით (მინიშნება: თუ ფერები გადატრიალებულია მათი ჩვენებისას, უბრალოდ გადაატრიალეთ ფერები ორიგინალზე): https://blog.squix.org/2015/05/esp8266- ნოდემკუ-ჰო…
ცოცხალი ანიმაციის კოდი საკმაოდ მარტივია:
- წაიკითხეთ სენსორიდან
- მასშტაბის კითხვა (მე გამოვიყენე 1 -დან 1 -მდე პოზიტიური გაძლიერების მნიშვნელობებისთვის და ნემსი გადავაადგილეთ მხოლოდ მაშინ, როდესაც ის გამაძლიერებელია და არა როცა ვაკუუმშია)
- დახაზეთ xbm და შემდეგ ჩაწერეთ რიცხვითი სიმბოლოები ყველაფრისთვის.
- ჩამოიბანეთ და გაიმეორეთ
სენსორის კოდი: მე ვიყენებ სენსორის კოდს, რომელიც ამ ორი სენსორისთვის გამოვიყენე რამდენიმე სხვა პროექტისათვის. მე დავამატე საშუალო მაჩვენებელი, რომ მოშორებულიყავი სენსორებს. ეს მოიცავს თითოეული "წაკითხვის" კითხვას საშუალოდ 5 წაკითხვისას.
გამაძლიერებელი კოდი (სენსორი იძლევა ანალოგურ მნიშვნელობას 0-5 ვოლტიდან, რომელსაც ADC გადააქცევს ნაბიჯებად 0-1024-დან):
int getBoost () {float rboost = ((analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36))/5); // float შედეგი PSI = (rboost*(. 00488)/(. 022) +20) /6.89 - ატმოსფერო; // დატოვება /6.89 kpa float– ის შედეგი PSI = (((rboost /4095) + 0.04) /0.004) * 0.145 - ატმოსფერო; // 0.145 -ით calc psi // 4096 მნიშვნელობებზე esp32 /*rBoost = rBoost + 1; თუ (rBoost> = 20) {rBoost = 0; }*/ დაბრუნება (შედეგი PSI); }
ზეთის წნევის კოდი (სენსორი ცვლის მის წინააღმდეგობას ზეწოლის საფუძველზე, რომელსაც ის გრძნობს, ამიტომ ძაბვის გამყოფია საჭირო იმისათვის, რომ ის იქცეს ძაბვად 0-5 ვ-დან იხილეთ: https://electronics.stackexchange.com/questions/3…https:/ /www.instructables.com/id/Remote-Car-Monito… (ბოლოში) დამატებითი ინფორმაციისთვის):
int getOilPSI () {float psival = ((analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36))/5); პსივალი = -0.0601*პსივალი + 177.04 - 14.5; დაბრუნება psival; }
ვებ სერვერი და AP ფუნქციონირება: AP ფუნქციონირება საკმაოდ მარტივია - მყისიერი და AP ობიექტი ESSID– ით, რომლის გადაცემა გსურთ და პაროლი და თქვენ კარგად ხართ წასული.
const char *ssid = "boost_gauge_ap"; const char *პაროლი = "პაროლი";
WiFi.softAP (ssid, პაროლი);
მას აქვს DHCP სერვერი, ასე რომ თქვენ არ უნდა ინერვიულოთ ამაზე. ნაგულისხმევად ის IP არის 192.168.1.4 (წარმოდგენა არ აქვს რატომ, სწორედ ეს აირჩია). ვებ სერვერის ნაწილი ცოტა უფრო რთულია და მოითხოვს გარკვეულ კვლევას. ძირითადად თქვენ გინდათ ვებ სერვერის ასინქრონიზაცია, რათა მას შეეძლოს განახლების პირდაპირი მონაცემების მიღება. საბედნიეროდ არსებობს ბიბლიოთეკა ამისათვის. მე არ ვარ javascript დეველოპერი, ასე რომ, მე ვთამაშობდი ბიბლიოთეკების დიაგრამების გრაფიკებით, სანამ არ ჩავვარდებოდი სმუზის ჩარტებში. სხვა გრაფიკული ბიბლიოთეკები იწერება ისე, რომ ისინი მემკვიდრეობით იღებენ ყველა სახის კოდს სხვა ბიბლიოთეკიდან ინტერნეტში, რომლებიც დინამიურად იტვირთება გვერდის რენდერაციისას. მინდოდა ინტერნეტისგან დამოუკიდებლად იმუშავა, ასე რომ ეს დიდი აღმოჩენა იყო. მეორე ის უნდა იყოს საკმარისად პატარა, რომ მოერგოს არდუინოს და როგორც ხედავთ კოდში ის ჯდება ერთ ჩარჩო მასივში.
ვებ სერვერის დეკლარაციები: #მოიცავს AsyncTCP.h #მოიცავს ESPAsyncWebServer.h… AsyncWebServer სერვერს (80); // დააინსტალირეთ და შეარჩიეთ პორტი (80 სტანდარტულია http) … server.on ("/", HTTP_GET, (AsyncWebServerRequest *request) {request-> send (200, "text/html", "… // ვებგვერდი + smoothiecharts ბიბლიოთეკა უზარმაზარ სიმბოლოში)); server.on ("/val", HTTP_GET, (AsyncWebServerRequest *მოთხოვნა) {// პირველი გვერდი რეალურად ეძახის ამ ძალიან პატარა გვერდს, რომელიც უბრალოდ აბრუნებს ღირებულების მოთხოვნას -> გაგზავნა (200, "text/html", Sboost);}); server.begin ();
ნაბიჯი 2: აპარატურა და გაყვანილობა
გალერეაში გამოსახულია ორი სენსორი, რომელსაც მე ვიყენებ. დიდი ოქროსფერი არის ზეთის წნევის სენსორი Autometer 2242. ამ სენსორის სხეული და ძაფი დაფქულია და ტერმინალი არის წინააღმდეგობის მაჩვენებელი.
Autometer მოგაწვდით ზეწოლის ან ტემპერატურისადმი წინააღმდეგობის მრუდს მათი ნებისმიერი სენსორისთვის. მე ეს გადავაქციე ძაბვად ძაბვის გამყოფის გამოყენებით (იხ. გაყვანილობის დიაგრამა).
MPX4250AP ჰაერის წნევის სენსორს აქვს სამი ცოცხალი ქინძისთავი და რამდენიმე გამოუყენებელი ქინძისთავი. ისინი არიან V in, ადგილზე და სენსორის გამომავალი. გამოაქვს 0-5 ვ კითხვა, რომლის წაკითხვაც შესაძლებელია მიკროკონტროლის მიერ (ან ამ mcu 0-3 ვოლტის შემთხვევაში. ასე რომ, სენსორის კითხვა მცირდება ძაბვის გამყოფის გამოყენებით.). მისი სპეციფიკაციის ფურცელი შეგიძლიათ იხილოთ აქ:
5V– დან 3V ლოგიკამდე შემცირების რამდენიმე საკითხი არსებობს. ჩემს შემთხვევაში გამოვიყენე ძაბვის გამყოფი სიმარტივისთვის და მქონდა ნაწილები სამუშაო მაგიდის გარშემო. თქვენ მცირე შეცდომას შეიტანთ კითხვებში დამატებითი კომპონენტების (ორი რეზისტორის) შესაძლო შეცდომაზე დაყრდნობით. ამან შეიძლება თქვენს კითხვებს 10% –იანი ფასდაკლება მოუტანოს ზოგიერთ შემთხვევაში. შემიძლია ამით ვიცხოვრო. თუ არ შეგიძლიათ, შეიძლება გისურვოთ გამოიყენოთ opamp და რეზისტორები ან ლოგიკური დონის გადამყვანი (ხელმისაწვდომია ელექტრონიკის სხვადასხვა მწარმოებლებისგან. Sparkfun– ს აქვს ერთი აქ: https://www.sparkfun.com/products/12009 მე შემიძლია გადავიდე მასზე, როგორც მე ზოგჯერ ვიღებ მაღალ მაჩვენებლებს ამ ლიანდაგზე (ფაქტობრივად მე ვაჩვენე ეს პროდუქტი ჩემს გაყვანილობის დიაგრამაზე).
ESP32– ს ვამუშავებ USB– ით. ეს მოიცავდა ამგვარი პირდაპირი დამტენის მიერთებას: https://www.amazon.com/gp/product/B00U2DGKOK/ref=p… მანქანაზე და შემდეგ USB კვანძის გამოყენებით მისი გაყოფისთვის. თქვენ ხედავთ, რომ მე გამოვიყენე მარჯვენა კუთხის USB კაბელები, რათა უზრუნველვყოთ ყველაფერი მცირე ფართობზე (https://www.amazon.com/gp/product/B00ENZDFQ4/ref=p…).
სხვა ფოტოებზე ნაჩვენებია ადგილები, სადაც მე ხვრელები დავხურე ან მავთულები გავუშვი. ყველა მანქანა განსხვავებული იქნება. გამოიყენეთ სიფრთხილე, დანები და მაკრატლები მკვეთრია, ელექტროენერგია შეიძლება საშიში იყოს, ასე რომ გთხოვთ გათიშეთ ბატარეა ნივთების გაყვანილობის დაწყებამდე.
ნაბიჯი 3: 3D დაბეჭდილი საცხოვრებელი
მე გამოვიყენე რამდენიმე 3D დაბეჭდილი საცხოვრებელი ამისათვის.
- ზოგადი დიდი 2 ეკრანის მრგვალი ლიანდაგი. ამის ნახვა შეგიძლიათ პირველი გვერდის ამ სურათებზე. მე დავდე საათთან ახლოს ჩემს ტირეზე.
- ერთი გაზომვის სოლი სტილი, რომელიც ჯდება სუბარუ იმპრეზას საათის არეზე (wrx, sti და ა.შ.) დაახლოებით 2008 წლიდან 2014 წლამდე.
- ორმაგი ლიანდაგი, რომელიც ჯდება საჭის სვეტებზე და სხვა ოდნავ მომრგვალებულ ზედაპირებზე:
კეთილი იყოს თქვენი მობრძანება, რომ დააკოპიროთ და შეცვალოთ ისინი თქვენი საჭიროებების შესაბამისად. არცერთი მათგანი არ არის სრულყოფილი და ყველა მათგანს ცოტა მორგება დასჭირდება.
რამდენიმე შენიშვნა:
- დავასრულე ჩემი პლასტიდიპით; ეს არის ზარმაცების სასურველი მეთოდი.
- პლასტმასის მოპარსვა ქმნის წვრილ ნაწილაკებს, რაც არ არის თქვენთვის კარგი, გამოიყენეთ შესაბამისი ნიღაბი.
- მე გამოვიყენე PETG ჩემი საცხოვრებლისთვის. ABS ასევე კარგია. PLA გახვეული იქნება ცხელ მზეზე დაფაზე.
მეორე პრიზი IoT გამოწვევაში
გირჩევთ:
ბატარეის მქონე ნათურა, რომელიც ჩართულია მაგნიტების გამოყენებით!: 8 ნაბიჯი (სურათებით)
ბატარეის მქონე ნათურა, რომელიც ჩართულია მაგნიტების გამოყენებით!: ჩვენ ვიცით, რომ ნათურების უმეტესობა ჩართულია/გამორთულია ფიზიკური გადამრთველის საშუალებით. ამ პროექტის მიზანი იყო შემექმნა უნიკალური გზა, რომ ნათურა ადვილად ჩართული/გამორთულიყო კლასიკური გადართვის გარეშე. მე დავინტერესდი ლამპის იდეით, რომელმაც შეცვალა ფორმა ამ პროცესის დროს
IoT ტემპერატურისა და ტენიანობის საზომი OLED ეკრანით: 5 ნაბიჯი (სურათებით)
IoT ტემპერატურისა და ტენიანობის საზომი OLED ეკრანით: შეამოწმეთ ტემპერატურა და ტენიანობა OLED ეკრანზე ნებისმიერ დროს, რაც გსურთ და ამავდროულად შეაგროვეთ ეს მონაცემები IoT პლატფორმაზე. გასულ კვირას გამოვაქვეყნე პროექტი სახელწოდებით უმარტივესი IoT ტემპერატურა და ტენიანობა მეტრი. ეს კარგი პროექტია, რადგან შეგიძლია
მინიმალისტური ველოსიპედის მაჩვენებელი, შეხებით ჩართულია!: 10 ნაბიჯი (სურათებით)
მინიმალისტური ველოსიპედის მაჩვენებელი, შეხებით ჩართულია !: გამარჯობა! ეს არის ჩემი პირველი ინსტრუქცია. მე ყოველთვის მინდოდა ყველაფერი ნულიდან გამეკეთებინა მხოლოდ იმისთვის, რომ მენახა როგორ მუშაობს და ვის არ მოსწონს წვრილმანი (გააკეთე ეს საკუთარი ხელით), როდესაც შეგიძლია შეცვალო რაღაც შენი საჭიროებების შესაბამისად? ისევე საინტერესო, როგორც წვრილმანი
IoT ჩართულია სენსორების მონაცემთა შეგროვების ცენტრი ESP8266 & PubNub: 9 ნაბიჯი (სურათებით)
IoT ჩართულია სენსორების მონაცემთა შეგროვების ცენტრი ESP8266 & PubNub– ით: ESP8266– ის გაკვეთილების უმეტესობა არის ახალბედა დონეზე (დისტანციურად თვალს აციმციმებს led) ან ძალიან კომპლექსურია მათთვის, ვინც ეძებს რაიმე გაუმჯობესებას და განახლებას მისი led მოციმციმე უნარებით. ეს სასწავლო მიზანს წარმოადგენს ამ უფსკრული ხიდის შექმნას
ჩემი მანქანის სტერეო - Ipod ჩართულია: 8 ნაბიჯი
ჩემი მანქანის სტერეო - Ipod ჩართულია: გთხოვთ გაითვალისწინოთ: გააკეთეთ ეს თქვენი რისკის ქვეშ, დიდი შანსია, რომ თქვენ გააფუჭოთ Ipod და თქვენი მანქანის აუდიო. როგორ შეგიძლიათ გახადოთ თქვენი მანქანა აუდიო, Ipod ჩართული, მე მაქვს Pioneer Car Audio და Ipod Mini. თქვენ გჭირდებათ აუდიო კაბელები და სტერეო 2 მონო პინი