תוכן עניינים:

Conexión Serial Arduino a Processing (acelerómetro En Anillo): 5 שלבים
Conexión Serial Arduino a Processing (acelerómetro En Anillo): 5 שלבים

וִידֵאוֹ: Conexión Serial Arduino a Processing (acelerómetro En Anillo): 5 שלבים

וִידֵאוֹ: Conexión Serial Arduino a Processing (acelerómetro En Anillo): 5 שלבים
וִידֵאוֹ: Cómo descargar información de una API en JSON y leerla con tu Arduino 2024, נוֹבֶמבֶּר
Anonim
Conexión Serial Arduino a Processing (acelerómetro En Anillo)
Conexión Serial Arduino a Processing (acelerómetro En Anillo)

אני יכול לקבל מידע נוסף על המידע המפורסם ביותר בפורטו סדרתי של Arduino a Processing. Acá les muestro la manera en que yo lo resuelvo, no es la única, pero es bastante efectiva, ya que en Processing, la recepción de datos ocurre como un evento, lo que significanta que no hey problems of sincronización con Arduino. שימוש ב- LSM 303 עבור הילוכים וחיישן.

חומרים

  1. ארדואינו UNO
  2. LSM303 פלורה (cualquier)

שלב 1: Conexiones En Arduino

Conexiones En Arduino
Conexiones En Arduino
Conexiones En Arduino
Conexiones En Arduino
Conexiones En Arduino
Conexiones En Arduino
Conexiones En Arduino
Conexiones En Arduino

El acelerómetro LSM303 tiene 4 conexiones. SDA, SCL, vin, y gnd, Como se ve en la foto. Yo soldé un cable amarillo al SDA, un cable verde al SCL, uno rojo a 3V, y uno negro a GND.

חיישן הכדור אל ארדואינו יכול לראות את כל התמונות. Básicamente, en la foto, el cable amarillo es SDA y se conecta al SDA del arduino, el cable verde es SCL, y se conecta al SCL del arduino. כבל רוג'ו 3.3V, ושחור אל GND ואל ארדואינו. En este ejemplo lo conecto directo a la placa de arduino, pero pueden hacerlo a través de un breadboard.

שלב 2: אל אנילו

אל אנילו
אל אנילו
אל אנילו
אל אנילו

עבור תוכנת poder hacer un programa de dibujo ועיבוד, אפשר להעביר תנועה של movimiento de la mano se pueda dibujar. Metemos el acelerómetro dentro de un anillo impreso en impresora 3D.

El modelo sencillo del anillo está acá. Pueden modificarlo allí mismo en tinkercad si hacen una cuenta. Se puede pegar con una pistola de goma caliente o a presión.

שלב 3: El Código Arduino

אל קודיגו ארדואינו
אל קודיגו ארדואינו

En el código de Arduino es importante abrir el puerto serial y la velocidad (en el ejemplo 9600) debe ser igual en el código de עיבוד.

Código en el Arduino:

#לִכלוֹל

#include // libreria de Adafruit

Adafruit_LSM303 lsm; // prepara el objeto

הגדרת בטל () {

Serial.begin (9600); // inicializa el acelerometro

lsm.begin ();

}

לולאת חלל () {

lsm.read (); // lee la informacion del sensor

// מנדה לה לקטורה סדרה

Serial.print ((int) lsm.accelData.x);

Serial.print (",");

Serial.print ((int) lsm.accelData.y);

Serial.print (",");

Serial.println ((int) lsm.accelData.z);

עיכוב (50);

}

שלב 4: עיבוד Código En

En processing, la estrategia es escrivir un evento para el puerto serail, de esa manera cada vez que entra infromación, processing en el fondo lo almacena en משתנים, מה שחשוב לייצר את velocidad de los cuadros del cuerpo principal del código de עיבוד.

קודיגו:

// נוצר על ידי תומס דה קמינו בק // לחיישן תנועת ידיים

ייבוא עיבוד. סדרה.*; יציאה סדרתית;

float coord = float new [3]; // arreglo para almacenar los datos

נתוני מחרוזת = "0, 0, 0"; // string que almacena del puerto serial

לצוף x, y, antX, antY; // para crear el dibujo

הגדרת בטל () {

גודל (600, 600);

println (Serial.list ());

port = סידורי חדש (זה, "/dev/ttyACM0", 9600);

port.clear ();

port.bufferUntil ('\ n');

x = רוחב/2;

y = גובה/2;

antX = רוחב/2;

antY = גובה/2;

חלקה (8);

}

צייר חלל () {

strokeWeight (10);

float x = width -map (coord [0], -2000, 2000, 0, width);

float y = height -map (coord [1], -2000, 2000, 0, height);

אם (coord [2] <0) {

רקע (255);

x = רוחב/2;

y = גובה/2;

antX = רוחב/2;

antY = גובה/2;

} אחר {

מילוי (0, 150);

קו (antX, antY, x, y);

antX = x;

antY = y;

}

}

void serialEvent (יציאה טורית) {

data = port.readString (); // סדרת לי דל פורטו

coord = float (פיצול (נתונים, ',')); // separa por comas los datos y los almacena en el arreglo

}

שלב 5: פונר דיבוג'אר

פונר א דיבוג'אר
פונר א דיבוג'אר

Ahora simplemente dibujar. Al dar vuelta por completeo el anillo, se borra todo lo dibujado.

מוּמלָץ: