Სარჩევი:
- ნაბიჯი 1: მასალები
- ნაბიჯი 2: დიზაინის გაგება
- ნაბიჯი 3: კოდირება VHDL
- ნაბიჯი 4: Arduino– ს კოდირება
- ნაბიჯი 5: აპარატურის გაყვანილობა
ვიდეო: საწვავის ეფექტურობის დეტექტორი: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:19
ავტორი: დანიკა ფუჯივარა და უილიამ მაკგრუტერი
მანქანები დღეს მსოფლიოში ტრანსპორტის მთავარი საშუალებაა. კერძოდ, კალიფორნიაში, ჩვენ გარშემორტყმული ვართ ქუჩებით, გზატკეცილებით და ფასიანი გზებით, რომლებითაც ათასობით მანქანა მოძრაობს ყოველდღიურად. თუმცა, მანქანები იყენებენ გაზს და კალიფორნია იყენებს ყველაზე მეტ ბენზინს, ვიდრე აშშ – ს სხვა შტატები, დაახლოებით 4 500 გალონი დღეში. ჩვენი CPE 133 Final პროექტისთვის, ჩვენ გადავწყვიტეთ შევქმნათ სისტემა, რომელშიც მას შეეძლო თვალყური ადევნო მანქანის სიჩქარეს და გითხრათ, აღემატება თუ არა ის ყველაზე ეფექტურ სიჩქარეს საუკეთესო გაზის გარბენისთვის თუ საწვავის ეკონომიისთვის. ეს პროექტი დაეხმარება მძღოლებს გააცნობიერონ თავიანთი საწვავის ეკონომია, რაც, თავის მხრივ, დაეხმარება მათ დაზოგონ ფული, გამოიყენონ ნაკლები გაზი და შექმნან ნაკლები დაბინძურება ჰაერში.
ნაბიჯი 1: მასალები
ამ პროექტისათვის საჭირო მასალები:
- Basys 3 FPGA
- არდუინო უნო
- პურის დაფა
- ადაფრუტი BNO055 აბსოლუტური ორიენტაციის სენსორი
- მამაკაცი მამაკაცის მავთულები
ნაბიჯი 2: დიზაინის გაგება
სასრული მდგომარეობის დიაგრამა
ამ პროექტს აქვს ორი განსხვავებული მდგომარეობა ზემოთ ნაჩვენები სასრული მდგომარეობის დიაგრამაში. შუქი შეიძლება იყოს ჩართული (წარმოდგენილია "1") ან გამორთული (წარმოდგენილია "0"). მდგომარეობა იცვლება თვალთვალის სიჩქარის (ც) შეყვანისა და მუდმივი ოპტიმალური სიჩქარის მიხედვით.
შავი ყუთის დიაგრამა
ასევე ზემოთ არის საწვავის ეფექტურობის მოდულის შავი ყუთი დიაგრამა, რომელიც შეიცავს სიჩქარის შედარების სქემას და შვიდი სეგმენტის ჩვენებას, რომლებიც შემდგომში განიხილება. ეს VHDL კოდი იღებს 8 ბიტიან შეყვანას ამაჩქარებლის გაზომვებიდან, რომელიც დაკავშირებულია არდუინოსთან.
ნაბიჯი 3: კოდირება VHDL
ამ პროექტისთვის არის სამი VHDL ფაილი, რომელიც ქმნის ჩვენს დიზაინს, Fuel_Efficency_FinalProject მოდული, Speed_Comparator მოდული და sseg_dec მოდული, სადაც Speed_Comparator და sseg_dec ქვედა დონეზეა საწვავის ეფექტურობის მოდულის შესაქმნელად.
სიჩქარის შედარების მოდული
ეს მოდული იღებს 8-ბიტიან სიჩქარეს კილომეტრში საათში და ადარებს მას ოპტიმალურ სიჩქარეს გაზის ყველაზე მცირე მოხმარებისთვის. ავტომობილის საუკეთესო გაზის გარბენის საშუალო ოპტიმალური სიჩქარეა 55 კმ / სთ და ქვემოთ. თუმცა, ეს შეიძლება განსხვავდებოდეს ავტომობილისგან, რაც შეიძლება მორგებული იყოს მოდულის ფარგლებში. კოდის 45 ხაზი, რომელიც შეიძლება შეიცვალოს პირადი ოპტიმიზაციისთვის, ნაჩვენებია ქვემოთ
თუ (თვალთვალი> "00110111") მაშინ
სადაც "00110111" (55 ორობითი) შეიძლება შეიცვალოს ნებისმიერი 8 ბიტიანი ნომრით თქვენი პირადი მანქანის იდეალური სიჩქარით საწვავის მინიმალური მოხმარებისთვის.
თუ სიჩქარე გადააჭარბებს ოპტიმალურ რიცხვს, შუქი აანთებს შეტყობინებას, რომ მანქანა არ იყენებს საწვავის მაქსიმალურ ეფექტურობას.
შვიდი სეგმენტის ჩვენების მოდული
ეს მოდული იღებს 8 ბიტიან სიჩქარეს მილში საათში და აჩვენებს სიჩქარეს შვიდი სეგმენტის ჩვენებაზე. ეს საშუალებას მისცემს მომხმარებელს იცოდეს რამდენად სწრაფად აპირებენ გაიგონ სჭირდება თუ არა მას შენელება. ეს მოდული მოგვცა ჩვენს კლასში და დაიწერა ბრაიან მეილიმ, რომელიც შეიცავს კომპონენტებს bin2bcdconv, რომელიც ორობითი 8 ბიტიანი შეყვანის BCD ფორმაში გარდაქმნის, რომლის გაშიფვრა და clk_div უფრო ადვილია, რათა ეკრანს ვიზუალურად აჩვენოს რიცხვი 3 ციფრით ანოდის გამომუშავების შეცვლით საათის მაღალი სიხშირით. ეს კოდი იღებს 8 ბიტიან რიცხვს, რომელიც გარდაქმნის რიცხვს წაკითხვად ეკრანად ბაზის 3 დაფაზე.
საწვავის ეფექტურობის მოდული
ეს არის მთავარი ფაილი, რომელიც იყენებს ზემოთ მოდულებს, როგორც კომპონენტებს. მისი შეყვანაა საათი და თვალთვალის სიჩქარე. საათი აგებულია ბაზის 3 დაფაზე და თვალყურის დევნის სიჩქარე მოცემულია არდუინოს გამომავალით, რომელიც დაკავშირებულია ანალოგური სიგნალის pmod პორტთან (XADC). 8 ბიტიანი თვალთვალის სიჩქარის თითოეული ბიტი არის რუკა პორტებში ნაჩვენები გაყვანილობის განყოფილებაში ნაბიჯი 4. სხვა Basys 3 შეზღუდვები შეგიძლიათ იხილოთ Basys_3_Master.xdc– ში.
ნაბიჯი 4: Arduino– ს კოდირება
ეს პროექტი იყენებს ერთ მთავარ არდუინოს ფაილს, რომელიც მოითხოვს რამდენიმე ბიბლიოთეკის გამოყენებას, რომელთაგან ზოგი უკვე თქვენს არდუინოს პროგრამაშია, ზოგი კი გადმოწერილი უნდა იყოს ამ ინსტრუქციიდან ან ადაფრუტის ვებგვერდიდან (ბმული ქვემოთ).
ბიბლიოთეკები
ბმული Adafruit BNO055 გვერდზე:
ადაფრუტმა შეიმუშავა 2 ბიბლიოთეკა BNO055– ის გამოსაყენებლად და მიეცი მაგალითები მათი გამოყენების შესახებ. ამ პროექტში ჩვენ ვიყენებთ.getVector ფუნქციას, რომ არდუინომ გამოუშვას ამაჩქარებლის მონაცემები.
ეს პროექტი ასევე იყენებს arduino პროგრამაში უკვე დამონტაჟებულ ბიბლიოთეკებს, მათემატიკის ბიბლიოთეკის მსგავსად.
მთავარი ფაილი
ეს ფაილი იყენებს.getVector ფუნქციის აქსელერომეტრის მონაცემებს და იყენებს მათემატიკურ განტოლებებს, რომ გადააქციოს სიჩქარე კილომეტრში საათში, რომელიც შემდგომ 8 ბიტიანი მონაცემებით შეიტანება Basys 3 -ში (იხ. "აპარატურის გაყვანილობა". ინფორმაცია).
ნაბიჯი 5: აპარატურის გაყვანილობა
არდუინოს გაყვანილობა
Arduino უნდა იყოს მიერთებული პურის დაფაზე, როგორც ეს მოცემულია ზემოთ მოცემულ სურათებში.
Basys 3 გაყვანილობა
არდუინოს შედეგები გამოითვლება Basys 3 -ის შესასვლელებში ანალოგური სიგნალის pmod JXADC პორტების საშუალებით. 8 ბიტიანი თვალთვალის სიჩქარის თითოეული ბიტი შეიძლება იყოს დაკავშირებული ერთ სურათზე, რომელიც ნაჩვენებია ზემოთ სურათზე. ყველაზე უმნიშვნელო ბიტი (ციფრული პინ 7) უკავშირდება ts (7) და ყველაზე მნიშვნელოვანი ბიტი (ციფრული პინ 0) უკავშირდება ts (0).
გირჩევთ:
წვრილმანი ეფექტურობის 5V გამომავალი მამალი კონვერტორი!: 7 ნაბიჯი
წვრილმანი მაღალი ეფექტურობის 5V გამომავალი მამალი კონვერტორი!: მე მინდოდა ეფექტური გზა Lippo პაკეტებიდან (და სხვა წყაროებიდან) უფრო მაღალი ძაბვის დასაწევად 5V– მდე ელექტრონიკის პროექტებისთვის. წარსულში მე გამოვიყენე eBay– ის ზოგადი მამლის მოდულები, მაგრამ საეჭვო ხარისხის კონტროლი და არავითარი სახელი ელექტროლიტური კაპიტალი
ეფექტურობის ძიებაში .: 9 ნაბიჯი
ეფექტურობის ძიებაში .: BUCK კონვერტორი " DPAK " ზომა. ჩვეულებრივ, დამწყები დიზაინერი ელექტრონული ან მოყვარული გვჭირდება ძაბვის რეგულატორი მიკროსქემის დაფაზე დაბეჭდილი ან პურის დაფაზე. სამწუხაროდ, სიმარტივის გამო, ჩვენ ვიყენებთ ხაზოვანი ძაბვის რეგულატორს, მაგრამ არ არსებობს
გაზომეთ საწვავის დონე Arduino– ით: 4 ნაბიჯი (სურათებით)
გაზომეთ საწვავის დონე არდუინოსთან ერთად: სენსორული დანადგარი ჩვეულებრივ იყენებს პოტენომეტრთან დაკავშირებულ ფლოტს, როგორც წესი, დაბეჭდილ მელნის დიზაინს თანამედროვე ავტომობილში. სატანკო დაცლისას, ათწილადი იშლება და მოძრაობს კონტაქტში რეზისტორის გასწვრივ, რაც ზრდის მის წინააღმდეგობას. [2] გარდა ამისა
როგორ გავაკეთოთ მიკრობული საწვავის უჯრედი (MFC) ტალახის გამოყენებით: 7 ნაბიჯი (სურათებით)
როგორ გავაკეთოთ მიკრობული საწვავის უჯრედი (MFC) ტალახის გამოყენებით: MudWatt მიკრობული საწვავის უჯრედი (მოსიყვარულეობით სახელდება "ჭუჭყიანი ბატარეა") არის მოწყობილობა, რომელიც იყენებს ბაქტერიას ტალახში ნაპოვნი ორგანული ნივთიერებების ელექტროენერგიად გარდაქმნისთვის. ეს ინსტრუქცია დაგეხმარებათ თქვენი მიკრობული საწვავის წარმოებაში
IOT კვამლის დეტექტორი: განაახლეთ არსებული კვამლის დეტექტორი IOT– ით: 6 ნაბიჯი (სურათებით)
IOT კვამლის დეტექტორი: განაახლეთ არსებული კვამლის დეტექტორი IOT– ით: ავტორების სია, გამომგონებელი: Tan Siew Chin, Tan Yit Peng, Tan Wee Heng მეთვალყურე: დოქტორი ჩია კიმ სენგი მექანიკური და რობოტული ინჟინერიის განყოფილება, ელექტრო და ელექტრონული ინჟინერიის ფაკულტეტი, Universiti Tun ჰუსეინ ონნი მალაიზია. განაწილება