Hjælp til water level sensor code

Det skal du ikke tage så tungt. Nogle finder det sværere end andre, men sådan er det jo med så meget. Jeg har svært at forstå pensionsordninger. Jeg går kold efter 2 minutters studie af "afkastningsgrad".

Nu skriver jeg dit program - ikke noget jeg normalt gør, men nogle gange er det vejen frem for nogle. Så må du tilrette pin nummre og grænseværdier og den slags.

Du skal nok udkommentere RTC, DS1307 delen indtil du får styr på den. Indstille tid på den er en once-in-a-lifetime sag, så skriv et lille seperat program for det.

/*--------------------------------------------------*\
| PumpIt                                             |
| Overvåg vand niveau og tænd tilsvarende ventiler   |
*\--------------------------------------------------*/

#include <Wire.h>     // Tilføj I2C bibliotek
#include <DS1307.h>   // tilføj RTC kode. Denne inklude definerer også RTC variablen

/* =====  Pin defenitioner  ==== */
const int VenstreTankNiveau = A0 ;
const int MellemTankNiveau = A1 ; 
const int Tredje = A4 ;
const int Reserve = A5 ;
// NB: A2, A3 bruges af SDA/SCL, må ikke bruges til sensorer

const int VenstreVentil = 4 ;
const int MellemVentil = 5 ;
const int TredjeVentil = 6 ;
const int ReserveVentil = 7 ;

/* ==== Globale Variabler === */

int Sensor ;  // unødvendigt den er global, men pyt.

// extern DS1307new RTC; // (udført i DS1307.h) 

/*---------*\
|   Setup   |
\*---------*/

void setup() {
  // --- RealTimeClock
  //RTC.startClock();           should be on already
  RTC.ctrl = 0x00; RTC.setCTRL();  // Disable the SqW pulse

  // Output pins
  pinMode(VenstreVentil, OUTPUT) ;
  pinMode(MellemVentil, OUTPUT) ;
  pinMode(TredjeVentil, OUTPUT) ;
  pinMode(ReserveVentil, OUTPUT) ;

  // --- Serial line 
  Serial.begin(9600) ;
  Serial.println("Pumpit, version 1.0") ;
 
}


/*---------*\
|   Loop    |
\*---------*/
void loop() {
  Sensor = analogRead(VenstreTankNiveau) ;
  if ( Sensor < 300 ) digitalWrite(VenstreVentil, HIGH) ; // Tænd når under "lav" niveau
  if ( Sensor > 400 ) digitalWrite(VenstreVentil, LOW) ;  // Sluk hvis over "høj" niveau
  Serial.print("Venstre:");Serial.print(Sensor) ;

  Sensor = analogRead(MellemVentil) ;
  if ( Sensor < 323 ) digitalWrite(MellemVentil, HIGH) ; // Tænd når under "lav" niveau
  if ( Sensor > 388 ) digitalWrite(MellemVentil, LOW) ;  // Sluk hvis over "høj" niveau
  Serial.print(" Mellem:");Serial.print(Sensor) ;

  Sensor = analogRead(TredjeVentil) ;
  if ( Sensor < 77  ) digitalWrite(TredjeVentil, HIGH) ; // Tænd når under "lav" niveau
  if ( Sensor > 520 ) digitalWrite(TredjeVentil, LOW) ;  // Sluk hvis over "høj" niveau
  Serial.print(" Tredje:");Serial.print(Sensor) ;

//  Sensor = analogRead(VReserveVentil) ;
//  if ( Sensor < 300 ) digitalWrite(ReserveVentil, HIGH) ; // Tænd når under "lav" niveau
//  if ( Sensor > 400 ) digitalWrite(ReserveVentil, LOW) ;  // Sluk hvis over "høj" niveau
//  Serial.print("Reserve:");Serial.println(Sensor) ;

  Serial.println() ;
  delay(2000) ;   // Stå stille, gør intet, mens 2 sekunder går sin vej.
}

Ingen garantier, jeg er også almindelig dødelig og laver fejl, jeg har kun testet at det kompilerer.