Mundarija:

Yoqilg'i tejash detektori: 5 qadam
Yoqilg'i tejash detektori: 5 qadam

Video: Yoqilg'i tejash detektori: 5 qadam

Video: Yoqilg'i tejash detektori: 5 qadam
Video: Avtomobilda benzinni qanday tejash mumkin | Avtoinstruktor Uzbekistan 2024, Noyabr
Anonim
Yoqilg'i tejamkorligi o'lchagichi
Yoqilg'i tejamkorligi o'lchagichi

Muallif: Danica Fujiwara va William McGrouther

Avtomobillar bugungi kunda dunyodagi asosiy transport turidir. Xususan, Kaliforniyada bizni har kuni minglab mashinalar yuradigan ko'chalar, magistral yo'llar va pullik yo'llar o'rab turadi. Biroq, mashinalarda gaz ishlatiladi va Kaliforniya AQShning boshqa shtatlariga qaraganda eng ko'p benzin sarflaydi, kuniga taxminan 4,500 galon. CPE 133 Final loyihasi uchun biz avtomobil tezligini kuzatadigan va uning eng yaxshi gaz tezligi yoki yoqilg'i tejamkorligi uchun eng samarali tezlikdan oshib ketishini aniqlaydigan tizim yaratishga qaror qildik. Bu loyiha haydovchilarga yoqilg'i tejamkorligi to'g'risida xabardor bo'lishga yordam beradi, bu esa o'z navbatida pulni tejashga, gazni kamroq sarflashga va havoda ifloslanishni kamaytirishga yordam beradi.

1 -qadam: materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

Ushbu loyiha uchun zarur bo'lgan materiallar:

- Asosiy 3 FPGA

- Arduino Uno

- Non paneli

- Adafruit BNO055 mutlaq yo'naltiruvchi sensori

- Erkak -erkak simlari

2 -qadam: Dizaynni tushunish

Dizaynni tushunish
Dizaynni tushunish
Dizaynni tushunish
Dizaynni tushunish

Cheklangan holat diagrammasi

Ushbu loyiha yuqorida ko'rsatilgan cheklangan holat diagrammasida ikki xil holatga ega. Chiroq yoqilgan ("1" bilan ko'rsatilgan) yoki o'chirilgan ("0" belgisi bilan) bo'lishi mumkin. Holat kuzatuv tezligi (ts) ning kiritilishiga va doimiy optimal tezlikka qarab o'zgaradi.

Qora quti diagrammasi

Yuqorida yonilg'i sarfini tejash modulining qora qutisi diagrammasi mavjud, u tezlik taqqoslagichining sxemasini va etti segmentli displeyni quyida muhokama qilinadi. Ushbu VHDL kodi arduino-ga ulangan akselerometr o'lchovlaridan 8-bitli kirishni oladi.

3 -qadam: VHDL kodlash

Ushbu loyiha uchun bizning dizaynimizni quradigan uchta VHDL fayllari mavjud: Fuel_Efficency_FinalProject moduli, Speed_Comparator moduli va sseg_dec moduli, bu erda Speed_Comparator va sseg_dec yonilg'i samaradorligi modulini tashkil qiladi.

Tezlikni taqqoslash moduli

Bu modul soatiga 8 bitli tezlikni oladi va uni eng kam gaz sarfi uchun optimal tezlik bilan taqqoslaydi. Mashinaning eng yaxshi gaz tezligi uchun o'rtacha optimal tezlik soatiga 55 milya va undan pastda. Biroq, bu modulda sozlanishi mumkin bo'lgan mashinadan mashinaga farq qilishi mumkin. Shaxsiy optimallashtirish uchun o'zgartirilishi mumkin bo'lgan kodning 45 -qatori quyida ko'rsatilgan

agar (kuzatuv> "00110111") bo'lsa

