Съдържание:

Muire: Оптични ефекти, чувствителни към звука: 5 стъпки
Muire: Оптични ефекти, чувствителни към звука: 5 стъпки

Видео: Muire: Оптични ефекти, чувствителни към звука: 5 стъпки

Видео: Muire: Оптични ефекти, чувствителни към звука: 5 стъпки
Видео: Корекция на антивирусния имунитет 2024, Юли
Anonim
Muire: Оптични ефекти, чувствителни към звука
Muire: Оптични ефекти, чувствителни към звука

Може би сте виждали вълнов модел в областта, където мрежата против комари се припокрива, когато слънцето грее. Когато преместите близката мрежа против комари или промените ъгъла, вълнообразният модел също се движи. Ако моделът с редовни интервали, както и мрежите за легло се припокриват многократно, този модел може да се появи навсякъде. Това се нарича феномен Muirre (Moire), а моделът, който се появява, се нарича модел Muirre.

ПРОЕКТЪР МУИР

Моделите Muir имат много видове модели и характеристики. Този модел се използва за създаване на девет сектора и 11 различни типа модели на мочурища, за да се получат различни оптични ефекти, в зависимост от размера на звука, върху рамки с правоъгълна рамка.

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

ПРОЕКТЪР МУИР

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

Стъпка 1: Какви материали ще са необходими?

Какви материали ще са необходими?
Какви материали ще са необходими?
Какви материали ще са необходими?
Какви материали ще са необходими?
Какви материали ще са необходими?
Какви материали ще са необходими?
Какви материали ще са необходими?
Какви материали ще са необходими?

1. Тялото на Моаровия модел

бял акрил 5T [940 mm X 840 mm]

Акрилен печат [акрилно мастило]

2. Типове с форма на муар

Ротационен тип

плоска форма

Тип хардуер

Тип черна дупка

Свиващ / разширяващ ефект

пламтящ ефект

3. Електрическа верига

Arduino Uno x 11

Дъска за хляб x 1

Стъпков двигател_28BYJ-48 x 11

ULN2003A x 11

MAX9814 x 11

1. 무 아뢰 패턴 바디

  • 아크릴 5T (бял акрил) 940 мм X 840 мм
  • 아크릴 인쇄 (черно мастило)

2. 무 아뢰 패턴 의 종류

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

3. 회로 구성

  • 아두이 도 나노 보드 (arduino UNO)
  • 스텝 모터 (28BYJ-48)
  • 스텝 모터 드라이브 (ULN2003A)
  • Микрофон 사운드 센서 (max9814)
  • 빵판 (дъска за хляб)
  • 외부 전원 (Захранване 5V 25A)

Стъпка 2: Плоска фигура

Плоска фигура
Плоска фигура
Плоска фигура
Плоска фигура
Плоска фигура
Плоска фигура

1. Изрязване на плоска фигура

Бял акрил 5T (940 мм x 840 мм) X 2

Прозрачен акрил 5T (940 mm x 840 mm) X 1

Прозрачен акрил 3T (940 милиметра х 840mm) X 1

2. Печат на равнинни фигури

Акрилен печат

1. 도면 커팅

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

투명 아크릴 5Т (940 мм х 840mm) X 1

투명 아크릴 3T (940мм х осемстотин и четиредесетmm) X 1

2. 도면 인쇄

아크릴 인쇄

Стъпка 3: Електрическа схема

Електрическа схема
Електрическа схема
Електрическа схема
Електрическа схема
Електрическа схема
Електрическа схема

хардуер Принцип на работа

POWER -> Arduino UNO -> Сензор за усилване на звука на микрофона -> Dir Dirver -> Стъпков двигател

Стъпка 4: Кодиране

Кодиране
Кодиране
Кодиране
Кодиране

Описание на кодирането на Arduino

1. Свързване на стъпков двигател

След като получихме сигнала, контролирахме броя на стъпките на 180 градуса, свързани към стъпковия двигател. Задайте номера INT, за да се свържете с ъгъла на въртене на стъпаловия двигател.

2. В зависимост от стойността на размера на звука, контролирайте скоростта на стъпковия двигател

Извежда щифта A0, свързан със сензора на микрофона, задава стойността на възпалението да се извежда на серийния монитор и ако сензорът използва синтаксиса, за да увеличи скоростта на въртене на стъпаловия двигател с 30, когато стойността на възпалението надвиши 50.

3. Скорост и посока на въртене на стъпкови двигатели, които реагират на музика

Когато скоростта е 10 градуса и постоянният шум се увеличава, той се върти на 30 градуса, предизвиквайки различните модели на въртене да изглеждат различно.

АРДУИНО КОРДИНГ

#include // стъпков двигател- Библиотека

const int sampleWindow = 50; // Време за извадка 50ms unsigned int стойност; // Стойността на сензора за сензор за усилване на звука е получена променлива const int stepsPerRevolution = 2048; // Понижаването му ще ви забави и ще ви увеличи по -бързо

Stepper myStepper (stepsPerRevolution, 11, 9, 10, 8); // стъпков двигател щифт междинно съединение # 1 до Ардуино цифров 11, 9, 10, 8.

void setup () {

Serial.begin (9600); // Стартиране на сериен монитор, скорост 9600

}

void loop () {

без знаци дълъг стартMillis = millis (); // Време за извадка без знак int peakToPeak = 0; // Амплитуда на гласовия сигнал

без знак int signalMax = 0; // Комплект максимален размер на нула първоначално неподписан Int signalMin = 1024; // Първоначално задайте минимален размер на 1024

while (millis () - startMillis <sampleWindow) {стойност = analogRead (A0); // извличане на данни от сензора за звук, ако (стойност signalMax) // Измервания на максимален размер signalMax = стойност; // Максимален размер signalMax save else if (стойност <signalMin) // Измервания на минимален размер signalMin = стойност; // Минимален размер sigmalMin save}}

peakToPeak = signalMax - signalMin; // Maximum- Min = Amplitude Value double volts = (peakToPeak * 5.0) / 1024; // Преобразуване във волта = Конвертиране в размер на звука

int Скорост = карта (peakToPeak, 0, 600, 1, 30); // Ограничаване на стойност peakToPeak от 0 до 600 до 1 до 30.

// Ако peakToPeak надвишава 600, то се губи // Съхранявайте на максималната стойност.

myStepper.setSpeed (Скорост); // Завъртане на скоростта на стъпковия двигател до стойността, направена от функцията на картата (1-30) myStepper.step (stepsPerRevolution / 100); // Ъгъл на движение на стъпаловиден двигател (stepsPerRevolution = 2048) analogWrite (stepsPerRevolution, Speed*3);

Serial.println (скорост); // Проверете скоростта на двигателя с помощта на сериен монитор

}

}

1. 스텝 모터 연결

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

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

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

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

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

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

АРДУИНО КОРДИНГ

#include // стъпков двигател 의 라이브러리

const int sampleWindow = 50; // 샘플링 한 시간 50ms неподписана int стойност; // 소리 증폭 감지 센서 값 받는 변수 const int stepsPerRevolution = 2048; // *************** 여길 낮추면 느려지고 높이면 빨라짐

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

oid setup () {

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

}

void loop () {

без знаци дълъг стартMillis = millis (); // 샘플링 시작 неподписан Int peakToPeak = 0; // 음성 신호 의 진폭

без знак int signalMax = 0; // 최대 크기 를 초기 에는 0 으로 설정 неподписан Int signalMin = 1024; // 최소 크기 를 초기 에는 1024 로 설정

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

peakToPeak = signalMax - signalMin; // 최대- 최소 = 진폭 값 двойни волта = (peakToPeak * 5.0) / 1024; // 전압 단위 로 변환 = 소리 크기 로 변환

Int Скорост = карта (peakToPeak, 0, 600, 1, 30); // 0 부터 600 까지 뜨는 peakToPeak 값 을 1 부터 30 까지 로 한정

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

Serial.println (скорост); // 시리얼 모니터 로 모터 의 속도 를 확인 하겠다

}

Препоръчано: