Show Posts
Pages: 1 ... 14 15 [16] 17 18 ... 398
226  International / Software / Re: problema con software per anemometro on: July 13, 2014, 03:11:11 am
@ davide88 :

Allora,
in realtà tu devi fare fronte ad una serie di problemi ...
... primo tra tutti quello che tu, per leggere gli impulsi, non stai usando un sensore elettronico (come un sensore ad effetto Hall), ma un reed switch, che, come tutti gli switch, ha il problema dei "rimbalzi".

Quando un interruttore, anche di ottima qualità, si apre o si chiude, tu non hai un bel passaggio pulito da chiuso ad aperto e viceversa, ma hai una cosa che, osservata all'oscilloscopio, risulta più o meno così :


Capisci bene che, se vai a contare gli impulsi di un tale segnale ... otterrai un valore del tutto falso, motivo per cui .. la prima cosa da fare è pulire il segnale in modo da avere una vera onda quadra al chiudere o aprire del contatto.

Detta pulizia prende nome di "debouncing" e si può fare, sia via software, sia via hardware.

Ora ... la prima cosa è cercare di capire se, nel tuo caso, è fattibile una pulizia via SW o devi per forza aggiungere un circuito esterno.

Quindi ... di QUANTI impulsi al secondo, al massimo, stiamo parlando ??? Ovvero, quanti millisecondi abbiamo tra un impulso ed il successivo ?

Guglielmo
227  International / Software / Re: problema con software per anemometro on: July 13, 2014, 03:08:41 am
@ cyberhs: Ho idea che sia difficile usare gli interrupt così come è il suo circuito.

Lui sta utilizzando un "reed switch" che, come tutti gli switch, purtroppo soffre del problema dei rimbalzi, rimbalzi che in una ISR non puoi pulire via SW, ma richiede che su segnale venga effettuato un debouncing HW a monte smiley-wink

Guglielmo
228  International / Software / Re: problema con software per anemometro on: July 12, 2014, 02:15:24 pm
Se qualcuno riescisse a trovarmi l' errore o magari a mettermi apposto il codice gli sarei grato smiley-wink

... se magari ci dici che errore ti fa ... ci faciliti il compito  smiley-lol

Guglielmo
229  International / Generale / Re: Determinare se una luce è accesa con Arduino on: July 12, 2014, 12:49:35 pm
... ho detto "praticamente" a te che ti cambia ???

"Misuri" della corrente che passa e ... sai che la lampadina è accesa  smiley-lol smiley-lol smiley-lol

Guglielmo
230  International / Software / Re: Soluzione scelta "modalità" e creazione di più di un void loop on: July 12, 2014, 12:46:19 pm
Se vieni dal basic potresti anche pensare di usare i goto per intenderci, ma sono sconsigliati in C nonostante siano regolarmente utilizzabili

@ Heisenberg94:
... ma se ti scopriamo ad usarlo, ti leghiamo ad un albero e ti fustighiamo  smiley-twist smiley-twist smiley-twist

Esiste, ma il suo uso è veramente limitato a "casi eccezionali" ove non è possibile fare in altro modo ( ... es. per problemi in cui contano anche i nsec.  smiley-lol) ... altrimenti, è assolutamente da evitare !!!

Guglielmo
231  International / Generale / Re: Determinare se una luce è accesa con Arduino on: July 12, 2014, 12:19:46 pm
Io non voglio misurare...io vorrei sapere se passa corrente x sapere se e accesa la lampadina


.... e ... ai fini pratici ... quale è la differenza ???  smiley-eek smiley-eek smiley-eek

Guglielmo
232  International / Software / Re: Problema splittare una stringa letta dalla seriale. on: July 12, 2014, 12:17:04 pm
...
Sto solo ammorbidendo le posizioni verso una classe che spesso viene proprio vietata, come se non funzionasse leggendo i consigli.

Mai detto che non funziona ... sempre detto di NON usarla perché è facile che causi problemi ... e continuerò a ripeterlo all'infinito.

Tu poi resta ovviamente della tua opinione e naturalmente usa ciò che più gradisci ...  smiley-twist

Guglielmo
233  International / Software / Re: Problema splittare una stringa letta dalla seriale. on: July 12, 2014, 11:40:41 am
Andando su questa strada c'è da sconsigliare l'intero wiring non solo string  smiley-yell
Arduino è principalmente c++ librerie incluse non si usa per l'efficienza ma per imparare facilmente.

Scusa ma che c'entra ???  smiley-eek smiley-eek smiley-eek

Io sto parlando di malloc(), realloc(), free(), ... ovvero di tutta la gestione della memoria che è costretta a fare una classe come String ogni volta che tu riassegni una stringa aumentandone le dimensioni ... non di efficienza o quant'altro !  smiley-twist

Guglielmo
234  International / Generale / Re: What makes my blog popular in Italy? on: July 12, 2014, 11:21:55 am
... mmm ... so, perhaps, came out an article, talking about your blog, on some magazine  smiley-mr-green smiley-mr-green smiley-mr-green

Guglielmo
235  International / Generale / Re: What makes my blog popular in Italy? on: July 12, 2014, 10:50:34 am
Hi Udo,
are normal HTTP GET requests or ... strange requests ?

Because, as you can see HERE and HERE (... for both maps you need google chrome) Italy is quite active for cyber attacks (eleventh positionsmiley-confuse

Guglielmo
236  International / Software / Re: Implementazione tasto invio on: July 12, 2014, 10:39:45 am
Allora ... trovata una SD, SanDisk 8GB ...  smiley-mr-green

Provato il seguente codice :

Code:
#include <SPI.h>
#include <Ethernet.h>
#include <SD.h>
#include <PS2Keyboard.h>
//
const byte DATA  = 2;
const byte CLOCK = 3;
const int  SIZE  = 300;
//
PS2Keyboard keyboard;
//
char temp[SIZE];
char temp1[SIZE];
int i;
//
File file;
//
byte mac[]={
   0x90, 0xA2, 0xDA, 0x0F, 0x41, 0xD3};
IPAddress ip (192,168,1,238);
EthernetServer server(80);
//
//
void setup() {
   delay(1000);         // tempo per evitare possibili problemi con il bootloader
   //
   temp[SIZE]=0x00;
   temp1[SIZE]=0x00;
   i = 0;
   //
   Serial.begin(9600);
   Serial.println(F("Inizializzazione tastiera.....attendere prego"));
   Serial.println();
   //
   Ethernet.begin(mac, ip);
   server.begin();
   //
   delay(3000);
   //
   if (!SD.begin(4))
   {
      Serial.println(F("Inizializzazione fallita......controllare la SD"));
      return;
   }
   else {
      Serial.println(F("Inizializzazione SD completata"));
   }
   //
   if (SD.exists("test.txt")) {
      SD.remove("test.txt");
   }
   //keyboard.begin(DATA, CLOCK, PS2Keymap_US);
   //keyboard.begin(DATA, CLOCK, PS2Keymap_German);
   keyboard.begin(DATA, CLOCK, PS2Keymap_French);
   Serial.println(F("Immettere un messaggio"));
}
//
//
void loop() {
   //
   lettura_tastiera();
   EthernetClient client = server.available();
   if (client) {
      boolean currentLineIsBlank = true;
      while (client.connected()) {
         if (client.available()) {
            char c = client.read();
            if (c == '\n' && currentLineIsBlank) {
               client.println("HTTP/1.1 200 OK");
               client.println("Content-Type: text/html");
               client.println();
               client.println(temp1);
               break;
            }
            if (c == '\n') {
               currentLineIsBlank = true;
            }
            else if (c != '\r') {
               currentLineIsBlank = false;
            }
         }
      }
      delay(1);
      client.stop();
   }
}
//
//
void lettura_tastiera()
{
   //
   while (1) {
      //
      if(!keyboard.available()) return;
      //
      char c = keyboard.read();

      Serial.print(c);

      if(c == PS2_ENTER || i==(SIZE-1)) break;
      temp[i]=c;
      i++;
      //   
   }
   temp[i]=0x00;
   strcpy(temp1, temp);
   i=0;
   //
   Serial.println();
   Serial.println(temp1);
}

... mi sembra che tutto funzioni ... questo esce sul monitor seriale :

Quote
Inizializzazione tastiera.....attendere prego

Inizializzazione SD completata
Immettere un messaggio

Provalo sulla tua configurazione e fammi sapere ...  smiley-roll

Guglielmo
237  International / Megatopic / Re: ABC - Arduino Basic Connections on: July 12, 2014, 10:30:56 am
Alberto, che fine hai fatto ? Problemi di salute (ti auguro di no) ?

No, tranquillo ...
... dalle ultime notizie che ho avuto dovrebbe essere a lavorare all'estero ! E debbo dire, con dispiacere, fregandosene altamente dei suoi utenti !  smiley-confuse

Guglielmo
238  International / Hardware / Re: SPI a 3.3v in arduino uno on: July 12, 2014, 08:46:12 am
... speravo ci fosse un modo per settare l'arduino a lavorare a 3.3 !!!

No, in compenso hai un Arduino Micro a 3.3V o un Arduino Mini a 3.3V (... tutti sempre da SparkFun) ... adatto ai tuoi sensori  smiley-lol

Guglielmo
239  International / Generale / Re: Comandare lampad a led con arduino?! on: July 12, 2014, 08:42:16 am
Quello è il segnale che arriva da un pin di Arduino e che comanda il relè.

Comunque, vista la tua affermazione "... essendo inesperto non ci capisco molto" continuo a sconsigliarti dal giocare con circuiti in cui scorre la 230V ... si MUORE !!!


Inizia con cose a bassa tensione, tanto, con lo stesso circuito, ci accendi qualsiasi cosa, anche a bassa tensione e poi, quando avrai fatto esperienza ... ti avvicinerai a tensioni superiori.

Guglielmo
240  International / Generale / Re: Comandare lampad a led con arduino?! on: July 12, 2014, 07:43:20 am
Ti basta un relè comandato da Arduino ... occhi comunque a giocare con il 230V ... è pericoloso

Guarda il pdf allegato, in alto a sinistra hai lo schema che ti serve.

Guglielmo
Pages: 1 ... 14 15 [16] 17 18 ... 398