Pages: [1] 2 3   Go Down
Author Topic: richiesta modifica codice  (Read 1556 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 68
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti,
è da tempo che ho un piccolo progetto fermo perchè non sono in grado di terminare la programmazione del codice.

Il progetto consiste nel controllo della sezionale del garage con dei contatti magnetici, una scheda relè, rtc e un lcd i2c.

Il codice è già fatto ma, a detta di una persona di fiducia che non ha tempo di aiutarmi, manca la parte "anti rimbalzo" per i contatti magnetici e praticamente senza quella mi dice che non fa funzionare bene la scheda.

La mia richiesta è..c'è qualcuno che può aiutarmi? io purtroppo non conosco la programmazione e quindi dovrei imparare troppe cose e per ora non ho tempo da dedicare smiley

Siccome che la pappa pronta non è bella da chiedere se qualcuno fosse intenzionato ad aiutarmi sarei disposto a dare una piccola retribuzione smiley

Ciao, buona serata!
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22966
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Basta mettere anche un semplicissimo delay di qualche decina di millisecondi fra 2 letture consecutive del pin collegato al sensore. Se la seconda lettura è sempre HIGH o LOW, allora il pulsante o sensore è veramente premuto o attivato e non si tratta di un rimbalzo.

Code:
if (lettura == HIGH)
  delay(50)
  if (lettura == HIGH)
    ....esegui qualcosa
Ci sono anche sistemi più sofisticati ma già questo svolge egregiamente il suo scopo ed a me non ha mai dato problemi.
Logged


Offline Offline
Jr. Member
**
Karma: 0
Posts: 68
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti ringrazio molto.

Ora proverò a mettere tutto in sesto e vedere se da ancora problemi.

Caso mai non funzionasse posso postare il codice e la configurazione per avere un vostro parare?

Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22966
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

PS:
ovvio che per "lettura" intendo una digitalRead sul pin in questione.

Caso mai non funzionasse posso postare il codice e la configurazione per avere un vostro parare?
Certo
Logged


Selvazzano Dentro - Padova
Offline Offline
Edison Member
*
Karma: 45
Posts: 1505
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Siccome che la pappa pronta non è bella da chiedere se qualcuno fosse intenzionato ad aiutarmi sarei disposto a dare una piccola retribuzione

Sul Forum non è possibile ricevere denaro, ma sono assai graditi "scambi culturali" (vino, formaggio, salumi, nutella, ecc.)  smiley-yell
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 114
Posts: 7194
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Siccome che la pappa pronta non è bella da chiedere se qualcuno fosse intenzionato ad aiutarmi sarei disposto a dare una piccola retribuzione

Sul Forum non è possibile ricevere denaro, ma sono assai graditi "scambi culturali" (vino, formaggio, salumi, nutella, ecc.)  smiley-yell

Non solo, se vorrai condividere il codice da te creato potrebbe essere utile in futuro per altre persone.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Genova
Offline Offline
Faraday Member
**
Karma: 40
Posts: 3431
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

metti questo condensatore in parallelo al contatto, non so come è fatto il tuo programma e che devono fare questi contatti, ma buona parte dei rimbalzi li tagli fuori, provare per credere. Fammi sapere

ciao

ps come fate a mettere "qui" con un link collegato?
« Last Edit: September 12, 2012, 04:02:15 am by pablos » Logged

no comment

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 574
Posts: 12643
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

così:
url=link vero]qui[/url]
ho tolto la quadra iniziale per farti vedere la sintassi, in pratica dopo il primo url aggiugi = ed il link e tra i due url scrivi la parola "qui"
aggiungendo una R in serie diventa più semplice calcolare la costante di tempo e favorire pressioni ripetute rapidamente.
Ciao smiley
Logged


Genova
Offline Offline
Faraday Member
**
Karma: 40
Posts: 3431
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

fatto, grazie
Logged

no comment

