Sisällysluettelo:

Hauki - Aja turvallisemmin, aja älykkäämmin, aja haukalla !: 5 vaihetta
Hauki - Aja turvallisemmin, aja älykkäämmin, aja haukalla !: 5 vaihetta

Video: Hauki - Aja turvallisemmin, aja älykkäämmin, aja haukalla !: 5 vaihetta

Video: Hauki - Aja turvallisemmin, aja älykkäämmin, aja haukalla !: 5 vaihetta
Video: Машинное обучение для разработчиков Java: переход на стек технологий ИИ. 2024, Marraskuu
Anonim
Hauki - Aja turvallisemmin, aja älykkäämmin, aja haukalla!
Hauki - Aja turvallisemmin, aja älykkäämmin, aja haukalla!

Tervetuloa projektiini nimeltä Pike!

Tämä on projekti osana koulutustani. Olen opiskelija NMCT Howestissa Belgiassa. Tavoitteena oli tehdä jotain älykästä käyttämällä Raspberry Pi -laitetta. Meillä oli täysi vapaus, jossa halusimme olla älykkäitä.

Minulle oli helppo valinta tehdä pyörästäni hieman älykkäämpi. Asun paikassa, jossa polkupyörällä ajaminen vie minut nopeammin määränpäähäni kaupungissa.

Lisäksi kaaduin kerran pyöräni kanssa. Murtelin kyynärpääni. Kaaduin alas, koska osoitin takanani olevaa kuljettajaa, että halusin mennä oikealle. Tie oli liukas ja menetin hallinnan, koska minulla oli vain yksi käsi ohjauspyörässä. Siksi ensimmäinen ajatukseni oli kiinnittää pyörääni suuntavilkut. Sieltä aloin miettiä, mitä muuta voisin lisätä, joten keksin GPS-seurannan, jotta voit myöhemmin nähdä, minkä reitin valitsit.

Joten mitä Pike voi tehdä?

Pike pitää kirjaa ajoistasi. Se seuraa kulmaasi reittiä, laskee keskinopeutesi ja ajamasi matkan. Jokaisen istunnon jälkeen voit kirjautua verkkosivustolle tarkistaaksesi missä ja miten matkasi oli. Luomme myös jotain, jotta voit valita, kuka ajaa pyörällä, jotta useammat ihmiset voivat käyttää Pikeäsi halutessaan!

Vaihe 1: Osat

Osat
Osat

Joten ilmeisesti sinun on tiedettävä, mitä tarvitset projektini luomiseen. Ennen kuin aloitamme, haluaisin sanoa, että tämä projekti ei ollut aivan halpa. Lisäksi ostin paikallisessa kaupassa johdot, jotka olivat ylihinnoiteltuja. Voit ostaa niitä verkossa parilla eurolla/dollarilla (suosittelen sinua). Minulla ei ollut aikaa odottaa. Siksi ostin ne paikallisesta kaupastani korkealla hinnalla.

Ostoslista

- Vadelma Pi

- Käynnistyskaapelit

- Mikä tahansa Powerbank tekee niin kauan kuin se antaa Pi: lle tarpeeksi virtaa

- Maxxter -älypuhelimen pidike (pohjimmiltaan halvin, mitä voit löytää …)

- Maxxter -älypuhelimen pidike (valkoiset pyöreät myös erittäin halpoja sopimaan muoviputkiin)

- Muoviputket (porattu reikä siihen, jotta ne sopivat älypuhelimen pidikkeessä oleviin painikkeisiin, jotka kiinnitetään ohjauspyörään)

- Painikkeet*

- 6x 220 Ω vastukset

- 1x 5K Ω vastus

- LCD -näyttö

- DS18B20 yhden langan lämpötila -anturi

- Adafruit GPS-moduuli Ultimate Breakout 66 Channel

- GPS -antenni - ulkoinen aktiivinen antenni - 3-5V 28db 5 metrin kaapelilla SMA (GPS -signaalin vahvistamiseksi)

- uFLto SMA -sovitin (ylimääräisen antennin liittämiseksi Adafruit-GPS-moduuliin)

Huomautuksia:

* Kuvissa näkyvät metalliset, ehkä eivät ihanteellisimmat, mutta ne olivat niitä, joita heillä oli paikallisessa kaupassani. Voit käyttää täysin vedenpitäviä nappeja, mutta ne olivat 15 € kappale, joka oli mielestäni kallista napille. Voit ostaa haluamasi painikkeen niin kauan kuin se toimii pull up -järjestelmällä, niin voit hyvin.

Vaihe 2: Johdot kaikki

Johto Kaikki ylös
Johto Kaikki ylös
Johto Kaikki ylös
Johto Kaikki ylös

Se ei ole niin vaikeaa. Koska GPS -moduuli on kytketty USB: llä. Yllä olevasta kuvasta näet, että voit sovittaa värit USB -sovittimen kaapeleiden kanssa. Painikkeet ja LED -valot on kytketty 220 Ω: iin. DS18B20 -lämpötila -anturi on kytketty 5K Ω vastukseen.

Vaihe 3: Määritä Raspberry Pi

Määritä Raspberry Pi!
Määritä Raspberry Pi!

Ensin tarvitset raspbianin, jonka voit oppia täältä, ja sen jälkeen sinun on noudatettava tämän arkiston ohjeita.

Tietokanta -aikatauluni on vähäinen. Se sisältää 4 taulukkoa:

  1. tbluser

    1. Käyttäjätunnus (tinyint, 2) AUTO INCREMENT, UNSIGNED
    2. Käyttäjänimi (varchar, 175)
    3. UserLogin (varchar, 180)
    4. UserPassword (varchar, 255)
    5. UserActive (tinyint, 1) UNSIGNED
  2. tblsession

    1. Istunnon tunnus (int, 10) AUTO INCREMENT, UNSIGNED
    2. Istunnon päivämäärä (päivämäärä)
    3. Käyttäjätunnus
  3. tblsensor

    1. SensorID (tinyint, 3) AUTO INCREMENT, UNSIGNED
    2. SensorName (varchar, 150)
  4. tblhistory

    1. HistoryID (bigint, 20) AUTO INCREMENT, UNSIGNED
    2. SensorID
    3. Istunnon tunniste
    4. HistoryValue (varchar, 255)
    5. HistoryTime (aika, 3)

Mutta voit myös katsoa.sql -dump -tiedostoa

Vaihe 4: Aloitetaan koodaus

Aloitetaan koodaus
Aloitetaan koodaus

Löydät koodini projektin toimimiseksi täältä.

GPS

GPS -moduulin käytön aloittaminen on todella helppoa. Sinun tarvitsee vain asentaa gpsd-py3-paketti Python-ympäristöön. Sitten voit käyttää tätä kirjastoa helpottaaksesi elämääsi. Voit käyttää koodausesimerkkejä saadaksesi GPS -laitteeltasi tietoja, kuten pitkäaikainen, leveysaste, nopeus jne.

LCD-näyttö

Jotta LCD -näyttö toimisi, sinun on asennettava kirjasto Adafruitista. Esimerkkejä koodaamisesta löytyy täältä.

DS18B20 yhden langan lämpötila -anturi

Yhden johtimen anturin löytämiseksi sinun on tehtävä hieman enemmän työtä. Ensinnäkin meidän on aktivoitava yksijohtiminen väylä. Voit tehdä tämän seuraavasti:

  1. sudo raspi-config
  2. Liitäntävaihtoehdot
  3. 1-johdin

Jotta voimme aloittaa anturin tietojen lukemisen, meidän on tiedettävä, kuinka yksi lanka kutsutaan. Tähän tyyppiin cd/sys/bus/w1/devices/

Näet kaksi laitetta, joista toinen on itse Raspberry Pi ja toisen pitäisi näyttää 28-0… jne. No, tuo pitkä numero- ja kirjainjono on tapa, jolla voit lukea tietoja Pythonissa. Jos haluat lukea tietoja pythonissa, sinun on avattava se tiedostona. Tiedoston avaamispolun pitäisi siis näyttää tältä:/sys/bus/w1/devices/28-04177032d4ff/w1_slave.

Painikkeet ja LEDit

Nämä ovat perustoimintoja, voit tarkastella koodiani tässä Classes -kansiossa.

SQL-lausunnot

Lähes jokainen lause on SQL -peruslause. Haluaisin kuitenkin hieman selittää, kuinka tallensin anturien arvot. Lisäsin anturit manuaalisesti tblsensorsiin. Joten tiesin, millä anturilla oli mikä tunnus. Joten pidän kirjaa pituusasteesta, leveysasteesta ja nopeudestani. Jokaiselle arvolle tein eri funktion. Tekisin vain kolme sql -lauseketta, jotka ovat samat, mutta riippuen siitä, minkä arvon haluaisin tallentaa, muutin WHERE -lausekkeen.

Suositeltava: