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

EPԵEPԱՓ մեքենայի պես! Sonar ցուցիչ `3 քայլ
EPԵEPԱՓ մեքենայի պես! Sonar ցուցիչ `3 քայլ

Video: EPԵEPԱՓ մեքենայի պես! Sonar ցուցիչ `3 քայլ

Video: EPԵEPԱՓ մեքենայի պես! Sonar ցուցիչ `3 քայլ
Video: ¡¡EL EJERCITO de PEPPAS PIG's .exe * INVADEN MI CASA 2024, Նոյեմբեր
Anonim
Image
Image
Հաղորդալարեր
Հաղորդալարեր

Ինձ շատ դուր չի գալիս այն աղմկոտ BEEP- ը, որը դուք ստանում եք ժամանակակից մեքենաներով, երբ կայանման սենսորը միացված է, բայց հե… դա բավականին օգտակար է, այնպես չէ՞:

Ինձ պե՞տք է շարժական սենսոր, որն ինձ կասի, թե որքան հեռու եմ խոչընդոտից: Հավանաբար ոչ, համենայն դեպս, մինչև աչքերս չաշխատեն:

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

Ավտոմեքենայի տվիչները IR են, բայց ես տանը չունեի պահեստային IR ընդունիչ, փոխարենը գզրոցում գտա HC-SR04 ուլտրաձայնային տվիչ: Որոշ հեշտ էլեկտրագծեր/կոդավորում և … ահա թե ինչպես.

Ապրանքների հաշիվը:

- HC-SR04 x 1: ուլտրաձայնային տվիչ

- uChip: Arduino IDE համատեղելի տախտակ

Պիեզոէլեկտրական ազդանշան

- 10 KOhm, 820 Ohm ռեզիստորներ (կամ ցանկացած այլ արժեք, որը դուք կգտնեք բավական մոտենալիս)

NPN BJT

- միկրո USB մալուխ (գումարած 5 Վ USB հոսանքի աղբյուր, եթե ցանկանում եք այն դյուրակիր դարձնել)

Քայլ 1: Լարերի տեղադրում

Հաղորդալարեր
Հաղորդալարեր

Միկրո USB միակցիչն ապահովում է uChipdelivers- ի հզորությունը VEXT (pin_16) և GND (pin_8) սարքերում:

Ինչ վերաբերում է GPIO- ի էլեկտրագծերին, ապա ցանկացած համադրություն հնարավոր է, քանի դեռ օգտագործում եք PWM- ով միացված կապի պորտերը:

Իմ դեպքում, ես օգտագործել եմ pin_1- ը ազդանշանը կառավարելու համար, մինչդեռ pin_9- ը և pin_10- ը միացված են ուլտրաձայնային տվիչի համապատասխանաբար ECHO և TRIGGER ազդանշանային կապերին:

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

ԽՈՐՀՈՐԴ. Ինչպե՞ս եք ստուգում, որ ձեր ազդանշանը ակտիվ է, թե պասիվ:

Սովորաբար ակտիվ ազդանշանը դրա վրա ինչ -որ տեղ կրում է + նշան ՝ նշելով բևեռականությունը: Մյուս կողմից, պասիվ փոխարկիչները նման նշան չունեն:

Քայլ 2: mingրագրավորում

Խմբագրել

Տեղադրեք «BeepLikeACarMillis.ino» թարմացված ուրվագիծը uChip- ում ՝ օգտագործելով Arduino IDE- ն: Կոդի այս տարբերակը չի օգտագործում ուշացում () և, հետևաբար, ավելի հուսալի է: MCU- ն անընդհատ վերահսկում է հեռավորությունը `օգտագործելով սոնար HC-SR04- ը:

Սահմանեք տարբեր #սահմանումներ ՝ ըստ ձեր կարիքների: Որպես կանխադրված ՝ նվազագույն հեռավորությունը 200 մմ է, իսկ առավելագույնը ՝ 2500 մմ: Ավելին, ավելի քան ողջունելի է փոփոխել BUZZ_DIV սահմանումը `ազդանշանի հնչման հաճախականությունը փոխելու համար:

Ստուգեք ծածկագրի տարբերությունները ՝ համեմատելով թարմացված էսքիզը («BeepLikeACarMillis.ino») հնի հետ («BeepLikeACar.ino»):

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

Մյուս կողմից, թարմացված կոդը, որն օգտագործում է millis (), թույլ է տալիս ավելի արագ և շարունակաբար կարդալ հեռավորությունը: Այսպիսով, այն ավելի անվտանգ է, քանի որ խոչընդոտից հեռավորության թարմացման արագությունը շատ ավելի բարձր է:

Քայլ 3: Վայելեք:

Image
Image

Միացրեք միկրո USB մալուխը uChip- ին և շրջեք ձեր տանը, մեքենայի պես BEEP:

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