Мазмұны:

Ардуино комбаттық роботты басқару: 10 қадам (суреттермен)
Ардуино комбаттық роботты басқару: 10 қадам (суреттермен)

Бейне: Ардуино комбаттық роботты басқару: 10 қадам (суреттермен)

Бейне: Ардуино комбаттық роботты басқару: 10 қадам (суреттермен)
Бейне: Уроки Ардуино #0 - что такое Arduino, куда подключаются датчики и как питать Ардуино 2024, Шілде
Anonim
Arduino Combat роботты басқару
Arduino Combat роботты басқару
Arduino Combat роботты басқару
Arduino Combat роботты басқару
Arduino Combat роботты басқару
Arduino Combat роботты басқару

Штаттардағы Battlebots пен Ұлыбританиядағы роботтық соғыстардың қайта жандануы менің робот техникасына деген сүйіспеншілігімді қайта жандандырды. Мен жергілікті бот жасаушылардың тобын тауып, бірден суға түстім.

Біз Ұлыбританияның құмырсқалар салмағымен күресеміз (150 граммдық салмақ), мен ботты құрудың дәстүрлі әдісін RC берілісімен тез түсіндім: қымбат RC таратқышы, көлемді немесе қымбат қабылдағыш және сиқырлы қораптар болып табылатын ESCs (электронды жылдамдықты реттегіштер). ол осы көлемдегі ботқа қажет болғаннан гөрі көбірек токты өңдей алады.

Бұрын Arduino -ны қолдана отырып, мен басқаша әрекет етуге тырыстым және жауынгерлік құқықтық сигналды қабылдай алатын және екі жетекші қозғалтқышты 5 долларға бағалай алатын Arduino жүйесінің алдына мақсат қойғым келді (арзан ESC құнының жартысы).

Осы мақсатқа жетуге көмектесу үшін мен RC автокөлігінің ремиксін шығардым, бұл ресивердің салмағын/құнын төмендетіп, арзан H-Bridge чипін іске қосу үшін 4 PWM сигналын шығарды.

Бұл нұсқаулық Arduino басқару жүйесіне арналған, бірақ мен жаңа адамдарға алғашқы боттарын құруға көмектесу үшін қосымша ақпарат қосамын

Жауапкершіліктен бас тарту:

Тіпті шағын көлемде жауынгерлік робот құру/соғыс қауіпті болуы мүмкін, оны өз тәуекеліңізбен қабылдаңыз

1 -қадам: Сізге не қажет

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

Басқару жүйесі үшін:

  • 1x Arduino pro mini 5v ($ 1.70 АҚШ доллары)
  • 1x nRF24L01 модулі ($ 1,14)
  • 1x 3.3в реттегіш модулі ($ 0.32)
  • 1x қос h-көпір модулі* ($ 0,90)

Қалған негізгі ботқа:

  • 2x шағын тісті қозғалтқыштар ** (арзан нұсқа, сенімді нұсқа)
  • 1x2s литий полимерлі батарея
  • 1x баланстық зарядтағыш
  • 1x липо зарядтауға арналған сөмке
  • 1x қосқыш
  • 1x батарея қосқышы
  • әр түрлі сым (мен жатып қалған Arduino қосқыш сымдарын қолдандым)
  • кішкентай бұрандалар
  • (міндетті емес) эпоксидті
  • (міндетті емес) Алюминий (алкогольсіз сусыннан)
  • (қосымша) қосымша жарықдиодты шамдар

Негізгі контроллер үшін:

  • 1x Arduino pro mini 5v
  • 1x nRF24L01 модулі
  • 1х 3,3В реттегіш модулі
  • 1x Arduino-джойстик

Құралдар:

  • Бұрауыш
  • Пісіру темірі
  • Қысқыштар
  • 3d принтер (міндетті емес, бірақ бұл өмірді жеңілдетеді)

*h-bridge модульдерін қараған кезде, барлық 4 сигнал кірісі бар модульді іздеңіз, бұл кейінірек Arduino-ға қосылуды жеңілдетеді.

** мотор жылдамдығын таңдау бойынша бірнеше кеңестерді алу үшін соңғы қадамды қараңыз

2 -қадам: шассиді басып шығарыңыз

Шассиді басып шығарыңыз
Шассиді басып шығарыңыз

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

Мен қару -жарақсыз да, қарусыз да сынақтан өткен «аздап шикі» сыналы бот жасадым. Бұл жақсы бірінші бот, басып шығаруға оңай және оны 8 бұрандамен біріктіруге болады. Оны басқа дизайн үшін Thingiverse сайтынан қараңыз

Егер сізде 3D принтер болмаса, жергілікті кітапхананы, хакерлер кеңістігін немесе жасаушы кеңістігін қолданып көріңіз

Қосымша қару -жарақтарды қосу принтерді жаңадан шығаруға оңай, сына мен алкогольсіз сусындарды құмды зімпарамен сүртіңіз, ұнтақталған шаңды сүртіңіз, пластикке де, алюминийге де эпоксидті жағыңыз, қысқыштармен немесе резеңке таспалармен ұстаңыз. 12-24 сағат ішінде

Менде қазіргі уақытта дөңгелектің жалпы дизайны жоқ, өйткені мен 3 -ші басылған хабтарда білім беру робототехникасының резеңке шиналарын қолдандым. Алдағы апталарда мен O-сақиналарды ұстау үшін пайдаланатын хабтың дизайнын жасаймын. Дөңгелектер аяқталғаннан кейін мен бұл бетті және Thingiverse бетін жаңартамын

3-қадам: H көпірін дайындаңыз

H көпірін дайындаңыз
H көпірін дайындаңыз

Әр түрлі көпірлі мотор драйверлері әр түрлі қондырғылармен келеді, бірақ бастапқы тізімге қосылған модуль шығыс ретінде 2 терминалды блокпен келеді. Бұл терминал блоктары ауыр және көлемді, сондықтан оларды алып тастаған дұрыс.

Мұны істеудің ең оңай жолы - екі жастықшаны дәнекерлегішпен бір мезгілде қыздыру және қысқыштармен блоктарды абайлап айналдыру.

Жалғастырмас бұрын, қондырғыдағы қозғалтқыштарды ауыстыру керек пе, соны шешіңіз. Егер солай болса, Arduino қосқыш кабельдерін модульдің шығысына дәнекерлеуге болады, содан кейін қарама -қарсы кабельді қозғалтқышқа дәнекерлеуге болады, бұл оларды қажет болған жағдайда алынбалы етеді.

4 -қадам: модульдерді қосу

Модульдерді қосу
Модульдерді қосу
Модульдерді қосу
Модульдерді қосу
Модульдерді қосу
Модульдерді қосу

Модульдерді сымға қосуды 3 түрлі жолмен жасауға болады, сондықтан дизайн кезеңі өте маңызды. Қаруды таңдау боттың формасына және сымды таңдауға әсер етеді.

3 таңдау:

  1. Бос сымдар (жеңіл, бірақ нәзік) (сурет 1)
  2. Толық тақта (1 -ден ауыр, бірақ үлкен ізмен берік) (сурет 2)
  3. Арнайы схеманың тақтасы (1 -ден ауыр, бірақ кішігірім ізі бар) тақтаның дизайны бекітілген (сурет 3)

таңдауға қарамастан, нақты байланыстар бірдей.

Келесі қосылымдарды екі рет жасаңыз (бір рет контроллер үшін және бір рет қабылдағыш үшін)

nRF24L01 (пин нөмірлеу суреті 4 **):

  • 1 түйреуіш -> GND
  • 2 -түйреуіш -> 3.3в модулінің шығыс штыры
  • 3 -түйреуіш -> Arduino түйрегіш 9
  • 4 -түйреуіш -> Arduino түйреуіші 10
  • 5 -түйреуіш -> Arduino түйрегіші 13
  • 6 -түйреуіш -> Arduino штыры 11
  • 7 -түйреуіш -> Arduino штыры 12

3.3В модулі:

  • Вин пин -> Vcc*
  • Шығатын түйреуіш -> түйреуіш 2 nRF (жоғарыдағыдай)
  • GND түйреуі -> GND

Ардуино:

  • 9-13 түйреуіштері> жоғарыда көрсетілгендей nRF -ке қосылады
  • Шикі -> Vcc*
  • GND -> GND

Контроллер мен қабылдағышты ажырату үшін келесі қосылымдарды бір рет жасаңыз

Контроллер үшін:

Джойстик:

  • +5v -> Arduino 5v
  • vrx -> Arduino түйрегіші A2
  • vry -> Arduino түйрегіші A3
  • GND -> GND

Қабылдағыш үшін:

h-көпір модулі:

  • Vcc -> Vcc*
  • B -IB -> Arduino түйрегіші 2
  • B -IA -> Arduino пин 3
  • A -IB -> Arduino түйрегіші 4
  • A -IA -> Arduino пин 5
  • GND -> GND

Бұл Vcc пен GND түйреуіштерін сымға ауыстыру арқылы, содан кейін тақтаны төңкеріп, түйреуіштерді тікелей Arduino -ға дәнекерлеу арқылы жасалады, бұл дәнекерлеуді жеңілдетеді және мотор драйверіне сенімді бекітпе жасайды.

*жауынгерлік робот заңды болуы үшін аккумулятор мен схеманың арасына оқшаулау нүктесі (қосқыш немесе алынбалы байланыс) қосылуы керек. Бұл аккумулятордың позитивті қосқышына, содан кейін қосқышқа Vcc қосылғанын білдіреді

** https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo сайтынан алынған сурет, бұл nRF24L01 модулі үшін тамаша ресурс

5 -қадам: Контроллерді орнату

Контроллерді орнату
Контроллерді орнату

Кез келген нәрсе белгілі бір код үшін өз уақытын қосады.

Контроллерден бастап, қосылған джойстиктің жіберуші кодпен жұмыс жасауын қамтамасыз ету үшін кейбір потенциометрдің мәндері қажет.

«JoystickTestVals2» кодын жүктеңіз. Бұл код потенциометрдің мәндерін оқу және оларды сериялы түрде көрсету үшін қолданылады

Код жұмыс істеп тұрғанда және «UP» мәніне қарап, джойстикті толық алға жылжыту арқылы сериялық терезе ашылғанда, «UP» мәні бірнеше үлкен сандар арасында ауысуы мүмкін, сіз көрген мәндердің ең кішісін таңдаңыз., одан 10 -ды алып тастаңыз (бұл таяқшаны толық итеру толық қуат береді) және оны «Жоғары Макс» деп жазыңыз, джойстиктің қайтадан ортасына серпілуіне мүмкіндік береді. Енді сіз көретін ең үлкен мәнді таңдаңыз, оған 20 қосыңыз және оны «UpRestMax» деп жазыңыз. Таяқшаны төмен итеріп, «UpMin» және «UpRestMin» деп мәндерді жазуды қосу/азайту арқылы процесті қайталаңыз.

Таяқшаны оңға итеріп, «SideMax», содан кейін «SideRestMax» жазылып, «SideMin» мен «SideRestMin» жазу үшін солға қарай итеріп, бүкіл процесті солға және оңға қайталаңыз.

Бұл мәндер өте маңызды, әсіресе «Демалыс» сөзі бар барлық мәндер. бұл мәндер таяқтың ортасында «өлі аймақ» жасайды, осылайша таяқ ортасында тұрған кезде бот қозғалмайды, таяқшаның ортасына қойылған кезде мәндер «restMin» мен «restMax» арасында болатынына көз жеткізіңіз. екі ось үшін

6 -қадам: код

Код
Код
Код
Код

Берілген код қару pwm мәнін жіберуге мүмкіндік беретін құрылымы бар негізгі сына-бот үшін бәрін жасайды.

Қажетті кітапханалар:

  • nRF24L01 кітапханасы осы жерден: GitHub
  • PWM бағдарламалық жасақтамасы мына жерден: Google коды

Контроллерді орнатыңыз:

