Sadržaj:

Kontrolna ploča za električni bicikl (EBike) i monitor baterije: 12 koraka (sa slikama)
Kontrolna ploča za električni bicikl (EBike) i monitor baterije: 12 koraka (sa slikama)

Video: Kontrolna ploča za električni bicikl (EBike) i monitor baterije: 12 koraka (sa slikama)

Video: Kontrolna ploča za električni bicikl (EBike) i monitor baterije: 12 koraka (sa slikama)
Video: VOZIO SAM ELEKTRIČNI BICIKL | E-Prime Effecto 2020 2024, Juli
Anonim
Kontrolna ploča za električni bicikl (EBike) i monitor baterije
Kontrolna ploča za električni bicikl (EBike) i monitor baterije

Ovaj projekt je Arduino kolo koje prati napon i struju baterije pomoću ACS 712 modula. Mjerenja se komuniciraju putem Bluetooth-a sa HC-05 modulom na Android uređaj. U osnovi, povežite negativnu vezu između vašeg kontrolera i baterije kako biste prošli kroz modul ACS712.

Android aplikacija prikazuje status baterije, kao i trenutnu brzinu i udaljenost od Android GPS -a

Android se može montirati na bicikl u vrećici otpornoj na vremenske uvjete. Arduino kolo je trajno montirano u kutiju otpornu na vremenske uvjete na biciklu u blizini baterije.

Kod za Android i Arduino dostupan je na githubu. (https://github.com/edj2001/BikeDashArduino i

github.com/edj2001/BikeDashAndroid. Trebat će vam i biblioteke https://github.com/edj2001/AndroidBluetoothLibrar… i

Dostupne su komercijalne verzije sličnih proizvoda ako je to više nego što biste mogli podnijeti. Lako ih možete pronaći guglanjem "bluetooth 36v watt metar". Ako pogledate neke od slika, na poleđini ćete vidjeti Arduino Pro Mini, DC-DC napajanje i HC-05 (ili -06) modul.

Ako se ikada zapitate koliko vam je baterije preostalo, ili koliko još možete ići na bateriju, ili trebate pedalirati ili smanjiti gas da biste stigli tamo gdje idete, ovo vam treba.

Još jedna potencijalna prednost je to što ćete možda odlučiti ukloniti računalo za bicikl s upravljača, čime ćete osloboditi dio prostora, iako će sada vaš telefon biti postavljen na vaš bicikl.

Kao i uvijek, ove informacije se pružaju takve kakve jesu, bez bilo kakvih jamstava, izričitih ili implicitnih. Vi ste odgovorni za sve što radite s ovim podacima. Neću biti odgovoran ni na koji način za bilo kakvu štetu. Pogledajte odjeljak o odricanju odgovornosti u Uslovima usluge.

Korak 1: Ažuriranja po uputama

PeterB476 mi je pokazao da sam zanemario uključivanje koraka za inicijalizaciju Arduino EPROM -a, pa sam to dodao instrukcijama.

Kasnijem koraku dodao sam i 2 nove verzije aplikacije. Nisu temeljito ispitani, ali možete ih isprobati.

Korak 2: Instalirajte Android aplikaciju

Nema smisla nastaviti s ostatkom ovog projekta ako Android aplikacija ne radi na vašem uređaju. Izdanja iz githuba imaju priključen android apk. Apk datoteka je također priložena ovdje. Provjerite radi li barem GPS dio aplikacije i pokušajte se povezati s Bluetooth uređajem.

Ako želite sami izraditi aplikaciju, predlažem da počnete s točkom "izdanja" jer je u nekom trenutku vjerojatno radila, dok najnovija "glavna" grana može imati nadogradnje koje nisu testirane.

Kopirajte apk datoteku na svoj uređaj. Morat ćete dopustiti "Nepoznati izvori" u sigurnosnim postavkama na svom uređaju jer apk nije došao s Google Playa. Zatim jednostavno dodirnite apk datoteku na svom uređaju da biste je instalirali.

Očigledno je da aplikacija zahtijeva Bluetooth dozvole za komunikaciju s Arduinom, te GPS dozvole za određivanje vaše brzine i prijeđene udaljenosti.

Pritisnite dugme "daljinski" da se pokušate povezati s Bluetooth uređajem. Pritisnite "reset" za resetiranje prijeđene udaljenosti na 0. Držite bateriju Ah korišteno polje za poništavanje nakon što napunite bateriju. Korištena vrijednost Ah bit će spremljena ako isključite i uključite bateriju bez punjenja.

Korak 3: Prikupite dijelove

Sakupite delove
Sakupite delove
Sakupite delove
Sakupite delove
Sakupite delove
Sakupite delove

Imajte na umu da su ovi dijelovi namijenjeni bateriji od 36 V. Ako imate bateriju od 48 V, morat ćete promijeniti 10K otpornik na 11K ili 12 K, a trebat će vam i drugi DC-DC pretvarač.

1 Kućište otporno na vremenske uvjete. Koristio sam PVC električnu kutiju dimenzija 4x4x2 inča.

1 komad vaše omiljene Stripboard ili Protoboard ploče

1 Arduino Pro Mini, 5V 16 MHZ. Također biste mogli lako napraviti arduino bez bara jer vam ne treba regulator napona ili USB sučelje. Sve što vam treba je ATMEGA328P, kristal od 16 MHz i nekoliko kondenzatora. Također možete koristiti Arduino Nano ako imate mjesta u svom ormaru. Nano je veći od prva dva izbora, ali ima ugrađeno USB sučelje ako nemate serijski pretvarač.

1 modul ACS712 koji odgovara trenutnom rasponu vaše baterije. Koristio sam 20A modul za svoju 8A bateriju.

1 HC-05 bluetooth modul. Sviđa mi se sorta ZS-040, vrsta 6 pinova sa tipkom. Na poleđini će imati oznaku ZS-040.

1 50V do 5V DC-DC napajanje ako vaš bicikl ima bateriju od 36V, koja će biti oko 42V potpuno napunjena. Ako imate bateriju od 48 V, bit će potpuno napunjena 56 ili 57 V, pa će vam možda trebati drugo napajanje. Javite nam šta koristite ako pronađete nešto za 60V. Neki ljudi kažu da većina USB zidnih bradavica radi na 48VDC (i više), ali ja to nisam probao.

1/4W otpornici: 1 x 2K, 1 x 10K, 2 x 1K (povećajte 10K ako je vaša baterija veća od 36V).

Ugrađeni držač osigurača i osigurač od 2A.

trake zaglavlja ravne i prave kuteve

Stezni blokovi 5,08 mm, 2 x 2

16AWG žica za međusobno povezivanje modula.

Puna žica 22AWG za arduino kolo

Terminal Block Strip za spajanje baterije i bicikla

Lemilica

lemljenje

Način montiranja Android uređaja na bicikl.

Za programiranje Arduino i HC-05 modula trebat će vam i 3.3V usb to ttl serijski pretvarač (ili barem isp programer) i Arduino ide sa https://www.arduino.cc/en/Main/Software. Ovaj projekt je urađen s verzijom 1.6.13, različite verzije mogu, ali i ne moraju raditi bez izmjena.

Korak 4: Inicijalizirajte Arduino EPROM

Zanemario sam uključiti ovaj korak u izvorne upute. Područje EPROM -a koje koristi skica mora biti inicijalizirano kako bi skica radila ispravno. Skica bi se mogla napisati da se to uradi automatski, ali u ovom trenutku to ne čini.

Ako ne radite s arduino izvornim kodom, možete preuzeti heksadecimalnu datoteku priloženu ovom koraku na svoj arduino kako biste inicijalizirali EPROM.

Ako radite s arduino izvornim kodom, postoje dvije linije u odjeljku setup () koje izgledaju ovako:

// inicijalizira EEPROM pri prvom pokretanju programa.

// updateEPROM ();

Ako uklonite komentar iz drugog retka tako da izgleda ovako:

// inicijalizira EEPROM pri prvom pokretanju programa.

updateEPROM ();

Preuzmite tu skicu na arduino i pustite je da radi. EPROM će biti inicijaliziran. Zatim preporučite red za sljedeći korak.

EPROM se koristi za pamćenje koliko je baterije potrošeno kako biste mogli voziti bicikl, zaustaviti se i isključiti bateriju, a kad je ponovo uključite, počet će od mjesta na kojem ste stali.

Korak 5: Konfigurirajte Arduino

Preuzmite Arduino kôd (priložena heksadecimalna datoteka) na Pro Mini koristeći ili Arduino IDE ili avrdude. Obično biste za to koristili konverter usb u serijski, ali mogli biste koristiti i isp programer.

Opet, ako ga želite sami sastaviti, počnite s "izdanjem". Najnovija "glavna" grana može imati neprovjerene promjene.

Ako ste 10K otpornik promijenili na nešto veće, morat ćete promijeniti i konstantu razdjelnika napona baterije na skici. Promijenite 11.0 u retku "dvostruki VBmultiplier = 11.0;" da odgovara svemu što ste instalirali.

Korak 6: Konfigurirajte HC-05 modul

Konfigurirajte HC-05 modul
Konfigurirajte HC-05 modul
Konfigurirajte HC-05 modul
Konfigurirajte HC-05 modul

Morate konfigurirati brzinu prijenosa na modulu HC-05. Takođe je lijepo dati mu ime koje ćete kasnije lako prepoznati (poput "BIKE").

Za to koristite i modul serijskog pretvarača usb to ttl. Ako nemate serijski pretvarač, mogli biste napisati skicu za arduino kako biste ga konfigurirali, ili pretpostavljam da ako imate 2 HC-05 modula mogli biste ih spojiti i koristiti jedan za programiranje drugog (možda).

O ovom modulu postoji izvrsno zapisivanje na

Morate konfigurirati brzinu prijenosa na 4800 kako bi odgovarala Arduino skici i promijeniti naziv u "BIKE" ili nešto što ćete prepoznati.

Nakon što je modul konfiguriran, možete ga upariti sa svojim Android uređajem u postavkama Bluetootha.

Korak 7: Sastavite krug

Priložio sam skeniranje mog ručno nacrtanog dijagrama ožičenja za referencu, ako je neko dovoljno ambiciozan da ga lijepo iscrta, neka mi se javi:)