Capo d'Orlando
Offline Offline
God Member
*****
Karma: 2
Posts: 725
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ma forse il problema potrebbe essere anche un altro.. mettiamo che nel codice verifica se lo stato del pin è alto esegue delle operazioni, se è di nuovo alto (si ripreme il pulsante) fa altre operazioni.
Code:
if(stato==1){
 fai questo;
  if (stato==1){
   fai quest'altro;
  }
}
In questo caso se non mette il delay dopo la prima serie di operazioni, quando preme il bottone la prima volta(essendo che lo preme una persona smiley-grin) non potrebbe avere il tempo di rilasciarlo che il codice ha già passato il secondo controllo!
« Last Edit: September 12, 2012, 05:22:31 am by sciorty » Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 68
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

grazie per l'interesse ragazzi smiley

Vi spiego come funziona il mio progetto:

Arduino 1 rev3
display lcd 20x4 i2c preso su ebay con relativa libreria
scheda da 4 relay presa sempre su ebay
rtc della df robot ( df...??non ricordo bene )
2 contatti magnetici, i classici da antifurto
scheda ethernet originale

Il magnete  e' collegato alla porta sezionale del garage in modo tale che l'arduino sappia sempre in che stato si trova la porta.
Collegati a 2 relay ci sono 2 led a 230v che sono al piano di sopra, in cucina.
Praticamente quando la porta e' chiusa ci sara' un led verde acceso, quando da chiusa si apre lampeggera' un led rosso e quando sara' aperta rimarra' acceso il led rosso con il verde spento.
ovviamente quando si stara' chiudendo lampeggera' il led verde.

un terzo relay e' utilizzato, inseme all'rtc, per fare in modo che si possa accendere la luce del garage quando si e' in un perido dell'anno e del giorno in cui ci sara' scuro. tipo da ottobre ad aprile quando si apre il garage dalle 17:00 alle 8:00 si dovra' accendere la luce.

il display serve cosi di bellezza per far vedere l'ora e lo stato della porta.

la scheda ethernet volevo usarla inizialmente per creare una pagina web con lo stato della porta e dei pulsanti per poter aprire/chiudere la porta ( relay 4 sul contatto della centralina ) e magari accendere la luce.

Come  vedete il progetto non ha chissa quale utilita' ma ho deciso di fare questo lavoro in garage per la facilita' di spostamento con i cavi e la possibilita' di montare una cassetta di derivazione con dentro le varie schede.

Io sono un elettricista per lavoro quindi so dove mettere le mani per collegare i relay con tensioni pericolose.

Inizialmente mi ero stampato una scheda con il press and peel con il circuito di alimentazione, l'rtc, i relay e i morsetti per collegare il bus i2c e i contatti magnetici. Purtroppo pare che per inesperienza la scheda non sia molto stabile e non offre una precisione sul segnale. Per questo ho deciso di comprare tutto a parte con i relay, rtc e l'alimentatore 5v 1A

Questa sera postero' il codice, ora sono in pausa pranzo con il tablet e faccio un po' fatica a recuperarlo da gdrive.

Scusate per le lettere accentate ma non so come mai ma non me le da smiley

Buon pomeriggio, grazie!
Logged

Offline Offline
God Member
*****
Karma: 8
Posts: 691
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

tu stai cercando guai seri  smiley-twist   non puoi motorizzare automaticamente una porta/cancello  se non ci sono tutte le cose omologate e certificate tipo fotocellule,  laMPEGGIANTI GIALLI,

non è che non si puo   e che non è legale ,

se l'impianto no ha "tutto" e anche di un certificato di istallazione rilasciato da un tecnico
Logged


Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

Capo d'Orlando
Offline Offline
God Member
*****
Karma: 2
Posts: 725
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Che siete maliziosi smiley-razz Si capisce che il progetto è per casa sua, ha pure detto che non ha una grande utilità!
Logged

Genova
Offline Offline
Faraday Member
**
Karma: 40
Posts: 3431
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Che siete maliziosi smiley-razz Si capisce che il progetto è per casa sua, ha pure detto che non ha una grande utilità!

Tra l'altro non legge e perde i pezzi
Logged

no comment

Oristano
Offline Offline
Sr. Member
****
Karma: 0
Posts: 252
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

eppoi chi lodice che non può progettare ed installare un impianto di apertura - chiusura con un microcontrollore??
Logged

Pages: [1] 2 3   Go Up
Jump to: