Мазмуну:

Ыкчам башкаруучу Rover акселерометрди жана RF берүүчү-алуучу жупту колдонуп: 4 кадам
Ыкчам башкаруучу Rover акселерометрди жана RF берүүчү-алуучу жупту колдонуп: 4 кадам

Video: Ыкчам башкаруучу Rover акселерометрди жана RF берүүчү-алуучу жупту колдонуп: 4 кадам

Video: Ыкчам башкаруучу Rover акселерометрди жана RF берүүчү-алуучу жупту колдонуп: 4 кадам
Video: Range Rover 2022 года , “Batumi Gold” - Вы ещё не купили ? 4,4 литра 530 лс. ( aleksey_mercedes ) 4K 2024, Июль
Anonim
Ыкчам башкарылган Rover акселерометрди жана RF өткөргүч-алуучу түгөйүн колдонот
Ыкчам башкарылган Rover акселерометрди жана RF өткөргүч-алуучу түгөйүн колдонот

Эй, Сиз жөнөкөй кол жаңсоолор менен башкара турган, бирок эч качан кайраттуу боло албаган, ровер курууну эңсеп жүрдүңүз, бирок сүрөттөрдү иштетүүнүн татаалдыгына жана вебкамераңыздын микроконтроллерине интерфейсине кирише албадыңыз. көрүү маселелери? Ооба, коркпогула … анткени чыгуунун оңой жолу бар! Мына, мен силерге кубаттуу АКСЕЛЕРОМЕТРДИ тартуулап жатам! *dum tsss*

Акселерометр - бул сызыктуу огу боюнча гравитациялык ылдамданууну өлчөөчү чындап сонун аппарат. Бул муну биздин микроконтроллерибиз аналогдук мааниде окуган жер менен берүү чыңалуусунун ортосунда өзгөрүп турган чыңалуу деңгээли катары көрсөтөт. Эгерде биз мээбизди бир аз колдонсок (кичине математика жана Ньютондук физика), биз аны огунун тегерегиндеги сызыктуу кыймылды өлчөө үчүн гана колдонбостон, жантайыштын бурчун аныктоо жана термелүүнү сезүү үчүн да колдоно алабыз. Кабатыр болбо! Бизге математика же физика керек болбойт; биз акселерометр түкүргөн чийки баалуулуктар менен гана алектенебиз. Чынында, бул долбоор үчүн акселерометрдин техникалык өзгөчөлүктөрү жөнүндө көп ойлонуунун кажети жок. Мен жөн гана бир нече өзгөчөлүктөргө токтолуп, чоң сүрөттү түшүнүү үчүн керек болгондо гана иштеп чыгам. Бирок, эгер сиз анын ички механикасын изилдөөгө кызыкдар болсоңуз, бул жерден караңыз.

Муну азырынча эстен чыгарбоо керек: акселерометр - бул биздин смартфондордо ойногон бардык кыймыл сенсордук оюндарына эшикти ачкан гизмо (көбүнчө гироскоп менен коштолгон); мисалы, унаа жарыш оюну, анда биз түзмөктү эки жакка кыйшайтып машинаны башкарабыз. Жана биз бул эффектти акселерометрди (албетте, бир нече көмөкчү менен) мээлейге жабыштырып туурай алабыз. Биз жөн гана сыйкырдуу мээлейлерибизди кийип, колдорубузду солго же оңго, алдыга же артка кыйшайтып, роверлерибиздин биздин обондорго бийлеп жатканын көрүп жатабыз. Бул жерде бизден талап кылынган нерсе, акселерометрдин көрсөткүчтөрүн санариптик сигналдарга которуу, бул ровердеги моторлор бул сигналдарды роверге берүү механизмин чечмелеп, ойлоп чыгара алат. Муну ишке ашыруу үчүн, биз бүгүнкү эксперимент үчүн жакшы ol 'Arduino жана анын жардамчыларын чакырабыз, 434МГцте иштеген RF өткөргүч-кабыл алуучу жуп ошону менен ачык мейкиндикте болжол менен 100-150м диапазонду чыгарат, бул бизди линиядан куткарат. көрүү маселелери.

