Attiny85 planta de agua con mini bomba de agua

0

Soy nuevo en ingeniería eléctrica, por lo que probablemente sea un problema de novato.

Estoy usando una fuente de alimentación de pared (5V-2A) para alimentar el DC Motor y el Attiny85.

A C1 470uF para hacer que la potencia sea más estable. No sé si es necesario, pero ayudó.

Un led verde D1 para mostrar si está encendido.

Un botón de reinicio conectado a tierra para reiniciar (Duh).

Un relé (833H-1C-C) conectado al pin digital 0 del indicador para encender y apagar el motor.

Dos potenciómetros giratorios conectados a dos clavijas analógicas (2,3) para decidir cuánto tiempo estará encendida la mini bomba de agua (0-1023 a 1s-30s) y la otra para compararla con el sensor de humedad para decidir qué tan seco está el suelo deberá estar encendido para encender el motor.

Y un sensor de humedad .

#include "kPot.h" // my library, just analogReads

#define HUMIDITY_PIN 1 //humidity sensor
#define LEVEL_PIN 3 //rotational potentiometer
#define TIMER_PIN 2 //rotational potentiometer
#define MOTOR_PIN 0 //connected to the relay switch

kPot humiditySensor = kPot(HUMIDITY_PIN, 10); //(pin, average of 10 reads)
kPot levelPot = kPot(LEVEL_PIN, 10);
kPot timerPot = kPot(TIMER_PIN, 10);

int humidity = 0;
int level = 0;
int timer = 0;

void setup() {
  pinMode(MOTOR_PIN, HIGH);  

  humidity = humiditySensor.Read();
  level = levelPot.Read();
  timer = timerPot.Read();
}

void loop() {
  humidity = humiditySensor.Read();
  level = levelPot.Read();

  timer = timerPot.Read();
  timer = map(timer, 0, 1023, 1000, 30000); //1s to 30s


  if(humidity < level){
    digitalWrite(MOTOR_PIN, HIGH);
    delay(timer);
    digitalWrite(MOTOR_PIN, LOW);
  }

  delay(300000); // 5min Update
}

El problema: la mini bomba de agua se enciende y no se detiene.
Quité el botón de reinicio para asegurarme de que no se estaba reiniciando, no ayudé.
Tal vez el motor está tomando demasiada corriente y reiniciando el attiny?
Probablemente tengo que poner un diodo en alguna parte, pero como dije, soy un novato, así que ...

gracias.

    
pregunta Kaique Gomes

1 respuesta

0

Ok, no estoy seguro de que esto solucione todo, pero al menos debería mejorar varios problemas (y evitar algunos daños en los componentes).

Intente agregar 2 diodos, un transistor y un condensador de desacoplamiento a su circuito como este:


EDITAR: Esquema actualizado para incluir el límite de desacoplamiento.

    
respondido por el Robherc KV5ROB

Lea otras preguntas en las etiquetas