Show Posts
Pages: [1]
1  International / Proyectos / Re: Leer valores sensor ultrasónico en servidor arduino on: December 07, 2012, 03:10:17 pm
Acá les dejo la imagen del montaje que he hecho.
.

.
Bueno el detalle es que no muestra los valores del sensor ultrasónico en el servidor web
Talvés tenga que agregar algunas funciones de código más, no sé. Yo no soy un experto en htlm...Espero puedan orientarme al respecto...  smiley-confuse
2  International / Proyectos / Re: Leer valores sensor ultrasónico en servidor arduino on: December 06, 2012, 03:18:38 pm
Bien, el código anterior arroja los valores medidos (distancias) impresos en el "monitor serial" que posee el ide de arduino.
Bueno como mi intención es mostrar estos valores por la web, he utilizado y modificado el programa del servidor web que viene como ejemplo en el cual muestra en la web los valores que lee de los 6 pines analógicos que tiene la tarjeta arduino.
Bueno agregandole el programa anterior de tal manera que también muestre los valores del ultrasónico por la web, tengo este código de programa:
Code:
//Mostrar valores del ultrasónico en servidor arduino
#include <SPI.h>
#include <Ethernet.h>
#include <Ultrasonic.h>

Ultrasonic ultrasonic(9,8,17400); // (Trig PIN,Echo PIN)
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,1,4);

EthernetServer server(80);

void setup()
{
  // start the Ethernet connection and the server:
  Serial.begin(9600);
  Ethernet.begin(mac, ip);
  server.begin();
}

void loop()
{
  // listen for incoming clients
  EthernetClient client = server.available();
  if (client) {
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        // if you've gotten to the end of the line (received a newline
        // character) and the line is blank, the http request has ended, so you can send a reply
        if (c == '\n' && currentLineIsBlank) {
          // send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println();
          //Mostrar valores del ultrasónico
          client.print("valores del sensor ultrasonico ");
          client.print(ultrasonic.Ranging(CM));
          client.println("<br />");
          // output the value of each analog input pin
          for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
            client.print("analog input ");
            client.print(analogChannel);
            client.print(" is ");
            client.print(analogRead(analogChannel));
            client.println("<br />");
          }
          break;
        }
        if (c == '\n') {
          // you're starting a new line
          currentLineIsBlank = true;
        }
        else if (c != '\r') {
          // you've gotten a character on the current line
          currentLineIsBlank = false;
        }
      }
    }
    // give the web browser time to receive the data
    delay(1);
    // close the connection:
    client.stop();
  }
}
.
Bueno el detalle es que al armarlo, no funciona; es decir que los valores del sensor ultrasónico no se muestran en el servidor web...
Talvés tenga que agregar algunas funciones de código más, no sé. Espero puedan orientarme al respecto...
Desde ya muchas gracias a todos los que deseen orientarme
3  International / Proyectos / Leer valores sensor ultrasónico en servidor arduino on: December 06, 2012, 02:58:56 pm
Hola, buenas tardes a todos.
.
Estoy haciendo algunos experimentos con la tarjeta ethernet de arduino.
Bueno ahora estoy tratando de enviar los valores que arroja (distancias) el sensor ultrasonico HR-SC04 al servidor web creado en mi tarjeta.
El código del sensor ultrasónico es este (y funciona sin inconveniente):
.
Code:
// HR-SC04 Sensor Ultrasonico
#include <Ultrasonic.h>

Ultrasonic ultrasonic(9,8,17400); // (Trig PIN,Echo PIN)

void setup() {
  Serial.begin(9600);
}
void loop()
{
  Serial.print(ultrasonic.Ranging(CM)); // CM or INC
  Serial.println(" cm" );
  delay(200);
}
.
Este código ya lo he implemnetado (luego pongo una foto del circuito) y funciona como deseo.
4  International / Proyectos / Configurar red externa (internet) para Arduino Ethernet, para control on: November 28, 2012, 03:04:34 pm
Buenas tardes con todos.
Les agradeceré mucho a todos los que me puedan ayudar.
He buscado información relacionada y no encuentro algo actual. Y lo que que parece bueno me confunde sobre lo que sabía anteriormente. Por ello espero puedan ayudarme a resolver algunas dudas.
Estoy armando una red con arduino ethernet hace algunas semanas. He logrado poner en red interna (lan) mi arduino ethernet (arduino uno + ethernet shield) con mi computadora de escritorio y laptop por medio de un router (tp-link).
La conexión que que he establecido es: Pc escritorio a router (puerto lan1) por cable utp; arduino ethernet a router (puerto lan2) por cable utp y mi laptop a router por wifi. El puerto "wan" de mi router está conectado ami modem que me provee internet. Todos estso equipos están en la misma dirección ip de red.
He probado el ejemplo de ide arduino 1.0.1. llamado "web server"
Code:
/*
  Web Server
 
 A simple web server that shows the value of the analog input pins.
 using an Arduino Wiznet Ethernet shield.
 
 Circuit:
 * Ethernet shield attached to pins 10, 11, 12, 13
 * Analog inputs attached to pins A0 through A5 (optional)
 
 created 18 Dec 2009
 by David A. Mellis
 modified 9 Apr 2012
 by Tom Igoe
 
 */

#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[] = {
  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,1, 177);

// Initialize the Ethernet server library
// with the IP address and port you want to use
// (port 80 is default for HTTP):
EthernetServer server(80);

void setup() {
 // Open serial communications and wait for port to open:
  Serial.begin(9600);
   while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }


  // start the Ethernet connection and the server:
  Ethernet.begin(mac, ip);
  server.begin();
  Serial.print("server is at ");
  Serial.println(Ethernet.localIP());
}


void loop() {
  // listen for incoming clients
  EthernetClient client = server.available();
  if (client) {
    Serial.println("new client");
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        Serial.write(c);
        // if you've gotten to the end of the line (received a newline
        // character) and the line is blank, the http request has ended,
        // so you can send a reply
        if (c == '\n' && currentLineIsBlank) {
          // send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println("Connnection: close");
          client.println();
          client.println("<!DOCTYPE HTML>");
          client.println("<html>");
                    // add a meta refresh tag, so the browser pulls again every 5 seconds:
          client.println("<meta http-equiv=\"refresh\" content=\"5\">");
          // output the value of each analog input pin
          for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
            int sensorReading = analogRead(analogChannel);
            client.print("analog input ");
            client.print(analogChannel);
            client.print(" is ");
            client.print(sensorReading);
            client.println("<br />");       
          }
          client.println("</html>");
          break;
        }
        if (c == '\n') {
          // you're starting a new line
          currentLineIsBlank = true;
        }
        else if (c != '\r') {
          // you've gotten a character on the current line
          currentLineIsBlank = false;
        }
      }
    }
    // give the web browser time to receive the data
    delay(1);
    // close the connection:
    client.stop();
    Serial.println("client disonnected");
  }
}
y funciona bien, estos son los valores que veo en la pantalla al teclear en el navegador el ip de mi arduino ethernet:
"analog input 0 is 1023
analog input 1 is 1023
analog input 2 is 748
analog input 3 is 567
analog input 4 is 434
analog input 5 is 421"
Mi problema radica en cómo hacer para ver esos datos desde internet, es decir fuera de mi red lan (desde cualquier pc o dispositivo conectado a internet)??
Leyendo he visto que se tiene que configurar una cuenta dns en mi router (no entiendo muy bien ello), o sólo se hace con puro código html y php?? Hay otros métodos?.
Espero me puedan orientar.
Gracias
Muchas gracias.
5  International / Español / Re: Con que modelo de Arduino me aconsejan empezar? on: March 03, 2012, 12:33:52 am
Hola, gracias por contestar, lo tendré en cuenta.

Y bueno voy a seguir esperando más comentarios...
También me ayudaría que me comentarán sobre el arduino que ustedes usan y todas las cosas que se puede hacer con el.
A parte he escuchado que a algunos se les puede agregar modulos (tarjetas complementarias arduino) que le dan más prestaciones...
En fin todo lo que puedan saber sobre las áreas que les comente anteriormente me ayudarán bastante (el lvl no es el problema) o si no comenten por favor sobre los proyectos q hayan hecho y se puedan hacer con el arduino que usan actualmente.
saludos cordiales ...
6  International / Español / Con que modelo de Arduino me aconsejan empezar? on: March 02, 2012, 11:44:06 am
Hola a todos!!
Bueno me fascina la electrónica y deseo iniciar en el mundo del open hardware comprandome un Arduino con el fin de utilizarlo en varios proyectos. Por ello deseo consultarle a ustedes; me puedan dar su opinión sobre que modelo de arduino me ayudaria más en los proyectos de:
- Control y automatización.
- Telecomunicaciones.
Les agradeceré cualquier sugerencia y comentario al respecto.
Saludos cordiales desde Perú.
 smiley-wink
Pages: [1]