rcluze 5 anni fa
commit
394b99386b
2 ha cambiato i file con 116 aggiunte e 0 eliminazioni
  1. BIN
      Capteur.xlsx
  2. 116 0
      Soft/Arduino/Arduino.ino

BIN
Capteur.xlsx


+ 116 - 0
Soft/Arduino/Arduino.ino

@@ -0,0 +1,116 @@
+#include <Wire.h>//https://www.arduino.cc/en/reference/wire
+#include <DS3231.h>//https://github.com/NorthernWidget/DS3231
+
+
+int inter1 = ; // inter croissance mere
+int inter2 = ; // inter croissance reste
+int inter3 = ; // inter flo
+int interuptRTC = ; //Entrer interrupte RTC
+int InterruptHydro = ; //Entrer Interrupt Hydro
+
+int Led1 = ; //Relai croissance mere
+int Led2 = ; //Relai croissance reste
+int Led3 = ; //Relai flo
+int Extract = ;//relai Extract
+int Pompe = ; //Relai pompe
+
+bool ExtractOn = True;
+int tmpArrosage = ; //temps d'arrosage
+
+int ON = ;
+int OFF = ;
+int IN = ;
+int OUT = ;
+
+enum Prochain {
+	AlumFlo,
+	AlumCroi,
+	ExtFlo,
+	ExtCroi
+};
+
+enum Prochain pro = AlumFlo;
+
+void fc_InterHydro(){
+	//Voir si rearmer l'interuption
+	SI alarm1 :
+		LED();
+	Si alarm2 :
+		extracteur();
+}
+
+void fc_InterHydro(){
+	writepin(Pompe,ON);
+	sleep(tmpArrosage);
+	writepin(Pompe,OFF);
+	
+}
+
+void extracteur(){
+	//remiseAlarm2 +15min
+	if(ExtractOn)
+		writepin(Extract,OFF);
+	else
+		writepin(Extract,ON);
+	ExtractOn= ~ExtractOn;
+}
+
+void LED(){
+	Switch (pro){
+		case(AlumCroi):
+		pro = AlumFlo;
+		//rearmer l'alarm +2H
+		if(readpin(inter1))
+			writepin(Led1,ON);
+		if(readpin(inter1))
+			writepin(Led2,ON);
+		break;
+		case(AlumFlo):
+		pro = ExtFlo;
+		//rearmer l'alarm +12H
+		if (readpin(inter3))
+			writepin(Led3,ON);
+		break;
+		case(ExtFlo):
+		pro = ExtCroi;
+		//rearmer l'alarm +2H
+		writepin(Led3,OFF);
+		break;
+		case(ExtCroi):
+		pro = AlumCroi;
+		//rearmer l'alarm +8H
+		writepin(Led1,OFF);
+		writepin(Led2,OFF);
+		break;
+	}
+}
+		
+void setup() {
+  DS3231();
+  //init I/O
+  inter1 ; 
+ inter2  ;
+ inter3 ;
+ interuptRTC  ; 
+ InterruptHydro  ; 
+
+ Led1  ; 
+ Led2  ;
+ Led3  ;
+ Extract  ;
+ Pompe  ; 
+
+  /*
+   * Interruption
+   */
+   PCintPort::attachInterrupt(InteruptRTC, fc_InterRTC, FALLING);
+   PCintPort::attachInterrupt(InterruptHydro, fc_InterHydro, FALLING);}
+
+void loop() {
+  
+  
+	  
+
+}
+
+