Аябай уккулуктуу, туурабы? Келгиле чумкуйбуз…

1 -кадам: Берилиштериңизди чогултуңуз

Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
Берилиштериңизди чогултуңуз
• Ардуино Нано x1
• Акселерометр (ADXL335) x1
• 5V DC Motor + Wheels x2 ар бири
• Уй дөңгөлөгү* x1
• L293D Motor Driver + 16 пин IC розеткасы x1 ар бири
• 434 МГц RF өткөргүч x1
• 434 МГц RF кабылдагычы x1
• HT-12E Encoder IC + 18 пин IC розеткасы x1 ар бири
• HT-12D декодер IC + 18 пин IC розеткасы x1 ар бири
• LM7805 Voltage Regulator x1
• Баскыч баскычы x2
• Кызыл LED + 330O каршылыгы x2 ар бири
• Сары LED + 330O каршылыгы x1 ар бири
• Жашыл LED + 330O каршылыгы (милдеттүү эмес) x4 ар бири
• 51kO жана 1MO резисторлору x1 ар бири
• 10µF радиалдык конденсаторлор x2
Батареялар, Батарейка Коннекторлору, USB Кабели, Өткөргүч Зымдар, Аялзатынын Баштары, 2-Пиндүү Терминалдар, ПХБ, Chasis жана кадимки ширетүүчү аксессуарлар

Эгерде сиз бодо дөңгөлөктү эмне үчүн колдонуп жатканыбызды ойлонуп жатсаңыз, анда нерсе, RF өткөргүч жана кабыл алуучу модулдарында 4 гана маалымат түйүнү бар, бул биз 2 моторду гана айдай алабыз, демек, бодо дөңгөлөктү структурасын колдоо. Бирок, эгер сиз өзүңүздүн дөңгөлөгүңүз төрт дөңгөлөк менен бир аз салкыныраак көрүнөрүн сезсеңиз, кабатыр болбоңуз, айланасында иш бар! Бул учурда, уйдун дөңгөлөгүн тизмеден чийип, ар бирине дөңгөлөк менен коштолгон 5V DC кыймылдаткычтарынын дагы бир жупун кошуп, 3 -кадамдын аягында талкууланган жөнөкөй бузууну издеңиз.

Акыр -аягы, эр жүрөк адамдар үчүн, дизайндагы дагы бир аз өзгөртүүгө мүмкүнчүлүктөр бар, бул кандайдыр бир түрдө өзүңүздүн Arduino инженерлигин камтыйт. Кийинки кадамда бонус бөлүмүнө өтүңүз жана өзүңүз көрүңүз. Сизге дагы бир нече кошумча жабдуулар керек: ATmega328P, 28pin IC розеткасы, 16МГц кристалл осциллятору, эки 22pF керамикалык капкак, дагы 7805 чыңалуу жөндөгүч, дагы 10μF радиалдык капкак жана 10kΩ, 680Ω, 330Ω каршылыгы жана ооба, минус Arduino!

2 -кадам: Бергичти зым менен кошуңуз

Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз
Өткөргүчтү жибиңиз

Биз долбоорду эки компонентке бөлөбүз: өткөргүч жана алуучу схемалары. Бергич акселерометрден, Arduino жана RF өткөргүч модулунан турат, алар HT-12E коддогуч IC менен бириктирилген, бардыгы тиркелген схемага ылайык туташкан.

Акселерометр, мурда киргизилгендей, биздин кол жаңсоолорубузду таанууга кызмат кылат. Биз муктаждыктарыбызды канааттандыруу үчүн үч огунун акселерометрин (негизинен үч бир октук акселерометрди) колдонобуз. Бул ылдамданууну бардык үч өлчөмдө өлчөө үчүн колдонулушу мүмкүн жана сиз болжогондой, ал бир эмес, үч огуна (x, y жана z) салыштырмалуу үч аналогдук баалуулуктардын жыйындысын берет. Чынында, бизге х жана у огунун ылдамдашы гана керек, анткени биз роверди төрт багытта гана айдай алабыз: кашка же артка (б.а. огунун боюнда) жана солго же оңго (б.а. х огу боюнча). Эгерде биз пилотсуз учак куруп жаткан болсок, анда биз анын огуна керек болчубуз, анын көтөрүлүшүн же жаңсоолор аркылуу түшүшүн көзөмөлдөй алмакпыз. Кандай болбосун, моторлорду айдай алышы үчүн акселерометрдин бул аналогдук баалуулуктары санариптик сигналдарга айландырылышы керек. Бул Arduino тарабынан көзөмөлдөнөт, ал ошондой эле бул сигналдарды конверсиялоодо RF өткөргүч модулу аркылуу роверге өткөрөт.

RF өткөргүчүнүн бир гана жумушу бар: 3-пиндеги "сериялык" маалыматтарды 1-антеннадан 1-антеннага чыгаруу. Бул HT-12E, 12-битти параллелдүү-сериялык маалымат коддогучтун колдонулушун жактайт. AD8ден AD11ге чейинки линиядагы Arduinoдон 4 битке чейин параллелдүү маалыматтар, бул бизге RF өткөргүчтөгү бирдиктүү маалымат түйүнүнөн айырмаланып, 24 = 16га чейин ар кандай I/O айкалыштарына орун бөлүүгө мүмкүндүк берет. Калган 8 бит, кодердеги A0дан A7ге чейинки линиялардан алынган, АРнын өткөргүчүн тийиштүү RF кабылдагычы менен жупташтырууну жеңилдетүүчү дарек байтты түзөт. 12 битти чогултуп, сериялаштырып, RF өткөргүчүнүн маалымат түйүнүнө өткөрүп беришет, ал өз кезегинде ASK-маалыматты 434МГц ташуучу толкунга модуляциялайт жана 1-пиндеги антенна аркылуу атат.

Концептуалдык түрдө, 434МГцте угуп жаткан ар кандай RF кабылдагычы бул маалыматты кармап, демодуляциялап жана кодун чечип алышы керек. Бирок, HT-12E дарегинин линиялары жана HT-12D кесиптештеринде (12-биттик катарлаш параллелдүү маалымат декодери), маалыматтарды берүүчүгө гана багыттоо аркылуу RF өткөргүч-алуучу түгөйүн уникалдуу кылууга мүмкүнчүлүк берет. кабыл алуучу, ошону менен башкалар менен баарлашууну чектейт. Бизден талап кылынган нерсе - дарек линияларын эки фронтто бирдей конфигурациялоо. Мисалы, биз HT-12E үчүн бардык дарек линияларын негиздегендиктен, биз кабыл алуучу жерде HT-12D үчүн ушундай кылышыбыз керек, антпесе ровер сигналдарды ала албайт. Ошентип, биз кабыл алуучулардын ар биринде HT-12Dsдеги дарек линияларын бирдей конфигурациялоо менен, бир өткөргүч схемасы менен бир нече роверди башкара алабыз. Же болбосо, биз эки мээлей кийип алышыбыз мүмкүн, алардын ар бири өзүнчө дарек линиясынын конфигурациясын камтыган өткөргүч схемасы менен жабдылган (айталы, бири бардык дарек линиялары жерге, экинчиси баарына бийик, же бир сызыгы жерге тигилген, калган жети кармалып турат) бийик, экинчиси эки сызык менен, калган алтоо бийик турганда же алардын башка айкалышы) жана ар бири бирдей конфигурацияланган роверлерди башкарат. Маэстрону андроид симфониясында ойноңуз!

