INHOUDSOPGAWE:

Deelbare slimfiets: 12 stappe (met foto's)
Deelbare slimfiets: 12 stappe (met foto's)

Video: Deelbare slimfiets: 12 stappe (met foto's)

Video: Deelbare slimfiets: 12 stappe (met foto's)
Video: BMW M3 2002 TE KOOP VENRAY Tel.: 0642 81 21 12 2024, November
Anonim
Deelbare Smartbike
Deelbare Smartbike
Deelbare Smartbike
Deelbare Smartbike

Elke keer as ek my fiets gebruik, vergeet ek om my ligte aan te skakel as dit donker word. Ook op my fiets weet ek nie hoe vinnig ek gaan nie.

Dus het ek besluit om 'n deelbare slimfiets te maak wat die volgende byhou:

  • Spoed
  • Ligging
  • Hoe lank gebruik jy die fiets

Dit skakel ook die ligte outomaties aan of uit. Ek het 'n RFID -skandeerder gebruik, sodat iemand anders die fiets kan gebruik sonder om my data te verander.

Skakel na my github.

Voorrade

  • Framboos Pi 3 (€ 32, 49)
  • SD -kaart (vir RPi) (€ 13, 99)
  • GPS NEO 6M (vir spoed en ligging) (€ 15, 99)
  • Anker PowerCore 10400mAh (€ 29,99)
  • RFID RC522 (€ 5, 49)
  • 16x2 LCD (€ 9, 99)
  • Elegoo Uno R3 -bord (€ 9, 34)
  • LDR (€ 1, 50)
  • MCP3008 (ADC) (€ 5, 98)
  • 'N Herwinde lig
  • Hout vir die behuising (~ € 15, 00)
  • Kabels (~ € 6, 00)

Totale prys: € 145,76

Stap 1: Maak die kring

Maak die kring
Maak die kring
Maak die kring
Maak die kring

Eerstens moet u alles bymekaarmaak. Ek het 'n fritzing skema ingesluit.

Let wel: Sommige van die komponente, soos die RFID -skandeerder, moet gesoldeer word.

Stap 2: Stel Python op

Stel Python op
Stel Python op

Vir hierdie projek sal ek python 3 gebruik en die kode met 'n python -bediener gebruik. Ek skakel my github met my kode.

Eerstens moet u verbinding maak met u Raspberry Pi via Instellings> Bou, uitskakeling, implementering> implementering. Dan moet u 'n tolk maak met al die pakkette wat benodig word. Op my Raspberry Pi gebruik ek python 3.5.

As u die tolk gemaak het, kan u 'n nuwe projek maak en die tolk kies wat u pas vir die projek gemaak het. Dan moet u kies waar u die lêers op u rekenaar en RPi wil stoor.

Stap 3: Lees die data

Lees die data
Lees die data

Nadat u die stroombaan gemaak het en elke komponent werk, moet u die data van sensors lees. My projek is gemaak met behulp van Python 3. In python lees ek die meeste data van die sensors met behulp van klasse.

  • Die RFID -skandeerder word saam met die arduino gebruik (die meeste inligting oor hoe u dit hier kan gebruik). Ek lees die data van die skandeerder af met die arduino en stuur dit na die RPi met seriële USB.
  • Die GPS -module gebruik ook seriële kommunikasie. Die data wat die GPS na die RPi stuur, is nie so goed geformateer dat ek 'n biblioteek gebruik het om die data te ontleed en dit baie makliker te maak om te gebruik nie. (Meer inligting oor GPS -data).
  • Die analoog waardes van die LDR word omgeskakel met behulp van die mcp3008 ('n adc), dan verander ek die waarde na 'n persentasie.

Let wel: as u 'while loops' in python wil gebruik om voortdurend data te kry terwyl u 'n python -bediener uitvoer. U benodig threading (meer inligting oor threading). Skroefdraad is maklik om te gebruik.

Stap 4: Die databasis (mySQL)

Die databasis (mySQL)
Die databasis (mySQL)

Noudat u u data van die sensors het, benodig u 'n plek om die data te stoor. Ons sal die data in 'n verhoudingsdatabasis in mySQL stoor.

Ek werk die databasis op my RPi om dit te laat werk, ek moet mariaDB op my RPi laat installeer. Nadat u mariaDB geïnstalleer het en dit opgestel het, kan u die mySQL -werkbank op u rekenaar gebruik om met u databasis op die RPi te skakel.

U moet die ERD op die rekenaar maak; stuur die ERD aan en voer die databasis uit. Dan kan u die storting (vergeet nie die skep van skema) op die RPi via mySQL -werkbank invoer nie.

Let wel: die tabel 'Bike_has_User' is nie nodig nie en sal slegs gebruik word as u van plan is om meer as een fiets te gebruik. U kan die tabel 'Bike_has_User' laat val en die tafelgebruiker met 'Datahistory' koppel.

Stap 5: Koppel u Python aan die databasis

Koppel u Python aan die databasis
Koppel u Python aan die databasis

Noudat u u databasis geïnstalleer het, kan u u python aan die databasis koppel. Klik op die databasis (regs op die skerm) en voeg 'n nuwe databron by.

Die databasis en die python -skrip loop op die RPi, dus gebruik die localhost IP. Gebruik die gebruiker wat u voorheen geskep het terwyl u mariaDB opgestel het.

Stap 6: Stuur data na die databasis

Stuur data na die databasis
Stuur data na die databasis

As u alles opgestel het, kan u begin om data na die databasis te stuur. Ek het 'n klas helpers. Database in python hiervoor gebruik (sien my github).

Die foto toon 'n voorbeeldkode.

Stap 7: Gebruik die data

Gebruik die data
Gebruik die data

Met die klas helpers. Database kan u data in die databasis invoeg of data uit die databasis kry.

Noudat alles werk, kan u die data uit die databasis gebruik om dit op 'n webwerf te vertoon of waar u wil.

Stap 8: Die behuising: onderkant

Die behuising: onderkant
Die behuising: onderkant

Oor die behuising

Uiteindelik is die behuising vir hierdie projek gemaak van hout (310x130x110 mm). Die meeste komponente word aan die hout vasgeskroef, behalwe die powerbank en die broodbord.

U kan die behuising kleiner maak as u die komponente soldeer. Ek het nie 'n manier ingesluit om die behuising veilig aan die fiets te koppel nie, maar daar is baie opsies.

Die behuising maak

U moet begin met die onderkant van die behuising. Saag 'n stuk hout (130x310 mm) uit. Maak dan die RPi met 'n skroef vas en plak die broodbord aan die onderkant vas.

Opmerking: u kan 'n identiese deel aan die bokant van die behuising maak

Stap 9: Die behuising: klein sye

Die behuising: klein sye
Die behuising: klein sye

As u die onderste deel voltooi het. U kan begin om die dele van die sye te saag. Begin met die maak van die kleiner kante.

Eerstens moet u die kleiner sye heg. Ek het 'n ekstra stuk hout gebruik om al die dele aanmekaar te koppel, hierdie ekstra stuk maak dit makliker.

Stap 10: Die behuising: groot kante

Die behuising: groot kante
Die behuising: groot kante

Nou moet u die groter kante maak. Weereens die kante gesien en dit met die ekstra stuk hout aan die onderkant vasgemaak.

Stap 11: Voeg 'n gat by vir die LCD en LDR

Voeg 'n gat by vir die LCD en LDR
Voeg 'n gat by vir die LCD en LDR

U moet ook 'n gat vir die LCD maak, sodat u die IP -adres kan sien en kan sien of 'n gebruiker in of uit skandeer.

Gebruik die metings van die LCD om te besluit hoe groot die gat gaan wees.

Nadat u die LCD ingevoeg het, moet u seker maak dat die LDR buite die behuizing is. Ek het 'n klein gaatjie gebruik sodat die LDR daglig kan sien.

Stap 12: Heg die Arduino- en RFID -skandeerder aan die kant

Heg die Arduino- en RFID -skandeerder aan die kant
Heg die Arduino- en RFID -skandeerder aan die kant

Nadat die behuising voltooi is, moet u nog steeds die arduino- en RFID -skandeerder heg. U kan dit aanheg waar u ook al ruimte het. Maar ek beveel aan dat u die RFID -skandeerder onder die LCD aanbring, sodat die gebruiker kan sien of hy in- of uitskandeer.

Aanbeveel: