LAKI PINGVINI Arduino parking senzor
Parking senzori nekada su bili rezervisani samo za vozila više klase. Danas spadaju u standardni paket opreme i u nižim klasama automobila, pa se aktuelni modeli bez parking senzora mogu nabrojati na prste. Na našim putevima je, nažalost, mnogo više vozila koja spadaju u ovu drugu grupu. Vozni park nam je ogledalo novčanika. Ipak, za manju sumu novca lako možemo dodati parking senzore jednom Golfu „dvojci”, i usput mu povećati nivo bezbednosti. Ionako to vozilo nema nameru da napušta srpske puteve u narednih sto godina. U SK 1/2018 (i.sk.rs/14787) pisali smo o ultrazvučnom senzoru HC-SR04 i načinu kako on funkcioniše. Slično radi i JST-SR04T, senzor koji je idealan za upotrebu kao parking senzor. Senzor dolazi uz manji modul koji nam olakšava rad sa sirovim podacima. Za razliku od ovog o kome smo ranije pisali, ovde je transducer u startu spakovan u jednom uređaju i vizuelno je nalik onom što već srećemo na branicima vozila. Mali valjkasti plastični nosač već dolazi sa gumenim žabicama radi lakše ugradnje u otvore do 22 milimetra. Plastični venac oko senzora je 25 milimetara, pa treba voditi računa da otvor ne bude preveliki. Sam senzor je u nosaču oboren u jednu stranu, tako da se zakretanjem može izabrati idealan ugao u odnosu na osu vozila i oblik samog branika. Senzor je spakovan u crnu, sjajnu plastiku, što neće mnogo „štrčati” na braniku. Uz senzor dolazi i drajver-modul sa kojim se senzor povezuje preko JST konektora, uz, bezmalo, dva i po metra kabla. Ova dužina je i više nego dovoljna za dobar cable management po vozilu, posebno ako ćemo postaviti više ovakvih senzora. Nažalost, za svaki senzor potreban je poseban modul. Razumljivo je da je senzor vodootporan. Drajver-modul (V2.0) SR04T na sebi ima dva integralna kola izbrisanih ili slabo čitljivih oznaka. Ništa novo, međutim, kopanjem po mreži našli smo da su u pitanju LMV324 i BS003F3P6. Prvi je OP-AMP, operacioni pojačivač čija je uloga da bude spona sa drugim IC, STM mikrokontrolerom. Ovaj drugi čip je 8-bitni MCU sa taktom na osam megaherca, a koji je sa OP-AMP povezan preko čak četiri pina. Jedan od pinova vezan je sa varijabilnim induktorom kojim podešavamo stabilnost i preciznost. Nažalost, retki su primerci gde ovaj induktor nećemo koristiti. Pinovi PD5 i PD6 su izlazi ka našem mikrokontroleru i vode do četvoropinskog headera. Označeni su sa ’Echo/Tx’ i ’Trig/Rx’. Druga dva su pinovi napajanja, ’5V’ i ’GND’, a možemo ga napajati i sa 3,3 volta (prethodna verzija ne može da radi na manje od pet volti). Za akustičnu emisiju senzor koristi frekvenciju od 40 kiloherca, koju mi svakako nećemo čuti. SR04T ima rezoluciju od jednog milimetra, međutim, preciznost mu je plus/minus jedan centimetar, uz daljinski opseg merenja od 20 centimetara do šest metara. Kao ultrazvučni senzor, detektovaće sve, pa čak i tečnost, tako da nije mali broj primera gde se ovaj senzor koristi za merenje nivoa tečnosti u nekom rezervoaru. Pri razmatranju određenog projekta vezanog za ovaj senzor, treba znati da mu je ugao detekcije 75 stepeni, dakle, nije u snopu. Kao i kod ranije opisanog senzora i ovde radimo sa upravljačkim pinom’Trig’ kojim šaljemo ultrazvuk i pinom ’Echo’, preko kog taj ultrazvuk primamo. Razlika u vremenu između slanja i primanja, to jest, trajanja eha je ono što nama treba. Ponovićemo: udaljenost u centimetrima dobijamo kada trajanje eha u mikrosekundama pomnožimo sa brzinom zvuka u mikrosekundama po centimetru. S obzirom na to da govorimo o pređenom putu u dva smera, rezultat delimo sa dva. Osim prostom matematikom, možemo koristiti i NewPing biblioteku. Primere koje smo koristili za HC-SR04 možemo koristiti i ovde, a nećemo ih ponavljati da bespotrebno ne zauzimamo prostor. Naša verzija senzora (V2.0) ima tri radna režima. U tu svrhu koristi se ’R27’, mesto predviđeno za otpornik koje dolazi nepopunjeno. Ovako kako jeste, senzor koristimo kao i HC-SR04, s tom razlikom što otvoreno vreme signala ’Trig’ sa deset mikrosekundi stavljamo na 20. Govorimo o primećenom problemu na v2.0, gde senzor dobija „tikove” u prikazanim vrednostima, a koje možemo rešiti i varijabilnim induktorom. Preko ovog režima senzor kontrolišemo putem pinova ’Trig’ i ’Echo’. Ako na ’R27’ zalemimo otpornik od 47K, senzor prelazi u kontinuirani režim. U ovom režimu merenja se vrše na svakih 100 mikrosekundi, a putem serijskog interfejsa isporučuju 16-bitne vrednosti. #include <SoftwareSerial.h> #define rxPin 2 #define txPin 3 SoftwareSerial mySerial(rxPin, txPin); void setup() { mySerial.begin(9600); Serial.begin(9600); } void loop(){ if(mySerial.available()){ unsigned int razdaljina; byte startByte, h_data, l_data; byte buf[3]; startByte = (byte)mySerial.read(); if(startByte == 255){ mySerial.readBytes(buf, 3); h_data = buf[0]; l_data = buf[1]; razdaljina = (h_data<<8) + l_data; Serial.print(„Razdaljina je: „); Serial.print(razdaljina); Serial.println(„mm”); } } } Ako na ’R27’ zalemimo otpornik od 120K, prelazimo u slanje po zahtevu. To možemo uraditi softverski ili hardverski, putem nekog tastera ili, pak, na neki treći način. Svakako je krajnji cilj serijskim interfejsom poslati 0x55 ka senzoru. Tek nakon što senzor primi komandu, on će postati dostupan i poslati podatke. U primeru ispod komandu šaljemo tasterom. Inače, ovi naši primeri blago su prepravljeni primeri sa mreže. #include <SoftwareSerial.h> #define rxPin 2 #define txPin 3 #define btnPin 4 SoftwareSerial mySerial(rxPin, txPin); void setup() { mySerial.begin(9600); Serial.begin(9600); pinMode(btnPin, INPUT); }
void loop() { if(digitalRead(btnPin) == HIGH){ mySerial.write(0x55); delay(50); if(mySerial.available()){ unsigned int razdaljina; byte startByte, h_data, l_data; byte buf[3]; startByte = (byte)mySerial.read(); if(startByte == 255){ mySerial.readBytes(buf, 3); h_data = buf[0]; l_data = buf[1]; razdaljina = (h_data<<8) + l_data; Serial.print(„Razdaljina je: „); Serial.print(razdaljina); Serial.println(„mm”); } } delay(1000); } } Kao što možete da vidite iz poslednja dva primera, komunikacija sa senzorom može da se odvija putem ’Trig/Echo’ ili serijskog interfejsa. Upotrebom određenog otpornika ili bez njega, senzor možemo da koristimo u tri režima rada. Starije varijante drajver-modula nemaju ovo poslednje, ali imaju i manje oscilacija u detekciji. Nama se dešavalo da imamo očitavanja minimalne razdaljine (20 centimetara), iako ništa nije bilo ispred senzora, a vidimo na mreži da nismo jedini. Korišćenjem nekoliko ovih, relativno povoljnih senzora i Arduina, možemo da ugradimo odličan parking senzor u automobil. Uz malo više programiranja, možemo čak da ugradimo i neki displej i grafikonom prikazujemo tačnu poziciju prepreke u odnosu na senzore, a samim tim i auto. S obzirom na malo širi ugao detekcije, treba znati da će okolni predmeti uticati na detekciju razdaljine, pa samim tim i na realan domet. Ravan zid će se uspešno detektovati i na maksimalnim razdaljinama, dok to ne važi za stub, na primer. Postoji i verzija V3.0 drajver-pločice, sa četiri solder džampera, sa kojom nemamo nikakva iskustva, a koliko vidimo na mreži, o tim džamperima nemaju saznanja ni drugi.
|
||||||||||
Najčitanije
Igre
Telefoni
Hardver
Softver
Nauka
Microsoft Windows 11 23H2 Sveže oprani Prozori Windows Copilot, ugrađeni AI pomoćnik, već sada je daleko više od toga što je Cortana ikad bila i mogla da bude... Asus ROG Maximus Z790 Formula Hladna zimi, hladna leti Uz Raptor Lake Refresh generaciju Intelovih Core procesora paralelno je „osvežena” i ponuda modela matičnih ploča... Apple Watch Ultra 2 i Apple Watch Series 9 Ovogodišnji „ vršioci dužnosti” Oba sata dolaze sa preinstaliranim WatchOS-om 10.x i to je jedna od značajnih novina... Asus ROG Ally Z1 Extreme Saveznik je stigao! Ovo je Windows PC, oličen u formi ručne igračke konzole, što ga već na prvu loptu razlikuje od najvećeg konkurenta, Valveovog Steam Decka... Estetska vizija Pavela Surovog Arhetipsko kulturno nasleđe i AI Kako to izgleda kad AI u svoje ruke uzme neko ko i te kako ume da ga iskoristi kao alatku? Razvoj traktorskog snopa Svemirski čistač Naučnici su na korak od stvaranja tehnologije koja je donedavno bila sastavni deo naučne fantastike... Samsung Galaxy Tab S9 FE+ Povoljan kvalitet Uređaj laserski fokusiran na zonu gde se preklapaju vrh srednjeg dela tržišta i početak onog najvišeg... Borba YouTubea protiv adblockera Reklamokalipsa YouTubea Alphabet očekuje da mu se vrati uloženo, što je sasvim normalno, ali sam kvalitet usluge na svim nivoima opada u svim Googleovim proizvodima... Regulacija kripto-trgovanja Kripto-tržište u paklenoj kuhinji Tržište kripto-valuta i srodnih finansijskih instrumenata pretrpelo je još jedan veliki i razočaravajući potres... Alan Wake II Ovo je hrabar, na momente lud i superpretenci-ozan, ali nikada dosadan eksperiment kombinovanja naracije i gejmpleja... The Talos Principle 2 Bolju, impresivniju, zarazniju i produkcijski napucaniju glavolomku u ovome trenutku nećete naći... Call of Duty: Modern Warfare III Kampanja je kratka, multiplayer recikliran, a glavna novost je zombi režim DMZ, posuđen iz Warzonea... |
||||||||||