Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

sketch contapersone

Progetti, interfacciamento, discussioni varie su questa piattaforma.

Moderatori: Foto UtenteMassimoB, Foto Utentexyz, Foto UtenteWALTERmwp

0
voti

[11] Re: sketch contapersone

Messaggioda Foto Utentenicoct » 14 mar 2018, 7:15

io avevo pensato a una struttura tipo questa (con riferimento alle variabili dichiarate nel post precedente )
Codice: Seleziona tutto
//definisco due flag i quali inizialmente valgono zero sempre nel setup precedente
int flag1=0;
int flag2=0;

void loop() {

//Se il RX1 assume valore basso e  flag2  è basso significa che si  sta entrando
if ((digitalRead(RX1) == LOW) && (flag2==0)){
//in questo modo impongo alla macchina che si trova in uscita di non entrare
flag2=1;
if (flag2==1)
{
digitalWrite (ledR2,HIGH);
//altre operazioni come apertura barra
}
//aspetto un tempo determinato durante il quale quale faccio la lettura della seconda barriera ad infrarossi
ritardo = millis() + intervallo;
for(milliscorrenti = 0; milliscorrenti < ritardo; milliscorrenti=millis()){
if(digitalRead(RX2) == LOW){
contapersone++;
Serial.println(“Persone in entrata, totale : “);
Serial.println(contapersone);
break;
}
//riporto il flag2==0
flag2=0;
if (flag2==0)
{
digitalWrite (ledR2,LOW);
}
}

che dici potrebbe andare?
se secondo te potrebbe andare ,amcano due cose:
1) implementare un controllo parcheggio pieno
2) implementare la sezione uscita che è simile
Avatar utente
Foto Utentenicoct
113 6
Frequentatore
Frequentatore
 
Messaggi: 149
Iscritto il: 2 nov 2010, 15:56

0
voti

[12] Re: sketch contapersone

Messaggioda Foto UtenteMarcoD » 14 mar 2018, 10:16

Sopravaluti la mia capacità di analisi e il mio interesse nel problema, non sono in grado di dire se va bene o no. Prova fare con carta e matita un diagramma di flusso del percorso logico (flowchart).

Non mi piace molto la struttura in cui il programma si blocca in attesa del tempo di lettura della seconda barriera. Non che non possa funzionare bene, ma se si volesse fare in un secondo tempo una aggiunta in cui si vuole leggere sempre ogni 100 ms un pulsante di segnale di allarme e si provvede di conseguenza, non sarebbe facile farlo.
E' meglio usare una struttura tipo " case of " (mi pare sia chiamata anche "macchina a stati") ed fare in modo che periodicamente (per esempio ogni 0,1 s) il programma percorra sempre il loop dall' inizio alla fine. All'inizio, strutturato così il programma pare più complesso, in seguito scopri i vantaggi quando lo vuoi complicare.
O_/
Avatar utente
Foto UtenteMarcoD
5.227 2 6 13
Master EY
Master EY
 
Messaggi: 1813
Iscritto il: 9 lug 2015, 16:58
Località: Torino

0
voti

[13] Re: sketch contapersone

Messaggioda Foto Utentenicoct » 14 mar 2018, 17:23

ok compreso ora cerco su internet un po' di letteratura... :D
Avatar utente
Foto Utentenicoct
113 6
Frequentatore
Frequentatore
 
Messaggi: 149
Iscritto il: 2 nov 2010, 15:56

0
voti

[14] Re: sketch contapersone

Messaggioda Foto Utentenicoct » 25 mar 2018, 19:14

MarcoD ha scritto:Si, ma è uno spreco !!
Per avere circa 4,7 v aggiungi due diodi un serie allo zener da 33 V

...mi sono arrivati i diodi zener da 4,7...ho eliminato un problema cosi sfrutto i pin digitali...
Avatar utente
Foto Utentenicoct
113 6
Frequentatore
Frequentatore
 
Messaggi: 149
Iscritto il: 2 nov 2010, 15:56

Precedente

Torna a Arduino

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti