Hola, estoy trasteando con mi arduino nano v3.0, tengo conectados 3 altavoces de 8ohm en serie al pin 9 y alimentados con 2 baterías de litio 18650.
El código que estoy metiendo en el arduino es el siguiente:
#include "LowPower.h"
#define LED_pin 9
// Track LED state
bool LED_state = false;
// Set frequency and duty cycle of LED
float blinkrate = 200; // In Hz
int dutyCycle = 80; // in percent (%)
// Since time slices are much smaller, use microseconds
int granularity = 100;
float delay_between_check = 1000000.0 / blinkrate / granularity; // 1 sec/rate, divided into 100 segments
int cyclePosition = 0; // out of 100
// Track blinking cycle times of LED
long lastCheckedTime;
void setup() {
pinMode(LED_pin, OUTPUT);
lastCheckedTime = micros();
}
void onda() {
long now = micros();
long tiempo = millis();
if (now - lastCheckedTime > delay_between_check) {
// Only turn LED on if current cycle position is less than the duty cycle
if (cyclePosition < dutyCycle) {
digitalWrite(LED_pin, HIGH);
} else {
digitalWrite(LED_pin, LOW);
}A
// Increment cycle position, zero it out if it's too big
cyclePosition++;
cyclePosition %= granularity;
lastCheckedTime = now;
}
if (millis() >= tiempo+10000) {
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);
delay(1000);
}
}
void generar() {
tone(9,random(40,1000));
delay(random(100,400));
noTone(9);
}
void loop() {
generar();
generar();
generar();
generar();
generar();
LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);
delay(1000);
}
Básicamente genera 5 pulsos diferentes, con frecuencias diferentes en intervalos diferentes.
Pero la cuestión mas bien es con el consumo de dicho arduino (solo el arduino)
Pretendo alimentarlo con las mismas baterías 18650, por medio del PIN Vin y GND de la placa.
El comportamiento extraño viene ahora:
Si conecto solo las baterías, el arduino, consume 60mA en estado activo, y baja a 40mA cuando entra en juego el modo dormido (que ya de por si me parece un disparate, ya que el nano debía consumir 15mA)
Si estando conectado a las baterías, enchufo al PC, y desenchufo, el consumo baja radicalmente, en estado activo a 24mA, y dormido a 9mA.
He probado a usar una powerbank en lugar del PC (manteniendo las dos baterías en el Vin) y no sucede lo mismo, es decir, los mA registrados son los mismos que con solo las baterías (60mA despierto, 40mA dormido) y al desenchufar la powerbank y dejar que el arduino se alimente solo de las baterías, el consumo sigue siendo el mismo. Solo si en lugar de la powerbank pongo el PC; entonces si, al desconectarlo del PC, el consumo baja y consume 25mA o 9mA de las baterías por el pin Vin.
Que estoy haciendo mal? Necesito que el arduino consuma lo minimo posible, y pasar de 40mA dormido a 9mA es crítico.
Un saludo y gracias
Update
Agrego el diagrama, además, la bateria es de 8V porque son 2 18650.