Show Posts
Pages: 1 ... 8 9 [10]
136  Forum 2005-2010 (read only) / Italiano / Re: Arduino Uno SMD on: January 12, 2011, 08:52:24 am
Sarà perchè così ogni progetto dovrà avere per forza una scheda arduino ?
137  Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare on: January 08, 2011, 06:03:42 pm
Ho risolto  ;D
Era un problema di formato accettato dal server.
Cosi va che è una bomba !!
Code:
#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 PareteDx = 0;
int PareteSx = 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");
  }
  else {
    // if you didn't get a connection to the server:
    Serial.println("connection failed");
  }
}

void loop()
{
    PareteDx = analogRead(0);
    PareteSx = analogRead(1);
    client.print ("*");
    client.print(PareteDx);
    client.print ("@");
    client.print(PareteSx);    
    client.print ("#");
    

  if (!client.connected())
  {
    Serial.println("disconnecting.");
    client.stop();
  }
}


Grazie uwefed
138  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:
Code:
#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
139  Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare on: January 07, 2011, 05:58:55 am
Nessun miglioramento  :'(

Per l'adc a 16 bit questo potrebbe andare bene ?
http://it.rs-online.com/web/search/searchBrowseAction.html?method=getProduct&R=7037949
140  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ì:
Code:

#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
141  Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare on: January 05, 2011, 07:59:06 pm
Mi è arrivata un po' di roba  smiley-razz
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:

Code:
#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
142  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  smiley
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  :-/
143  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
144  Forum 2005-2010 (read only) / Italiano / Re: Encoder lineare particolare on: January 03, 2011, 05:28:48 pm
Grazie ad entrambi per la chiarezza.
Potrei quindi usare un'adc a 16 bit esterno ?
a me servirebbero due ingressi .... conosscete qualche circuitino da adattare ad arduino ?

Grazie ancora, Alberto
145  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
146  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  smiley-wink

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
147  Forum 2005-2010 (read only) / Italiano / Encoder lineare particolare on: January 01, 2011, 09:46:32 am
Buon anno a tutti smiley
Sono nuovissimo di arduino ...... mi deve ancora arrivare  smiley-razz

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=l7WFgQ6vjfo
Quando 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
148  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
Pages: 1 ... 8 9 [10]