Përmbajtje:
- Hapi 1: Burimet
- Hapi 2: Kuptimi se si funksionon Zbulimi Infrared (Opsionale)
- Hapi 3: Montimi i LED -ve IR
- Hapi 4: Testimi i çifteve infra të kuqe - qark
- Hapi 5: Testimi i çifteve infra të kuqe - Kodi bazë
- Hapi 6: Testimi i çifteve me rreze infra të kuqe - pajisje + softuer
- Hapi 7: Zgjidhja e problemeve (për çështjet me hapin e fundit)
- Hapi 8: Çifti i dytë IR
- Hapi 9: Zbulimi i ndërhyrjes me rreze infra të kuqe (Opsionale)
- Hapi 10: Shtimi i më shumë çifteve IR
- Hapi 11: Pesë çifte IR - Qark
- Hapi 12: Pesë çifte IR - Kodi
Video: Boe-Bot me detektorë infra të kuqe: 12 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:19
Ky udhëzues do të demonstrojë se si të ndërtoni dhe kodoni një Boe-Bot që mund të lundrojë në një labirint duke përdorur detektorë infra të kuqe për të shmangur pengesat. Ky është një udhëzues i lehtë për t’u ndjekur që lejon modifikime të lehta që i përshtaten nevojave tuaja. Kjo kërkon një kuptim bazë të qarkut dhe programimit. Ju do të duhet të keni softuer BASIC Stamp IDE për këtë projekt. Falas për shkarkim këtu. Si dhe Roboti Boe-Bot
Hapi 1: Burimet
Komponentet Elektronike
Boe -Bot me kabllo lidhës Parallax Store - BoeBot Kit
Dyqani i Paralaksit me LED me rreze infra të kuqe - Kompleti i Asamblesë i Transmetuesit IR
5 Kuvendet e Mburojës Infra të Kuqe
5 Dyqane Infra të Kuqe Parallax Store - BoeBot IR Receiver
Rezistencat
- (2) 4.7 kΩ ABRA Elektronikë - 4.7 kΩ
- (5) 220 Ω ABRA Elektronikë - 220 Ω
- (2) 1 kΩ ABRA Elektronikë - 1 kΩ
- (5) 2 k ABRA Elektronikë - 2 kΩ
Instalime të ndryshme ABRA Electronics - 22 Gauge Wire
3 LED ABRA Elektronikë - LED 5mm të Kuq
Mbështetje
Kompjuter
Redaktori BASIC i Pullave - (Freeware)
Mjetet
Prerës i telave ABRA Elektronikë - Prerës me tela (Opsionale)
Wire Stripper ABRA Elektronikë - Wire Stripper
Të ndryshme
Muret (për të ndërtuar labirint)
Hapi 2: Kuptimi se si funksionon Zbulimi Infrared (Opsionale)
Fenerë me rreze infra të kuqe
Sistemi i zbulimit të objekteve infra të kuqe që do të ndërtojmë në Boe-Bot është si fenerët e makinës në disa aspekte. Kur drita nga fenerët e një makine reflekton pengesat, sytë tuaj zbulojnë pengesat dhe truri juaj i përpunon ato dhe e bën trupin tuaj të drejtojë makinën në përputhje me rrethanat. Boe-Bot do të përdorë LED infra të kuqe për fenerët. Ata lëshojnë infra të kuqe, dhe në disa raste, infra të kuqe reflekton objekte dhe kthehet përsëri në drejtim të Boe-Bot. Sytë e Boe-Bot janë detektorë infra të kuqe. Detektorët infra të kuqe dërgojnë sinjale që tregojnë nëse ata zbulojnë apo jo infra të kuqe të reflektuar nga një objekt. Truri i Boe-Bot, Vula BASIC, merr vendime dhe operon motorët servo bazuar në këtë hyrje të sensorit. Figura 7-1 Zbulimi i Objekteve me Fenerë IR Detektorët IR kanë filtra optikë të integruar që lejojnë shumë pak dritë përveç infra të kuqe 980 nm që duam të zbulojmë me sensorin e saj të brendshëm fotodiodë. Detektori infra të kuqe gjithashtu ka një filtër elektronik që lejon kalimin e sinjaleve vetëm rreth 38.5 kHz. Me fjalë të tjera, detektori po kërkon vetëm infra të kuqe që ndizet dhe fiket 38, 500 herë në sekondë. Kjo parandalon ndërhyrjen IR nga burimet e zakonshme të tilla si rrezet e diellit dhe ndriçimi i brendshëm. Rrezet e diellit janë ndërhyrje DC (0 Hz) dhe ndriçimi i brendshëm tenton të ndizet dhe fiket në 100 ose 120 Hz, në varësi të burimit kryesor të energjisë në rajon. Meqenëse 120 Hz është jashtë frekuencës së kalimit të brezit të filtrit elektronik 38.5 kHz, ai injorohet plotësisht nga detektorët IR.
-Paralax Guide Student
Hapi 3: Montimi i LED -ve IR
Futni LED IR në pjesën më të madhe të zorrës
Mbyllni pjesën e qartë të LED me pjesën më të vogël të zorrës
Hapi 4: Testimi i çifteve infra të kuqe - qark
Para se të futemi shumë në ndonjë gjë, ne do të testojmë për t'u siguruar që çifti IR funksionon (Një LED infra të kuqe dhe një detektor infra të kuqe).
Filloni duke ndërtuar qarkun e mësipërm në tabelën e bukës të montuar në majë të Boe-Bot tuaj
Hapi 5: Testimi i çifteve infra të kuqe - Kodi bazë
Sigurisht, do të na duhet të shkruajmë kod që çiftet tona IR të funksionojnë
Për ta bërë këtë, do të përdorë komandën FREQOUT. Ky komandë është krijuar për tonet audio, megjithatë mund të përdoret për të prodhuar frekuenca në intervalin infra të kuqe. Për këtë test ne do të përdorim komandën:
FREKUT 8, 1, 38500
kjo do të dërgojë një frekuencë 38.5 kHz që zgjat 1 ms në P8. Qarku infra të kuqe LED i lidhur me P8 do të transmetojë këtë frekuencë. Nëse drita infra të kuqe reflektohet përsëri në Boe-Bot nga një objekt në rrugën e tij, detektori me rreze infra të kuqe do t'i dërgojë vulës BAZ një sinjal për t'i bërë të ditur se drita infra të kuqe e reflektuar është zbuluar.
Çelësi për të bërë një palë IR të funksionojë është të dërgoni 1 ms FREQOUT 38.5 kHz dhe të ruani menjëherë daljen e detektorit IR në një ndryshore.
Ky shembull tregon ruajtjen e vlerës së Detektorit IR në një variabël pak të quajtur irDectectLeft
FREKUT 8, 1, 38500
irDetectLeft = IN9
Gjendja dalëse e detektorit IR kur nuk sheh asnjë sinjal IR është i lartë. Kur detektori IR sheh harmonikën 38500 Hz të pasqyruar nga një objekt, prodhimi i tij është i ulët. Dalja e detektorit IR qëndron e ulët vetëm për një pjesë të milisekondës pasi komanda FREQOUT të ketë përfunduar duke dërguar harmonikën, kështu që është thelbësore të ruani daljen e detektorit IR në një ndryshore menjëherë pas dërgimit të komandës FREQOUT. Vlera e ruajtur nga ndryshorja mund të shfaqet në Terminalin e Debug ose të përdoret për vendimet e lundrimit nga Boe-Bot.
Hapi 6: Testimi i çifteve me rreze infra të kuqe - pajisje + softuer
Tani që i dini bazat, ne mund t'i bashkojmë pajisjet dhe softuerin për të testuar një palë së bashku dhe për të marrë reagime në kohë reale nga ato që zbulon çifti IR
Mund të provoni dhe ta bëni vetë kodin, ose të përdorni kodin më poshtë
'{$ STAMP BS2}
'{$ PBASIC 2.5} irDetectLeft VAR Bit DO FREQOUT 8, 1, 38500 irDetectLeft = IN9 DEBUG HOME, "irDetectLeft =", BIN1 irDetectLeft PAUSE 100 LOOP
- Lëreni Boe-Bot të lidhur me kabllon serik, sepse do të përdorni Terminalin DEBUG për të testuar palën tuaj IR.
- Vendosni një objekt, të tillë si dora juaj ose një fletë letre, rreth një inç nga çifti IR i majtë
- Verifikoni që kur vendosni një objekt para palës IR, Debug Terminal shfaq një 0, dhe kur e hiqni objektin nga para palës IR, ai shfaq një 1.
- Nëse Terminali i Debug-ut nuk shfaq vlerat e pritshme, provoni hapat në Hapin e zgjidhjes së problemeve.
Hapi 7: Zgjidhja e problemeve (për çështjet me hapin e fundit)
Terminali DEBUG që shfaq vlera të papritura
Kontrolloni qarkun për pantallona të shkurtra, lidhje të gabuara ose që mungojnë, përbërës të dëmtuar, rezistorë të pasaktë ose ndonjë problem tjetër të dukshëm
Kontrolloni programin nga gabimet logjike ose sintaksore - Nëse keni përdorur kodin tuaj për hapin e fundit, merrni parasysh përdorimin e kodit të dhënë
Gjithmonë duke marrë 0, edhe kur nuk ka objekte vendoset para Boe-Bot
Kontrolloni nëse ka ndonjë objekt aty pranë që reflekton sinjalin infra të kuqe. Tabela para Boe-Bot mund të jetë shkaku. Zhvendoseni Boe-Bot në hapësirë të hapur në mënyrë që LED LED dhe detektori të mos reflektojnë asnjë objekt aty pranë.
Leximi është 1 shumicën e kohës kur nuk ka asnjë objekt para Boe-Bot, por shkrep në 0 herë pas here
Mund të ketë ndërhyrje nga një dritë fluoreshente aty pranë; Fikni çdo dritë fluoreshente aty pranë dhe përsëritni testet tuaja. Nëse problemi vazhdon, hapi 9 mund ta zbulojë problemin
Hapi 8: Çifti i dytë IR
Tani që keni programin për IR të majtë, është radha juaj të bëni qarkun dhe të programoni Çiftin IR të djathtë
- Ndryshoni deklaratën, titullin dhe komentet DEBUG për t'iu referuar çiftit të duhur IR.
- Ndryshoni emrin e ndryshores nga irDetectLeft në irDetectRight. Ju do të duhet ta bëni këtë në katër vende në program.
- Ndryshoni argumentin Pin të komandës FREQOUT nga 8 në 2.
- Ndryshoni regjistrin hyrës të monitoruar nga variabla irDetectRight nga IN9 në IN0.
- Përsëritni hapat e testimit në këtë aktivitet për palën IR të duhur; me qarkun LED IR të lidhur me P2 dhe detektorin e lidhur me P0.
Hapi 9: Zbulimi i ndërhyrjes me rreze infra të kuqe (Opsionale)
Nëse jeni duke përjetuar probleme me zbulimin e sinjaleve që nuk duhet të zbulohen ose planifikoni të demonstroni zbulimin tuaj IR në një vendndodhje alternative, mund të dëshironi të provoni për ndërhyrje.
Koncepti i këtij programi testimi është mjaft i thjeshtë, ju zbuloni për sinjale infra të kuqe pa dërguar asnjë.
Ju mund të përdorni të njëjtin qark, por do t'ju duhet të ndryshoni kodin. ju mund të zgjidhni të shkruani kodin tuaj, por mund të përdorni kodin e dhënë më poshtë:
'{$ STAMP BS2}
'{$ PBASIC 2.5} irDetectLeft VAR Bit DO irDetectLeft = IN9 irDetectRight = IN0 NFSE IN9 = 0 OSE IN0 = 0 PAS DEBUG "Ndërhyrja u zbulua" PAUSE 100 LOOP
Nëse përjetoni ndërhyrje, përcaktoni burimin e mundshëm dhe fikeni/hiqni atë ose zhvendoseni aty ku përdorni Boe-Bot tuaj.
Hapi 10: Shtimi i më shumë çifteve IR
Nëse dëshironi më shumë saktësi në lëvizjen e Boe-Bot tuaj, mund të dëshironi të shtoni më shumë çifte IR. 3 Përmirëson shumë performancën në krahasim me dy; mund të përdorni një palë qendrore për të skanuar për një pengesë të drejtpërdrejtë dhe përdorni IR -të anësore për të përcaktuar se sa do të ktheheni. Sidoqoftë, rënia e modelit të palës 3 IR është se ju mund ta dini kur rrëshqitni në mur, sepse çifti IR qendror përdoret për të zbuluar pengesat. Për të zgjidhur këtë problem, mund të shtoni një palë IR në secilën anë me një vlerë të lartë të rezistencës-prandaj dhe sinjali infra të kuqe do të zbulohet vetëm nëse Boe-Bot është afër anës ose një muri në një kënd të butë.
Hapi 11: Pesë çifte IR - Qark
Kini kujdes kur drejtoni dy LED -të IR në anën, pasi rrotullimi i tyre mund të shkaktojë prekjen e prizave dhe shkaktimin e një qarku të shkurtër.
Hapi 12: Pesë çifte IR - Kodi
Ju mund të dëshironi të provoni të programoni Boe-Bot tuaj para se të përdorni këtë kod:
'{$ STAMP BS2}' {$ PBASIC 2.5} 'Pesë kod IR i palëve me palë' Matthew Shaw '8 maj 2019 (Versioni 7)' Zbulimi i objekteve dhe përpunimi bazë logjik për zgjidhjen e labirinteve
irDetectLeft VAR Bit 'Variabla për të majtën
IrDetectCentre Bit VAR 'Variable for center irDetectRight VAR Bit' Variable for right irDetectLSide VAR Bit 'Variable for side left irDetectRSide VAR Bit' Variable for side right irDetectLSideFar VAR Bit 'Variable for rezistencën e ulët të rezistencës së ulët irDetectRSideFar VAR bit të ulët' Variabël për
mLoop VAR Word
PIN Lmotor 15 'Motori i majtë është i lidhur me pin 14, pulsimet kalojnë këtu
PIN i Rmotorit 14 'djathtas = 15
'shpejtësitë janë-> 650-750-850
LFast CON 850 'Falas për motorin e majtë me shpejtësi të plotë RFast CON 650' Conastant për motorin e djathtë me shpejtësi të plotë
LStop CON 750 'Fshirës për motorin e majtë me shpejtësi të plotë
RStop CON 650 'Fshirës për motorin e duhur me shpejtësi të plotë
LMid CON 830 'Fshirës për motorin e majtë me shpejtësi mesatare
RMid CON 700 'Fshirës për motorin e duhur me shpejtësi të mesme
LSlow CON 770 'Fshirës për motorin e majtë me shpejtësi minimale
RSlow CON 730 'Fshirës për motorin e duhur me shpejtësi minimale
LRev CON 650 'Fshirës për motorin e majtë me shpejtësi të plotë në të kundërt
RRev CON 850 'Fshirës për motorin e majtë me shpejtësi të plotë në të kundërt
FREKUT 7, 1, 38500 'ana e majtë
irDetectLeft = IN8
FREQOUT 6, 1, 38500 'qendra
irDetectCentre = IN5
FREKUT 3, 1, 38500 'ana e djathtë
irDetectRight = IN2
FREQOUT 10, 1, 38500 'Majtas Mbyll
irDetectLSide = IN11
FREKUT 1, 1, 38500 'djathtas Mbyll
irDetectRSide = IN0
FREKUT 9, 1, 38500
irDetectLSideFar = IN11
FREKUT 4, 1, 38500 'ana e djathtë
irDetectRSideFar = IN0
NFSE irDetectLSide = 0 DHE irDetectRSide = 0 PASTAJ KOMANDA E FILLIMIT tundni duart përtej dy detektorëve anësorë për të filluar programin
Kryesore:
PAUZA 1000 BOJ
PULSOUT Lmotor, LFast 'motori i majtë funksionon me shpejtësi të plotë
PULSOUT Rmotor, RFast 'Motori i djathtë funksionon me shpejtësi të plotë
FREQOUT 6, 1, 38500 'qendra
irDetectCentre = IN5
FREQOUT 10, 1, 38500 'Majtas Mbyll
irDetectLSide = IN11
FREKUT 1, 1, 38500 'ana e djathtë
irDetectRSide = IN0
NFSE irDetectLSide = 0 DHE irDetectRSide = 1 PASTAJ
BOJ PULSOUT Lmotor, LFast
FREQOUT 6, 1, 38500 'qendër
irDetectCentre = IN5 NFSE irDetectCentre = 0 THEN cent
FREQOUT 10, 1, 38500 'Mbyll Mbyll
irDetectLSide = IN11
FREKUT 3, 1, 38500 'ana e djathtë
irDetectRight = IN2
LIGJI DERI në irDetectLSide = 1 OSE irDetectRSide = 0
ELSEIF irDetectLSide = 1 DHE irDetectRSide = 0 PASTAJ
BOJ PULSOUT Rmotor, RFast
FREQOUT 6, 1, 38500 'qendra
irDetectCentre = IN5 NFSE irDetectCentre = 0 THEN cent
FREQOUT 10, 1, 38500 'Majtas Mbyll
irDetectLSide = IN11
FREKUT 3, 1, 38500 'ana e djathtë
irDetectRight = IN2
LIGJI DERI në irDetectLSide = 0 OSE irDetectRSide = 1
'ENDIF
NFSE irDetectCentre = 0 PASTAJ FILLIMI
FREKUT 7, 1, 38500 'ana e majtë irDetectLeft = IN8
FREQOUT 6, 1, 38500 'qendër
irDetectCentre = IN5
FREKUT 3, 1, 38500
irDetectRight = IN2
NDALJA 1000 'pauzë për të treguar sinjalin e zbuluar
NFSE (irDetectLeft = 1 AND irDetectRight = 0) PASTAJ 'vlerësoni kohëzgjatjen
GOSUB turnLeft
ELSEIF (irDetectLeft = 0 DHE irDetectRight = 1) PASTAJ
GOSUB djathtas
ELSEIF (irDetectLeft = 1 DHE irDetectRight = 1) PASTAJ
GOSUB turnDecide
TJER
GOSUB turnReverse
ENDIF
ENDIF 'FUND
SHIKO
FUND
Kthehu majtas:
BOH PULSOUT Lmotor, LRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREKUT 5, 1, 38500 irDetectCentre = IN4 FREQOUT 2, 1, 38500 irDetectRight = IN0 LOOP DERI N0 = 1 KTHIM
Kthehu djathtas:
BOH PULSOUT Rmotor, RRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 irDetectCentre = INFREQUT 2, 1, 38500 irDetectRight = IN0 LOOP DERI IN9 = 1
KTHIM
kthehu mbrapsht:
PER mLoop = 0 në 50 PULSOUT Rmotor, RRev PULSOUT Lmotor, LRev Pauz 20 PULSOUT Lmotor, LRev Pauz 20 NEXT DO PULSOUT Rmotor, RRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 irDetectCentre = IN4 FREQOUT 2, 1, 38500 irDetectRight = IN0 LOOP DERI IN9 = 1
KTHIM
turnDecide: 'përdor rezistencë më të ulët për të parë më tej
FREKUT 9, 1, 38500
irDetectLSideFar = IN11
FREKUT 4, 1, 38500 'ana e djathtë
irDetectRSideFar = IN0
NFSE (irDetectLSideFar = 1 DHE irDetectRSideFar = 0) PASTAJ 'vlerësoni kohëzgjatjen
GOSUB turnLeft
ELSEIF (irDetectLSideFar = 0 AND irDetectRSideFar = 1) PASTAJ
GOSUB djathtas
ELSEIF (irDetectLSideFar = 1 DHE irDetectRSideFar = 1) PASTAJ
GOSUB turnLeft
TJER
GOSUB turnReverse
ENDIF
KTHIM
Recommended:
MP3 Player i kontrolluar me rreze infra të kuqe: 6 hapa (me fotografi)
MP3 Player i kontrolluar me rreze infra të kuqe: Ndërtoni një telekomandë infra të kuqe MP3 player për rreth 10 dollarë (usd). Ka veçoritë e zakonshme: luani, bëni pauzë, luani tjetrën ose të mëparshmen, luani një këngë të vetme ose të gjitha këngët. Gjithashtu ka variacione barazues dhe kontroll të volumit. Të gjitha të kontrollueshme përmes një r
Përdorimi i sensorit infra të kuqe me Arduino: 8 hapa (me fotografi)
Përdorimi i sensorit infra të kuqe me Arduino: Çfarë është një sensor infra të kuqe (aka IR)? Një sensor IR është një instrument elektronik që skanon sinjalet IR në intervalet e frekuencave specifike të përcaktuara nga standardet dhe i konverton ato në sinjale elektrike në pinin e tij të daljes (i quajtur zakonisht pin sinjali) Me Sinjali IR
Termometër me rreze infra të kuqe Arduino: 7 hapa (me fotografi)
Termometër me rreze infra të kuqe Arduino: Në këtë projekt do t'ju tregoj se si të ndërtoni një termometër dixhital me rreze infra të kuqe me një mbyllje të printuar me porosi 3D
Çezma automatike e ujit me infra të kuqe në 5 dollarë: 12 hapa (me fotografi)
Çezma automatike e ujit me infra të kuqe me 5 dollarë: Në këtë projekt, ne do të bëjmë një çezmë automatike të fikjes së ujit nën 5 dollarë. Ne do të përdorim një sensor IR dhe një ndërprerës uji për të bërë këtë rubinet automatik të ujit me infra të kuqe. Asnjë mikrokontrollues nuk përdoret për të bërë këtë rubinet automatik infra të kuqe uji. Thjesht vendosni pajisjen tuaj
Rubber Machine Gunning, Sensor me rreze infra të kuqe, TV ROBOT MBROJTS: 5 hapa (me fotografi)
Rubberband Machine Gunning, Infrared Sensing, TV DEFENDER ROBOT: Duke mos përdorur qarqe të integruara, ky robot pret një sinjal infra të kuqe nga një telekomandë standarde e TV -së dhe më pas shkrep me shpejtësi një sërë brezash gome. Shënim: Shikoni/Kërkoni " sitin e desktopit " nëse nuk e shihni videon. Përgjegjësia: Ky projekt është në