Районду монтаждоодо белгилей кетчү бир маанилүү нерсе - бул Росктун баасы. HT-12E 15 жана 16-казыктардын ортосундагы ички осциллятордук схемага ээ, ал ошол казыктардын арасына Роск деп аталган резисторду туташтыруу аркылуу иштетилет. Роск үчүн тандалган маани чындыгында осциллятордун жыштыгын аныктайт, бул камсыздоо чыңалуусуна жараша өзгөрүшү мүмкүн. Rosc үчүн ылайыктуу маанини тандоо HT-12E иштеши үчүн өтө маанилүү! Идеалында, HT-12E осцилляторунун жыштыгы HT-12D аналогуна караганда 1/50 эсе көп болушу керек. Ошондуктан, биз 5Вде иштеп жаткандыктан, биз тийиштүү түрдө HT-12E жана HT-12D микросхемалары үчүн Rosc катары 1MΩ жана 51kΩ резисторлорду тандап алдык. Эгерде сиз чынжырларды башка камсыздоо чыңалуусунда иштетүүнү пландаштырсаңыз, тиркелген HT-12E маалымат барагынын 11-бетиндеги "Осциллятордун жыштыгы менен жабдуу чыңалуусунун" графигине кайрылып, так осциллятордун жыштыгын жана каршылыгын аныктаңыз.

Ошондой эле, кошумча эскертүү катары, биз бул жерде аялдардын башын колдонобуз (IC розеткалары сыяктуу окшош кызматты аткарат), акселерометрди, RF өткөргүчүн жана Arduino -ны чынжырга туташтыруунун ордуна схемага туташтыруу үчүн. Ниети бир аз компоненттерди кайра колдонууга мүмкүнчүлүк берүү. Айтыңызчы, сиз жаңсоолор менен башкарылган роверди ойлоп тапканыңызга бир топ убакыт болду, трофей текчеңиздин үстүндө чаң капталган, ал эми акселерометрдин эффективдүүлүгүн колдонгон дагы бир чоң көрсөтмөгө чалынасыз. Анда эмне кыласың? Сиз жөн гана аны роверден чыгарып, жаңы схемаңызга түртүп саласыз. Сизге жаңысын алуу үчүн "Амазонкаларды" чакыруунун кажети жок:-p

Бонус: Arduino жок кыл, бирок, жок

Эгерде сиз өзүңүздү бир аз укмуштуудай сезип жатсаңыз жана өзгөчө, эгерде сиз биз ойлогондой бул укмуштуудай кереметти (албетте, Arduino) жумшоо өтө эле ашыкча нерсе деп ойлосоңуз, мени дагы бир аз чыдаңыз.; эгер андай болбосо, кийинки кадамга өтүүдөн тартынбаңыз.

Бул жерде биздин максат - Arduino (чындыгында Arduino мээлери; ооба, мен ATmega IC жөнүндө айтып жатам!) Команданын туруктуу мүчөсү кылуу. ATmega бир эле эскизди кайра-кайра иштетүү үчүн программаланган болот, ошондо ал схеманын түбөлүк бөлүгү болуп кызмат кыла алат, жөн эле HT-12E-a IC сыяктуу, жөн эле ошол жерде отуруп, эмне кылыш керек. Чыныгы камтылган система ушундай болушу керек эмеспи?

Кандай болбосун, бул жаңыртууну улантуу үчүн, схеманы тиркелген экинчи схемага ылайык өзгөртүү. Бул жерде, биз жөн гана Arduino үчүн аялдардын башын ATmega үчүн IC розеткасы менен алмаштырабыз, ICдин баштапкы абалына (пин 1) 10K тартма каршылыгын кошобуз жана аны 9 жана 10 пиндердин ортосундагы тышкы саат менен соробуз. Тилекке каршы, эгер биз Arduino жок кылсак, анда анын орнотулган чыңалуу жөндөгүчтөрүн да кое беребиз; Демек, биз бул жерде ресивер үчүн иштеген LM7805 схемасын кайталашыбыз керек. Андан тышкары, биз акселерометрди иштетүү үчүн керектүү 3.3V тартуу үчүн чыңалуу бөлүштүргүчтү колдонобуз.

Эми, бул жердеги башка бир нерсе - ATmega программасын өз ишин аткарууга программалоо. Сиз аны 4 -кадамга чейин күтүүгө туура келет. Андыктан, күтө туруңуз…

3 -кадам: жана, Алуучу

Жана, Алуучу
Жана, Алуучу
Жана, Алуучу
Жана, Алуучу
Жана, Алуучу
Жана, Алуучу
Жана, Алуучу
Жана, Алуучу

Алуучу HT-12D декодери IC менен коштолгон RF кабыл алуучу модулунан жана L293D мотор драйверинин жардамы менен иштеген бир жактуу DC моторунан турат, бардыгы тиркелген схемага ылайык туташкан.

RF кабыл алуучунун бирден-бир милдети-бул ташуучу толкундун демодуляциясы (1-пинде антеннасы аркылуу алынган) жана 7-пинде алынган "сериялык" маалыматтарды көрсөтүү, ал жерден HT-12D дезериализация үчүн алынган. Эми, HT-12Dдеги дарек линиялары (A0ден A7ге чейин) анын HT-12E кесиптешине окшош конфигурацияланган деп ойлосок, маалыматтын 4 параллель биттери маалымат линиялары аркылуу (D8ден D11ге чейин) алынат. HT-12D, мотор айдоочусуна, бул өз кезегинде моторлорду айдаш үчүн бул сигналдарды чечмелейт.

Дагы, Rosc баасына көңүл буруңуз. HT-12D да 15 жана 16-казыктардын ортосундагы ички осциллятордук схемага ээ, ал ошол казыктардын арасына Rosc деп аталган резисторду туташтыруу менен иштетилет. Роск үчүн тандалган маани чындыгында осциллятордун жыштыгын аныктайт, бул камсыздоо чыңалуусуна жараша өзгөрүшү мүмкүн. Rosc үчүн ылайыктуу баалуулукту тандоо HT-12D иштеши үчүн өтө маанилүү! Идеалында HT-12D осцилляторунун жыштыгы HT-12E аналогуна караганда 50 эсе көп болушу керек. Ошондуктан, биз 5Вде иштеп жаткандыктан, биз тийиштүү түрдө HT-12E жана HT-12D микросхемалары үчүн Rosc катары 1MΩ жана 51kΩ резисторлорду тандап алдык. Эгерде сиз чынжырларды башка камсыздоо чыңалуусунда иштетүүнү пландап жатсаңыз, тиркелген HT-12D маалымат барагынын 5-бетиндеги "Осциллятордун жыштыгы менен жабдуу чыңалуусунун" графигине кайрылыңыз.

Ошондой эле, RF алгычтын аял аталыштарын унутпаңыз.

Кошумча, LEDди 330Ω учурдагы чектөөчү резистор аркылуу HT-12Dдин 4 маалымат түйүнүнүн ар бирине туташтырууга болот, ошондо бул пинге алынган битти аныктоого жардам берет. Эгерде алынган бит HIGH (1) болсо, LED күйөт жана бит LOW (0) болсо өчөт. Же болбосо, бир эле LED жарактуу өткөрүп берүү учурунда күйүп турган HT-12D (дагы 330Ω токту чектөөчү резистор аркылуу) VT пинине байланган болушу мүмкүн.

Эми, эгер сиз мен биринчи кадамда айтып жаткан моторлор менен бузууну издесеңиз, анда бул оңой! Экинчи схемада көрсөтүлгөндөй, ар бир комплекттеги эки моторду параллелдүү түрдө зымдап коюңуз. Бул талап кылынгандай иштейт, анткени ар бир топтомдогу моторлор (сол жана алдыңкы жана арткы моторлор) эч качан карама -каршы багытта айдалбайт. Башкача айтканда, роверди оңго буруш үчүн, сол жактагы алдыңкы жана арткы моторлорду алдыга, оң жагындагы алдыңкы жана арткы моторлорду артка айдаш керек. Ошо сыяктуу эле, ровердин солго бурулушу үчүн, сол жактагы алдыңкы жана арткы моторлорду тең артка, ал эми оң жагындагы алдыңкы жана арткы моторлорду алдыга жылдыруу керек. Ошондуктан, бир топтогу моторлорго бирдей жуп чыңалууда берүү коопсуз. Жана мунун жолу - моторлорду параллелдүү түрдө туташтыруу.

4 -кадам: Кодекске өтүү

Кодекске өтөлү
Кодекске өтөлү

Роверди иштетүү үчүн бир гана нерсе калды. Ооба, сиз туура ойлодуңуз! (Мен ишенем деп үмүттөнөм) Биз дагы эле акселерометрдин көрсөткүчтөрүн мотордун айдоочусу моторду айдай ала турган түргө которушубуз керек. Эгерде сиз акселерометрдин көрсөткүчтөрү аналогдук жана мотордун айдоочусу санариптик сигналдарды күтөт деп ойлоп жатсаңыз, анда биз техникалык эмес, кандайдыр бир ADCти ишке ашырышыбыз керек болот, бирок биз муну кылышыбыз керек. Жана ал абдан жөнөкөй.

Биз билебиз, акселерометр сызыктуу огу боюнча гравитациялык ылдамдатууну өлчөйт жана бул ылдамдануу жер менен берүү чыңалуусунун ортосунда өзгөрүп турган чыңалуу деңгээли катары көрсөтүлөт, аны биздин микроконтроллерибиз аналогдук мааниде 0дөн 1023кө чейин окуйт. Акселерометрди 3.3Vде иштетип жатсаңыз, 10-бит ADC үчүн аналогдук шилтемени (Arduino бортундагы ATmeaga-га кошулган) 3.3Vга койгонубуз жөн. Бул жөн эле нерселерди түшүнүүгө жардам берет; бирок, антпесек да, кичинекей экспериментибиз үчүн анча деле мааниге ээ болбойт (биз кодду бир аз оңдообуз керек). Бул үчүн, биз жөн гана Arduinoдогу AREF пинин (ATmega'деги 21 -пин) 3.3V менен байланыштырабыз жана analogReference (EXTERNAL) деп чалып, коддогу бул өзгөрүүнү билдиребиз.

Эми, биз акселерометрди тегиз жана аналогдук кылып койгондо, x жана y огунун ылдамдатуусун окуңуз (эсиңизде болсун, бизге бул эки огу гана керек), биз болжол менен 511 (башкача айтканда 0 менен 1023 ортосунда жарым жол) мааниге ээ болобуз. Бул октордо 0 ылдамдануу бар деп айтуунун жолу. Чындыктын чоо -жайын изилдөөнүн ордуна, муну графикте x жана y огу катары элестетип көрүңүз, 511 мааниси келип чыгууну жана 0 жана 1023 сүрөттө көрсөтүлгөндөй акыркы чекиттерди билдирет; акселерометрди анын казыктары ылдый каратып, сизге жакыныраак кармагандай кылып багыттаңыз, антпесе сиз окторду оодарып/алмаштыра аласыз. Бул эгер акселерометрди оңго кыйшайта турган болсок, биз х огу боюнча 511ден чоң маанини окушубуз керек, ал эми акселерометрди солго кыйшайта турган болсок, х огу боюнча 511ден төмөн мааниге ээ болушубуз керек.. Анын сыңарындай, эгер биз акселерометрди алдыга кыйшайта турган болсок, биз о огу боюнча 511ден чоң маанини, ал эми акселерометрди артка кыйшайта турган болсок, у огу боюнча 511ден төмөн маанини окушубуз керек. Жана биз коддо ровер айдоого тийиш болгон багытты ушундайча аныктайбыз. Бирок бул ошондой эле акселерометрди чынында бир калыпта кармап туруубуз керектигин билдирет жана 511ди эки огу боюнча окуй алуу ровердин токтоп турушу үчүн. Бул тапшырманы бир аз жеңилдетүү үчүн, биз сүрөттө көрсөтүлгөндөй, чек араны түзүүчү белгилүү бир босоголорду аныктайбыз, ошондо ровер х жана у көрсөткүчтөрү чектерде турса, кыймылсыз бойдон калат жана биз ровер орнотулушу керектигин так билебиз. чектен ашкандан кийин кыймыл.

Мисалы, эгерде y огунда 543 окулса, биз акселерометрдин алдыга кыйшайганын билебиз, биз роверди алдыга бурушубуз керек. Биз муну D2 жана D4 HIGH төөнөгүчтөрүн жана D3 жана D5 LOW төөнөгүчтөрүн коюу менен жасайбыз. Эми, бул казыктар HT-12Eге түз туташкандыктан, сигналдар сериялаштырылган жана РФ өткөргүчүн роверде отурган RF кабылдагычы кармоо үчүн гана иштен чыгарылган, ал HT-12D жардамы менен сигналдарды ажыратат жана аларды L293Dге өткөрүп берет, бул өз кезегинде бул сигналдарды чечмелеп, моторлорду алдыга жылдырат

Сезгичтикти текшерүү үчүн, сиз бул чектерди өзгөрткүңүз келиши мүмкүн. Мунун оңой жолу - акселерометрди Arduinoго туташтыруу жана x жана y көрсөткүчтөрүн сериялык мониторго бөлүп турган эскизди иштетүү. Эми акселерометрди бир аз жылдырыңыз, көрсөткүчтөрдү карап, босоголорду чечиңиз.

Жана, бул! Ардуиного кодду жүктөп, ырахат алыңыз !! Же, балким, жакында эмес:-(Эгерде сиз бонустук бөлүмдү өткөрүп жибербесеңиз, анда кодду ATmega'ге жүктөө дагы бир аз иштөөнү билдирет. Сизде эки вариант бар:

A варианты: FTDI FT232 негизги үзүлүү тактасы сыяктуу USB сериялык түзмөгүн колдонуңуз. Төмөндөгү картага ылайык, TTL аталышынан ATmega'дагы тиешелүү казыктарга зымдарды жөн эле өткөрүңүз:

Breakout тактасындагы казыктар Микроконтроллердеги казыктар
DTR/GRN RST/баштапкы абалга келтирүү (1 -пин) 0.1µF капкак аркылуу
Rx Tx (Pin 3)
Tx Rx (2 -пин)
Vcc +5v чыгаруу
CTS (колдонулбаган)
Gnd Жер

Эми, USB кабелинин бир учун сынык тактасына, экинчисин компьютериңизге сайыңыз жана кодду кадимкидей жүктөңүз: Arduino IDEди ишке киргизиңиз, тиешелүү сериялык портту тандаңыз, тактанын түрүн орнотуңуз, эскизин түзүңүз жана жүктөөнү басыңыз..

В варианты: Эгерде сизде бир жерде жатып калсаңыз, БУУну колдонуңуз. Жөн эле ATmega'иңизди БУУга туташтырыңыз, кодду кадимкидей жүктөңүз, ICди сууруп алып, кайра өткөргүч схемасына түртүңүз. Пирог сыяктуу оңой!

Бул варианттардын бири иштеши керек, эгер сиз ATmega колуңуздан мурун жүктөгүчтү күйгүзүү үчүн акылдуу болсоңуз, же эгер сиз биринчи кезекте жүктөгүч менен ATmega сатып алуу үчүн акылдуу болсоңуз. Болбосо, бул жерде көрсөтүлгөн кадамдарды аткаруу менен улантыңыз.

Andddd, биз расмий түрдө бүттүк! Бул таң калыштуу узун нускама сизге жакты деп ишенем. Эми, улантыңыз, роверди куруп бүтө бериңиз, эгер аны аягына чейин бүтүрбөсөңүз, аны менен бир аз ойноңуз жана төмөндөгү комментарийлер бөлүмүнө суроолор жана/же конструктивдүү сындар менен кайтып келиңиз.

Рахмат

P. S. Даяр болгон долбоордун эч кандай сүрөтүн жүктөбөгөнүмдүн себеби, мен аны өзүм бүтүргөн жокмун. Аны куруунун жарымында мен ылдамдыкты көзөмөлдөө, тоскоолдуктарды болтурбоо жана ровердеги ЖК сыяктуу кээ бир күчөтүүлөрдү ойлодум, эгерде биз берүүчү жана кабыл алуучу учтарда микроконтроллерди колдонсок, анчалык деле кыйын эмес. Бирок, эмне үчүн муну оор жол менен кылбаска ?! Ошентип, мен азыр ошол багытта иштеп жатам жана кандайдыр бир жемиш берер замат жаңыртууну жарыялайм. Бирок, мен мурунку долбоорлорумдун биринин модулдарын колдонуу менен курган тез прототиптин жардамы менен кодду жана дизайнды сынап көрдүм; бул жерден видеону көрө аласыз.

Сунушталууда: