Show Posts
|
|
Pages: 1 ... 8 9 [10]
|
|
136
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 08, 2011, 05:08:11 am
|
Ciao Uwe, Ho provato ad inserire le modifiche che mi hai proposto ma non ha sortito nessun miglioramento. Il codice: #include <SPI.h> #include <Ethernet.h>
// Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x08, 0xE6 }; byte ip[] = { 192,168,1,182 }; byte server[] = { 192,168,1,181 }; // Pandora's box
int cont; int valore = 0; int valore_medio = 0;
// Initialize the Ethernet client library // with the IP address and port of the server Client client(server, 8084);
void setup() { // start the Ethernet connection: Ethernet.begin(mac, ip); // start the serial library: Serial.begin(115200); // give the Ethernet shield a second to initialize: delay(1000); Serial.println("connecting...");
// if you get a connection, report back via serial: if (client.connect()) { Serial.println("connected"); // Make a HTTP request: client.println("GET /search?q=arduino HTTP/1.0"); client.println("Content-Type: text/html"); client.println(); } else { // if you didn't get a connection to the server: Serial.println("connection failed"); } }
void loop() { cont = 0; for( cont = 0; cont < 20; cont++) { valore = analogRead(1); valore_medio += valore; delay(1); }
valore_medio = valore_medio / 20; client.print (valore_medio); Serial.print (valore_medio);
// if the server's disconnected, stop the client: if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop(); } }
Poi perchè se tolgo il delay mi butta fuori i valori uniti cioè: 512512512512512 Se invece metto il delay vedo solo un valore (come dovrebbe essere per funzionare): 512 Per fare che tutto funzioni devo avere solo un valore di lettura. Grazie, Alberto
|
|
|
|
|
138
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 06, 2011, 09:52:00 am
|
Ok..... ho provato a fare la media così: #include <SPI.h> #include <Ethernet.h>
// Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x08, 0xE6 }; byte ip[] = { 192,168,1,182 }; byte server[] = { 192,168,1,16 }; // Pandora's box
int cont; int valore = 0; int valore_medio = 0;
// Initialize the Ethernet client library // with the IP address and port of the server Client client(server, 8084);
void setup() { // start the Ethernet connection: Ethernet.begin(mac, ip); // start the serial library: Serial.begin(9600); // give the Ethernet shield a second to initialize: delay(1000); Serial.println("connecting...");
// if you get a connection, report back via serial: if (client.connect()) { Serial.println("connected"); // Make a HTTP request: client.println("GET /search?q=arduino HTTP/1.0"); client.println(); } else { // if you didn't get a connection to the server: Serial.println("connection failed"); } }
void loop() { for( cont = 0; cont < 20; cont++) { valore = analogRead(1); valore_medio += valore; delay(1); }
if(cont == 20) { cont = 0; } valore_medio = valore_medio / 20; client.print (valore_medio); Serial.print (valore_medio);
// if the server's disconnected, stop the client: if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop(); } }
Qunado il valore analogico aumenta scorre in maniera molto fluida mentre quando diminuisce è molto instabile ..... come mai ? Grazie, Alberto
|
|
|
|
|
139
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 05, 2011, 07:59:06 pm
|
Mi è arrivata un po' di roba  Ho fatto alcune prove e con i 10 bit non ci sto dentro :'( Ho comunque provato ad inserire un po di codice per fare delle prove e ho notato che l'uscita non è costante, a volte 'strappa'. Ho collegato il potenziometro a filo sull'ingresso 2 Il codice che ho inserito è questo: #include <SPI.h> #include <Ethernet.h>
// Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x08, 0xE6 }; byte ip[] = { 192,168,1,182 }; byte server[] = { 192,168,1,181 }; // Pandora's box
// Initialize the Ethernet client library // with the IP address and port of the server Client client(server, 8084);
void setup() { // start the Ethernet connection: Ethernet.begin(mac, ip); // start the serial library: Serial.begin(9600); // give the Ethernet shield a second to initialize: delay(1000); Serial.println("connecting...");
// if you get a connection, report back via serial: if (client.connect()) { Serial.println("connected"); // Make a HTTP request: client.println("GET /search?q=arduino HTTP/1.0"); client.println(); } else { // if you didn't get a connection to the server: Serial.println("connection failed"); } }
void loop() {
//Dichiaro una variabile intera di nome “valoreB” delay (125); int valoreB= analogRead(1);
client.print(valoreB); Serial.println(valoreB); // if the server's disconnected, stop the client: if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop();
// do nothing forevermore: for(;;) ; } }
A me sembra ok a voi ? Per quanto riguarda lADC a 16 bit ..... consigli ? Grazie, Alberto
|
|
|
|
|
140
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 03, 2011, 07:45:19 pm
|
Forse hai ragione. Per il movimento delle pareti ho preso due barrette della igus di 600 mm, perciò la larghezza sarè poco più di 600 mm. Poi dipenderà dal potenziometro a filo che ho preso ...... 10 giri togliendo la parte iniziale e finale come consigliato. Spero di starci dentro senza dover demoltiplicare la rotazione del potenziometro. Certo sto facendo tutto senza avere ancora nulla. Spero che almeno dopodomani mi arrivi qualcosa  Avevo ordinato su robotitaly ma spewdiscono dal 10 in poi ho quindi ordinato una arduino uno da rs epotenziometri e barre oggi. Da robot italy attendo la mega :-/
|
|
|
|
|
141
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 03, 2011, 06:38:20 pm
|
|
Ok Il software che gestisce i posizionamento del layer di proiezione accetta un valore che va da -32768 a 32768. Graficamente posso controllarlo da software questo valore, che viene rappresentato da un fader software. Nella parte bassa il fader segna -32768, al centro 0 e nella parte alta segna 32768. Avendo due paretine da muovere nel modellino mi servirebbero due controlli uguali per parete dx e sx.
Alberto
|
|
|
|
|
143
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 02, 2011, 08:24:42 am
|
|
Grazie uwefed
cosa intendi dire con: (qualcosa perdi per l' inizio e la fine)
Puoi poi darmi indicazione di come fare poi a traformare la variazione di tensione in valore numerico compreso tra -32768 e 32768 ?
Grazie ancora, Alberto
|
|
|
|
|
144
|
Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare
|
on: January 01, 2011, 06:45:06 pm
|
Ottime idee !! Quella della cam mi intrigava mooolto  Ho provato a cercare su rs ma a 20 giri non ce ne sono .... solo a 10. Da 1 K possono andar bene ? Grazie per l'aiuto ..... non vedo l'ora di mettermi a far qualcosa. Alberto
|
|
|
|
|
145
|
Forum 2005-2010 (read only) / Italiano / Encoder lineare particolare
|
on: January 01, 2011, 09:46:32 am
|
Buon anno a tutti  Sono nuovissimo di arduino ...... mi deve ancora arrivare  Ho un progettino in mente scaturito dallo studio di kokiua. Usare due telecamerine dei mouse ottici per creare un'encoder lineare. Praticamente questi encoder li vorrei applicare a due pareti scorrevoli sull'asse y e dal movimento delle pareti avere la posizione, in formato numerico che va da -32768 a 32768, della parete. Gli encoder lineari magnetici costano una cifra ma se riuscissi ad usare questo sistema sarebbe perfetto per lo scopo che ha il mio progetto. Il mio progetto prende idea da un sistema che si chiama 'event in the box' che non è in commercio. Una demo del modellino è qui: http:// http://www.youtube.com/watch?v=l7WFgQ6vjfoQuando viene spostata una paretina i dati vengono raccolti da un'applicazione che interfacciata ad un programma di proiezione (pandora's box) sposta la posizione della proiezione. Secondo voi si può fare con la cam del mouse e riconoscere gli sposatmenti da dx vs sx e viceversa ? Grazie per l'aiuto, Alberto
|
|
|
|
|
146
|
Forum 2005-2010 (read only) / Italiano / Passaggio valori sulla lan
|
on: December 30, 2010, 07:54:06 pm
|
|
Buonasera a tutti. Sono nuovissimo di Arduino, (ho ordinato oggi le schede) Ho acquistato:
1 x USB Host Shield 1 x ScrewShield 1 x Arduino Mega 2560 1 x CLCD420-B Display Seriale BLU 20 x 4 Retroilluminato 1 Arduino Ethernet Shield Board
Il mio intento sarebbe quello di collegare 3 encoder ad Arduino, leggere i valori e via lan renderli disponibili ad un'applicazione che gestirà i dati degli encoder in tempo reale.
Secondo voi è possibile realizzarlo con ciò che ho acquistato?
Grazie, Alberto
|
|
|
|
|