Qaerda "00110111" (ikkilik 55) har qanday 8-bitli raqamga o'zgartirilishi mumkin, bu sizning shaxsiy avtomobilingiz uchun eng kam yoqilg'i sarfi uchun ideal tezlikdir.

Agar tezlik maqbul raqamdan oshsa, chiroq yonadi va avtomobil yonilg'i sarfini maksimal darajada ishlatmasligini bildiradi.

Etti segmentli displey moduli

Bu modul soatiga 8-bitli milya oladi va etti segmentli displeyda tezlikni ko'rsatadi. Bu foydalanuvchiga tezlikni pasaytirish kerakmi yoki yo'qligini qanchalik tez bilishini bilish imkonini beradi. Bu modul bizga o'z sinfimizda berilgan va Bryan mealy tomonidan yozilgan bo'lib, u bin2bcdconv komponentlarini o'z ichiga oladi, u ikkilik 8-bitli kirishni BCD formatiga o'zgartiradi, bu kodni koddan chiqarish osonroq va clk_div. anod chiqishini yuqori soat chastotasida o'zgartirish orqali. Bu kod 8-bitli raqamni qabul qiladi, bu raqamni basys 3 taxtasida o'qiladigan displeyga aylantiradi.

Yoqilg'i tejash moduli

Bu yuqoridagi modullarni komponent sifatida ishlatadigan asosiy fayl. Uning kirishiga soat va kuzatuv tezligi kiradi. Soat bazis 3 taxtasida qurilgan va kuzatuv tezligi analog signal pmod portiga (XADC) ulangan arduino chiqishi bilan belgilanadi. 8-bitli kuzatuv tezligining har bir biti 4-bosqichda simlar bo'limida ko'rsatilgan portlarga xaritadir. Boshqa Basys 3 cheklovlarini Basys_3_Master.xdc ichida topish mumkin.

4 -qadam: Arduino -ni kodlash

Ushbu loyiha bir nechta kutubxonalardan foydalanishni talab qiladigan bitta asosiy arduino faylidan foydalanadi, ularning ba'zilari sizning arduino dasturida, boshqalari esa bu ko'rsatmali yoki Adafruit veb -saytidan yuklab olinishi kerak (pastdagi havola).

Kutubxonalar

Adafruit BNO055 sahifasiga havola:

Adafruit BNO055 -dan foydalanish uchun 2 ta kutubxona ishlab chiqdi va ulardan qanday foydalanish haqida misollar keltiring. Ushbu loyihada arduino akselerometr ma'lumotlarini chiqarish uchun.getVector funktsiyasidan foydalanamiz.

Ushbu loyiha, shuningdek, matematika kutubxonasi kabi, arduino dasturida o'rnatilgan ba'zi kutubxonalardan ham foydalanadi.

Asosiy fayl

Bu fayl.getVector funktsiyasidagi akselerometr ma'lumotlarini ishlatadi va matematik tenglamalardan foydalangan holda uni soatiga milya tezlikka aylantiradi, so'ngra Basits 3 ga 8 bitli ma'lumotlar bilan chiqariladi (qo'shimcha ma'lumot uchun "Uskuna simlarini ulash" bo'limiga qarang). ma `lumot).

5 -qadam: Uskuna simlarini ulash

Uskunani ulash
Uskunani ulash
Uskunani ulash
Uskunani ulash
Uskunani ulash
Uskunani ulash
Uskunani ulash
Uskunani ulash

Arduino simlari

Arduino, yuqoridagi rasmlarda bo'lgani kabi, non paneliga ulangan bo'lishi kerak.

Basys 3 simlari

Arduino -ning chiqishlari analog signal pmod JXADC portlari orqali Basys 3 -ning kirishiga mos keladi. 8 bitli kuzatuv tezligining har bir biti yuqoridagi rasmda ko'rsatilgan pinlardan biriga ulanishi mumkin. Eng kichik bit (raqamli pin 7) ts (7) ga ulanadi va eng muhim bit (raqamli pin 0) ts (0) ga ulanadi.

Tavsiya: