Բովանդակություն:

Ուլտրաձայնային հետազոտությունների միջոցով հայտնաբերեք խոչընդոտները `4 քայլ
Ուլտրաձայնային հետազոտությունների միջոցով հայտնաբերեք խոչընդոտները `4 քայլ

Video: Ուլտրաձայնային հետազոտությունների միջոցով հայտնաբերեք խոչընդոտները `4 քայլ

Video: Ուլտրաձայնային հետազոտությունների միջոցով հայտնաբերեք խոչընդոտները `4 քայլ
Video: Պտղի սեռի որոշումը ուլտրաձայնային հետազոտության միջոցով 2024, Հուլիսի
Anonim
Բացահայտեք խոչընդոտները ուլտրաձայնային հետազոտությունների միջոցով
Բացահայտեք խոչընդոտները ուլտրաձայնային հետազոտությունների միջոցով

Ես զվարճանքի համար կառուցում եմ ռոբոտ, որը ցանկանում եմ ինքնուրույն տեղաշարժվել տան ներսում:

Դա երկար աշխատանք է, և ես քայլ առ քայլ անում եմ:

Այս ուսանելի ուշադրությունը կենտրոնացնում է խոչընդոտների հայտնաբերմանը Arduino Mega- ի հետ:

HC-SR04 և HY-SRF05 ուլտրաձայնային տվիչները էժան և պարզ են օգտագործման համար, բայց բարդ ռոբոտի մեջ միկրոկոնտրոլերի օղակում ինտեգրվելը կարող է դժվարանալ: Ես ցանկանում էի խոչընդոտների հայտնաբերումը կատարել ասինխրոն եղանակով:

_

Ես արդեն 3 հրահանգ եմ հրապարակել այս ռոբոտի առանձնահատկությունների վերաբերյալ.

  • Կատարեք ձեր անիվի կոդավորիչը
  • Ստեղծեք ձեր WIFI դարպասը
  • Օգտագործեք իներցիոն մոդուլի միավոր

Եվ ռոբոտին տեղայնացնելու համար արհեստական բանականության և ուլտրաձայնային հետազոտությունների համատեղման վերաբերյալ փաստաթղթեր:

Քայլ 1. Ո՞րն է ճշգրիտ խնդիրը ուլտրաձայնային տվիչների և միկրոկոնտրոլերների հետ:

Ո՞րն է ճշգրիտ խնդիրը ուլտրաձայնային տվիչների և միկրոկոնտրոլերների հետ
Ո՞րն է ճշգրիտ խնդիրը ուլտրաձայնային տվիչների և միկրոկոնտրոլերների հետ
Ո՞րն է ճշգրիտ խնդիրը ուլտրաձայնային տվիչների և միկրոկոնտրոլերների հետ
Ո՞րն է ճշգրիտ խնդիրը ուլտրաձայնային տվիչների և միկրոկոնտրոլերների հետ

Սինխրոն սպասման և Arduino- ի սահմանափակումներ

Միկրոկոնտրերլերների ծածկագիրը գործում է հանգույցով և չի աջակցում բազմաթել: Ուլտրաձայնային տվիչները հիմնված են ազդանշանի տևողության վրա: Այս տևողությունը տևում է մինչև 30 մ վրկ, ինչը շատ երկար է սպասել օղակի ներսում, երբ միկրոկոնտրոլերները պետք է գործ ունենան բազմաթիվ շարժիչների և տվիչների հետ (օրինակ ՝ անիվների կոդավորիչներով servo և DC շարժիչներ):

Այսպիսով, ես ուզում էի զարգացնել մի օբյեկտ, որն աշխատում է ասինքրոն կերպով:

Քայլ 2: Ինչպե՞ս է այն աշխատում:

Ինչպես է դա աշխատում ?
Ինչպես է դա աշխատում ?

Այն նախատեսված է Atmega- ի համար խոչընդոտների հայտնաբերման համար: Այն աջակցում է մինչև 4 ուլտրաձայնային տվիչ:

Պարբերաբար ընդհատման շնորհիվ համակարգը կարող է վերահսկել մինչև 4 ուլտրաձայնային տվիչ: Հիմնական ծածկագիրը պետք է միայն սահմանի, թե որ սենսորն ակտիվացնի պայմանով և շեմով: Հիմնական կամքը ընդհատվում է միայն այն դեպքում, երբ (պայման, շեմ) հայտնվում է:

Հիմնական գործառույթներն են

  • Ահազանգը հիմնական խոչընդոտների հայտնաբերումն է և ապահովում է ընդհատում, եթե 4 սենսորներից առնվազն 1 -ը հայտնաբերի հեռավորությունը իր շեմի տակ
  • Մոնիտորը ընդլայնված գործառույթ է, որն ապահովում է ընդմիջում մինչև 4 սենսորների հեռավորության վիճակի համադրությամբ: Հնարավոր պայմաններն անցել են, ցածր են, հավասար են կամ հավասար չեն շեմերին:

Քայլ 3: Տեխնիկական մանրամասներ

Օգտագործեք ժամանակաչափ 4 այնպես որ 6 6 8 8 -ի կապը չի կարող օգտագործվել որպես PWM:

Յուրաքանչյուր սենսորի համար օբյեկտին անհրաժեշտ է ձգան PIN և ընդհատվող PIN կոդ:

Սենսորների ընդհատման PIN- ների վրա օբյեկտին անհրաժեշտ է այլ ընդհատող PIN կոդ `ծրագրային ապահովման օգտագործման համար:

Քայլ 4: Ինչպե՞ս իրականացնել:

Ինչպե՞ս իրականացնել
Ինչպե՞ս իրականացնել

Միացրեք սենսորները, ինչպես վերևում

Ներբեռնեք այս GitHub պահոցից

  • EchoObstacleDetection.cpp,
  • EchoObstacleDetection.h
  • Օրինակ ՝ EchoObstacleDetection.ino

Ստեղծեք EchoObstacleDetection գրացուցակը ձեր IDE գրադարանի ներսում և տեղափոխեք.cpp և.h

Փորձարկեք այն

Բացեք ExampleEchoObstacleDetection.ino- ն:

Սա խոչընդոտների հայտնաբերման պարզ օրինակ է, որը գործում է 2 ուլտրաձայնային տվիչներով:

Ելքը ուղղված է սերիական մոնիտորի վրա: Սկզբում այն տպելու է 2 սենսորների կողմից հայտնաբերված հեռավորությունները, այնուհետև ազդանշաններ է տպելու ՝ կախված շեմերի տակ եղած հեռավորություններից:

Խորհուրդ ենք տալիս: