Loading...
  Show Posts
Pages: [1] 2 3 ... 10
1  International / Generale / Re: Discriminare ingresso analogico on: February 17, 2013, 12:05:58 pm
Il range di valori è ormai ben noto, si tratta di valori oscillanti tra 600 e 800.
Per cui il problema dei valori da tenere in considerazione non si pone.  smiley
2  International / Generale / Re: Discriminare ingresso analogico on: February 17, 2013, 10:27:07 am
A me serve solamente determinare se l'oggetto posto davanti al sensore è da li da più di 100ms ed incrementare un contatore.  smiley-grin
3  International / Generale / Re: Discriminare ingresso analogico on: February 16, 2013, 06:03:05 am
l sensore è un tcrt5000
...forse mi sono espresso male io, non è il sensore che legge "male" ma voglio essere io ad evitare fisicamente di leggere degli oggetti che passano troppo velocemente davanti al sensore, ovvero:

Se l'oggetto passa troppo velocemente e non permane per almeno 100ms la lettura appena fatta è da scartare, al contrario se permane per più di 100ms la lettura è da memorizzare.

chiedo scusa per essermi espresso male  smiley-razz
4  International / Generale / Re: Discriminare ingresso analogico on: February 16, 2013, 05:30:49 am
Parlando di soluzioni in codice @Leo potresti indicarmi un esempio?
Grazie.
5  International / Generale / Re: Discriminare ingresso analogico on: February 16, 2013, 05:10:37 am
Il sensore è un tcrt5000

...forse mi sono espresso male io, non è il sensore che legge "male" ma voglio essere io ad evitare fisicamente di leggere degli oggetti che passano troppo velocemente davanti al sensore, ovvero:

Se l'oggetto passa troppo velocemente e non permane per almeno 100ms la lettura appena fatta è da scartare, al contrario se permane per più di 100ms la lettura è da memorizzare.

chiedo scusa per essermi espresso male  smiley-razz
6  International / Generale / Re: Problema nel rilvare Battito Cardiaco on: February 16, 2013, 04:26:24 am
Esattamente, meglio risolvere il problema alla base ed acquistare alcuni dispositivi già pronti come questo:
http://pulsesensor.myshopify.com/


Ringrazio tutti per l'interesse dimostrato!
 smiley-grin smiley-grin smiley-grin
7  International / Generale / Re: Sezione "Mercatino" on: February 16, 2013, 04:22:25 am
io penso che il problema sia opposto, una sezione mercartino imbordellirebbe così tanto il Forum che ne avremmo nuovamente di che lamentarci quanto a lentezza elefantiaca.... sono d'accordo per il no.


Concordo pienamente!
8  International / Generale / Discriminare ingresso analogico on: February 16, 2013, 04:20:32 am
Buongiorno a tutti!

Vi descrivo il mio problema: ho un sensore infrarosso che leggo in analogico attraverso il pin0 di Arduino...Vorrei discriminare le letture "spurie" come quelle che vengono attuate per i pulsanti (in buona sostanza vorrei escludere le letture ingannevoli per arduino tenendo solamente quelle che superano la soglia dei 100ms)
Insomma una specie di debounce analogico, il problema è però che essendo analogico mi risulta difficile da manovrare il segnale.

Sono a corto di idee, voi ne avete qualcuna?

Grazie.  smiley
9  International / Generale / Re: Problema nel rilvare Battito Cardiaco on: February 14, 2013, 05:34:29 am
Il sensore è un sensore di prossimità e in uscita mi fornisce 0 e 1 in base alla distanza dell'oggetto rilevato.

Che comparatore dovrei inserire?

Grazie.
10  International / Generale / Problema nel rilvare Battito Cardiaco on: February 13, 2013, 04:58:56 pm
Buonasera, mi sto dilettando nel rilevare il battito cardiaco attraverso un semplice sensore infrarosso composto da emettitore e ricevitore, collegato ad arduino in questo modo:



Attualmente, il codice che ho trovato e leggerissimamente modificato è questo:

Code:
const int  CardioPin = 2;    
const int ledPin = 13;      

long oldMillis;
long oldMillis_antiBounce;

byte contatore = 0;
byte stato = 0;
byte ultimoStato = 0;


void setup() {

  pinMode(CardioPin, INPUT);
  pinMode(ledPin, OUTPUT);
  // initialize serial communication:
  Serial.begin(9600);
  oldMillis = millis();
  oldMillis_antiBounce = oldMillis;
  
}


void loop() {
  
  stato = digitalRead(CardioPin);
  if (stato != ultimoStato) {

    if (stato == HIGH) {
      //sistole...fronte di salita...
      digitalWrite(ledPin, HIGH);
      if ( millis()- oldMillis_antiBounce  > 10)
              {  // se impiega meno di 10 millisecondi per cambiare di stato è un rimbalzo e non lo conto
              contatore ++;
              oldMillis_antiBounce = millis();

              };
                    
      } else {
      // else stato = low significa che sono in diastole
              digitalWrite(ledPin, LOW);
    
      
    }
    ultimoStato = stato;  // lo stato è variato
  }

   if ( millis()- oldMillis  > 15000) {
     //15 secodi di statistica... calcolo media
     Serial.print ("bpm:");
     Serial.println ( contatore * 4);
     Serial.print("Stato");
     Serial.println(stato);
     contatore = 0;
     oldMillis = millis();
     oldMillis_antiBounce =      oldMillis;
     }

  
}


Il problema è che non mi rileva i battiti del cuore, anzi, mi indica bpm = 0 e stato = 0.

Potreste darmi qualche dritta?
11  International / Generale / Re: Sensore + calibrazione on: February 07, 2013, 02:49:39 am
Ok, ma il colore del cartoncino è diverso, passa dal nero al bianco, quindi ho una variazione dei valori analogici in uscita.

Il problema che devo risolvere è il seguente: se una volta calibrato il cartoncino poi si sposta allontanandosi  e non spostandosi verso il lato bianco, rifaccio la calibrazione tenendo conto dei nuovi valori di riferimento.


...e poi, come faccio a discriminare il passaggio dal bianco al nero?
io ho pensato di fare così: (pseudo-codice) se il valore letto periodicamente è variato di un certo tot (una soglia che devo capire ancora come e su che base calcolarla...HELP???...) allora faccio 10 letture con due delay diversi per essere totalmente certo di essere nello stato bianco.
12  International / Generale / Sensore + calibrazione on: February 06, 2013, 03:25:39 pm
Buonasera  smiley-razz

Ho un problema : un sensore ottico che restituisce in uscita un segnale analogico in base alla distanza rilevata.
In Arduino eseguo la taratura nel setup con un cartoncino posto a 3 cm di distanza adesso voglio che nel loop vi sia il riconoscimento del movimento sull'asse orizzontale (in poche parole ad uno spostamento orizzontale del cartoncino, ma non so come fare, con un if non ci riesco, pensavo di fare in questo modo : if(lettura > le-ttura + media)/2)... Ma non ne sono sicuro...
13  International / Software / Re: Casino Totale on: January 23, 2013, 05:11:56 am
...Ho risolto, il problema era dovuto dal fatto che nell'immagine il pin sul collettore del fototransistor non andava collegato ai 5V,

Gli altri problemi a livello di codice li sto piano piano risolvendo...Scusate se nelle spiegazioni sono stato "ambiguo" smiley-grin


Grazie!
14  International / Software / Re: Casino Totale on: January 23, 2013, 04:58:43 am
Si, lo legge correttamente!
15  International / Software / Re: Casino Totale on: January 23, 2013, 04:46:13 am
No, con arduino lo leggo correttamente in digitale, senza avere problemi...non so che fare
Pages: [1] 2 3 ... 10