INHOUDSOPGAWE:

Snoek - Ry veiliger, ry slimmer, ry 'n snoek !: 5 stappe
Snoek - Ry veiliger, ry slimmer, ry 'n snoek !: 5 stappe

Video: Snoek - Ry veiliger, ry slimmer, ry 'n snoek !: 5 stappe

Video: Snoek - Ry veiliger, ry slimmer, ry 'n snoek !: 5 stappe
Video: Ricus Nel - Boerepompie ft. Snotkop 2024, November
Anonim
Snoek - Ry veiliger, ry slimmer, ry 'n snoek!
Snoek - Ry veiliger, ry slimmer, ry 'n snoek!

Welkom by my projek genaamd Pike!

Dit is 'n projek as deel van my opleiding. Ek is 'n student NMCT aan Howest in België. Die doel was om iets slim te maak deur 'n Raspberry Pi te gebruik. Ons het volledige vryheid gehad waarin ons slim wou wees.

Vir my was dit 'n maklike keuse om my fiets 'n bietjie slimmer te maak. Ek woon op 'n plek waar ek met die fiets vinniger na my bestemming in die stad kom.

Ek het ook een keer met my fiets geval. Ek het my elmboog gebreek. Ek val neer omdat ek na die bestuurder agter my wys dat ek regs wil gaan. Die pad was glad en ek het beheer verloor omdat ek net een hand op my stuurwiel gehad het. Daarom was my eerste idee om rigtingwysers aan my fiets vas te maak. Van daar af het ek begin dink wat ek nog kan byvoeg, sodat ek met GPS-opsporing vorendag gekom het, sodat u later kan sien watter roete u geneem het.

So, wat kan die snoek doen?

Die Snoek sal u rissessies byhou. Dit hou tred met watter roete u geneem het, dit bereken u gemiddelde spoed en die afstand wat u afgelê het. Na elke sessie kan u by die webwerf aanmeld om te kyk waar en hoe u rit was. Ons sal ook iets skep sodat u kan kies wie die fiets sal ry, sodat meer mense u snoek kan gebruik as hulle wil!

Stap 1: Die onderdele

Die onderdele
Die onderdele

U moet dus duidelik weet wat u nodig het om my projek te herskep. Voordat ons begin, wil ek sê dat hierdie projek nie juis goedkoop was nie. Ek het ook drade by 'n plaaslike winkel gekoop wat te duur was. U kan dit aanlyn koop vir 'n paar euro/dollar (wat ek u aanbeveel). Ek het nie tyd gehad om te wag nie. Daarom het ek dit teen 'n hoë prys by my plaaslike winkel gekoop.

Die inkopielys

- Framboos Pi

- Springkabels

- Powerbank sal alles doen, solank dit jou Pi genoeg krag gee

- Maxxter slimfoonhouer (basies die goedkoopste een wat u kan vind …)

- Maxxter slimfoonhouer (die wit sirkelvorms is ook baie goedkoop om by my plastiekbuise te pas)

- Plastiekbuise ('n gat daarin geboor om by die knoppies te pas wat in die slimfoonhouer pas om aan die stuurwiel vas te maak)

- knoppies*

- 6x 220 Ω weerstande

- 1x 5K Ω weerstand

- LCD -skerm

- DS18B20 Een draad temperatuur sensor

- Adafruit GPS-module Ultimate Breakout 66 Channel

- GPS -antenne - Eksterne aktiewe antenne - 3-5V 28db met 5 meter kabel SMA (om GPS -sein te versterk)

- uFLto SMA-adapter (om ekstra antenna aan te sluit op die Adafruit GPS-module)

Notas:

* Diegene wat u op die foto's sal sien, is metaal, miskien nie die mees ideale nie, maar dit was dié wat hulle by my plaaslike winkel gehad het. U kan heeltemal waterdigte knoppies gebruik, maar dit kos 15 € per stuk, wat ek gedink het te duur was vir 'n knoppie. U kan die knoppie koop wat u wil, solank dit met 'n optrekstelsel werk, sal dit goed gaan.

Stap 2: Sluit alles op

Draai alles op
Draai alles op
Draai alles op
Draai alles op

Dit is nie so moeilik nie. Aangesien die GPS -module met USB verbind is. U kan op die foto hierbo sien dat u die kleure kan pas by die kabels op die USB -adapter. Die knoppies en LED's is gekoppel aan 220 Ω. Die DS18B20 Temperatuursensor is bedraad tot 'n 5K Ω weerstand.

Stap 3: Laat ons u Framboos Pi instel

Laat ons u Framboos Pi konfigureer!
Laat ons u Framboos Pi konfigureer!

Eerstens benodig u Raspbian wat u hier kan leer, en daarna moet u die stappe in hierdie bewaarplek volg.

My databasisrooster is minimaal. Dit bevat 4 tabelle:

  1. tbluser

    1. Gebruikers -ID (tinyint, 2) AUTOMATIGE VERHOGING, ONTEKEN
    2. Gebruikersnaam (varchar, 175)
    3. UserLogin (varchar, 180)
    4. UserPassword (varchar, 255)
    5. UserActive (tinyint, 1) ONTEKEN
  2. sessie

    1. Sessie -ID (int, 10) AUTO TOEVOEGING, ONTEKEN
    2. Sessiedatum (datum)
    3. Gebruikers -ID
  3. tblsensor

    1. SensorID (tinyint, 3) AUTOMATIGE VERHOGING, ONTEKEN
    2. Sensornaam (varchar, 150)
  4. geskiedenis

    1. HistoryID (bigint, 20) AUTOMATIGE VERHOGING, ONTEKEN
    2. SensorID
    3. Sessie ID
    4. HistoryValue (varchar, 255)
    5. Geskiedenis Tyd (tyd, 3)

Maar u kan ook na die.sql -lêer kyk

Stap 4: Kom ons begin met kodering

Kom ons begin met kodering
Kom ons begin met kodering

U kan my kode hier vind om die projek te laat werk.

GPS

Dit is baie eenvoudig om met die GPS -module te begin. Al wat u hoef te doen is om die gpsd-py3-pakket in u Python-omgewing te installeer. Dan kan u hierdie biblioteek gebruik om u lewe makliker te maak. U kan die koderingsvoorbeelde gebruik om die data soos lengte, breedtegraad, spoed, ens. Van u GPS af te haal.

LCD-skerm

Om die LCD -skerm te laat werk, moet u die biblioteek vanaf Adafruit installeer. Kodering voorbeelde kan hier gevind word.

DS18B20 Een draad temperatuur sensor

Om u eendraadsensor te vind, moet u 'n bietjie meer werk doen. Eerstens moet ons die eendraadbus aktiveer. Om dit te doen, volg die stappe:

  1. sudo raspi-config
  2. Koppelvlakopsies
  3. 1-draad

Om die data van die sensor te begin lees, moet ons weet hoe ons een draad genoem word. Vir hierdie tipe in cd/sys/bus/w1/toestelle/

U sal twee toestelle sien, die een is die Raspberry Pi self en die ander een moet ongeveer 28-0 lyk … ens. Die lang reeks getalle en letters is hoe u data in Python kan lees. Om data in python te lees, moet u dit as 'n lêer oopmaak. Die pad om die lêer oop te maak, moet so lyk:/sys/bus/w1/devices/28-04177032d4ff/w1_slave.

Knoppies en LED's

Dit is basiese funksies; u kan na my kode in hierdie gids kyk.

SQL-stellings

Byna elke stelling is basiese SQL -stellings. Ek wil egter 'n bietjie verduideliking gee oor hoe ek my sensors hul waardes gered het. Ek het my sensors met die hand by my tblsensors gevoeg. Ek het dus geweet watter sensor het watter ID. Ek hou dus tred met lengtegraad, breedtegraad en my spoed. Vir elke waarde het ek 'n ander funksie gemaak. Ek sou net 3 sql stellings maak wat dieselfde is, maar afhangende van watter waarde ek wil stoor, het ek die WHERE -stelling verander.

Aanbeveel: