فهرست مطالب:

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 مرحله
تصویری: Amazing arduino project 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 indica que no hay problemas de sincronización con Arduino. با استفاده از سنسور LSM 303 ، می توانید از این سنسور استفاده کنید.

مواد

  1. آردوینو UNO
  2. LSM303 Flora (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 solded un cable amarillo al SDA، un cable verde al SCL، uno rojo a 3V، y uno 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. El cable rojo a 3.3V، y el negro a GND en el Arduino. از این رو به طور مستقیم به یک placa de arduino مراجعه می کنید ، اما می توانید از تخته نان استفاده کنید.

مرحله 2: El Anillo

ال آنیلو
ال آنیلو
ال آنیلو
ال آنیلو

Para poder hacer un programa de dibujo en processing، donde a través del 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

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 processing.

Código en el Arduino:

#عبارتند از

#شامل // libreria de Adafruit

Adafruit_LSM303 lsm؛ // prepara el objeto

void setup () {

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

lsm.begin ()؛

}

حلقه خالی () {

lsm.read () ؛ // حسگر lee la informacion del

// 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) ؛

تأخیر (50) ؛

}

مرحله 4: پردازش Código En

در پردازش ، برای محاسبه اسکریپیر و رویداد برای ورود به اینترنت ، پردازش و استفاده از متغیرها ، برای واردات از طریق متغیرها ، به وارد کردن اطلاعات اولیه از طریق پردازش انجام می شود.

Código:

// ایجاد شده توسط Tomas de Camino Beck // برای حسگر حرکت دست

پردازش واردات. سریال.*؛ درگاه سریال؛

شناور coord = شناور جدید [3]؛ // arreglo para almacenar los datos

داده های رشته = "0 ، 0 ، 0" ؛ // string que almacena del puerto سریال

شناور x ، y ، antX ، antY ؛ // para crear el dibujo

void setup () {

اندازه (600 ، 600) ؛

println (Serial.list ())؛

port = جدید سریال (این ، "/dev/ttyACM0" ، 9600) ؛

port.clear ()؛

port.bufferUntil ('\ n')؛

x = عرض/2 ؛

y = ارتفاع/2 ؛

antX = عرض/2 ؛

antY = ارتفاع/2 ؛

صاف (8) ؛

}

void draw () {

سکته مغزی وزن (10) ؛

float x = width -map (coord [0] ، -2000 ، 2000 ، 0 ، width) ؛

شناور y = نقشه ارتفاع (هماهنگ [1] ، -2000 ، 2000 ، 0 ، ارتفاع) ؛

if (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 (split (data، '،'))؛ // separa por comas los datos y los almacena en el arreglo

}

مرحله 5: تسویه حساب دیبوجار

Poner a Dibujar
Poner a Dibujar

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

توصیه شده: