Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

Chronos ez430

29 Respuestas
8 Usuarios
0 Reactions
18.9 K Visitas
mif
Respuestas: 1095
 Mif
Topic starter
(@mif)
Noble Member
Registrado: hace 19 años

Hola compañeros,
Quería compartir con vosotros mi ultimo miniproyecto nocturno. He usado el nuevo Chronos ez430 (que me recomendó Garrocha durante la Campus Party en Madrid) para manejar un robotillo nuevo que he empezado. El reloj es muy chulo y barato, asi que si os apetece jugar con algo nuevo, os animo a que le echéis un ojo.
Aquí os dejo el enlace al proyecto:
http://www.tupperbot.es/2010/09/chronos-ez430-and-visual-studio-net/

Responder
28 respuestas
furri
Respuestas: 2708
(@furri)
Ardero
Registrado: hace 20 años

...furri, Mif, pues puede que sí haya algo que todavía sea más rápido para crear una interfaz de usuario para el control de un robot: http://www.robotbasic.org/ " onclick="window.open(this.href);return false; Todavía no lo habéis probado?
No, no lo he probado, parece interesante, le echaré un vistazo.

Responder
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 20 años

Refloto el tema...

En la empresa donde trabajo, vamos a empezar a realizar un par de proyectos con este reloj. Alguna idea de por dónde empezar? (que conste que todavía no he mirado nada).

S2

Ranganok Schahzaman

Responder
sistemasorp
Respuestas: 478
(@sistemasorp)
Ardero
Registrado: hace 15 años

Depende de lo que necesites. Yo he hecho alguna chorradilla con el:

  • Probando el acelerómetro y representarlo gráficamente http://www.metacafe.com/watch/7035380/ez430_chronos_processing_and_tilt_measurement_error/ " onclick="window.open(this.href);return false;
    Cambiando los menús para rendir tributo a la web del Cire http://www.metacafe.com/watch/7680562/tributo_al_cire/ " onclick="window.open(this.href);return false;
  • Todo lo que necesitas lo puedes mirar aquí: http://processors.wiki.ti.com/index.php/EZ430-Chronos?DCMP=Chronos&HQS=Other+OT+chronoswiki " onclick="window.open(this.href);return false;

    Aquí un ejemplo de Hello Word: http://trandi.wordpress.com/2011/09/03/ti-ez430-watch-unbox-hworld/ " onclick="window.open(this.href);return false;
    Aquí cómo el el protocolo para las comunicaciones inalámbricas con el ezChronos: http://e2e.ti.com/support/microcontrollers/msp43016-bit_ultra-low_power_mcus/f/166/t/32714.aspx " onclick="window.open(this.href);return false;

    Responder
    ranganok
    Respuestas: 3875
    (@ranganok)
    Ardero
    Registrado: hace 20 años

    Más o menos lo que necesito es recoger los datos (accelerómetro, etc.) que los procesaré en otro sitio (una central que ya tenemos hecha) y enviar las alarmas correspondientes al reloj.

    Me miraré con calma lo que me has enviado. Gracias.

    S2

    Ranganok Schahzaman

    PD: En qué has programado el cubo gráfico para mostrar el accelerómetro? Me podrías pasar el código?

    Responder
    sistemasorp
    Respuestas: 478
    (@sistemasorp)
    Ardero
    Registrado: hace 15 años

    El cubo está hecho en processing. Pego aquí el código fuente por si a alguien más le interesa:

    import processing.serial.*;
    import processing.opengl.*;

    PFont fuente;
    float valorX;
    float valorZ;
    float valorY;

    Serial puerto;

    byte empieza[] = {-1, 7, 3};
    byte datos[] = {-1, 8, 7, 0, 0, 0, 0};
    byte[] buffer = new byte[7];
    boolean principio = true;
    int leidos = 0;

    void setup()
    {
    size(800, 800, OPENGL);
    //fuente = loadFont("Digital-7-72.vlw");
    fuente = createFont("Arial", 72);
    textFont(fuente);
    puerto = new Serial(this, "COM4", 115200);
    puerto.write(empieza);
    }

    void draw()
    {
    background(0);
    lights();
    pushMatrix();
    translate(width / 2, height / 2);
    rotateX(valorX);
    rotateZ(valorZ);
    rotateY(valorY);
    cuadrado();
    popMatrix();
    fill(255, 255, 0);
    text("X:", 0, 650);
    text(valorX, 50, 650);
    text("Z:", 0, 700);
    text(valorZ, 50, 700);
    }

    void cuadrado()
    {
    beginShape(QUADS);

    fill(255, 255, 255);
    vertex(-70,-20,-100);
    vertex(-70,20,-100);
    vertex(70,20,-100);
    vertex(70,-20,-100);

    fill(0, 255, 0);
    vertex(-70,-20,100);
    vertex(-70,20,100);
    vertex(70,20,100);
    vertex(70,-20,100);

    fill(0, 0, 255);
    vertex(-70,20,-100);
    vertex(70,20,-100);
    vertex(70,20,100);
    vertex(-70,20,100);

    fill(255, 0, 0);
    vertex(-70,-20,-100);
    vertex(70,-20,-100);
    vertex(70,-20,100);
    vertex(-70,-20,100);

    fill(255, 255, 0);
    vertex(-70,-20,-100);
    vertex(-70,20,-100);
    vertex(-70,20,100);
    vertex(-70,-20,100);

    fill(255, 0, 255);
    vertex(70,-20,-100);
    vertex(70,20,-100);
    vertex(70,20,100);
    vertex(70,-20,100);

    endShape();
    }

    void serialEvent(Serial puerto)
    {
    buffer[leidos] = byte(puerto.read());
    leidos++;
    if(principio)
    {
    if(leidos == 3)
    {
    principio = false;
    leidos = 0;
    puerto.write(datos);
    }
    }
    else
    {
    if(leidos == 7)
    {
    if (buffer[3] == 1)
    {
    float x, y, z;
    x = buffer[4];
    y = buffer[5];
    z = buffer[6];

    valorX = -atan2(x, z);
    valorZ = atan2(y, z);

    println("X:" + x + "tY:" + y + "tZ:" + z + "tAx:" + valorX + "tAz:" + valorZ);
    }
    leidos = 0;
    puerto.write(datos);
    }
    }
    }

    El único problema es que no he podido hacer que gire 360º correctamente (de ahí lo que pongo del error en el título del vídeo), y es que al no tener una brújula electrónica, no se puede calcular el yaw o guiñada.

    Responder
    Página 5 / 6
    Compartir: