Bonjour,
Je suis actuellement entrain de réaliser un projet de distributeur de graine pour poule à l'aide d'une vis sans fin.
Mon objectif est de faire tourner celle ci tous les jours à la même heure, pendant un certain temps histoire que la bonne quantité de graine sorte.
Pour ce faire j'utilise un module RTC DS3231.
J'ai fait séparément deux programme, un qui permet d'afficher l'heure et le second qui fait tourner le moteur pas à pas pendant un certains temps.
Mon problème maintenant est que je ne sait pas comment faire en sorte d'effectuer l'action du moteur à l'heure souhaité. Auriez vous une idée de solution pour résoudre mon soucis?
Merci d'avance!
Voici mon programme :
#include <Wire.h>
#include <DS3231.h>
#define dirPin 2
#define stepPin 3
int t;
int CR = A0;
int CRVal = 0;
int NbPoule = 1;
byte Year ;
byte Month ;
byte Date ;
byte DoW ;
byte Hour ;
byte Minute ;
byte Second ;
bool Century = false;
bool h12 ;
bool PM ;
DS3231 Clock;
void setup() {
Serial.begin(9600);
Wire.begin();
}
void readRTC( ) {
Serial.print(Clock.getHour(h12, PM), DEC);
Serial.print(":");
Serial.print(Clock.getMinute(), DEC);
//Serial.print(":");
//Serial.println(Clock.getSecond(), DEC);
delay(1000);
}
void loop() {
readRTC();
t=millis();
if( readRTC == "08:00"){
while ((millis()-t) < 10000){
digitalWrite(stepPin, HIGH);
delayMicroseconds(1000);
digitalWrite(stepPin, LOW);
delayMicroseconds(1000);
}
}
}