Sadržaj:

Muire: Optički efekti osjetljivi na zvuk: 5 koraka
Muire: Optički efekti osjetljivi na zvuk: 5 koraka

Video: Muire: Optički efekti osjetljivi na zvuk: 5 koraka

Video: Muire: Optički efekti osjetljivi na zvuk: 5 koraka
Video: Book 10 - The Ambassadors Audiobook by Henry James (Chs 01-03) 2024, Studeni
Anonim
Muire: Optički efekti osjetljivi na zvuk
Muire: Optički efekti osjetljivi na zvuk

Možda ste vidjeli valni uzorak na području gdje se mreža protiv komaraca preklapa kad sunce sja. Kad pomaknete obližnju mrežu protiv komaraca ili promijenite kut, valni uzorak se također pomiče. Ako se uzorak s pravilnim razmacima, kao i mreže za krevet, više puta preklapaju, taj se uzorak može pojaviti bilo gdje. To se naziva fenomen Muirre (Moire), a uzorak koji se javlja naziva se uzorak Muirre.

UZORAK PROJECT_MUIRE

Muir uzorci imaju mnogo vrsta uzoraka i karakteristika. Ovaj se uzorak koristi za stvaranje devet sektora i 11 različitih vrsta šarenih šara za stvaranje različitih optičkih efekata, ovisno o veličini zvuka, na okvirima strukture pravokutnog okvira.

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

UZORAK PROJECT_MUIRE

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

Korak 1: Koji će materijali biti potrebni?

Koji će materijali biti potrebni?
Koji će materijali biti potrebni?
Koji će materijali biti potrebni?
Koji će materijali biti potrebni?
Koji će materijali biti potrebni?
Koji će materijali biti potrebni?
Koji će materijali biti potrebni?
Koji će materijali biti potrebni?

1. Tijelo uzorka Moire

bijeli akril 5T [940 mm X 840 mm]

Akrilni tisak [akrilna tinta]

2. Tipovi u obliku uzorka Moire

Rotacijski tip

tip ravnog oblika

Vrsta hardvera

Tip crne rupe

Učinak skupljanja / širenja

plameni učinak

3. Električni krug

Arduino Uno x 11

Ploča za kruh x 1

Koračni motor_28BYJ-48 x 11

ULN2003A x 11

MAX9814 x 11

1. 무 아뢰 패턴 바디

  • 아크릴 5T (bijeli akril) 940 mm X 840 mm
  • 아크릴 인쇄 (Crna tinta)

2. 무 아뢰 패턴 의 종류

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

3. 회로 구성

  • 아두이 도 나노 보드 (arduino UNO)
  • 스텝 모터 (28BYJ-48)
  • 스텝 모터 드라이브 (ULN2003A)
  • Mikrofon 사운드 센서 (max9814)
  • 빵판 (ploča za kruh)
  • 외부 전원 (Napajanje 5V 25A)

Korak 2: Ravna slika

Ravna figura
Ravna figura
Ravna figura
Ravna figura
Ravna figura
Ravna figura

1. Rezanje ravne figure

Bijeli akril 5T (940 mm x 840 mm) X 2

Prozirni akril 5T (940 mm x 840 mm) X 1

Prozirni akril 3T (940 mm x 840 mm) X 1

2. Tiskanje ravnih figura

Akrilni tisak

1. 도면 커팅

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

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

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

2. 도면 인쇄

아크릴 인쇄

Korak 3: Dijagram kruga

Kružni dijagram
Kružni dijagram
Kružni dijagram
Kružni dijagram
Kružni dijagram
Kružni dijagram

hardver Princip rada

POWER -> Arduino UNO -> Senzor za pojačanje zvuka mikrofona -> Motor Dirver -> Step motor

Korak 4: Kodiranje

Kodiranje
Kodiranje
Kodiranje
Kodiranje

Opis kodiranja Arduino

1. Spajanje koračnog motora

Nakon što smo primili signal, kontrolirali smo broj koraka za 180 stupnjeva, spojenih na koračni motor. Postavite INT broj za povezivanje s kutom rotacije koračnog motora.

2. Ovisno o veličini zvuka, kontrolirajte brzinu koračnog motora

Izlazi pin A0 povezan sa senzorom mikrofona, postavlja vrijednost boli na izlaz na serijskom monitoru i ako senzor koristi sintaksu za povećanje brzine vrtnje koračnog motora za 30 kada vrijednost boli premaši 50.

3. Brzina i smjer rotacije koračnih motora koji reagiraju na glazbu

Kad je brzina 10 stupnjeva, a konstantna buka povećana, rotira se za 30 stupnjeva, izazivajući različite obrasce rotacije da izgledaju drugačije.

ARDUINO CORDING

#include // stepper motor- Knjižnica

const int sampleWindow = 50; // Vrijeme uzorkovanja 50 ms nepotpisana int vrijednost; // Vrijednost osjetnika osjetnika pojačanja zvuka primljena variableconst int stepsPerRevolution = 2048; // Snižavanje će vas usporiti i brže povećati

Stepper myStepper (stepsPerRevolution, 11, 9, 10, 8); // Igla koračnog motora int #1 na Arduino digital 11, 9, 10, 8.

void setup () {

Serial.begin (9600); // Pokretanje serijskog monitora, brzina 9600

}

void loop () {{100} {101}

bez potpisa dug startMillis = millis (); // Vrijeme uzorkovanja unsigned int peakToPeak = 0; // Amplituda glasovnog signala

nepotpisani int signalMax = 0; // Postavite maksimalnu veličinu na nulu inicijalno bez potpisa int signalMin = 1024; // U početku postavite minimalnu veličinu na 1024

while (millis () - startMillis <sampleWindow) {vrijednost = analogRead (A0); // dohvaćanje podataka senzora zvuka if (vrijednost signalMax) // Mjerenje maksimalne veličine signalMax = vrijednost; // Maksimalna veličina signalMax spremi else if (vrijednost <signalMin) // Mjerenje minimalne veličine signalMin = vrijednost; // minimalna veličina sigmalMin spremanje}}

peakToPeak = signalMax - signalMin; // Maximum- Min = Amplitude Value double volts = (peakToPeak * 5.0) / 1024; // Pretvori u volte = Pretvori u veličinu zvuka

int Brzina = karta (peakToPeak, 0, 600, 1, 30); // Ograniči vrijednost peakToPeak od 0 do 600 na 1 do 30.

// Ako peakToPeak premašuje 600, gubi se // Zadrži maksimalnu vrijednost.

myStepper.setSpeed (Brzina); // Rotirajte brzinu koračnog motora na vrijednost koju daje funkcija karte (1-30) myStepper.step (stepsPerRevolution / 100); // Kut kretanja koračnog motora (stepsPerRevolution = 2048) analogWrite (stepsPerRevolution, Speed*3);

Serial.println (Brzina); // Provjerite brzinu motora serijskim monitorom

}

}

1. 스텝 모터 연결

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

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

2. Zahtjev za postavljanje, slanje i provjeravanje

mikrofon 센서 와 연결된 0 A0 핀 을 출력 하고, 시리얼 모니터 에 값 이 if if if if if if 50 이 넘어갈 스텝 모터 의 속도 30 이 증가 따라 모터 의 속도 가 제어 되게 함.

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

10 만큼 의 속도 가 되다가 되다가, 30 의 소리 되면 되면 되면 되면 되면 되면 되면 유도함 유도함 유도함 유도함 유도함 유도함 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면 되면.

ARDUINO CORDING

#include // koračni motor 의 라이브러리

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

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

oid setup () {

Serial.begin (9600); // Pošaljite poruku, pregledajte 9600

}

void loop () {{100} {101}

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

nepotpisani int signalMax = 0; // 최대 크기 를 초기 에는 0 으로 설정 nepotpisani int signalMin = 1024; // Pošaljite 1024 poruka

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

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

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

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

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

}

Preporučeni: