Citazione[quote="gaetanodecorato89, post:1, topic:877636, full:true"]
Citazione
Mi chiamo gaetano è domani ho l'esame di stato per diplomarmi in elettronica ed elettrotecnica, vi sto scrivendo questo codice perchè come progetto da portare all'esame mi è stato assegnato un " SISTEMA DI DISINFESTAZIONE AUTOMATICO PER UNA PALESTRA CON 3 STANZE".
P:S: Non sono molto sciolto in queste di codici e quant'altroTesto preformattato
questo codice mi dice di ridefinire i pin e non mi legge le funzioni dell'rtc
Vi allego il codice:
//dichiarazione librerie utilizzate
#include <SoftwareSerial.h>
#include <RTClib.h>
#include <Servo.h>
#include <LiquidCrystal_I2C.h>
#include <TinyWireM.h>
#include <USI_TWI_Master.h>
//inizializzazione servo, rtc, LCD
RTC_DS3231 rtc;
Servo spruzzino;
Servo spruzzino2;
Servo spruzzino3;
Servo spruzzino4;
Servo spruzzino5;
Servo spruzzino6;
LiquidCrystal_I2C lcd(0x3,20,4);
//variabili per definire i pin
int led = 13; //il PIN a cui conneso il led
int pirPin = 10; //il PIN di Arduino a cui è collegato il sensore
int pirPin = 11; //il PIN di Arduino a cui è collegato il sensore
int pirPin = 12; //il PIN di Arduino a cui è collegato il sensore
//variabili definizione stati logici
int pirStatus = 0;
int posizione = 0;
//variabili definizione cicli while
int spruzzi = 0;
DateTime orario;
void setup() {
//inizializzazione comunicazioni
rtc.begin();
spruzzino.attach(6);
spruzzino2.attach(5);
spruzzino3.attach(4);
spruzzino4.attach(3);
spruzzino5.attach(2);
spruzzino6.attach(7);
lcd.init();
lcd.init();
Serial.begin(9600);
//definizione tipi sensori
pinMode(pir, INPUT);
pinMode(pir,INPUT);
pinMode(pir,INPUT);
pinMode(led, OUTPUT);
}
void loop() {
orario = rtc.now();
(orario.hour() > = 21 && orario.hour() < = 22 ) {
digitalWrite(led, HIGH);
lcd.backlight();
lcd.clear();
lcd.setCursor(3,1);
lcd.print("Disinfestazione");
lcd.setCursor(4,2);
lcd.print("in corso ...");
}
while (spruzzi < 4) {
Wire PirStatus=digitalRead(pir);
Serial.println(pirStatus);
lcd.backlight();
lcd.clear();
lcd.setCursor(3,1);
lcd.print("Disinfestazione");
lcd.setCursor(4,2);
lcd.print("in corso ...");
digitalWrite(led,HIGH);
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino2.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino2.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino3.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino3.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino4.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino4.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino5.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino5.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino6.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino6.write(posizione);
delay(15);
}
spruzzi++;
}
lcd.backlight();
lcd.clear();
lcd.setCursor(3,1);
lcd.print("Disinfestazione");
lcd.setCursor(6,2);
lcd.print("Eseguita");
digitalWrite(led, LOW);
delay(10000);
}
(orario.hour() >= 8 && orario.hour() <= 20) {
lcd.backlight();
lcd.clear();
lcd.setCursor(6,1);
lcd.print("Palestra");
lcd.setCursor(7,2);
lcd.print("Aperta");
delay(10000);
}testo in grassetto
[/quote]
Mi chiamo gaetano è domani ho l'esame di stato per diplomarmi in elettronica ed elettrotecnica, vi sto scrivendo questo codice perchè come progetto da portare all'esame mi è stato assegnato un " SISTEMA DI DISINFESTAZIONE AUTOMATICO PER UNA PALESTRA CON 3 STANZE".
P:S: Non sono molto sciolto in queste di codici e quant'altroTesto preformattato
questo codice mi dice di ridefinire i pin e non mi legge le funzioni dell'rtc
Vi allego il codice:
//dichiarazione librerie utilizzate
#include <SoftwareSerial.h>
#include <RTClib.h>
#include <Servo.h>
#include <LiquidCrystal_I2C.h>
#include <TinyWireM.h>
#include <USI_TWI_Master.h>
//inizializzazione servo, rtc, LCD
RTC_DS3231 rtc;
Servo spruzzino;
Servo spruzzino2;
Servo spruzzino3;
Servo spruzzino4;
Servo spruzzino5;
Servo spruzzino6;
LiquidCrystal_I2C lcd(0x3,20,4);
//variabili per definire i pin
int led = 13; //il PIN a cui conneso il led
int pirPin = 10; //il PIN di Arduino a cui è collegato il sensore
int pirPin = 11; //il PIN di Arduino a cui è collegato il sensore
int pirPin = 12; //il PIN di Arduino a cui è collegato il sensore
//variabili definizione stati logici
int pirStatus = 0;
int posizione = 0;
//variabili definizione cicli while
int spruzzi = 0;
DateTime orario;
void setup() {
//inizializzazione comunicazioni
rtc.begin();
spruzzino.attach(6);
spruzzino2.attach(5);
spruzzino3.attach(4);
spruzzino4.attach(3);
spruzzino5.attach(2);
spruzzino6.attach(7);
lcd.init();
lcd.init();
Serial.begin(9600);
//definizione tipi sensori
pinMode(pir, INPUT);
pinMode(pir,INPUT);
pinMode(pir,INPUT);
pinMode(led, OUTPUT);
}
void loop() {
orario = rtc.now();
(orario.hour() > = 21 && orario.hour() < = 22 ) {
digitalWrite(led, HIGH);
lcd.backlight();
lcd.clear();
lcd.setCursor(3,1);
lcd.print("Disinfestazione");
lcd.setCursor(4,2);
lcd.print("in corso ...");
}
while (spruzzi < 4) {
Wire PirStatus=digitalRead(pir);
Serial.println(pirStatus);
lcd.backlight();
lcd.clear();
lcd.setCursor(3,1);
lcd.print("Disinfestazione");
lcd.setCursor(4,2);
lcd.print("in corso ...");
digitalWrite(led,HIGH);
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino2.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino2.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino3.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino3.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino4.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino4.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino5.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino5.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 0; posizione <= 90; posizione += 1) {
spruzzino6.write(posizione);
delay(15);
}
if (pirStatus==HIGH) break;
for (posizione = 90; posizione >= 0; posizione -= 1) {
spruzzino6.write(posizione);
delay(15);
}
spruzzi++;
}
lcd.backlight();
lcd.clear();
lcd.setCursor(3,1);
lcd.print("Disinfestazione");
lcd.setCursor(6,2);
lcd.print("Eseguita");
digitalWrite(led, LOW);
delay(10000);
}
(orario.hour() >= 8 && orario.hour() <= 20) {
lcd.backlight();
lcd.clear();
lcd.setCursor(6,1);
lcd.print("Palestra");
lcd.setCursor(7,2);
lcd.print("Aperta");
delay(10000);
}testo in grassetto