Meten van Li-ion cel capaciteit met een arduino (3 / 4 stap)

Stap 3: De Code


Het basisidee van de code is in het stroomdiagram.

Voor het berekenen van de spanning van de cel, de stroom van de cel, of de capaciteit van de cel, moet de code lezen vanaf de invoer pin en dan te vermenigvuldigen met een factor. Ik heb niet het gevoel zoals typen die uit elke keer dat ik nodig had om de stroom en de spanning, dus schreef ik functies om te vertellen van de spanning, huidige en weinig q capaciteit. Zoals hun naam al aangeeft, doen de codes dit:

whatisvoltage() geeft als resultaat een double met de waarde van de spanning van de cel. De eenheden zijn volt.

whatiscurrent() retourneert een double met de waarde van het circuit huidige. De eenheden zijn versterkers.

capacityRead() geeft weinig v: huidige tijden het tijdsinterval. De eenheden van capacityRead() zijn amp-uur.

Dus, hoe moet je deze code te laten werken voor uw specifieke circuit bewerken? U mag niet wilt bewerken van iets minder dan de #define spullen aan de top. Ik schreef alle constanten die u voor uw eigen circuit wilt wijzigen in de sectie #define .

#define delta 10 Zet in het aantal seconden dat u het programma wilt laten gebruiken als kleine t
#define weerstand 0.62 Zet in de waarde van uw weerstand, in ohm (de mijne is 0.62 Ohm)
#define endVoltage 2.9 In de minimale spanning detest gewenste uitvoeren neer gezet.
#define voltagePlus A1 Zet in het pin-nummer gebruikt voor punt A
#define shuntMinus A0 Zet in het pin-nummer gebruikt voor punt B
#define poort 12 Zet in het pin-nummer voor waar u de poort of base aangesloten.

BELANGRIJK: punt A en B moet worden aangesloten op een analoge ingang. Als u ze met een digital pin verbonden, zal u kort een hoge huidige lithium ion cel dwars door je arduino circuit. Slechte tijden.

Ik adviseer dat u niet de waarde van endVoltage lager, wijzigt zoals (vanuit mijn onderzoek) is dat ongeveer zo laag als u wilt trekken van een lithium ion cel. Ik heb geconstateerd dat de spanning van de cel neemt af tot 3.8 aan 3.1 in misschien een uur, dan slechts 10 minuten voor het duurt te krijgen van 3.1 naar 2,9. Zo duidelijk is de cel opgevend op dat moment.

Ik adviseer ook delta te blijven ergens tussen 3 en 20 seconden. Het absolute minimum kunt u instellen en de code nog steeds werk goed is 2. Het moet een geheel getal, dus doe geen 2.4 of iets dergelijks.

Voor degenen onder u zich afvragen, ben ik met behulp van een Arduino Uno.

Gerelateerde Artikelen

Hoe te meten van de temperatuur zeer nauwkeurig met een Arduino en een TSYS01 Temperatuur Sensor Board.

Hoe te meten van de temperatuur zeer nauwkeurig met een Arduino en een TSYS01 Temperatuur Sensor Board.

Tijdens zijn studie in de Universiteit werden we uitgedaagd als onderdeel van een cursus werken in het ontwerpen van een doos met zeer nauwkeurige temperatuurregeling. Mocht het project te doen slagen, moesten meerdere vakken worden gebouwd en gebrui
Android App MIT met behulp van de HC06 van de Bluetooth verbinding maken met een Arduino Uno

Android App MIT met behulp van de HC06 van de Bluetooth verbinding maken met een Arduino Uno

Speciale dank aan de volgende onlinebronnen voor getting mij begonnen...Willekeurige Nerd TutorialsForceTronics - youtubeStap 1: materialen:HC-06 Bluetooth-apparaatAndroid telefoon---ik heb een HTC 8, emulators voor iPhones zijn beschikbaar, maar ik
Beheersing van een relais boord met een Arduino Uno

Beheersing van een relais boord met een Arduino Uno

In dit instructable zullen we een Velleman K6714 relais boord met een Arduino beheersen. De schoonheid van het gebruik van Relais is dat we een bescheiden kleine Arduino om over te schakelen van huishoudelijke apparaten of wat u wellicht kunt gebruik
Met behulp van een Dot Matrix LED met een Arduino en Shift Register

Met behulp van een Dot Matrix LED met een Arduino en Shift Register