txMix кодын ашып, таяқша шектерінің мәндерін соңғы қадамда жазылған мәндерге өзгертіңіз. Бұл код сіздің джойстикке дұрыс жауап беретініне кепілдік береді (1 -сурет)

Құбырды баптау:

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

Суретте 2 құбырдың он алтылық цифрлары бөлінген. Бұл құбырды теңшеу үшін өзгерту қажет екі сан. «E1» -ді кез келген басқа екі таңбалы он алтылық мәнге ауыстырып, жазыңыз, сонда сіз оны қарсыластар құбырларынан оңай тексере аласыз.

Жүктеу:

  • txMix контроллерге
  • қабылдағыш модуліне қабылдау

Кодты өшіру:

txMix:

Код джойстик позициясында «ЖОҒАРЫ» мәні мен «жанама» мәні ретінде оқылады. бұл мәндер таяқшаның максималды позициясында толық қуат берілетінін қамтамасыз ету үшін берілген максималды мәнге байланысты шектеледі.

Содан кейін, егер нөлдер жіберілмесе, таяқшаның бейтарап күйден шыққанына көз жеткізу үшін бұл мәндер тексеріледі.

Содан кейін мәндер жеке екі айнымалыға араласады, біреуі сол жақ қозғалтқыш жылдамдығы үшін, екіншісі оң қозғалтқыш жылдамдығы үшін. Бұл айнымалы мәндерде қозғалтқышты артқа қарай жылжыту үшін теріс мән қолданылады, себебі ол араластыруды жеңілдетеді.

Содан кейін сол және оң жылдамдық мәндері әрқайсысы үшін төрт мәнге бөлінеді: қозғалтқыш оңға, қозғалтқыш солға, қозғалтқыш оңға, артқа.

Төрт pwm мәні қабылдағышқа жіберіледі.

алу:

Тек контроллерден сигналдарды қабылдайды, сигналда бір қозғалтқышта алға және артқа pwm мәндері жоқ екенін тексереді, содан кейін pwm қолданады.

Қабылдағыш контроллерден сигнал алынбаған кезде қозғалтқыштардың сейфтерін де істен шығарады

7 -қадам: Бәрін біріктіру

Бәрін біріктіру
Бәрін біріктіру
Бәрін біріктіру
Бәрін біріктіру
Бәрін біріктіру
Бәрін біріктіру

Қозғалтқыштарға дәнекерлеу қосқыштары немесе қозғалтқыштарды h-көпірге тікелей дәнекерлеу. (Егер мен қозғалтқышты дұрыс қоспаған болсам, штепсельдерді ауыстыру үшін қосқыштарды жақсы көремін)

Батарея коннекторынан коммутатордың ортаңғы түйреуішіне және қосқыштағы сыртқы түйреуіштердің біріне қосылған модульдердің ВКС -не позитивті сымды дәнекерлеңіз.

Батарея коннекторынан теріс сымды жалғанған модульдердің GND -ге дәнекерлеңіз.

(Қосымша) Vcc пен GND арасында қосымша жарық диодтарын қосыңыз. Барлық жауынгерлік роботтар жүйенің қуаты бар кезде жанатын шамды қажет етеді, бұл компоненттерге байланысты Arduino, 3.3v модулі мен h-көпіріндегі светодиоды бар, егер олардың біреуі сырттан көрінсе. бот бұл ереже орындалады. Бұл ереженің орындалуына сенімді болу үшін және сыртқы көріністі реттеу үшін қосымша жарықдиодты шамдарды қолдануға болады

Аздап шикі болтты біріктіру оңай, алдымен моторды бекітіңіз, электрониканы қосыңыз, содан кейін қақпақты орнына бекітіңіз, аз мөлшерде велкро қосқышты қақпақша ұстауға көмектеседі.

Дизайн мен басып шығару контроллері сіздікі. Тексеру үшін мен Джеймс Брутонның BB8 V3 контроллерінен өзгертілген бекітілген контроллерді қолдандым.

8 -қадам: Роботтық күрес ережелері туралы сөз

Роботтық күрес ережелері туралы сөз
Роботтық күрес ережелері туралы сөз

Әр түрлі елдер, штаттар мен топтар әртүрлі ережелермен роботтық ұрыс шараларын өткізеді.

Мен бұл жүйені құрдым және RC жүйелеріне қатысты негізгі ережелерге қол жеткізе отырып, мүмкіндігінше жалпы болу үшін жаздым (әсіресе жүйе 2,4 ГГц цифрлық болуы керек және батареяны оқшаулау нүктесі болуы керек). Бұл жүйені іске қосу немесе өзіңіздің алғашқы ботыңызды жасау үшін жергілікті топпен байланысып, олардың ережелерінің көшірмесін алған дұрыс.

Жергілікті топтың ережелері абсолютті, сіздің тобыңыздың ережелеріне қатысты менің нұсқауларымды қабылдамаңыз.

Бұл Arduino жүйесі қоғамдастық үшін жаңа болғандықтан, сіз оны іс -шараға қолданар алдында тестілеуден өткізуіңізді сұрайтын шығарсыз. Мен бұл жүйені стандартты RC қондырғыларына қарсы және ешқандай кедергісіз өзіме бірнеше рет сынап көрдім, сондықтан ол кез келген сынақтан өтуі керек, алайда сіздің жергілікті іс -шараның ұйымдастырушылары шешімді құрметтейді. Егер олар оны пайдаланудан бас тартса, сіз күресуге болатын несиелік бот бар -жоғын сұраңыз немесе оның қабылданбау себебін түсіндіруді сұраңыз және келесі оқиғаға қатысты мәселені шешуге тырысыңыз.

9 -қадам: Қозғалтқыштар туралы қосымша ақпарат

Қозғалтқыштар туралы қосымша ақпарат
Қозғалтқыштар туралы қосымша ақпарат

Құмырсқалар класында қолданылатын микро тісті қозғалтқыштар үлкен жылдамдықта келеді және олар RPM немесе Gear қатынасы арқылы белгіленеді. Төменде өрескел түрлендіру бар.

Көптеген боттар 75: 1 мен 30: 1 аралығындағы қозғалтқыштарды пайдаланады (кейбір жағдайларды қоспағанда 10: 1). Үлкен айналдыратын қаруы бар боттар 75: 1 баяу қозғалтқыштардан пайда көре алады, себебі баяу жылдамдық басқаруға мүмкіндік береді. Ұсақ сыналар, көтергіштер мен жүзгіштер білікті жүргізушінің қолында 30: 1 кезінде жақсы. Алғашқы жекпе -жектерге жүйеге және көлік жүргізуге үйрену үшін 50: 1 қозғалтқышты сына ретінде ұсынамын

  • 12 В 2000 айн / мин (немесе 6 В 1000 айн / мин) -> 30: 1
  • 6 В 300 айн / мин -> 50: 1

10 -қадам: жаңартулар мен жақсартулар

Мен бұл 'ible -ді жариялағаннан бері бірнеше жыл болды, мен бұл жүйе туралы көп нәрсені білдім, сондықтан оларды жаңарту уақыты келді. Ең бастысы - компоненттерді таңдау, бастапқы компоненттер салыстырмалы түрде жақсы жұмыс істеді, бірақ кейде ұрыс кезінде сәтсіздікке ұшырайды. Екі үлкен қылмыскер-H-Bridge және nrf24l01 модулі, себебі мен таба алатын абсолютті арзан бөлшектерді таңдадым. Оларды келесі жолмен түзетуге болады:

  • 0,5А H көпірін 1,5А H көпіріне жаңарту, мысалы: 1,5A H көпірі
  • Nrf24l01 модулін толық SMD дизайнына жаңарту: ақылды NRF24l01 ашыңыз

Жаңа компоненттерді жаңартумен қатар мен RX жинауға және TX -ке қосымша мүмкіндіктерді қосуға көмектесетін бірнеше жаңа ПХД құрастырдым.

Менде кодты өзгерту бар, сондықтан оларды күтіңіз

Ұсынылған: