Korisnički alati

Site alati


2017:studenti:kklas:start

Ovo je stara izmjena dokumenta!


Sonar za slijepe

Razrada konteksta

Projektni zadatak

Svrha sustava

U prvoj fazi projekta, cilj nam je napraviti sustav koji će omogućiti slijepim i slabovidnim osoboma brže kretanje po ravnom terenu. Sustav bi, na temelju senzora u naočalama i na koljenima, davao zvučni signal čija bi frekvencija beepova bila proporcionalna udaljenosti prepreke od korisnika, a “fokus” udaljenosti bi bio određen brzinom koraka.

U drugoj fazi projekta, postojeći sustav bi se nadogradio na način da omogući kretanje i po neravnom terenu s niskim zaprekama (kao što su npr. rupe, lokve, stepenice, različiti predmeti koji se nalaze na tlu itd.).

Druga faza projekta bi se izvršila u idealnoj situaciji, tj. ostavlja se na daljnju nadogradnju budućim generacijama i drugim zainteresiranim osobama.

Ciljevi projekta

  1. Ugraditi ultrazvučne senzore za udaljenost u naočale, magnetske senzore pokreta na trake (znojnike) i zvučnike u slušalice. Sve zajedno povezati s mikrokontrolerom.
  2. Montirati uređaj na korisnika i provesti inicijalizaciju (uvesti podatke o visini osobe). Ova točka je opcionalna.
  3. Primiti očitanja ultrazvučnih senzora za udaljenost.
  4. Primiti očitanja magnetskog senzora za brzinu/kretnju.
  5. Zajednički procesirati dobivene signale na mikrokontroleru i na temelju njih odrediti “fokus” udaljenosti.
  6. Na temelju fokusa odrediti šalje li se zvučni signal korisniku. Ako se šalje, odrediti i frekvenciju signala koja je proporcionalna udaljenosti korisnika od predmeta/osobe.
  7. Poslati zvučni signal korisniku (ako je potrebno).

Plan projekta

DatumOčekivani rezultat

Uloga na projektu

U sklopu projekta radio sam implementaciju programa za arduino pločicu - detekcija koraka i proračun brzine, osim signalizacije.

Da bi se detektirao korak, trebalo je očitati signal piezo senzora sa analognog ulaza mkrokontrolera. Pošto u signalu sa senzora uvijek postoji šum, stavio sam parametar kojim se može prilagoditi razina detekcije signala za korak. Također, trebalo je staviti i debounce kako se isti korak nebi detektirao više puta. Za proračun brzine hodanja implementirao sam strukturu koja će pratiti koračanje korisnika i na temelju toga izračunavati brzinu kretanja. Brzina kretanja se izračunava kroz prosjek od posljednjih pet koraka. Kako bi se mogla izračunati brzina iz frekvencije koračanja, koristio sam potenciometar kojim korisnik može namjestiti duljinu svojeg koraka. Kod sam implementirao tako da se ne radi signalizacija ako korisnik stoji na mjestu. Za odluku oko toga da li detektirani objekt predstavlja prepreku ili ne smislio sam jednadžbu koja uzima u obzir brzinu refleksa i brzinu kretanja korisnika (safetyD = speed * (REFLEX_T + 2 * steps.lastStepT) / 1000). Za upravljanje sonarom koristio sam biblioteku “NewPing”.

Kod sam organizirao kroz nekoliko datoteka radi bolje preglednosti i jasnoće. Svi parametri sustava (kao što su npr. brzina refleksa) izdvojio sam u posebnu datoteku što olakšava konfiguraciju sustava.

Također sam dobavio svu opremu koja je bila potrebna za izvedbu projekta.

Rezultati projekta

2017/studenti/kklas/start.1496908776.txt.gz · Zadnja izmjena: 2023/06/19 18:10 (vanjsko uređivanje)