Tabla de contenido:

Muire: efectos ópticos sensibles al sonido: 5 pasos
Muire: efectos ópticos sensibles al sonido: 5 pasos

Video: Muire: efectos ópticos sensibles al sonido: 5 pasos

Video: Muire: efectos ópticos sensibles al sonido: 5 pasos
Video: Part 3 - Lord Jim Audiobook by Joseph Conrad (Chs 13-19) 2024, Mes de julio
Anonim
Muire: efectos ópticos sensibles al sonido
Muire: efectos ópticos sensibles al sonido

Es posible que haya visto un patrón de ondas en el área donde el mosquitero se superpone cuando brilla el sol. Cuando mueve la mosquitera cercana o cambia el ángulo, el patrón de onda también se mueve. Si el patrón con intervalos regulares, así como los mosquiteros de la cama, se superponen repetidamente, este patrón puede ocurrir en cualquier lugar. Esto se llama fenómeno de Muirre (Moire) y el patrón que ocurre se llama patrón de Muirre.

PATRÓN PROJECT_MUIRE

Los patrones de Muir tienen muchos tipos de patrones y características. Este patrón se utiliza para crear nueve sectores y 11 tipos diferentes de patrones de páramo para producir una variedad de efectos ópticos, dependiendo del tamaño del sonido, en marcos de estructura de marco rectangular.

햇빛 이 비칠 때 모기장 이 겹쳐 있는 부위 에 생긴 물결 무늬 를 본 적이 있을 것이다. 가까운 모기장 을 상하 좌우 로 움직 이거나 각도 를 바꾸면 물결 무늬 도 움직인다. 모기장 뿐만 아니라 일정한 간격 을 갖는 무늬 가 반복 해 겹쳐 지면 어디 서든 이런 무늬 가 생길 수 있다. 이 를 무아레 (모아레, Moire) 현상 이라고 부르고, 이때 생기는 무늬 를 무아레 무늬 라고 부른다.

PATRÓN PROJECT_MUIRE

무 아르 패턴 은 다양한 종류 의 패턴 과 특징 을 가지고 있다. 이 패턴 을 9 개 섹터 와 11 개의 각기 다른 만든 무 아르 패턴 을 이용 하여 직사각형 의 액자형 구조 프레임 에 소리 의 크기 에 따라, 각기 다른 무 아르 패턴 의 다양한 착시 효과 체험 을 연출 한다.

Paso 1: ¿Qué materiales se necesitarán?

¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?
¿Qué materiales se necesitarán?

1. Cuerpo del patrón de muaré

acrílico blanco 5T [940 mm X 840 mm]

Impresión acrílica [tinta acrílica]

2. Patrón de muaré: tipos con forma

Tipo rotacional

un tipo de forma plana

Tipo de hardware

Tipo de agujero negro

Efecto de encogimiento / expansión

un efecto llameante

3. Circuito eléctrico

Arduino Uno x 11

Tabla de pan x 1

Motor paso a paso_28BYJ-48 x 11

ULN2003A x 11

MAX 9814 x 11

1. 무 아뢰 패턴 바디

  • 아크릴 5T (acrílico blanco) 940 mm x 840 mm
  • 아크릴 인쇄 (tinta negra)

2. 무 아뢰 패턴 의 종류

  • 회 전형
  • 일자형
  • 하드웨어 형
  • 빨려 들어가는 효과
  • 수축 / 팽창 하는 효과
  • 아지랑이 효과

3. 회로 구성

  • 아두이 도 나노 보드 (arduino UNO)
  • 스텝 모터 (28BYJ-48)
  • 스텝 모터 드라이브 (ULN2003A)
  • Micrófono 사운드 센서 (max9814)
  • 빵판 (Tabla de pan)
  • 외부 전원 (Fuente de alimentación 5V 25A)

Paso 2: Figura plana

Figura plana
Figura plana
Figura plana
Figura plana
Figura plana
Figura plana

1. Corte de figura plana

Acrílico blanco 5T (940 mm x 840 mm) X 2

Acrílico transparente 5T (940 mm x 840 mm) X 1

Acrílico transparente 3T (940 mm x 840 mm) X 1

2. Impresión de figuras planas

Impresión acrílica

1. 도면 커팅

흰색 아크릴 5T (940 mm x 840 mm) X 2

투명 아크릴 5T (940 mm x 840 mm) X 1

투명 아크릴 3T (940 mm x 840 mm) X 1

2. 도면 인쇄

아크릴 인쇄

Paso 3: diagrama de circuito

Diagrama de circuito
Diagrama de circuito
Diagrama de circuito
Diagrama de circuito
Diagrama de circuito
Diagrama de circuito

Principio de funcionamiento del hardware

POTENCIA -> Arduino UNO -> Sensor de amplificación de sonido de micrófono -> Motor Dirver -> Motor paso a paso

Paso 4: codificación

Codificación
Codificación
Codificación
Codificación

Descripción de la codificación Arduino

1. Conexión del motor paso a paso

Una vez recibida la señal, controlamos el número de pasos 180 grados, conectados al motor paso a paso. Establecemos el número INT para conectarlo al ángulo de rotación del motor paso a paso.

2. Dependiendo del valor del tamaño del sonido, controle la velocidad del motor paso a paso

Emite el pin A0 asociado con el sensor del micrófono, establece el valor de dolor en la salida en el monitor en serie, y si el sensor usa la sintaxis para aumentar la velocidad de rotación del motor paso a paso en 30 cuando el valor de dolor excede 50.

3. Velocidad y dirección de rotación de motores paso a paso que responden a la música.

Cuando la velocidad es de 10 grados y el ruido constante aumenta, gira a 30 grados, lo que induce a los diferentes patrones de rotación a verse diferentes.

