arduino in sleep mode met rfid

algemene C code
Berichten: 4
Geregistreerd: 27 Sep 2019, 12:02

arduino in sleep mode met rfid

Berichtdoor Pol » 27 Sep 2019, 19:09

Beste forumleden,

ik ben een project gestart met een rfid rc522 op arduino uno r3 (zie code) deze word gevoed via een batterij ik heb nu namelijk het probleem dat na 24 u de batterij plat is. hoe zou ik arduino kunnen in sleep modus laten gaan en deze wekken met de rfid geregistreerde tags in de sketch, graag uw hulp bij het aanvullen van de code, de code heb ik via een youtube filmpje gevonden

alvast bedankt

grt,
pol.

Code: Alles selecteren

#include <SPI.h>
#include <MFRC522.h>
#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN);
#include <Servo.h> //Servolibrary
 
Servo myservo;  //Servo einbinden


int auf = 0;  //Variablen, die den Zustand speichern
int zu = 1; //Zu Beginn ist "zu" = 1, da das Schloss ja zu ist

void setup()
{
Serial.begin(9600);
SPI.begin();
mfrc522.PCD_Init();
pinMode (2, OUTPUT); //LED PIN
myservo.attach(6);
}

void loop()
{
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}

if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}

long transponder=0;

for (byte i = 0; i < mfrc522.uid.size; i++)
{
transponder=((transponder+mfrc522.uid.uidByte[i])*10);
}

Serial.print("Der Transponder hat den Code:");
Serial.println(transponder);

// Ab hier erfolgt die Erweiterung

if ((transponder==)) {   //Nur bei den beiden registrierten Transpondern
if (zu==1){   //if-Abfrage für Änderung von zu --> auf
mfrc522.PCD_Init();
zu=0;
auf=1;
Serial.print("AUF");
digitalWrite(2, HIGH);                                //LED an
myservo.write(0);                                     //Servo fährt auf Position 0°
delay(2000); transponder=0;
}
delay(100);
}



if ((transponder==)){
if (auf==1){                                          //Änderung von auf --> zu
auf=0;
zu=1;
Serial.print("ZU");
digitalWrite(2, LOW);                                 //LED wieder aus
myservo.write(90);                                    //Servo fährt auf Position 90°
delay(2000);
}
delay(100);
}

}

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: arduino in sleep mode met rfid

Berichtdoor Koepel » 28 Sep 2019, 06:42

De Arduino Uno gebruikt de ATmega328P microcontroller.
Die microcontroller heeft inderdaad een sleep mode. Daarmee kun je een ATmega328P ruim een jaar op drie AA batterijen laten draaien.
https://www.gammon.com.au/power
Een Arduino Uno heeft echter nog meer onderdelen die stroom vragen. Het maakt niet veel uit om dan de ATmega328P in sleep mode te zetten.
Kun je een adapter gebruiken ?

Er zijn Arduino boards en "arduino-compatible" boards met een aansluiting voor een accu en vaak ook een laadcircuit.
https://store.arduino.cc/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data
https://www.adafruit.com/product/2796
https://wiki.wemos.cc/products:d32:d32

Berichten: 4
Geregistreerd: 27 Sep 2019, 12:02

Re: arduino in sleep mode met rfid

Berichtdoor Pol » 28 Sep 2019, 11:47

Beste,

Hartelijke dank voor uw reactie.

Ik kan jammer genoeg geen 220 v adapter gebruiken.

Mvg,
Pol

Berichten: 4
Geregistreerd: 27 Sep 2019, 12:02

Re: arduino in sleep mode met rfid

Berichtdoor Pol » 28 Sep 2019, 18:31

De Arduino Uno gebruikt de ATmega328P microcontroller.
Die microcontroller heeft inderdaad een sleep mode. Daarmee kun je een ATmega328P ruim een jaar op drie AA batterijen laten draaien.
https://www.gammon.com.au/power


Welke pin van de RFID moet ik aansluiten op pin 2 (wekpin) van de arduino ?

Dank bij voorbaat

Mvg,
Pol.

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: arduino in sleep mode met rfid

Berichtdoor Koepel » 28 Sep 2019, 23:36

Hoeveel stroom gebruikt het nu ? en hoeveel denk je te kunnen besparen met de ATmega328P in sleep-mode ?
Als je nu 60mA gebruikt en met de ATmega328P in sleep-mode 45mA, dan is het verschil niet groot.

Dit gaat over de RFID met de IRQ pin naar de Arduino: https://forum.arduino.cc/index.php?topic=271067.0.
Er staat geen goede oplossing.

Deze lijkt de interrupt werkend te hebben: https://github.com/miguelbalboa/rfid/blob/master/examples/MinimalInterrupt/MinimalInterrupt.ino.

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: arduino in sleep mode met rfid

Berichtdoor nicoverduin » 29 Sep 2019, 09:40

Wat voor batterij hangt er nu aan?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 4
Geregistreerd: 27 Sep 2019, 12:02

Re: arduino in sleep mode met rfid

Berichtdoor Pol » 29 Sep 2019, 10:03

Best,

Hartelijke dank voor jullie reacties.

De batterij is een 12 v met capaciteit van 3000 mah
De batterij word geconcentreerd via een module naar 5 v het huidige verbruik is ongeveer 37 mA

Alvast bedankt.

Mvg,
Pol

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: arduino in sleep mode met rfid

Berichtdoor Gij Kieken » 29 Sep 2019, 11:29

Geconcentreerd van 12volt naar 5volt.Bedoel je een lineaire regelaar of step down,dit maakt ernorm veel uit in het verstoken van warmte.

Terug naar C code

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 10 gasten