Uspostavite sljedeće veze:

(+) Baterija za bicikl na jednoj strani osigurača i upravljača bicikla.

Druga strana osigurača na istosmjerni pretvarač (+) IN priključak i 10K otpornik za ulaz napona baterije na Arduinu.

(-) Biciklističku bateriju na (-) IN na pretvaraču i jedan priključak za napajanje ACS712.

U ovom trenutku provjerite imate li 5 V iz DC pretvarača kada uključite bateriju ako već niste.

Ponovo isključite bateriju i dovršite veze:

(+) IZLAZ iz pretvarača Arduino 5V, HC05 VCC, ACS712 VCC.

(-) IZLAZ iz pretvarača u Arduino GND, HC05 GND, ACS712 GND, Arduino pin A2.

HC05 TXD na Arduino pin 7

HC05 RXD sa bluetooth otpornika.

Arduino pin 8 na Bluetooth otpornički razdjelnik.

ACS712 OUT na Arduino pin A3

Razdjelnik napona baterije na Arduino pin A1

(-) od upravljača bicikla do drugog priključka za napajanje na ACS712.

Dodatno dugme za resetiranje zapravo nije potrebno, moglo bi biti zgodno kada želite preuzeti na arduino nakon što ga instalirate na bicikl. Možda ćete moći doći do gumba za resetiranje na arduinu ili ga možete poništiti sa serijskog sučelja ako ga vaš pro mini podržava.

Dvaput provjerite svoje veze.

Korak 8: Preliminarna verifikacija

U ovom trenutku možete uključiti krug i provjeriti dobivate li očitanja u Android aplikaciji.

Trebali biste biti u mogućnosti spojiti bluetooth na bicikl i vidjeti napon baterije i nadam se blizu nule struje baterije. Ako možete okrenuti bicikl i vidjeti trenutnu promjenu očitanja, onda sve radi.

Aplikacija pretpostavlja da pozitivna struja prazni bateriju, pa ako očitanje pokazuje negativnu struju pri okretanju bicikla, zamijenite dvije žice struje na modulu ACS712.

Ako ne vidite nikakva očitanja u aplikaciji, možete pogledati svjetla na bluetooth modulu kako biste bili sigurni da je spojen i prenosi podatke. Možete instalirati aplikaciju bluetooth terminala na svoj uređaj da vidite podatke koji se šalju iz kruga. Trebali biste vidjeti otprilike 10 redaka u sekundi trenutnih očitanja i jednu liniju u sekundi napona baterije i količinu baterije koja se koristi. Ako ništa ne vidite, ponovno provjerite konfiguraciju HC05 modula i veze između arduina, razdjelnika otpornika i priključka HC05 TXD.

Na kraju, trčite bicikl dovoljno dugo da se na zaslonu potrošene baterije prikaže vrijednost koja nije nulta. Zatim dugo pritisnite taj broj dok se zdravica ne pokaže da je upotreba resetirana. Broj bi se trebao vratiti na nulu. Ako ne uspije nakon nekoliko pokušaja, provjerite veze s HC05 RXD terminala na Arduino.

Korak 9: Završna montaža

Završna skupština
Završna skupština
Završna skupština
Završna skupština
Završna skupština
Završna skupština
Završna skupština
Završna skupština

Instalirajte sav montažni hardver i montirajte arduino kolo na svoj bicikl. Stavite svoj Android uređaj u torbu ili drugi držač i spremni ste za pokret!

Slike pokazuju ubode baterije na mom biciklu i torbu za moj Android uređaj.

Možete vidjeti malu ploču za priključke razdjelnika napona akumulatora i ACS712 montiranu tako da mogu doći do vijaka priključne ploče nakon što sam sve montirao. Bluetooth-modul HC-05 se nalazi u desnom kutu.

Bijela priključna traka ima sve veze baterije i kontrolera bicikla sa strujnim krugom.

Da moram to ponoviti, definitivno bih spojio razdjelnik napona baterije i ACS712 na istom komadu pomoćne ploče. Možda bih također pokušao montirati bluetooth modul na pomoćnu ploču ispod arduina.

Korak 10: Koraci u budućnosti

Android aplikaciji moglo bi biti potrebno mnogo posla. Želim dodati neke promjene boje na osnovu raspona za mjerenja. Također bih želio dodati naznaku da se mjerenje ne ažurira u aplikaciji. Možete dodati i neke grafičke mjerače. Čak bi i lijepa ikona bila veliko poboljšanje.

Najbolja značajka bila bi "procjena pražnjenja" koja bi vam rekla udaljenost koju možete prijeći s preostalom baterijom i je li to više od udaljenosti do vašeg odredišta. Budući da se obično vozim ili na posao ili do kuće, razmišljam o tome da u aplikaciji budu pohranjene GPS "međutočke" koje imaju preostalu udaljenost do kuće i koliko se baterije u prosjeku troši na toj putnoj točki. Vjerojatno biste mogli učiniti i nešto s podatkovnom vezom, ali ja je obično nemam.

Htio bih se odmaknuti od bluetooth biblioteke u ovoj aplikaciji do razvijenije biblioteke koja ima automatsko ponovno povezivanje, na primjer.

Ako ovo izgradite, možete razmisliti o dodavanju hardverskog niskopropusnog filtera na izmjerenu struju i njegovom zasebnom mjerenju za korištenje pri izračunu ukupne potrošnje naboja. Pri malim opterećenjima, manje od 4A ili tako, mjerenje se uvelike razlikuje, +/- 1A. Nisam siguran radi li se samo o mjernom problemu ili se struja mijenja toliko koliko se kotač okreće. U svakom slučaju, zasebno mjerenje prosječne struje u sekundi ili dvije moglo bi pomoći u preciznosti. Mogli ste samo brže uzorkovati struju i to učiniti u softveru, ali ne znam koliko biste brzo trebali uzorkovati. Pretpostavljam da bi stavljanje osciloskopa na signal moglo pomoći da se utvrdi koliko brzo ga je potrebno uzorkovati.

Možete dodati stvari poput pitotove cijevi za mjerenje brzine vjetra (već postoji uputstvo za to).

Mogli biste dodati kontrolu gasa zatvorene petlje iz arduina.

Ako ste oduvijek željeli USB izvor napajanja na svom biciklu, lako možete provesti kabel od 5V DC pretvarača za arduino do bilo kojeg mjesta gdje vam je potrebna USB veza za napajanje.

Korak 11: Pitanja i komentari

Ako imate općenita pitanja o bilo kojoj od stavki ovdje, najbolje je da ih proguglate umjesto da postavljate pitanja ovdje. Nijedna stavka nije kritična, gotovo sigurno možete zamijeniti nešto drugo i obaviti posao.

Ne traži od mene da ti pošaljem kôd, sve je na githubu. Nabavite ga odatle. Ne treba vam čak ni github račun.

Ne pitajte me kako to učiniti u Android studiju ili na Arduinu. Vjerovatno ne znam. Opet, samo guglajte.

Zaista me ne pitajte o Apple proizvodima, nemam pojma.

Žao mi je, ako aplikacija ne radi na vašem uređaju. Ali vjerovatno ne znam kako to popraviti da bi se to dogodilo. Radi na mom telefonu, to je sve što mi treba.

Iako su prijedlozi za poboljšanja dobrodošli, vjerovatno ih nikada neću implementirati, moram preći na druge stvari. Vjerovatno nikada neću ni primijeniti vlastite prijedloge. Najbolje je da forkirate kôd na githubu i sami dodate stvari. Ako to učinite, obavijestite ljude ovdje kako bi mogli koristiti vaš kôd umjesto mog.

Ako ste već sami izgradili bolju verziju, ovdje postavite referencu na nju kako bi drugi znali za nju. Neću se uvrijediti. Rado ću uzeti vašu verziju i početi je koristiti.

Korak 12: Ažuriranje aplikacije za testiranje

Ovo su ažurirane verzije aplikacije.

Brojevi su mnogo veći. Postoji nova ikona. Više ne postoji dugme za povezivanje. Koristite opciju "poveži - zaštićeno" iz izbornika u gornjem desnom kutu.

Ova verzija bi se također trebala vratiti na Android verziju 2.3 medenjaka. Radi na mom LG P500 Optimus One.

Verzija "app-settings-debug.apk" ima izbornik postavki koji omogućuje postavljanje kapaciteta baterije tako da preostali postotak izračunavanja bude točan. Nije u potpunosti testirano.

Preporučuje se: