Мазмуну:

Ардуиного негизделген роботту ээрчүү жана качуу: 5 кадам
Ардуиного негизделген роботту ээрчүү жана качуу: 5 кадам

Video: Ардуиного негизделген роботту ээрчүү жана качуу: 5 кадам

Video: Ардуиного негизделген роботту ээрчүү жана качуу: 5 кадам
Video: ДИТЯ МОЕ, ТЫ НЕ МОЖЕШЬ ИГНОРИРОВАТЬ ЭТО ИЗБАВЛЕНИЕ... ПОСЛУШАЙ МЕНЯ, ПОКА НЕ СТАЛО СЛИШКОМ ПОЗДНО! 2024, Июль
Anonim
Ардуиного негизделген роботту ээрчүү жана качуу
Ардуиного негизделген роботту ээрчүү жана качуу

Бул ээрчип же Жарыктан качуучу жөнөкөй долбоор.

Мен бул симуляцияны Proteus 8.6 proдо жасадым. Керектелүүчү компоненттер: -1) Arduino uno.

2) 3 LDR.

3) 2 Dc Gear Motors.4) One Servo.5) Three 1k Resistors.6) one H-Bridge l290D7) One on & Off Switch [Программанын шарттарын өзгөртүү үчүн]

8) 9v жана 5v Battery

1 -кадам: Ardunio Code

Arduino коду кичине өзгөртүлгөн -бит Дата 23 Февраль 2016]

Бул кодекс жогорку комментарийде, мен түшүндүргүм келбейт, бирок сизге кандайдыр бир жардам керек болсо, мени менен байланышыңыз ([email protected])

Эскертүү: -Мен бул программанын 1-шартында Жарыкты ээрчүү үчүн.2чи, Жарыкты болтурбоо үчүн.

Бул шарттар канааттандырылганча, Робот Жарыкты ээрчип же качат. [Бул мен тандаган LDRдин минималдуу мааниси. Кадимки жарыкта анын диапазону 80ден 95ке чейин, бирок анын интенсивдүүлүгү барган сайын көбөйүп бараткандыктан, ал а = 400 чыңалуу бөлүштүргүч принциби боюнча иштеп жатат. // Толяранс мааниси]

2 -кадам: Proteus Files

Ардуино китепканасы үчүн бул шилтемеден жүктөп алыңыз

3-кадам: Сиздин H-көпүрө кантип иштейт

Сиздин H-көпүрө кантип иштейт
Сиздин H-көпүрө кантип иштейт
Сиздин H-көпүрө кантип иштейт
Сиздин H-көпүрө кантип иштейт

L293NE/SN754410 эң негизги H-көпүрөсү. Анын эки көпүрөсү бар, бири чиптин сол жагында, бири оң жагында жана 2 моторду башкара алат. Ал 1 ампер токту кууп, 4.5V менен 36V ортосунда иштей алат. Сиз бул лабораторияда колдонгон чакан DC мотору төмөнкү чыңалуудан коопсуз иштей алат, андыктан бул H-көпүрө жакшы иштейт. H-көпүрөнүн төмөнкү төөнөгүчтөрү жана өзгөчөлүктөрү бар: Pin 1 (1, 2EN) моторубузду иштетет же өчүрөт, ал HIGH же LOWPin 2 (1A)-бул моторубуз үчүн логикалык пин (кириш ЖОК же ТӨМӨН) 3 (1Y) мотор терминалдарынын бири үчүн 4-5-топурак Пин 6 (2Y) башка мотор терминалы үчүн Пин 7 (2А)-бул моторубуз үчүн логикалык пин (кириш ЖОГОРУ же ТӨМӨН) Pin 8 (VCC2)-бул биздин мотордун электр менен камсыздалышы, бул сиздин моторуңуздун номиналдык чыңалуусуна берилиши керек Pin 9-11 туташтырылган эмес, анткени сиз бул лабораторияда бир моторду колдонуп жатасыз Пин 12-13 жер үчүн Пин 14-15 туташпаган Пин 16 (VCC1) 5V менен байланышкан. Жогоруда H-көпүрөсүнүн диаграммасы жана кайсы мисс биздин мисалда эмне кылаарын. Диаграммага мотор логикалык казыктардын абалына жараша кандай иштээрин көрсөтүүчү чындык таблицасы камтылган (биздин Arduino тарабынан коюлган).

Бул долбоордо иштетүүчү пин Ардуинодогу санариптик пинге туташат, андыктан аны ЖОК же ТӨМ жөнөтүп, моторду КҮЙГҮЗҮП же ӨЧҮРҮП коюңуз. Мотор логикалык казыктар Arduinoңуздагы атайын санарип казыктарга да туташкан, андыктан моторду бир жакка буруш үчүн аны ЖОГОРУ жана ТӨМӨН же башка жакка буруш үчүн ТӨМӨН жана ЖОГОРУ жөнөтө аласыз. Мотор менен камсыздоо чыңалуусу мотордун чыңалуу булагына туташат, бул көбүнчө тышкы электр булагы. Эгерде сиздин моторуңуз 5В жана 500мАдан азыраак иштесе, Arduino 5V чыгарууну колдоно аласыз. Көпчүлүк моторлорго караганда жогорку чыңалуу жана жогорку ток тартуу талап кылынат, андыктан сизге тышкы электр булагы керек болот.

Моторду H-көпүрөсүнө туташтыруу Моторду H-көпүрөсүнө 2-сүрөттө көрсөтүлгөндөй туташтырыңыз.

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

4 -кадам: LDR кантип иштейт

Эми кошумча түшүндүрмөгө муктаж боло турган биринчи нерсе - бул Жарыкка көз каранды резисторлорду колдонуу. Жарыкка көз каранды резисторлор (же LDR) - бул жарыктын көлөмүнө жараша мааниси өзгөрүүчү резисторлор, бирок биз Arduino менен каршылыкты кантип аныктай алабыз? Чындыгында, сиз анте албайсыз, бирок аналогдук казыктарды колдонуп, 0-5В ортосундагы (негизги колдонууда) чыңалуу деңгээлин аныктай аласыз. Эми сиз "каршылык маанилерин чыңалуу өзгөрүшүнө кантип айландырабыз?" Деп сурап жаткандырсыз, бул жөнөкөй, биз чыңалуу бөлүштүргүч кылабыз. Чыңалуу бөлүштүргүч чыңалууга ээ болот, андан кийин бул чыңалуунун бир бөлүгүн киргизүү чыңалуусуна жана колдонулган резисторлордун эки маанисинин катышына чыгарат. Бул үчүн теңдеме:

Чыгуу чыңалуусу = Киргизүү чыңалуусу * (R2 / (R1 + R2)) Бул жерде R1 - биринчи каршылыктын мааниси, R2 - экинчисинин мааниси.

Эми бул дагы эле "Бирок ЛДР кандай каршылык баалуулуктарга ээ?" Деген суроо туулат, жакшы суроо. Чөйрөнүн жарыгынын аздыгы каршылык канчалык жогору болсо, ошончолук көп чөйрөнүн жарыгы төмөн каршылыкты билдирет. Азыр мен белгилүү бир LDR үчүн алардын каршылык диапазонун 200 - 10 кило Омго чейин колдондум, бирок бул ар кандай адамдар үчүн өзгөрөт, андыктан аларды кайдан сатып алгандыгыңызды текшерип, маалымат барагын же ушул сыяктуу нерсени табууга аракет кылыңыз. case R1 чындыгында биздин LDR, андыктан ошол теңдөөнү кайра алып келип, математика-сыйкырчылыкты (математикалык электрдик сыйкырчылык) кылалы. Эми бул кило ом маанилерин омго айландыруу керек: 200 кило-ом = 200, 000 ом 10 kilo-ohms = 10, 000 ohms Ошентип, биз кара түстө болгонубузда, чыңалуу кандай экенин билүү үчүн, биз төмөнкү сандарды кошобуз: 5 * (10000 / (200000 + 10000)) Киргизүү 5В, биз алган нерсеге окшош. Ардуинодон. Жогоруда 0.24V (тегеректелген) берилет. Эми биз төмөнкү сандарды колдонуу менен эң жогорку жарыктыкта чыгуу чыңалуусун табабыз: 5 * (10000 / (10000 + 10000)) Бул бизге так 2,5В берет. Ошентип, бул биз Arduino аналогдук казыктарына кире турган чыңалуу баалуулуктары, бирок бул программада көрүнбөй турган баалуулуктар, "Бирок эмне үчүн?" деп сурасаңыз болот. Arduino аналогдук чыңалууну санариптик маалыматка айландыруучу аналогду санариптик чипке колдонот. Ардуинодогу санарип казыктан айырмаланып, ал 0 же 5В болгон ЖОГОРУ же ТӨМӨН абалды гана окуй алат, аналогдук казыктар 0-5Вдан окуй алат жана муну 0-1023 сандар диапазонуна айландырат.. биз чынында Arduino чындыгында кандай баалуулуктарды окуй турганын эсептей алабыз.

Бул сызыктуу функция болгондуктан, биз төмөнкү формуланы колдонсок болот: Y = mX + C Мында; Y = Digital ValueWhere; m = эңкейиш, (көтөрүлүү / чуркоо), (санариптик мааниси / аналогдук мааниси) Кайда; C = Y кесүү Y кесүү 0 болуп саналат, ошондуктан бизге: Y = mXm = 1023 /5 = 204.6 Демек,: Санариптик маани = 204.6 * Аналогдук маани Ошентип, ачык түстө санариптик мааниси: 204.6 * 0.24 Болжол менен 49ду берет. эң жогорку жарыктыкта мындай болот: 204.6 * 2.5 Кайсы болжол менен 511 берет. Эми бул экөөнүн эки аналогдук казыкка орнотулушу менен биз эки бүтүн сандык өзгөрмөлөрдү түзө алабыз, алардын маанилерин эки сактоо үчүн жана салыштыруу операторлорунун кайсынысы эң төмөн мааниге ээ экенин көрүү үчүн, роботту ошол тарапка буруу.

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