CORDONES ARDUINO

#include // motor paso a paso- Biblioteca

const int sampleWindow = 50; // Tiempo de muestreo 50ms unsigned int value; // Valor recibido del sensor de detección de amplificación de sonido variableconst int stepsPerRevolution = 2048; // Bajarlo te ralentizará y aumentará tu velocidad

Stepper myStepper (stepsPerRevolution, 11, 9, 10, 8); // Pin del motor paso a paso int # 1 a Arduino digital 11, 9, 10, 8.

configuración vacía () {

Serial.begin (9600); // Iniciar monitor de serie, velocidad 9600

}

bucle vacío () {

startMillis largo sin firmar = millis (); // Tiempo de muestreo unsigned int peakToPeak = 0; // Amplitud de la señal de voz

unsigned int signalMax = 0; // Establece el tamaño máximo en cero inicialmente sin firmar int signalMin = 1024; // Establezca el tamaño mínimo en 1024 inicialmente

while (millis () - startMillis <sampleWindow) {valor = analogRead (A0); // recupera los datos del sensor de sonido if (value signalMax) // Medidas de tamaño máximo signalMax = value; // Tamaño máximo signalMax guardar else if (valor <signalMin) // Medidas de tamaño mínimo signalMin = value; // Tamaño mínimo sigmalMin save}}

peakToPeak = signalMax - signalMin; // Máximo- Mínimo = Valor de amplitud double volts = (peakToPeak * 5.0) / 1024; // Convertir a voltios = Convertir a tamaño de sonido

int Velocidad = mapa (pico a pico, 0, 600, 1, 30); // Limite el valor peakToPeak de 0 a 600 a 1 a 30.

// Si peakToPeak excede 600, se pierde // Mantén el valor máximo.

myStepper.setSpeed (Velocidad); // Gira la velocidad del motor paso a paso al valor hecho por la función de mapa (1-30) myStepper.step (stepsPerRevolution / 100); // Ángulo de movimiento del motor paso a paso (stepsPerRevolution = 2048) analogWrite (stepsPerRevolution, Speed * 3);

Serial.println (velocidad); // Verificar la velocidad del motor con el monitor serial

}

}

1. 스텝 모터 연결

한번 신호 를 받을 때 스텝 바퀴 수가 180 도 제어 를 하였고, 스텝 모터 와 연결 한

INT 넘버 를 설정 하여 스텝 모터 의 회전 각과 연결 진행

2. 소리 크기 값 에 따라, 스텝 모터 속도 제어

micrófono 센서 와 연결된 A0 핀 을 출력 하고, 시리얼 모니터 에 소리 값 이 출력 되 게끔 설정 후, if 구문 을 사용 하여 센서 에서 소리 값 이 50 이 넘어갈 때 스텝 모터 회전 의 속도 가 30 이 증가 하여, 소리 에 따라 스텝 모터 의 속도 가 제어 되게 함.

3. 음악 에 반응 하는 스텝 모터 의 속도 와 회전 방향

10 만큼 의 속도 가 진행 되다가, 일정 소리 가 커 지게 되면 30 의 속도 로 회전 하여 각기 다른 패턴 의 회전 들이 달리 보이게 연출 되는 것을 유도함.

CORDONES ARDUINO

#include // motor paso a paso 의 라이브러리

const int sampleWindow = 50; // 샘플링 한 시간 50ms valor int sin signo; // 소리 증폭 감지 센서 값 받는 변수 const int stepsPerRevolution = 2048; // *************** 여길 낮추면 느려지고 높이면 빨라짐

Stepper myStepper (stepsPerRevolution, 11, 9, 10, 8); // 스텝 모터 핀 int 1 번 부터 아두 이노 디지털 11, 9, 10, 8 순 으로 장착

oid setup () {

Serial.begin (9600); // 시리얼 모니터 시작, 속도 는 9600

}

bucle vacío () {

startMillis largo sin firmar = millis (); // 샘플링 시작 unsigned int peakToPeak = 0; // 음성 신호 의 진폭

unsigned int signalMax = 0; // 최대 크기 를 초기 에는 0 으로 설정 unsigned int signalMin = 1024; // 최소 크기 를 초기 에는 1024 로 설정

while (millis () - startMillis <sampleWindow) {// 데이터 를 50ms 마다 모으는 while 문 value = analogRead (A0); // 소리 감지 센서 에 더 데이터 받아 오기 if (valor signalMax) // 최대 크기 측정 signalMax = valor; // 최대 크기 signalMax 에 저장 else if (valor <signalMin) // 최소 크기 측정 signalMin = valor; // 최소 크기 sigmalMin 에 저장}}

peakToPeak = signalMax - signalMin; // 최대 - 최소 = 진폭 값 voltios dobles = (peakToPeak * 5.0) / 1024; // 전압 단위 로 변환 = 소리 크기 로 변환

int Velocidad = mapa (pico a pico, 0, 600, 1, 30); // 0 부터 600 까지 뜨는 peakToPeak 값 을 1 부터 30 까지 로 한정

// peakToPeak 의 최대 값 이 600 을 넘어 가면 끊김 // 최대 값 을 잘 잡아 주어야 함 myStepper.setSpeed (Velocidad); // 스텝 모터 의 스피드 를 위 mapa 함수 로 만들어 준 값 으로 회전 시킨다 (1-30) myStepper.step (stepsPerRevolution / 100); // 스텝 모터 가 움직이는 각 (stepsPerRevolution = 2048) analogWrite (stepsPerRevolution, Speed * 3);

Serial.println (velocidad); // 시리얼 모니터 로 모터 의 속도 를 확인 하겠다

}

Recomendado: