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

Երկակի սենսոր Echo Locator: 7 քայլ (նկարներով)
Երկակի սենսոր Echo Locator: 7 քայլ (նկարներով)
Anonim
Image
Image
Երկակի սենսոր Echo Locator
Երկակի սենսոր Echo Locator
Երկակի սենսոր Echo Locator
Երկակի սենսոր Echo Locator

Այս հրահանգը բացատրում է, թե ինչպես կարելի է ճշգրիտ որոշել օբյեկտի գտնվելու վայրը Arduino- ի, երկու ուլտրաձայնային տվիչների և եռանկյունների հերոնի բանաձևի միջոցով: Շարժվող մասեր չկան:

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

Accuracyշգրտությունը գերազանց է: Հայտնաբերման մեծ տարածքներ հնարավոր են ՝ օգտագործելով ընդհանուր հասանելի HC-SR04 կամ HY-SRF05 ուլտրաձայնային տվիչներ:

Շինարարությունը պարզ է … այն, ինչ ձեզ հարկավոր է, սուր դանակ է, երկու փորվածք, զոդման սարք և փայտի սղոց:

Պատկերներ

  • Տեսահոլովակում ցուցադրվում է, թե ինչպես է սարքը գործում:
  • Լուսանկար 1 -ը ցույց է տալիս հավաքված «արձագանքի տեղորոշիչը»
  • Լուսանկար 2 -ը ցույց է տալիս բնորոշ ցուցադրում: Օբյեկտը կարմիր (առկայծող) կետն է:
  • Լուսանկար 3 -ը ցույց է տալիս տեսանյութերի թեստի կարգավորումը: Անհրաժեշտ էր տեղադրել երկու HY-SRF05 ուլտրաձայնային տվիչները ելակետից 50 սմ ներքև ՝ ձայնով հայտնաբերման տարածքն ամբողջությամբ «լուսավորելու» համար:

Քայլ 1: Էլեկտրագծերի դիագրամ

Հաղորդալարերի դիագրամ
Հաղորդալարերի դիագրամ

Լուսանկար 1 -ը ցույց է տալիս «երկակի սենսորային արձագանքի տեղորոշիչի» միացման սխեման:

Սենսոր B- ն «պասիվ» է ստացվում ՝ հաղորդիչ (T) փոխարկիչի վրա ծածկող ժապավենի մի քանի շերտ տեղադրելով: Այս ժապավենը արգելափակում է ուլտրաձայնային ձայնը, որը հակառակ դեպքում կթողնվեր:

Քայլ 2: Մասերի ցուցակ

Մասերի ցուցակ
Մասերի ցուցակ

Ինչպես ցույց է տրված լուսանկար 1 -ում, այս նախագիծը ավարտելու համար շատ քիչ մասեր են պահանջվում.

Հետևյալ մասերը ստացվել են https://www.aliexpress.com/ կայքից.

  • Միայն 1 Arduino Uno R3- ը `ամբողջական USB մալուխով
  • 2 միայն HY-SRF05 կամ HC-SR04 ուլտրաձայնային փոխարկիչներ

Հետևյալ մասերը ձեռք են բերվել տեղում.

  • 1 տղամարդու միայն arduino վերնագրի ժապավեն
  • Արդուինոյի միայն 2 կին վերնագրով ժապավեն
  • Միայն 2 կտոր ալյումինի ջարդոն
  • 2 միայն փայտի փոքր կտորներ
  • 2 միայն փոքր պտուտակներ
  • 3 միայն մալուխային կապեր
  • Պլաստիկ ծածկով միայն 4 երկարություն (գույների տեսականի) [1]

Նշում

[1]

Յուրաքանչյուր մետաղալարերի ընդհանուր երկարությունը պետք է հավասար լինի սենսորների միջև ցանկալի հեռավորությանը և գումարած փոքր քանակությամբ զոդման համար: Այնուհետև լարերը պտտվում են միասին ՝ կազմելով մալուխ:

Քայլ 3: Տեսություն

Տեսություն
Տեսություն
Տեսություն
Տեսություն
Տեսություն
Տեսություն

Beառագայթների նախշեր

Լուսանկար 1 -ը ցույց է տալիս փոխարկիչ A- ի և B- ի փոխարկիչի ճառագայթների համընկնումը:

Սենսոր A- ն արձագանք կստանա «կարմիր տարածքում» գտնվող ցանկացած առարկայից:

Սենսոր B- ն արձագանք կստանա միայն այն դեպքում, երբ օբյեկտը գտնվում է «մանուշակագույն շրջանում»: Այս տարածքից դուրս անհնար է որոշել օբյեկտի կոորդինատը: [1]

Հնարավոր են «մանուշակագույն» հայտնաբերման մեծ տարածքներ, եթե սենսորները լայն տարածության մեջ են:

Հաշվարկներ

Անդրադառնալով լուսանկարին 2:

Triանկացած եռանկյունու մակերեսը կարող է հաշվարկվել բանաձևից.

տարածք = հիմք*բարձրություն/2 …………………………………………………………………… (1)

(1) հավասարման վերադասավորումը մեզ տալիս է բարձրություն (Y- կոորդինատ):

բարձրություն = մակերես*2/հիմք …………………………………………………………………… (2)

Առայժմ ամեն ինչ լավ է … բայց ինչպե՞ս ենք հաշվարկում տարածքը:

Պատասխանն այն է, որ երկու ուլտրաձայնային փոխարկիչներ տեղադրեն միմյանցից հայտնի հեռավորությամբ (ելակետ) և ուլտրաձայնի միջոցով չափել յուրաքանչյուր սենսորի օբյեկտից հեռավորությունը:

Լուսանկար 2 -ը ցույց է տալիս, թե ինչպես է դա հնարավոր:

Transducer A- ն ուղարկում է զարկերակ, որն առարկայից դուրս է թռչում բոլոր ուղղություններով: Այս զարկերակը լսվում է և՛ փոխարկիչ A- ի, և՛ փոխարկիչի կողմից: B- ից զարկերակ չի ուղարկվում… այն լսում է միայն:

Տրանսդյուսեր A- ի վերադարձի ուղին ցուցադրվում է կարմիր գույնով: Երբ բաժանվում է երկուսի և ձայնի արագությունը հաշվի է առնվում, մենք կարող ենք հաշվարկել «d1» հեռավորությունը բանաձևից. [2]

d1 (սմ) = ժամանակ (միկրովայրկյան)/59 ……………………………………………… (3)

Կապույտ գույնով ցույց է տրված փոխարկիչ B- ի ուղին: Եթե այս ճանապարհի երկարությունից հանենք «d1» հեռավորությունը, կստանանք «d2» հեռավորությունը: «D2» - ի հաշվարկման բանաձևն է ՝ [3]

d2 (սմ) = ժամանակ (միկրովայրկյան/29.5 - d1 …………………………………….. (4)

Այժմ մենք ունենք ABC եռանկյունու երեք կողմերի երկարությունը … մուտքագրեք «Հերոս»

Հերոնի բանաձևը

Հերոնի բանաձևը օգտագործում է «կիսագիծ» կոչվող մի բան, որում եռանկյան երեք կողմերից յուրաքանչյուրն ավելացնում ես և արդյունքը բաժանում երկուսի.

s = (a+b+c)/2 …………………………………………………………………………… (5)

Այժմ տարածքը կարող է հաշվարկվել հետևյալ բանաձևի միջոցով.

տարածք = sqrt (s*(s-a)*(s-b)*(s-c)) ……………………………………………………. (6)

Մակերեսը իմանալուց հետո կարող ենք հաշվարկել բարձրությունը (Y- կոորդինատ) վերևի (2) հավասարումից:

Պյութագորաս

Այժմ X- կոորդինատը կարող է հաշվարկվել ՝ եռանկյունու գագաթից ուղղահայաց գցելով ելակետ ՝ ուղղանկյուն եռանկյուն ստեղծելու համար: Այժմ X- կոորդինատը կարող է հաշվարկվել Պյութագորասի միջոցով.

c1 = sqrt (b2 - h2) ……………………………………………………………….. (7)

Նշումներ

[1]

Թիրախային տարածքը կարող է ամբողջությամբ «լուսավորվել» ձայնով ՝ սենսորները տեղակայելով ելակետից ներքև:

[2]

59 -ի արժեքը հաստատունի համար ստացվում է հետևյալ կերպ.

Ձայնի արագությունը մոտավորապես 340 մ/վ է, որը կազմում է 0.034 սմ/վ (սանտիմետր/միկրովայրկյան):

0.034 սմ/uS փոխադարձը 29.412uS/սմ է, որը բազմապատկելով 2 -ով `վերադարձի ուղին թույլ տալու համար, կլորացնելիս հավասար է 58.824 -ի կամ 59 -ի:

Այս արժեքը կարող է ճշգրտվել վեր/վար `հաշվի առնելով օդի ջերմաստիճանը, խոնավությունը և ճնշումը:

[3]

29.5 արժեքը հաստատունի համար ստացվում է հետևյալ կերպ.

Վերադարձի ուղի չկա, ուստի մենք օգտագործում ենք 29.5, որը վերը նշված [2] -ում օգտագործված արժեքի կեսն է:

Քայլ 4: Շինարարություն

Շինարարություն
Շինարարություն
Շինարարություն
Շինարարություն

Ամրացման փակագծեր

Մոնտաժային երկու փակագծեր պատրաստված էին 20 չափիչ ալյումինե թերթից `իմ ուսանելի https://www.instructables.com/id/How-to-Cut-Fold-… նկարագրված մեթոդով:

Իմ փակագծերի չափերը ցուցադրված են լուսանկար 1 -ում:

«Հիմնական» նշվող երկու անցքերը նախատեսված են յուրաքանչյուր սենսորին լար ամրացնելու համար: Ուղղակի կապը կպցրեք պահանջվող տարածության վրա `հեշտ տեղադրման համար:

Սենսորային վարդակներ

Սենսորային վարդակները (լուսանկար 2) ձևավորվել են ստանդարտ վերնագրի Arduino վարդակից:

Բոլոր անցանկալի քորոցները դուրս են բերվել, իսկ պլաստիկի միջով անցք է անցել 3 մմ տրամագծով:

Միացումները միացնելիս պետք է զգույշ լինել, որ լարերը չկտրվեն ալյումինե բրա մեջ:

Լարվածության ռելիեֆներ

Մալուխի յուրաքանչյուր ծայրում գտնվող ջերմամեկուսիչ խողովակի մի փոքր կտոր թույլ չի տալիս լարերը քանդվել:

Մալուխների կապերն օգտագործվել են մալուխի անցանկալի տեղաշարժը կանխելու համար:

Քայլ 5: Softwareրագրաշարի տեղադրում

Տեղադրեք հետևյալ կոդը այս կարգով.

Arduino IDE

Ներբեռնեք և տեղադրեք Arduino IDE- ն (ինտեգրված զարգացման միջավայր) https://www.arduino.cc/hy/main/software- ից, եթե այն արդեն տեղադրված չէ:

Մշակում 3

Ներբեռնեք և տեղադրեք Processing 3 -ը https://processing.org/download/ կայքից

Arduino Էսքիզ

Պատճենեք կից ֆայլի բովանդակությունը ՝ «dual_sensor _echo_locator.ino», Arduino- ի «ուրվագծի» մեջ, պահեք, այնուհետև վերբեռնեք ձեր Arduino Uno R3- ում:

Փակեք Ardino IDE- ն, բայց թողեք USB մալուխը միացված:

Մշակման ուրվագիծ

Պատճենեք կից ֆայլի բովանդակությունը ՝ «dual_sensor_echo_locator.pde», մշակման «Էսքիզ» -ի մեջ:

Այժմ կտտացրեք վերևի ձախ մասում գտնվող «Գործարկել» կոճակին … ձեր էկրանին պետք է հայտնվի գրաֆիկական էկրան:

Քայլ 6: Փորձարկում

Փորձարկում
Փորձարկում
Փորձարկում
Փորձարկում

Միացրեք Arduino USB մալուխը ձեր համակարգչին

Գործարկեք «dual_sensor_echo_locator.pde» ՝ կտտացնելով «վերև-ձախ» գործարկման կոճակին ձեր Processing 3 IDE- ում (ինտեգրված զարգացման միջավայր):

Ստորակետով բաժանված թվերը պետք է սկսեն հոսել ձեր էկրանով, ինչպես ցույց է տրված լուսանկարում 1:

Սխալ հաղորդագրություն գործարկման ժամանակ

Գործարկման ժամանակ կարող եք սխալի հաղորդագրություն ստանալ:

Եթե այդպես է, փոխեք 1 -ին նկարի 88 -րդ տողում [0], որպեսզի համապատասխանի ձեր «COM» նավահանգստի հետ կապված թվին:

Կախված ձեր համակարգից, կարող են թվարկվել մի քանի «COM» պորտեր: Թվերից մեկը կաշխատի:

Լուսանկար 1 -ում [0] թիվը կապված է իմ «COM4» - ի հետ:

Տեղադրեք ձեր տվիչները

Տեղադրեք ձեր տվիչները 100 սմ հեռավորության վրա, իսկ առարկան ՝ 100 սմ առջև:

Երկու սենսորները դանդաղ պտտեք դեպի երևակայական 1 մետր քառակուսի անկյունագծով հակառակ անկյունը:

Սենսորները պտտելիս դուք կգտնեք մի դիրք, որտեղ գրաֆիկական ցուցադրման վրա հայտնվում է առկայծող կարմիր կետ:

Լրացուցիչ տվյալները նույնպես կհայտնվեն (լուսանկար 2), երբ սենսորները հայտնաբերեն ձեր օբյեկտը.

  • հեռավորություն 1
  • հեռավորություն 2
  • ելակետային
  • փոխհատուցել
  • կիսագիծ
  • տարածք
  • X կոորդինատ
  • Y կոորդինատ

Քայլ 7: Displayուցադրել

Displayուցադրել
Displayուցադրել

Theուցադրումը գրվել է Processing 3 -ի միջոցով … ցուցադրվում է 100 սմ ելակետ:

Եզրագծի փոփոխություն

Եկեք փոխենք մեր ելակետը 100 սմ -ից մինչև 200 սմ:

Փոխել «float Baseline = 100;» Processing վերնագրում կարդացեք «float Baseline = 200;»

Փոխեք «50» և «100» պիտակները Processing «draw_grid ()» ռեժիմում ՝ «100» և «200» կարդալու համար:

Օֆսեթ փոխելը

Ավելի մեծ թիրախային տարածքները կարող են վերահսկվել, եթե սենսորները տեղադրենք ելակետից ներքև:

Մշակման վերնագրի «Offset» փոփոխականը պետք է փոխվի, եթե որոշեք դա անել:

Կտտացրեք այստեղ ՝ իմ մյուս հրահանգները դիտելու համար:

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