Mục lục:

Conexión Serial Arduino a Xử lý (acelerómetro En Anillo): 5 bước
Conexión Serial Arduino a Xử lý (acelerómetro En Anillo): 5 bước

Video: Conexión Serial Arduino a Xử lý (acelerómetro En Anillo): 5 bước

Video: Conexión Serial Arduino a Xử lý (acelerómetro En Anillo): 5 bước
Video: Arduino nano 33 BLE serial port not working with C# app 2024, Tháng mười một
Anonim
Conexión Serial Arduino a Xử lý (acelerómetro En Anillo)
Conexión Serial Arduino a Xử lý (acelerómetro En Anillo)

Muchos me preguntan de como conectar la Información que viene por puerto serial de Arduino a Chế biến. Acá les muestro la Mamra en que yo lo resuelvo, no es la única, pero es bitum efectiva, ya que en Đang xử lý, la refción de datos ocurre como un evento, lo que Nghia la que no hay problemas de sincronización con Arduino. Utilizo un acelerómetro LSM 303 para el ejemplo, cảm biến pero puede ser con cualquier.

Chất liệu

  1. Arduino UNO
  2. LSM303 Flora (cualquier)

Bước 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 hình nón. SDA, SCL, vin, y gnd, Como se ve en la foto. Yo sellé un cable amarillo al SDA, un cable verde al SCL, una rojo a 3V, y una negro a GND.

Conectar el sensor al Arduino como se muestra en las fotos. 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. Cáp El rojo a 3.3V, y el negro a GND en el Arduino. En este ejemplo lo conecto directo a la lasa de arduino, pero pueden hacerlo a través de un breadboard.

Bước 2: El Anillo

El Anillo
El Anillo
El Anillo
El Anillo

Para poder hacer un programma de dibujo en processing, donde a través del phimmiento 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.

Bước 3: El Código Arduino

El Código Arduino
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 xử lý.

Código en el Arduino:

#bao gồm

#include // libreria de Adafruit

Adafruit_LSM303 lsm; // prepara el objeto

void setup () {

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

lsm.begin ();

}

void loop () {

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

// manda la lectura a serial

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

Serial.print (",");

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

Serial.print (",");

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

chậm trễ (50);

}

Bước 4: Código En Xử lý

Quá trình xử lý en, la estrategia es escrivir un evento para el puerto serail, de esa manra cada vez que entra infromación, chế biến en el fondo lo almacena en, sin importar la velocidad de los cuadros del cuerpo major del código de xử lý.

Código:

// được tạo bởi Tomas de Camino Beck // cho cảm biến chuyển động của bàn tay

nhập xử lý.serial. *; Cổng nối tiếp;

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

Dữ liệu chuỗi = "0, 0, 0"; // chuỗi que almacena del puerto serial

float x, y, antX, antY; // para crear el dibujo

void setup () {

kích thước (600, 600);

println (Serial.list ());

port = new Serial (this, "/ dev / ttyACM0", 9600);

port.clear ();

port.bufferUntil ('\ n');

x = chiều rộng / 2;

y = chiều cao / 2;

antX = chiều rộng / 2;

antY = chiều cao / 2;

mịn (8);

}

void draw () {

strokeWeight (10);

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

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

if (coord [2] <0) {

nền (255);

x = chiều rộng / 2;

y = chiều cao / 2;

antX = chiều rộng / 2;

antY = chiều cao / 2;

} khác {

điền (0, 150);

dòng (antX, antY, x, y);

antX = x;

antY = y;

}

}

void serialEvent (Cổng nối tiếp) {

data = port.readString (); // nối tiếp lee del puerto

coord = float (split (data, ',')); // split por comas los datos y los almacena en el arreglo

}

Bước 5: Poner a Dibujar

Poner a Dibujar
Poner a Dibujar

Ahora simplemente dibujar. Al dar vuelta bởi completo el anillo, se borra todo lo dibujado.

Đề xuất: