Πίνακας περιεχομένων:

Muire: Οπτικά εφέ ευαίσθητα στον ήχο: 5 βήματα
Muire: Οπτικά εφέ ευαίσθητα στον ήχο: 5 βήματα

Βίντεο: Muire: Οπτικά εφέ ευαίσθητα στον ήχο: 5 βήματα

Βίντεο: Muire: Οπτικά εφέ ευαίσθητα στον ήχο: 5 βήματα
Βίντεο: Part 5 - The Age of Innocence Audiobook by Edith Wharton (Chs 31-34) 2024, Ιούλιος
Anonim
Muire: Οπτικά εφέ ευαίσθητα στον ήχο
Muire: Οπτικά εφέ ευαίσθητα στον ήχο

Mayσως έχετε δει ένα μοτίβο κύματος στην περιοχή όπου το πλέγμα κουνουπιών επικαλύπτεται όταν ο ήλιος λάμπει. Όταν μετακινείτε την κοντινή κουνουπιέρα ή αλλάζετε γωνία, κινείται επίσης το μοτίβο κύματος. Εάν το μοτίβο με τακτικά διαστήματα καθώς και τα δίχτυα επικαλύπτονται επανειλημμένα, αυτό το μοτίβο μπορεί να εμφανιστεί οπουδήποτε. Αυτό ονομάζεται φαινόμενο Muirre (Moire) και το μοτίβο που εμφανίζεται ονομάζεται πρότυπο Muirre.

PROJECT_MUIRE PATTERN

Τα μοτίβα Muir έχουν πολλά είδη μοτίβων και χαρακτηριστικών. Αυτό το μοτίβο χρησιμοποιείται για τη δημιουργία εννέα τομέων και 11 διαφορετικών τύπων μορίων για να παράγει μια ποικιλία οπτικών εφέ, ανάλογα με το μέγεθος του ήχου, σε πλαίσια δομής ορθογώνιου πλαισίου.

이 모기장 뿐만 이 를 무아레 (모아레, Moire) 이라고 부르고, 생기는 무늬 를 무아레 라고.

PROJECT_MUIRE PATTERN

아르 이 패턴 을 9 개 섹터 와 개의 개의 와,

Βήμα 1: Τι υλικά θα χρειαστούν;

Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν
Τι υλικά θα χρειαστούν

1. Body of the Moire Pattern

λευκό ακρυλικό 5T [940 mm X 840 mm]

Ακρυλική εκτύπωση [ακρυλικό μελάνι]

2. Moire Pattern - τύποι σε σχήμα

Περιστροφικός τύπος

τύπος επίπεδης φόρμας

Τύπος υλικού

Τύπος μαύρης τρύπας

Συρρίκνωση / Επέκταση εφέ

ένα φλεγόμενο αποτέλεσμα

3. Ηλεκτρικό κύκλωμα

Arduino Uno x 11

Πίνακας ψωμιού x 1

Stepper Motor_28BYJ-48 x 11

ULN2003A x 11

MAX9814 x 11

1. 무 아뢰 패턴 바디

  • T 5T (Λευκό ακρυλικό) 940mm X 840mm
  • Black 인쇄 (Μαύρο μελάνι)

2. 무 아뢰 패턴 의

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

3. 회로 구성

  • Ar 도 나노 ar (arduino UNO)
  • 모터 (28BYJ-48)
  • 모터 드라이브 (ULN2003A)
  • Μικρόφωνο max max (max9814)
  • (Σανίδα ψωμιού)
  • Supply 전원 (Τροφοδοσία 5V 25A)

Βήμα 2: Επίπεδο σχήμα

Επίπεδο σχήμα
Επίπεδο σχήμα
Επίπεδο σχήμα
Επίπεδο σχήμα
Επίπεδο σχήμα
Επίπεδο σχήμα

1. Επίπεδο σχήμα κοπής

Λευκό ακρυλικό 5T (940mm x 840mm) X 2

Διαφανές ακρυλικό 5T (940mm x 840mm) X 1

Διαφανές ακρυλικό 3T (940mm x 840mm) X 1

2. Εκτύπωση επίπεδης φιγούρας

Ακρυλική εκτύπωση

1. 도면 커팅

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

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

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

2. 도면 인쇄

아크릴 인쇄

Βήμα 3: Διάγραμμα κυκλώματος

Διάγραμμα κυκλώματος
Διάγραμμα κυκλώματος
Διάγραμμα κυκλώματος
Διάγραμμα κυκλώματος
Διάγραμμα κυκλώματος
Διάγραμμα κυκλώματος

hardware Αρχή λειτουργίας

POWER -> Arduino UNO -> Αισθητήρας ενίσχυσης ήχου μικροφώνου -> Motor Dirver -> Βηματικό μοτέρ

Βήμα 4: Κωδικοποίηση

Κωδικοποίηση
Κωδικοποίηση
Κωδικοποίηση
Κωδικοποίηση

Περιγραφή κωδικοποίησης Arduino

1. Σύνδεση Stepper Motor

Μόλις λάβαμε το σήμα, ελέγξαμε τον αριθμό των βημάτων 180 μοίρες, που συνδέονται με τον κινητήρα βημάτων. Ρυθμίστε τον αριθμό INT για να συνδεθείτε με τη γωνία περιστροφής του βηματικού κινητήρα.

2. Ανάλογα με την τιμή του μεγέθους του ήχου, ελέγξτε την ταχύτητα του βηματικού κινητήρα

Εξάγει τον ακροδέκτη A0 που σχετίζεται με τον αισθητήρα μικροφώνου, ορίζει την πληγή στην έξοδο στη σειριακή οθόνη και εάν ο αισθητήρας χρησιμοποιεί τη σύνταξη για να αυξήσει την ταχύτητα περιστροφής του βηματικού κινητήρα κατά 30 όταν η πληγή υπερβαίνει το 50.

3. Ταχύτητα και κατεύθυνση περιστροφής βηματικών κινητήρων που ανταποκρίνονται στη μουσική

Όταν η ταχύτητα είναι 10 μοίρες και ο σταθερός θόρυβος αυξάνεται, περιστρέφεται κατά 30 μοίρες, προκαλώντας τα διαφορετικά μοτίβα περιστροφών να φαίνονται διαφορετικά.

ARDUINO CORDING

#include // stepper motor- Βιβλιοθήκη

const int sampleWindow = 50; // Χρόνος δειγματοληψίας 50ms μη υπογεγραμμένη τιμή int. // Η τιμή του αισθητήρα ανίχνευσης ενίσχυσης ήχου που λαμβάνεται μεταβλητή σε βήματα intPerRevolution = 2048; // Η μείωση του θα σας επιβραδύνει και θα σας αυξήσει πιο γρήγορα

Stepper myStepper (βήματαPerRevolution, 11, 9, 10, 8). // Πείρος μοτέρ stepper int #1 στο Arduino digital 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) {value = analogRead (A0); // ανάκτηση δεδομένων αισθητήρα ήχου εάν (τιμή signalMax) // Μέγιστο μέγεθος Μέτρηση signalMax = τιμή; // Μέγιστο μέγεθος signalMax save else if (τιμή <signalMin) // Minimum Size Measurements signalMin = value; // Ελάχιστο μέγεθος sigmalMin εξοικονόμηση}}

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). // Γωνία κίνησης του βηματικού κινητήρα (βήματαPerRevolution = 2048) analogWrite (βήματαPerRevolution, Ταχύτητα*3);

Serial.println (Ταχύτητα); // Ελέγξτε την ταχύτητα του κινητήρα με τη σειριακή οθόνη

}

}

1. 스텝 모터 연결

수가 신호 스텝 스텝 도 180 도 제어 를 하였고, 스텝 모터 와 한

INT 넘버 를 하여 스텝 모터 의 의

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

μικρόφωνο 센서 와 연결된 A0 핀 을 출력 하고 시리얼, 모니터 모니터 에 if if if if if if if if if if if if if if if if if if, 구문 모터 속도 가 제어.

3. 음악 에 스텝 모터 모터

10 의 속도 가 되다가 일정, 일정 커 되면 되면 되면 의, 30 의 속도 로

ARDUINO CORDING

#include // stepper motor 의

const int sampleWindow = 50; // ms 한 시간 50ms ανυπόγραφη int αξία. // 소리 증폭 감지 센서 값 받는 변수 const int stepsPerRevolution = 2048; // *************** 낮추면 느려지고 높이면

Stepper myStepper (βήματαPerRevolution, 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; // 최소 크기 를 초기 에는 24 1024 로

while (millis () - startMillis <sampleWindow) {// 데이터 ms 50ms 마다 모으는 while 문 value = analogRead (A0); // 소리 감지 센서 에 더 데이터 받아 오기 αν (τιμή 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 (Speed); // 위 모터 의 스피드 를 위 위 1- 1- 1- 1- (1-30) myStepper.step (stepsPerRevolution / 100); // 스텝 모터 가 움직이는 steps (βήματαPerRevolution = 2048) analogWrite (βήματαPerRevolution, Ταχύτητα*3);

Serial.println (Ταχύτητα); // 시리얼 모니터 로 모터 의 속도 를 를

}

Συνιστάται: