Innholdsfortegnelse:

Muire: Lydfølsomme optiske effekter: 5 trinn
Muire: Lydfølsomme optiske effekter: 5 trinn

Video: Muire: Lydfølsomme optiske effekter: 5 trinn

Video: Muire: Lydfølsomme optiske effekter: 5 trinn
Video: ScHoolboy Q - JoHn Muir (Official Music Video) 2024, Desember
Anonim
Muire: Lydfølsomme optiske effekter
Muire: Lydfølsomme optiske effekter

Du har kanskje sett et bølgemønster på området der myggnettet overlapper når solen skinner. Når du flytter myggnettet i nærheten eller endrer vinkelen, beveger bølgemønsteret seg også. Hvis mønsteret med jevne mellomrom og sengenett gjentatte ganger overlapper hverandre, kan dette mønsteret forekomme hvor som helst. Dette kalles Muirre (Moire) fenomenet, og mønsteret som oppstår kalles Muirre mønster.

PROJECT_MUIRE MØNSTER

Muir -mønstre har mange typer mønstre og egenskaper. Dette mønsteret brukes til å lage ni sektorer og 11 forskjellige typer fortøyningsmønstre for å produsere en rekke optiske effekter, avhengig av lydens størrelse, på rektangulære rammestrukturerammer.

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

PROJECT_MUIRE MØNSTER

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

Trinn 1: Hvilke materialer trengs?

Hvilke materialer trengs?
Hvilke materialer trengs?
Hvilke materialer trengs?
Hvilke materialer trengs?
Hvilke materialer trengs?
Hvilke materialer trengs?
Hvilke materialer trengs?
Hvilke materialer trengs?

1. Kropp av Moire -mønsteret

hvit akryl 5T [940 mm x 840 mm]

Akryltrykk [akrylblekk]

2. Moire -mønsterformede typer

Rotasjonstype

en flat formtype

Maskinvaretype

Type svart hull

Krymp / ekspanderende effekt

en flammende effekt

3. Elektrisk krets

Arduino Uno x 11

Brødbrett x 1

Stepper Motor_28BYJ-48 x 11

ULN2003A x 11

MAX9814 x 11

1. 무 아뢰 패턴 바디

  • T 5T (hvit akryl) 940mm X 840mm
  • Black 인쇄 (svart blekk)

2. 무 아뢰 패턴 의 종류

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

3. 회로 구성

  • 아두이 도 나노 보드 (arduino UNO)
  • 스텝 모터 (28BYJ-48)
  • 스텝 모터 드라이브 (ULN2003A)
  • Mikrofon 사운드 센서 (maks9814)
  • 빵판 (brødbrett)
  • 외부 전원 (Strømforsyning 5V 25A)

Trinn 2: Plan figur

Plan figur
Plan figur
Plan figur
Plan figur
Plan figur
Plan figur

1. Plan figurskjæring

Hvit akryl 5T (940mm x 840mm) X 2

Gjennomsiktig akryl 5T (940mm x 840mm) X 1

Gjennomsiktig akryl 3T (940mm x 840mm) X 1

2. Utskrift av plant figur

Akryl utskrift

1. 도면 커팅

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

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

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

2. 도면 인쇄

아크릴 인쇄

Trinn 3: Kretsdiagram

Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram

maskinvare Driftsprinsipp

POWER -> Arduino UNO -> Mikrofon lydforsterkningssensor -> Motor Dirver -> Stepper motor

Trinn 4: Koding

Koding
Koding
Koding
Koding

Arduino kodingsbeskrivelse

1. Trinnmotor tilkobling

Når vi mottok signalet, kontrollerte vi antall trinn 180 grader, koblet til trinnmotoren. Sett INT -nummeret for å koble til rotasjonsvinkelen til trinnmotoren.

2. Avhengig av lydstørrelsesverdien, kontroller trinnmotorhastigheten

Sender A0 -pinnen som er knyttet til mikrofonsensoren, angir den ømme verdien som skal sendes ut på den serielle skjermen, og hvis sensoren bruker syntaksen til å øke rotasjonshastigheten til trinnmotoren med 30 når sårverdien overstiger 50.

3. Hastighet og rotasjonsretning for trinnmotorer som reagerer på musikk

Når hastigheten er 10 grader, og den konstante støyen økes, roterer den ved 30 grader, noe som får de forskjellige rotasjonsmønstrene til å se annerledes ut.

ARDUINO CORDING

#include // stepper motor- Library

const int sampleWindow = 50; // Prøvetid 50 ms usignert int verdi; // Lydforsterkning sensing sensor verdi mottatt variabelecon int intPerRevolution = 2048; // Å senke den vil bremse deg og øke deg raskere

Stepper myStepper (stepsPerRevolution, 11, 9, 10, 8); // Stepper motor pin int #1 to Arduino digital 11, 9, 10, 8.

ugyldig oppsett () {

Serial.begin (9600); // Start seriell skjerm, hastighet 9600

}

void loop () {

usignert lang startMillis = millis (); // Prøvetid usignert int peakToPeak = 0; // Amplitude av stemmesignalet

usignert int signalMax = 0; // Sett maksimal størrelse til null opprinnelig usignert int signalMin = 1024; // Angi minimumsstørrelse til 1024 først

while (millis () - startMillis <sampleWindow) {value = analogRead (A0); // hente lydsensordata hvis (verdi signalMax) // Maksimal størrelse Målinger signalMax = verdi; // Maksimal størrelse signalMaks lagre annet hvis (verdi <signalMin) // Minimum størrelse målinger signalMin = verdi; // Minimum størrelse sigmalMin lagre}}

peakToPeak = signalMax - signalMin; // Maksimum- Min = Amplitude Verdi doble volt = (peakToPeak * 5.0) / 1024; // Konverter til volt = Konverter til lydstørrelse

int Speed = map (peakToPeak, 0, 600, 1, 30); // Begrens peakToPeak -verdien fra 0 til 600 til 1 til 30.

// Hvis peakToPeak overstiger 600, går den tapt // Behold maksimalverdi.

myStepper.setSpeed (Speed); // Roter hastigheten på trinnmotoren til verdien som er gjort av kartfunksjonen (1-30) myStepper.step (stepsPerRevolution / 100); // Bevegelsesvinkel for trinnmotoren (stepsPerRevolution = 2048) analogWrite (stepsPerRevolution, Speed*3);

Serial.println (hastighet); // Kontroller motorens turtall med seriell skjerm

}

}

1. 스텝 모터 연결

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

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

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

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

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

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

ARDUINO CORDING

#inkludere // trinnmotor 의 라이브러리

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

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

oid -oppsett () {

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

}

void loop () {

usignert lang startMillis = millis (); // 샘플링 시작 usignert int peakToPeak = 0; // 음성 신호 의 진폭

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

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

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

int Speed = map (peakToPeak, 0, 600, 1, 30); // 0 부터 600 까지 뜨는 peakToPeak 값 을 1 부터 30 까지 로 한정

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

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

}

Anbefalt: