DIY Bike Generator (8 / 13 steg)
Steg 8: Hacka laddningsregulator
Hacka laddaren: Vi tog isär laddaren genom att skruva loss sidorna och poppar bort locket. Vi fann att det fanns en tråd band ansluta 4 knapparna på kretskortet. Det fanns 5 kablar på menyfliksområdet tråd, så vi tänkte att det kan finnas en "referens" tråd och de andra fyra ledningarna gick till knapparna. Ansluta "referens" kabeln till någon av de andra fyra knapp kablarna var motsvarar trycka på en knapp. Vi tog en multimeter och testade vår teori, och det var giltig. För att trycka på en knapp, bör vi ansluta en av kablarna med "referens" tråd. Nästa, vi lagt sladdar till var och en av de fem terminaler där band kabeln för att ansluta till. Trådarna var ledde utanför laddningsregulator genom att borra ett hål genom den side panelen och dra dem. Dessa ledningar leda till våra arduino shield, som gör det möjligt att trycka på knappar och kontroll startknappen självständigt med ett relä.
Externa knapparna: Vi använde 4 knappar på vår sköld för att återskapa knapparna på handkontrollen i testsyfte och i fall vi ville ändra inställningar på laddningsregulator.
Användning av ett relä: Vi brukade en OMROM G5V-1 relä "Tryck på" start-knappen genom att använda vårt arduino. Bilden ovan visar hur vi ansluten varje relä stift. Digital utgång pin från arduino som är kopplad till reläet kommer att signalera att trycka på knappen när den är inställd på hög. Två andra stift på reläet ansluta till start knappen tråd och "referens" tråd, att slutföra anslutningen. Vi hade att ansluta en andra relä stift till marken. För försiktighetsåtgärd, sätter vi en diod över signal och marken för våra relay eftersom vi inte vill nuvarande flyter in i vårt arduino när den digitala utgång pin slås till låg (start-knappen är avstängd). Arduinoen har nu möjlighet att trycka på startknappen självständigt.
Programmering i början: Även om vi vet hur att få arduino att trycka på start, vet vi inte när man ska berätta det för att göra det ännu. Vi skulle vilja att trycka på start i några sekunder efter att användaren har trampa i tio sekunder. Hur vet vi att en användare trampa? Vi vill våra arduino att läsa DC-spänning av vår motor som kommer att vara närvarande när en person är cykling. Men vår spänning är mer än 5V, så våra arduino inte kan läsa den direkt eftersom det har en gräns på 5V. Vi använde denna artikel att skapa en lämplig spänningsavdelare för att ha arduino läser motor spänning.
En enkel skiss av denna spänningsavdelare är på bilden ovan. Jag kommer att inkludera alla arduino-koden i ett steg. Vi använde en 3.9K och 1K resister för att skala ner spänningen gå in på arduino med en faktor 5. Vi har ändå för att trampa hårt nog för att få motorn att gå över 17â, så vi ska vara säkra. Vanligtvis vi matar mindre än 15V från vår motor. Spänningsavdelaren går in en analog ingång i arduino som låter arduino beräkna motor spänningen.
Psudo kod:
void loop() {
While(!Started) {
startCharger();
}
void startCharger() {
om (motorVoltage > 12 & & hasBeenOnForLong) {
digitalWrite (relayOut, hög); som verkligen är likvärdigt med att trycka på Start
började = sant;
}
annars om (motorVoltage > 12) {
säga har det varit på längre
}
annat {
Återställ hasBeenOnForLong till början
}
}