Оглавление:

Muire: звукочувствительные оптические эффекты: 5 шагов
Muire: звукочувствительные оптические эффекты: 5 шагов

Видео: Muire: звукочувствительные оптические эффекты: 5 шагов

Видео: Muire: звукочувствительные оптические эффекты: 5 шагов
Видео: SpaceX Starship Updates, NASA DART Mission, Firefly Launch Success, Delta IV Heavy and much more. 2024, Ноябрь
Anonim
Muire: звукочувствительные оптические эффекты
Muire: звукочувствительные оптические эффекты

Возможно, вы видели волнистый узор на участке, где москитная сетка перекрывается, когда светит солнце. Когда вы перемещаете ближайшую противомоскитную сетку или меняете угол, волновой узор также перемещается. Если узор с регулярными интервалами, а также надкроватные сетки многократно перекрываются, этот узор может возникнуть где угодно. Это называется феноменом Мюрре (муара), а возникающий узор - паттерном Мюрре.

ШАБЛОН PROJECT_MUIRE

Узоры Мюира имеют много видов узоров и характеристик. Этот шаблон используется для создания девяти секторов и 11 различных типов рисунков болота для создания различных оптических эффектов, в зависимости от размера звука, на прямоугольных каркасных структурах.

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

ШАБЛОН PROJECT_MUIRE

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

Шаг 1. Какие материалы потребуются?

Какие материалы потребуются?
Какие материалы потребуются?
Какие материалы потребуются?
Какие материалы потребуются?
Какие материалы потребуются?
Какие материалы потребуются?
Какие материалы потребуются?
Какие материалы потребуются?

1. Тело муарового узора

белый акрил 5T [940 мм X 840 мм]

Акриловая печать [акриловые чернила]

2. Муаровый узор - фигурные типы

Вращательный тип

плоский тип формы

Тип оборудования

Тип черной дыры

Эффект сжатия / расширения

пылающий эффект

3. Электрическая схема

Arduino Uno x 11

Хлебная доска x 1

Шаговый двигатель_28BYJ-48 x 11

ULN2003A x 11

MAX9814 х 11

1. 무 아뢰 패턴 바디

  • 아크릴 5T (белый акрил) 940 мм X 840 мм
  • 아크릴 인쇄 (Черные чернила)

2. 무 아뢰 패턴 의 종류

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

3. 회로 구성

  • 도 나노 보드 (Arduino UNO)
  • 스텝 모터 (28BYJ-48)
  • 스텝 모터 드라이브 (ULN2003A)
  • Микрофон 사운드 센서 (max9814)
  • 빵판 (Хлебная доска)
  • 외부 전원 (Блок питания 5В 25А)

Шаг 2: плоская фигура

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

1. Вырезание плоских фигур

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

Прозрачный акрил 5T (940 мм x 840 мм) X 1

Прозрачный акрил 3T (940 мм x 840 мм) X 1

2. Печать плоских фигур

Акриловая печать

1. 도면 커팅

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

투명 아크릴 5 зуб. (940 мм x 840 мм) X 1

투명 아크릴 3 зуба (940 мм x 840 мм) X 1

2. 도면 인쇄

아크릴 인쇄

Шаг 3: принципиальная схема

Принципиальная электрическая схема
Принципиальная электрическая схема
Принципиальная электрическая схема
Принципиальная электрическая схема
Принципиальная электрическая схема
Принципиальная электрическая схема

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

POWER -> Arduino UNO -> Датчик усиления звука микрофона -> Motor Dirver -> Шаговый двигатель

Шаг 4: кодирование

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

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

1. Подключение шагового двигателя.

Как только мы получили сигнал, мы контролировали количество шагов 180 градусов, связанных с шаговым двигателем. Установите число INT для соединения с углом вращения шагового двигателя.

2. В зависимости от значения размера звука регулируйте скорость шагового двигателя.

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

3. Скорость и направление вращения шаговых двигателей, реагирующих на музыку.

Когда скорость составляет 10 градусов, а постоянный шум увеличивается, он поворачивается на 30 градусов, в результате чего различные схемы вращения выглядят по-разному.

АРДУИНО ШНУР

#include // шаговый двигатель- Библиотека

const int sampleWindow = 50; // Время выборки 50 мс unsigned int value; // Получено значение датчика усиления звука variableconst int stepsPerRevolution = 2048; // Его снижение замедлит вас и ускорит увеличение

Stepper myStepper (stepsPerRevolution, 11, 9, 10, 8); // Контакт шагового двигателя int # 1 к Arduino digital 11, 9, 10, 8.

void setup () {

Serial.begin (9600); // Запуск последовательного монитора, скорость 9600

}

void loop () {

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

беззнаковый int signalMax = 0; // Устанавливаем максимальный размер равным нулю изначально без знака int signalMin = 1024; // Первоначально устанавливаем минимальный размер 1024

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

peakToPeak = signalMax - signalMin; // Максимум-Мин. = Значение амплитуды double volts = (peakToPeak * 5.0) / 1024; // Преобразовать в вольты = преобразовать в размер звука

int Speed = map (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 핀 을 출력 하고, 시리얼 모니터 에 소리 값 이 출력 되 게끔 설정 후, если 구문 을 사용 하여 센서 에서 소리 값 이 50 이 넘어갈 때 스텝 모터 회전 의 속도 가 30 이 증가 하여, 소리 에 따라 스텝 모터 의 속도 가 제어 되게 함.

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

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

АРДУИНО ШНУР

#include // шаговый двигатель 의 라이브러리

const int sampleWindow = 50; // 샘플링 한 시간 50 мс беззнаковое целое значение; // 소리 증폭 감지 센서 값 받는 변수 const int stepsPerRevolution = 2048; // *************** 여길 낮추면 느려지고 높이면 빨라짐

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

oid setup () {

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

}

void loop () {

беззнаковый длинный startMillis = millis (); // 샘플링 시작 unsigned int peakToPeak = 0; // 음성 신호 의 진폭

беззнаковый int signalMax = 0; // 최대 크기 를 초기 에는 0 으로 설정 unsigned int signalMin = 1024; // 최소 크기 를 초기 에는 1024 로 설정

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

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

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

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

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

}

Рекомендуемые: