Përmbajtje:

Projekti 3: SonarDuino: 9 hapa
Projekti 3: SonarDuino: 9 hapa

Video: Projekti 3: SonarDuino: 9 hapa

Video: Projekti 3: SonarDuino: 9 hapa
Video: Баня 6 на 9 из Кело. Обзор бани 67 м2 с гостиной и отзыв заказчика 2024, Nëntor
Anonim
Image
Image

Të dashur shokë hobiistë, Në këtë projekt ne do të eksplorojmë mundësinë për të pasur një sistem radari 360 gradë për zbulimin e objekteve. Vendosja e këtij moduli veç e veç do të lejojë robotin tuaj të lëvizjes të zbulojë kufijtë e rrethinës së tij. Mund të shërbejë gjithashtu si një mjet lundrimi në errësirë, por vetëm kur ecni mjaft ngadalë; p

Hapi 1: Çfarë ju nevojitet

Përgatitni Mbështetjen e Sensorit tejzanor
Përgatitni Mbështetjen e Sensorit tejzanor

Për ta bërë këtë ndërtim do t'ju duhet të blini gjërat e mëposhtme:

Arduino Nano: https://www.ebay.com/itm/USB-Nano-V3-0-ATmega328-16M-5V-Micro-controller-CH340G-board-For-Arduino/201601613488?hash=item2ef0647eb0:g:DkoAAOSwvYZ0ZO0: rk: 2: pf: 0

Tabelat e prototipimit: https://www.ebay.com/itm/20pcs-set-4Size-Double-Side-Protoboard-Circuit-Universal-DIY-Prototype-PCB-Board/192076517108?epid=506557101&hash=item2c4f4a4aaaaaaaaaaaaaaaaaaaaaaaaaaaa4c2c2eq4c4q4c4c0c4c0c0c4c0c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e4c4ea4a4aaaaaaaaaaaaaaaaaaaa4c4c4ee4c4c4c4c4c4c4c4c4c4c4c4c4c4c4 Zbl232: rk: 13: pf: 0

Servo Motors: https://www.ebay.com/itm/5pcs-POP-9G-SG90-Micro-Servo-motor-RC-Robot-Helicopter-Airplane-Control-Car-Boat/142931003420?hash=item21475a081c:rk: 16: pf: 0 & var

Sensorë tejzanor: https://www.ebay.com/itm/5PCS-Ultrasonic-Sensor-Module-HC-SR04-Distance-Measuring-Sensor-for-arduino-SR04/170897438205?epid=18020663283&hash=item27ca:: IAAOSw-xbD5Fp: rk: 2: pf: 0

Hapi 2: Dokumentacioni

Ndërsa disa prej jush mund ta dinë tashmë këtë, ky projekt është frymëzuar nga një projekt tjetër me burim të hapur i quajtur "Arduino Radar Project" i bërë nga Dejan nga "How to Mechatronics" @ lidhja e mëposhtme: https://howtomechatronics.com/projects/arduino -radar-projekt/

Një pikë tjetër që kërkon dokumentacion është që të shkarkoni dy bibliotekat e mëposhtme në mjedisin tuaj të zhvillimit:

Biblioteka Adafruit-GFX:

Adafruit_SSD1306:

Duke u thënë kështu, për të kuptuar vërtet kodin C do t'ju duhet të bëni një dokumentacion të të dy bibliotekave të mësipërme. Për më tepër, funksionet që kam përdorur në kodin tim kanë emra që tregojnë për atë që bëjnë.

Hapi 3: Përgatitni Mbështetjen e Sensorit tejzanor

Përgatitni Mbështetjen e Sensorit tejzanor
Përgatitni Mbështetjen e Sensorit tejzanor
Përgatitni Mbështetjen e Sensorit tejzanor
Përgatitni Mbështetjen e Sensorit tejzanor
Përgatitni Mbështetjen e Sensorit tejzanor
Përgatitni Mbështetjen e Sensorit tejzanor

Merrni çdo copë kartoni dhe prerë atë sipas dimensionit të kabllove lidhës të bashkangjitur në sensor siç tregohet në foton e parë. Pas kësaj, paloseni këtë të fundit dhe ngjiteni në mbështetësin e motorit servo. Pasi të bëhet kjo, ngjitni dy sensorët tejzanor sipas figurës së fundit. Vini re se titulli i sensorëve duhet të ngjitet në një mënyrë që kabllot të dalin jashtë përpara sensorit. Kjo do të lejojë që kabllot e sensorit të mos ndërhyjnë me njëri -tjetrin kur zbatohet rrotullimi 360 gradë.

Hapi 4: Vendosni gjithçka në një bord prototipizimi

Montoni gjithçka në një bord prototipizimi
Montoni gjithçka në një bord prototipizimi
Montoni gjithçka në një bord prototipizimi
Montoni gjithçka në një bord prototipizimi
Montoni gjithçka në një bord prototipizimi
Montoni gjithçka në një bord prototipizimi

Në këtë hap do të filloni duke montuar kokën e përgatitur në hapin e mëparshëm në servo motorin përkatës. Pasi servo motori të jetë mësuar me kujdes, ju do të montoni gjithçka së bashku në një tabelë prototipimi. Ju do të filloni duke bashkuar Arduino Nano pastaj duke ngjitur servo pranë tij. Më në fund do të lidhni ekranin e vogël OLED në skajin tjetër të tabelës.

Hapi 5: Krijimi i lidhjeve përfundimtare

Krijimi i lidhjeve përfundimtare
Krijimi i lidhjeve përfundimtare
Krijimi i lidhjeve përfundimtare
Krijimi i lidhjeve përfundimtare
Krijimi i lidhjeve përfundimtare
Krijimi i lidhjeve përfundimtare

Ky hap do të përfundojë anën harduerike të këtij projekti. Ju do të duhet të ndiqni skemat e dhëna për të krijuar të gjitha lidhjet e kërkuara.

Hapi 6: Nisja e Programit

Nisja e Programit
Nisja e Programit

Ekzistojnë dy kode që do t'ju duhet për të nisur

Arduino (C):

Përpunimi (java):

Kur përdorni kodin, do të keni dy mundësi për të zgjedhur:

Opsioni 1: Duke përdorur ekranin OLED, për këtë do t'ju duhet të vendosni ndryshoren MODE në kodin C në 0.

Opsioni 2: Përdorimi i monitorit tuaj, për këtë do t'ju duhet të vendosni ndryshoren MODE në kodin C në 1. Përveç kësaj, do t'ju duhet të shkarkoni dhe instaloni mjedisin e zhvillimit të përpunimit dhe të shkarkoni fontin e radarit nga kjo lidhje: https:// github.com/lastralab/ArduinoRadar/blob/ma…

Dhe shtoni atë skedar në skedarin tuaj të kodit të përpunimit në mënyrë që kodi juaj java të njohë fontin kur të thirret.

Hapi 7: Kuptimi i Kodit C

Kuptimi i Kodit C
Kuptimi i Kodit C

Kodi përbëhet kryesisht nga dy sythe ‘for’. Njëri lidhet me kalimin përpara ndërsa tjetri me kalimin prapa. Brenda të dyjave, funksioni kryesor draw_scanner (), i cili do të tërheqë linjat e radarit në ekran, quhet shumë herë. Pas testimit të konfigurimeve të shumta, arrita në përfundimin se ne duhet të rishkruajmë linjat e bardha të radarit në kohën t me të njëjtat linja radari në të zezë në kohën t+1 në mënyrë që t'i fshijmë ato. Nëse përndryshe, dridhja do të ndodhte sa herë që pastroni ekranin duke përdorur funksionin "clearDisplay ()" para se të shtyni rrjetin e ri të pikselëve. Ndërsa merresha me 7 rreshta- për qëllime të projektimit- më duhej të ruaja dhe të kaloja grupin e plotë të 7 elementeve, ku secili element qëndron për rrezen midis qendrës së radarit në objektin e zbuluar, nëse ka. Me këtë në mendje, pjesa tjetër e kodit duhet të jetë drejtpërdrejt për ta kuptuar.

Hapi 8: Kuptimi i Kodit Java

Në Përpunim, më duhej të anashkaloja thirrjen e funksionit për serialEvent (), i cili funksionon vetëm me portat serikë të quajtur COM. Ndërsa po punoja në një Mac, portet e mia serike erdhën me një emër tjetër. Duke u thënë kështu, unë e shpaketova atë funksion në funksionin kryesor në përpunimin e "barazim ()". Lidhur me gjithçka tjetër, unë kam përditësuar aplikacionin për të përmbushur modelin e plotë të revolucionit. Së fundi, unë azhurnova të gjitha format dhe tekstet e vizatuara në lidhje me gjerësinë e ekranit në mënyrë që produkti përfundimtar të përshtatet me rezolucione të ndryshme të ekranit. Unë personalisht e kam testuar atë për rezolucionet 1000X1000 dhe 500X500, dhe funksionoi mirë:).

Hapi 9: Përfundim

Kjo punë mund të azhurnohet për të pasur 3 sensorë tejzanor, secili që mbulon 120 kënde shikimi, apo edhe 4 sensorë (90 gradë*4) -> 360 gradë më të shpejtë. skanoj.

Ju gjithashtu mund të zgjasni gamën e radarit nga 40 cm në 60 cm ose edhe 80 cm. Unë personalisht kam testuar funksionin e pulsit dhe kam rregulluar ndryshoren TIMEOUT në lidhje me 40 cm. Kjo variabël varet nga shumë faktorë, duke përfshirë gjatësinë e dërgimit të pulsit dhe sipërfaqen e objektit ku pulsi reflektohet.

Më në fund siç u tha më parë, hapi tjetër është përfshirja e radarDuino me një robot lëvizës për të skanuar perimetrin përreth.

Recommended: