Мазмуну:
- 1 -кадам: материалдар
- 2 -кадам: Дизайнды түшүнүү
- 3 -кадам: VHDL коддоо
- 4 -кадам: Arduino коддоо
- 5 -кадам: Аппараттык камсыздоо
Video: Күйүүчү майдын натыйжалуулугун аныктоочу: 5 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:42
Автору: Даника Фудзивара жана Уильям Макгрутер
Унаалар азыркы учурда дүйнөнүн негизги транспорттук түрү болуп саналат. Тактап айтканда, Калифорнияда бизди миңдеген машиналар күн сайын жүргөн көчөлөр, чоң жолдор жана акы төлөнүүчү жолдор курчап турат. Бирок, машиналар газды колдонушат жана Калифорния АКШдагы башка штаттарга караганда эң көп бензинди колдонот, болжол менен күнүнө 4 500 галлон. Биздин CPE 133 Final долбоору үчүн, биз машинанын ылдамдыгын көзөмөлдөп турган системаны түзүүнү чечтик жана ал эң жакшы газ жүгүртүү же күйүүчү май үнөмдөө үчүн эң эффективдүү ылдамдыктан ашып кетээрин айтып берди. Бул долбоор айдоочуларга күйүүчү майды үнөмдөөгө жардам берет, бул болсо акчаны үнөмдөөгө, газды азыраак колдонууга жана абанын булгануусун азайтууга жардам берет деп үмүттөнөбүз.
1 -кадам: материалдар
Бул долбоор үчүн керектүү материалдар:
- Basys 3 FPGA
- Ардуино Уно
- Нан тактасы
- Adafruit BNO055 Absolute Orientation Sensor
- Эркектен Эркек зымдарга
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-битке өзгөртүлүшү мүмкүн.
Эгерде ылдамдык оптималдуу сандан ашып кетсе, анда жарык күйүп, унаа максималдуу күйүүчү май үнөмдөбөйт.
Жети сегменттин DisplayModule
Бул модуль саатына 8-бит ылдамдыгын алат жана жети сегменттүү дисплейде ылдамдыгын көрсөтөт. Бул колдонуучуга ылдамдыгын азайтуу керекпи же жокпу, билүү үчүн канчалык тез билүүгө мүмкүндүк берет. Бул модуль биздин класстын ичинде бизге берилген жана экранда 3 цифралуу цифраны көрсөтө алгыдай бинк 8-биттик кодду BCD түрүнө айландырган bin2bcdconv компоненттерин камтыган Брайан меали тарабынан жазылган. жогорку саат жыштыгында анод чыгарууну өзгөртүү менен. Бул код 8 биттик номерди кабыл алат, бул номерди basys 3 тактасында окулуучу дисплейге айландырат.
Күйүүчү май үнөмдөө модулу
Бул компоненттер катары модулдарды колдонгон негизги файл. Анын кириштери - бул саат жана көз салуу ылдамдыгы. Саат basys 3 тактасынын ичинде курулган жана көз салуу ылдамдыгы 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 функциясынан акселерометрдин маалыматын колдонот жана математикалык теңдемелерди колдонуп, аны саатына мильге ылдамдыкка айландырат, андан кийин 8 бит маалыматта Basys 3кө чыгарылат (Көбүрөөк маалымат үчүн "Аппаратты туташтыруу" бөлүмүн караңыз) маалымат).
5 -кадам: Аппараттык камсыздоо
Arduino Wiring
Arduino жогорудагы сүрөттөрдөгүдөй эле нанга такалууга тийиш.
Basys 3 Wiring
Ардуинонун чыгышы Analog signal pmod JXADC порттору аркылуу Basys 3тун киришине картага түшүрүлөт. 8-битке көз салуу ылдамдыгынын ар бир битин жогорудагы сүрөттө көрсөтүлгөн төөнөгүчтөрдүн бирине туташтырса болот. Эң кичине бит (санарип пин 7) ts (7) менен байланышат жана эң маанилүү бит (санарип пин 0) ts (0) менен туташат.
Сунушталууда:
Шоджи экрандын артында күйүүчү LEDлер: 5 кадам
Шоджи экранынын артында күйүүчү LEDлер: Өткөн жылы мен колдонулбаган ваннаны саунанын бөлмөсүнө айландырдым. Ваннада биздин үйдүн суу жылыткычы да бар болчу жана мен Amazonдан смоджи экраны сатып алгандыгымды жашыруу үчүн. Экрандын артында жылтылдаган шамдарды коюу жакшы көрүнөт деп ойлогом, бирок
Күйүүчү майдын деңгээлин Arduino менен өлчөө: 4 кадам (сүрөттөр менен)
Күйүүчү майдын деңгээлин Arduino менен өлчөгүлө: Сезгич бирдик адатта потенциометрге туташкан калкып жүрүүнү колдонот, адатта заманбап автомобилде басылган сыя дизайн. Цистерна бошогондо, калкып чыгуучу резистор боюнча жылып бараткан контактты түшүрөт жана жылдырат, анын каршылыгын жогорулатат. [2] Кошумча
Лампаны керосинден күйүүчү светодиодго айландыруу: 3 кадам
Лампаны керосинден күйүүчү светодиодго айландырыңыз: Бир нече жыл мурун мен Марта Стюарт Ведми менен Мышыктар Хэллоуининин короосундагы фигураларды жасадым. Үлгү менен көрсөтмөлөрдү бул жерден жүктөп алсаңыз болот Марта Стюарт Паттерндери жана бул жөнүндө мен жазган Инструктивдүү көрсөтмөнү көрө аласыз Witch Project to Instructable Link to This Hall
Күчтүү күйүүчү лазер: 5 кадам (сүрөттөр менен)
Күчтүү Күйүүчү Лазер: Саламатсызбы, бүгүн мен сизге DVD-RWден күчтүү күйүүчү лазерди кантип жасоону көрсөтөм, баштаардан мурун анын абдан күчтүү нерсеси жана көзүңүзгө олуттуу зыян келтириши мүмкүн экенин эскертем
Айлануучу LED (же LED күйүүчү күйгүзгүч): 5 кадам
Айлануучу диоддор (же LED күйүүчү күйгүзгүч): Мен кандай инструктивдүү кылышым керек деп ойлонуп жатып, кээ бир светодиоддорго туш болдум. Алар менен эмне кыларымды билбей акыры түшүндүм. Светодиоддору бар күйөрман! Албетте, сиз аны сатып алсаңыз болот, бирок L түстөрүн же жерлерин оңой эле өзгөртө албайсыз