Мазмұны:

Жанармай үнемдеу детекторы: 5 қадам
Жанармай үнемдеу детекторы: 5 қадам

Бейне: Жанармай үнемдеу детекторы: 5 қадам

Бейне: Жанармай үнемдеу детекторы: 5 қадам
Бейне: 🟡 POCO X5 PRO - ЕҢ ТОЛЫҚ ШОЛУ және СЫНАҚТАР 2024, Қараша
Anonim
Жанармай үнемдеу детекторы
Жанармай үнемдеу детекторы

Авторы: Даника Фудзивара мен Уильям Макгрутер

Автокөліктер қазіргі әлемдегі негізгі көлік түрі. Нақтырақ айтсақ, Калифорнияда бізді көшелер, магистральдар мен ақылы жолдар қоршап тұр, олар күнделікті мыңдаған көлік жүреді. Алайда, автокөліктер газды пайдаланады, ал Калифорния АҚШ -тағы басқа штаттарға қарағанда ең көп бензинді пайдаланады, күніне шамамен 4 500 галлон. Біздің CPE 133 Final жобасы үшін біз автомобильдің жылдамдығын бақылай алатын және оның ең жақсы газ жүгірісі немесе жанармай үнемдеу үшін ең тиімді жылдамдықтан асатынын анықтай алатын жүйе құруды шештік. Бұл жоба жүргізушілерге жанармай үнемдеуі туралы білуге көмектеседі, бұл өз кезегінде ақшаны үнемдеуге, газды аз пайдалануға және ауаның ластануын азайтуға көмектеседі деп үміттенеміз.

1 -қадам: материалдар

Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар

Бұл жобаға қажет материалдар:

- Basys 3 FPGA

- Ардуино Уно

- Нан тақтасы

- Adafruit BNO055 абсолютті бағдар сенсоры

- Еркектен ерге дейінгі сымдар

2 -қадам: Дизайнды түсіну

Дизайн туралы түсінік
Дизайн туралы түсінік
Дизайн туралы түсінік
Дизайн туралы түсінік

Ақырғы күй диаграммасы

Бұл жобада жоғарыда көрсетілген соңғы күй диаграммасында екі түрлі күй бар. Жарық қосулы («1» белгісімен) немесе өшірулі («0» белгісімен) болуы мүмкін. Күй қадағалау жылдамдығының кіруіне (ts) және тұрақты оңтайлы жылдамдыққа байланысты өзгереді.

Қара жәшік диаграммасы

Сонымен қатар жоғарыда Жанармай тиімділігі модулінің Қара жәшік диаграммасы бар, онда жылдамдық салыстырғышының схемасы мен жеті сегменттің дисплейі бар, олар төменде талқыланады. Бұл VHDL коды arduino-ға қосылған акселерометрдің өлшемдерінен 8 биттік кірісті алады.

3 -қадам: VHDL кодтау

Бұл жоба үшін біздің дизайнды құратын үш VHDL файлы бар, Fuel_Efficency_FinalProject модулі, Speed_Comparator модулі және sseg_dec модулі, онда Speed_Comparator мен sseg_dec жанармай тиімділігі модулін құрайды.

Жылдамдықты салыстыру модулі

Бұл модуль сағатына 8-биттік жылдамдықты қабылдайды және оны газды тұтынудың ең аз мөлшерінің оңтайлы жылдамдығымен салыстырады. Автокөліктің ең жақсы газ жүгірісінің орташа оңтайлы жылдамдығы шамамен 55 миль және одан төмен. Дегенмен, бұл әр модульде реттелетін автомобильге байланысты өзгеруі мүмкін. Жеке оңтайландыру үшін өзгертуге болатын кодтың 45 жолы төменде көрсетілген

if (tracking> «00110111») онда

Бұл жерде «00110111» (екілік санмен 55) кез келген 8-разрядты нөмірге ауыстырылуы мүмкін, бұл сіздің жеке автокөлігіңіздің ең жақсы жылдамдығы үшін жанармай шығыны аз болады.

Егер жылдамдық оңтайлы саннан асып кетсе, автомобиль жанармайдың максималды үнемделмейтінін білдіретін шамды қосады.

Жеті сегменттің дисплей модулі

Бұл модуль сағатына 8-биттік жылдамдықты алады және жеті сегментті дисплейде жылдамдықты көрсетеді. Бұл пайдаланушыға жылдамдықты төмендету керектігін білуге мүмкіндік береді. Бұл модуль бізге сыныпта берілген және оны Bryan Mealy жазған, оның құрамында bin2bcdconv компоненттері бар, ол екілік 8-биттік енгізуді BCD пішіміне түрлендіреді, оны декодтау және clk_div дисплейде 3 цифры бар санды визуалды түрде көрсету үшін анод шығысын жоғары сағат жиілігінде өзгерту арқылы. Бұл код 8 разрядты санды қабылдайды, бұл санды basys 3 тақтасында оқылатын дисплейге түрлендіреді.

Жанармай үнемдеу модулі

Бұл жоғарыдағы модульдерді компоненттер ретінде қолданатын негізгі файл. Оның кірісі - бұл сағат және бақылау жылдамдығы. Сағат базалық 3 тақтаға салынған және бақылау жылдамдығы The Analog signal pmod портына (XADC) қосылған arduino шығысымен беріледі. 8-разрядты бақылау жылдамдығының әрбір биті 4-қадамда сымдар бөлімінде көрсетілген порттарға карта болып табылады. Басқа Basys 3 шектеулерін Basys_3_Master.xdc ішінде табуға болады.

4 -қадам: Arduino кодтау

Бұл жоба бірнеше кітапхананы пайдалануды қажет ететін бір негізгі arduino файлын пайдаланады, олардың кейбіреулері сіздің arduino бағдарламаңызда бар, ал басқаларын осы нұсқаулықтан немесе Adafruit веб -сайтынан жүктеу керек (төмендегі сілтеме).

Кітапханалар

Adafruit BNO055 бетіне сілтеме:

Adafruit BNO055 пайдалану үшін 2 кітапхана әзірледі және оларды пайдалану мысалдарын келтірді. Бұл жобада біз.getVector функциясын пайдаланып, акселерометрдің мәліметтерін arduino шығарады.

Бұл жоба сонымен қатар математикалық кітапхана сияқты arduino бағдарламасында орнатылған кейбір кітапханаларды пайдаланады.

Негізгі файл

Бұл файл.getVector функциясының акселерометрлік деректерін қолданады және оны сағатына миль жылдамдыққа айналдыру үшін математикалық теңдеулерді қолданады, содан кейін Basys 3 -ке 8 бит деректермен шығарылады (толығырақ «Аппараттық құралдарды қосу» бөлімін қараңыз) ақпарат).

5 -қадам: Жабдықты сыммен қосу

Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау
Аппараттық сымдарды жалғау

Arduino сымдары

Arduino жоғарыдағы суреттердегідей тақтаға қосылуы керек.

Basys 3 сымдары

Ардуиноның шығысы BasX 3 кірістеріне аналогтық сигнал pmod JXADC порттары арқылы салыстырылады. 8-биттік бақылау жылдамдығының әрбір биті жоғарыдағы суретте көрсетілген түйреуіштердің біріне қосылуы мүмкін. Ең аз бит (цифрлық түйреуіш 7) ts (7) -ге, ал ең маңызды бит (цифрлық түйреуіш 0) ts (0) -ге қосылады.

Ұсынылған: