
Sadržaj:
- Supplies
- Korak 1: Napravite krug
- Korak 2: Postavite Python
- Korak 3: Pročitajte podatke
- Korak 4: Baza podataka (mySQL)
- Korak 5: Povežite svoj Python s bazom podataka
- Korak 6: Pošaljite podatke u bazu podataka
- Korak 7: Koristite podatke
- Korak 8: Kućište: Dole
- Korak 9: Kućište: male strane
- Korak 10: Kućište: velike strane
- Korak 11: Dodavanje rupe za LCD i LDR
- Korak 12: Pričvrstite Arduino i RFID skener sa strane
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-23 14:37


Kad god koristim bicikl, zaboravim upaliti svjetla kada padne mrak. Također na svom biciklu nemam načina da znam koliko brzo idem.
Odlučio sam napraviti pametni bicikl za dijeljenje koji prati:
- Brzina
- Location
- Koliko dugo koristite bicikl
Takođe automatski uključuje ili isključuje svetla. Koristio sam RFID skener kako bi netko drugi mogao koristiti bicikl bez mijenjanja mojih podataka.
Link na moj github.
Supplies
- Raspberry Pi 3 (32, 49 €)
- SD kartica (za RPi) (13, 99 €)
- GPS NEO 6M (za brzinu i lokaciju) (15, 99 €)
- Anker PowerCore 10400mAh (29, 99 €)
- RFID RC522 (5, 49 €)
- 16x2 LCD (9, 99 €)
- Elegoo Uno R3 ploča (9, 34 €)
- LDR (1,50 €)
- MCP3008 (ADC) (5, 98 €)
- Reciklirano svetlo
- Drvo za kućište (~ 15,00 €)
- Kablovi (~ 6,00 €)
Ukupna cijena: 145,76 €
Korak 1: Napravite krug


Prvo morate sve sastaviti. Uključio sam šemu fritzinga.
Napomena: Neke komponente poput RFID skenera potrebno je lemiti.
Korak 2: Postavite Python

Za ovaj projekat ću koristiti python 3 i pokretati kôd sa python serverom. Povezaću svoj github sa svojim kodom.
Prvo morate uspostaviti vezu sa svojim Raspberry Pi -om putem Postavke> Izgradnja, Izvlačenje, Razmještanje> Raspoređivanje. Zatim morate napraviti tumača sa svim potrebnim paketima. Na svom Raspberry Pi -u koristim python 3.5.
Kada ste napravili tumača, možete napraviti novi projekt i odabrati tumača koji ste upravo napravili za projekt. Tada ćete morati izabrati gdje želite spremiti datoteke na PC i RPi.
Korak 3: Pročitajte podatke

Nakon što ste napravili sklop i sve komponente rade, morate pročitati podatke sa senzora. Moj projekt je napravljen pomoću Pythona 3. U pythonu sam čitao većinu podataka sa senzora pomoću klasa.
- RFID skener se koristi s arduinom (većina informacija o tome kako ga koristiti ovdje). Očitao sam podatke sa skenera pomoću arduina i poslao ih u RPi putem serijskog USB -a.
- GPS modul također koristi serijsku komunikaciju. Podaci koje GPS šalje RPi -u nisu tako dobro formatirani. Upotrijebio sam biblioteku za raščlanjivanje podataka i znatno olakšavanje korištenja. (Još informacija o GPS podacima).
- Analogne vrijednosti iz LDR -a se pretvaraju pomoću mcp3008 (adc), a zatim pretvaram vrijednost u postotak.
Napomena: Ako želite koristiti "while petlje" u pythonu za stalno dobivanje podataka dok radite na python serveru. Morat ćete koristiti threading (više informacija o threadingu). Nitanje je jednostavno za upotrebu.
Korak 4: Baza podataka (mySQL)

Sada kada imate podatke sa senzora, potrebno vam je neko mjesto za pohranu podataka. Pohranit ćemo podatke u relacijsku bazu podataka u mySQL.
Pokrećem bazu podataka na svom RPi -u da bi ovo funkcioniralo. Trebam imati instaliranu mariaDB na svom RPi -u. Nakon što instalirate mariaDB i postavite ga, možete koristiti mySQL radnu površinu na svom računaru za povezivanje s bazom podataka na RPi -u.
Morat ćete napraviti ERD na računaru; proslijediti ERD i izvesti bazu podataka. Zatim možete uvesti dump (ne zaboravite kreirati shemu) na RPi putem mySQL radne ploče.
Napomena: Tablica 'Bike_has_User' nije potrebna i bit će korištena samo ako planirate koristiti više bicikala. Možete ispustiti tablicu 'Bike_has_User' i povezati tablicu User sa 'Datahistory'.
Korak 5: Povežite svoj Python s bazom podataka

Sada kada imate instaliranu bazu podataka, možete povezati svoj python s bazom podataka. Kliknite na bazu podataka (s desne strane ekrana) i dodajte novi izvor podataka.
Baza podataka i python skripta rade na RPi -ju, pa koristite IP lokalnog hosta. Prilikom postavljanja mariaDB -a koristite korisnika kojeg ste prethodno stvorili.
Korak 6: Pošaljite podatke u bazu podataka

Kada sve postavite, možete početi slati podatke u bazu podataka. Za ovo sam koristio pomoćnike klase. Database u pythonu (pogledajte moj github).
Fotografija prikazuje neki primjer koda.
Korak 7: Koristite podatke

Pomoću klase helpers. Database možete umetnuti podatke u bazu podataka ili dobiti podatke iz baze podataka.
Sada kada sve funkcionira, možete koristiti podatke iz baze podataka da ih prikažete na web stranici ili gdje god želite.
Korak 8: Kućište: Dole

O kućištu
Konačno, kućište za ovaj projekt izrađeno je od drveta (310x130x110 mm). Većina komponenti je pričvršćena vijcima na drvo, osim powerbank -a i matične ploče.
Kućište možete smanjiti ako lemite komponente. Nisam naveo način za sigurno povezivanje kućišta s biciklom, ali postoji mnogo mogućnosti.
Izrada kućišta
Morat ćete početi s izradom donjeg dijela kućišta. Odsekao komad drveta (130x310 mm). Zatim pričvrstite RPi vijkom i zalijepite matičnu ploču na donji dio.
Napomena: Za gornji dio kućišta možete napraviti identičan dio
Korak 9: Kućište: male strane

Kada završite donji dio. Možete početi s rezanjem bočnih dijelova. Počnite s izradom manjih stranica.
Prvo ćete morati pričvrstiti manje stranice. Koristio sam dodatni komad drveta za povezivanje svih dijelova zajedno, ovaj dodatni komad olakšava.
Korak 10: Kućište: velike strane

Sada ćete morati napraviti veće stranice. Još jednom ispipajte stranice i pričvrstite ih na donji dio pomoću dodatnog komada drveta.
Korak 11: Dodavanje rupe za LCD i LDR

Također ćete morati napraviti rupu za LCD kako biste mogli vidjeti IP adresu i prikazati da li korisnik skenira unutra ili van.
Pomoću mjerenja LCD -a odlučite koliko će rupa imati veličinu.
Nakon što umetnete LCD, provjerite je li LDR izvan kućišta. Koristio sam malu rupu tako da LDR može vidjeti dnevnu svjetlost.
Korak 12: Pričvrstite Arduino i RFID skener sa strane

Nakon što je kućište dovršeno, još uvijek morate priključiti arduino i RFID skener. Možete ih pričvrstiti gdje god imate mjesta. Ali preporučujem da pričvrstite RFID skener ispod LCD -a kako bi korisnik mogao vidjeti je li skenirao unutra ili van.
Preporučuje se:
Pretvorite neupotrebljeni pametni telefon u pametni ekran: 6 koraka (sa slikama)

Pretvorite neupotrebljeni pametni telefon u pametni ekran: Vodič za Deze nalazi se na engleskom jeziku, za verziju Nederlandse kliknite ovdje ili kliknite. Imate li (stari) nekorišteni pametni telefon? Pretvorite ga u pametni zaslon pomoću Google tablica i neke olovke i papira slijedeći ovaj jednostavan korak-po-korak vodič. Kad završite
IOT rješenje za dijeljenje bicikla: 6 koraka

IOT rješenje za dijeljenje bicikla: Bicikl za dijeljenje vrlo je popularan u Kini ovih dana. Na tržištu postoji više od 10 marki bicikala za dijeljenje, a “ mobike ” je najpoznatiji, ima više od 100 miliona registriranih korisnika, a proširio se i na druge gradove
IOS aplikacija za dijeljenje fotografija u blizini: 6 koraka

IOS aplikacija za dijeljenje fotografija u blizini: U ovom uputstvu stvorit ćemo iOS aplikaciju sa Swiftom koja vam omogućuje dijeljenje fotografija sa svima u blizini, bez potrebe za uparivanjem uređaja. Koristit ćemo Chirp Connect za slanje podataka putem zvuka, a Firebase za pohranu slika u zatvorenom prostoru
Kreiranje Bookhuddle.com, web stranice za otkrivanje, organiziranje i dijeljenje informacija o knjigama: 10 koraka

Stvaranje Bookhuddle.com, web stranice za otkrivanje, organiziranje i dijeljenje informacija o knjigama: Ovaj post opisuje korake uključene u stvaranje i pokretanje Bookhuddle.com, web stranice čiji je cilj pomoći čitateljima da otkriju, organiziraju i razmjenjuju informacije o knjigama. Ovdje opisani koraci bi se primjenjivalo na razvoj drugih web stranica
Dijeljenje radne površine: 4 koraka

Dijeljenje radne površine: Dijeljenje radne površine je u osnovi kada možete pregledati radnu površinu drugog računara i kontrolirati je putem interneta. Ako ste poput mene i svima je potrebna vaša pomoć, ovaj će program zaista biti vrlo zgodan. Bilo da baki treba pomoć ili ste u