Мазмуну:

Окутуу алгоритмдерин үйрөтүү үчүн Line Follower роботу: 3 кадам
Окутуу алгоритмдерин үйрөтүү үчүн Line Follower роботу: 3 кадам

Video: Окутуу алгоритмдерин үйрөтүү үчүн Line Follower роботу: 3 кадам

Video: Окутуу алгоритмдерин үйрөтүү үчүн Line Follower роботу: 3 кадам
Video: How To Do SDXL LoRA Training On RunPod With Kohya SS GUI Trainer & Use LoRAs With Automatic1111 UI 2024, Ноябрь
Anonim
Image
Image
Башкаруу алгоритмдерин окутуу үчүн Line Follower роботу
Башкаруу алгоритмдерин окутуу үчүн Line Follower роботу
Башкаруу алгоритмдерин окутуу үчүн Line Follower роботу
Башкаруу алгоритмдерин окутуу үчүн Line Follower роботу

Мен бул роботтун роботун бир нече жыл мурун робототехника мугалими болгондо ойлоп тапкам. Бул долбоордун максаты - окуучуларыма роботту мелдешке кантип коддоону үйрөтүү, ошондой эле If/Else менен PID контролун салыштыруу. Жана жок дегенде, механика жана роботтун узундугу бул башкаруу алгоритмине кандай таасир этет. Максат аны тезирээк жана ишенимдүү кылуу болчу.

Мен аны Arduino IDE менен программалаштырдым, бирок сиз жактырган IDE иштеп чыгууну колдонсоңуз болот. Бул USB жүктөгүч менен күчтүү PIC32ге ээ, андыктан сизге программисттин кереги жок. Ошондой эле ON/OFF которгуч, баштапкы абалга келтирүү жана баштоо/программа баскычы бар. Светодиоддор PWM моторуна туташкан, андыктан сиз колдонуп жаткан күчтү көрө аласыз.

Робот эксперимент үчүн толугу менен модулдук жана аны менен кырсыкка кабылган учурда оңдоо оңой. Бул роботту абдан кызыктуу түрдө программалоону үйрөнүү үчүн эң сонун куралга айлантат. Менин окуучуларым аны узак убакыт бою колдонушкан жана ар дайым жаңы нерсени, атүгүл PID көзөмөлүн үйрөнүшкөн. Сенсор тилкеси бүтүн санды кайтаруу үчүн алгоритмди колдонгонун айтпай эле коёлу, терс мааниси робот сол жакта, оң жагында оң жана cero сызыктын борборунда.

Жабдуулар

2x 6V Микро металл редмоторлору узартылган колдоо кронштейндери менен (Ар кандай тиш катышы жакшы, меники 10: 1)

1x Line Sensor тактасы

1x Негизги башкаруу блогу

1х 20 жалпак зым аркылуу, 1мм аралык. Меники 20 см.

1x Акрил шилтемеси (3мм тунук акрил менен кесилген)

1x 1/8 кастердик топ (меники металл)

2х Резина дөңгөлөк, диаметри 3 см.

1x Lipo батарейкасы. Сиз роботту 10v чейин кубаттай аласыз, бирок моторлор 6v үчүн бааланганын унутпаңыз.

Баарын бириктирүү үчүн кээ бир М2 бурамалар менен гайкалар.

Эгерде сиз өзүңүздүн дизайн файлдарыңызды жасоону кааласаңыз, схемалар жана аны куруу үчүн керектүү нерселер кийинки кадамга тиркелет.

1 -кадам: Аппараттык

Аппараттык
Аппараттык
Аппараттык
Аппараттык
Аппараттык
Аппараттык
Аппараттык
Аппараттык

Сүрөттөрдөн көрүнүп тургандай, бардык компоненттер SMD болуп саналат, бул сиздин ширетүү жөндөмүңүздү практикалоо үчүн эң сонун мүмкүнчүлүк. Бул робот менин 3 окуучум тарабынан ширетилген, андыктан аны эч кыйынчылыксыз жасай аласыз. Бардык дизайн файлдары тиркелет, сиз EAGLE менен файлдарды көрө аласыз. Эгерде сиз сүйүктүү ПХБ өндүрүүчүңүздүн тактайын кааласаңыз, Герберлер да камтылган.

Эки такта акрил бөлүгү менен бириктирилген, лазердик кесүү үлгүсү да камтылган. Мен аны сактап калуу үчүн M2 бурамаларын жана гайкаларды колдондум. Топтун дөңгөлөгү да ушул жерге коюлган. Ал эми роботту сүзсөңүз, акрил сындырып, такталарды бузуудан коргойт, сыноо үчүн идеалдуу! Жалпак зым CPU менен сенсордук тактанын ортосундагы байланышты жасоо үчүн колдонулат. Моторлор CPU тактасына зымдар менен оңой туташат.

Эскертүү: PIC колдонуучунун камтылган программасын колдонот, DP32 оригиналдуу программасынын өзгөртүлгөн версиясы. Программаны бул жерден ала аласыз. ICSP байланышы CPU тактасынын ылдый жагында камтылган.

2 -кадам: Программалык камсыздоо

Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо
Программалык камсыздоо

Мен роботту программалоо үчүн Arduino IDE колдонууну сунуштайм. Мен сизге айткандай, бул линиянын жолдоочусу PIC32MX250ге негизделген жана аны chipKIT DP32 менен шайкеш кылат. Сиз chipKIT пакетин Arduino IDEдеги пакет менеджерине гана орнотушуңуз керек жана сиз барууга даярсыз. Ошондой эле сиз аны MPLAB же IDEде программалай аласыз, бирок негизин Arduinoдо үйрөнсөңүз болот.

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

Мен бул окуу куралына 3 эскиз коштум. Биринчиси сенсор массивин сынайт, экинчиси If/Else линиясынын жолдоочусу жана акыркысы PID линиясынын жолдоочусу. Баары иштеп жатат, бирок дизайнды өзгөртсөңүз, кээ бир баалуулуктарды тууралашыңыз керек болот. Жана ошондой эле өзүңүздү эркин сезиңиз! Сап жолдоочуларынын алгоритмин аткаруунун жакшы жолдору бар, эксперимент - ийгиликтин ачкычы.

3 -кадам: Эксперимент

Эксперимент жасоо
Эксперимент жасоо
Эксперимент жасоо
Эксперимент жасоо
Эксперимент жасоо
Эксперимент жасоо

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

Ар кандай диаметри дөңгөлөктөр жана материалдар менен тажрыйба жүргүзүүдөн тартынбаңыз. Акрил муунун өзгөрткөн роботтун узундугун өзгөртүү. Башка батареяны колдонуңуз, ал тургай башка чыңалууда. Ошондой эле кичине же чоңураак болушу мүмкүн. Балким, моторлор үчүн дагы бир тиш катышы.

Программаны азыраак сенсорлорду колдонуу үчүн же башка алгоритмдерди колдонуп өзгөртүү үчүн, иштин өзгөрүшү канчалык таң калыштуу болот. Же эмнеге болбосун, эгер сиз алдыңкы колдонуучу болсоңуз, аны MPLAB менен жасаңыз.

Асман - чек!

Кошумча кеңеш катары… PID кирешесин жөндөө - бул Kp, Kd жана Ki ар кандай баалуулуктары бар линияны ээрчигенде роботтун эффекттерин үйрөнө турган кызыктуу саякат. Окуу сааттары жана сааттары кепилденет !!! Балдар математиканы керектүү тапшырмаларды аткаруу үчүн колдонуп жатканын байкабай калышат.

Мен сизге бул көрсөтмө жагат деп ишенем, эгер сизге бир нерсе керек болсо, комментарийлерде сураңыз. Окуганыңыз үчүн рахмат:)

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