de Siemens DLO7135 Dot matrix LED is een verbazingwekkend stukje opto-elektronica. Het is gefactureerd als een 5 x 7 Dot Matrix intelligente Display (r) met geheugen/Decoder/Driver. Samen met dat het geheugen, het heeft een 96-ASCII karakterdisplay s
Beheersing van een stappenmotor met een Arduino

Beheersing van een stappenmotor met een Arduino

Dit leerprogramma zal u tonen hoe te bedienen van een stappenmotor die werd gered van een oude printer met een Arduino.Stap 1: Wat is een Stepper Motor? Een stappenmotor bestaat uit twee delen, een rotor en een stator. De rotor is het deel van de mot
Lage hoogte milieubewaking met een Arduino gebaseerd weer Instrument en Remote Sensing Platform van Aeropod

Lage hoogte milieubewaking met een Arduino gebaseerd weer Instrument en Remote Sensing Platform van Aeropod

ProjectoverzichtStudenten op New Lothrop High School in Michigan hebben samengewerkt om te bouwen van een lage hoogte remote sensing platform genaamd een "Aeropod" en het uitgerust met een "Arduino" gebaseerd weer instrument om sfeervo
Beheersing van een MIDI-CC in Ableton Live met een Arduino Uno

Beheersing van een MIDI-CC in Ableton Live met een Arduino Uno

In dit instructable zullen we gebruiken een potentiometer op een Arduino Uno om controle van een MIDI-CC in Ableton Live. Een MIDI CC staat voor continue Controller, dat wil zeggen een getal in het bereik van 0 tot 127 inclusieve te moduleren iets me
Controle van EL draad met een Arduino

Controle van EL draad met een Arduino

In dit instructable ik zal u tonen hoe u kunt besturen van EL draad met een Arduino.Wat u zult moeten:EL Wire en omvormer - adviseer ik http://ez-el.com/ez-el-wire/10ft-ez-el-wire-3v-inverter-kit/Arduino of een micro-controller die een relay kunt bep
Controle van een Camera met een Arduino en RS232 Shield

Controle van een Camera met een Arduino en RS232 Shield

Dit leerprogramma zal u tonen hoe u kunt controleren vele verschillende aspecten van de werking van een camera's met een Arduino. Deze bewerking kan worden de pan en tilt camera, zoom en focus van de lens, en RGB kenmerken. De Arduino zal gebruik mak
Uitvoeren van een stappenmotor met een Arduino

Uitvoeren van een stappenmotor met een Arduino

Hi Guys,Dit artikel over How to Run een Stepper Motor met een Arduino. Deze dagen stappenmotor in vele elektronikaapparaat zoals, Camera autofocus systeem gebruikt, CD-ROM voor lens beweging, 3D-printer en CNCs. de stappenmotor is beschikbaar in vele
Bijhouden van uw auto met een Arduino gebaseerde Lojack

Bijhouden van uw auto met een Arduino gebaseerde Lojack

De autodiefstal van de is een echte slepen! Verhoog uw kansen van het herstellen van uw auto door het installeren van deze eenvoudige Arduino gebaseerde tracker in uw auto.Dit project is vrij eenvoudig, en zou een goed project voor een nieuwe Arduino
Hoe digitaliseren van dia's en negatieven met een DSLR film

Hoe digitaliseren van dia's en negatieven met een DSLR film

Een veelzijdig en stabiele setup voor het digitaliseren van dia's en negatieven met een DSLR of een camera met een macro-optie.Dit instructable is een update over het digitaliseren van 35mm negatieven (geupload juli 2011) met een aantal verbeteringen
Sensorgegevens (DHT11 & BMP180) verzenden ThingSpeak met een Arduino, met behulp van ENC28J60 Ethercard

Sensorgegevens (DHT11 & BMP180) verzenden ThingSpeak met een Arduino, met behulp van ENC28J60 Ethercard

Opmerking: Dit instructable is voor de oude ENC26J60 Ethershield en ethercard. Als u de moderne WIZ5100 op basis van Ethernetshield of een ESP8266 ga bezoek mijn andere instructable dat ik noemen hieronderOngeveer een jaar en een half geleden ik publ
Beheersing van een RC Servo motor met een Arduino en twee pulsschakelaars

Beheersing van een RC Servo motor met een Arduino en twee pulsschakelaars

de naam zegt het al. Beheersing van een RC auto servomotor met een Arduino en sommige weerstanden, jumper draden en twee tactiele schakelaars. Ik maakte dit de tweede dag kreeg ik mijn Arduino, dus ik erg trots op mezelf ben.Stap 1: Onderdelenlijst O