제조공정
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
SeeedStudio의 EL Shield가 있는 EL 테이프를 Arduino UNO와 함께 사용했습니다. 테이프는 4개 채널 중 3개 채널의 실드에 연결되었습니다.
완료되면 코드를 업로드하고 음악을 재생하기만 하면 됩니다!
이 코드는 Processing 뿐만 아니라 Processing Arduino 라이브러리도 사용합니다. 사용하려면 이 두 가지가 모두 작동해야 합니다.
여기에서 Arduino용 라이브러리를 다운로드하세요.
https://processing.org/
에서 처리 받기
모든 것이 설치되면 arduino 라이브러리를 처리 스케치북 폴더의 라이브러리 폴더로 이동하고 처리 편집기에서 코드를 엽니다.
줄 변경:
노래 =minim.loadFile("/home/paul/Music/dope.mp3", 2048);
BeatWrite의 38행에서 컴퓨터의 로컬 MP3 파일로 이동하고 재생을 클릭하세요!
섹션> <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">/** * 이 스케치는 FREQ_ENERGY 모드에서 BeatDetect 개체를 사용하는 방법을 보여줍니다.
*isKick
,isSnare
를 사용할 수 있습니다. , isHat,isRange
, * 및isOnset(int)
추적하려는 비트의 종류를 추적하려면 * true로 보고합니다. 또는 분석 상태에 따라 거짓입니다. 분석을 "확인"하려면 오디오의 연속적인 버퍼와 함께detect
*를 호출해야 합니다.draw
내에서 이 작업을 수행할 수 있지만 이렇게 하면 * 일부 오디오 버퍼를 놓칠 가능성이 있습니다. 스케치는BeatListener
*라는AudioListener
를 구현하므로 버퍼를 반복하지 않고 시스템이 처리하는 오디오의 모든 버퍼에서detect
를 호출할 수 있습니다. * 또는 하나가 누락되었습니다. ** 이 스케치는 전체 노래를 재생하므로 로드하는 데 약간 느릴 수 있습니다. */import processing.serial.*;import ddf.minim.*;import ddf.minim.analysis.*;import cc.arduino.*;Minim minim;AudioPlayer 노래;BeatDetect beat;BeatListener bl;Arduino arduino;int ledPin =1; // EL 채널 1에 연결된 LED int ledPin2 =2; // EL 채널 2에 연결된 LED int ledPin3 =3; // EL 채널에 연결된 LED 3float kickSize, snareSize, hatSize;void setup() { size(512, 200, P3D); 최소값 =새로운 최소값(이); arduino =새로운 Arduino(이, "/dev/ttyACM1", 57600); 노래 =minim.loadFile("/home/paul/Music/dope.mp3", 2048); 노래.재생(); // FREQ_ENERGY 모드인 비트 감지 객체는 // 노래의 버퍼 크기 길이와 // 노래의 샘플 레이트로 캡처된 샘플을 예상합니다. beat =new BeatDetect(song.bufferSize(), song.sampleRate()); // 감도를 300밀리초로 설정합니다. // 비트가 감지된 후 알고리즘은 300밀리초 동안 대기합니다. // 다른 비트가 보고되도록 허용합니다. // 너무 많은 가양성을 제공하는 경우 이를 사용하여 알고리즘을 약화시킬 수 있습니다. 기본값은 10이며, // 이는 본질적으로 감쇠가 없습니다. 민감도를 음수 값으로 설정하려고 하면 // 오류가 보고되고 대신 10으로 설정됩니다. beat.setSensitivity(100); kickSize =snareSize =모자 크기 =16; // 분석을 위한 버퍼를 놓치지 않도록 새로운 비트 리스너를 만듭니다. bl =new BeatListener(beat, song); textFont(createFont("헬베티카", 16)); textAlign(중앙); arduino.pinMode(ledPin+3, Arduino.OUTPUT); arduino.pinMode(ledPin2+3, Arduino.OUTPUT); arduino.pinMode(ledPin3+3, Arduino.OUTPUT); }무승부 그리기() { 배경(0); 채우기(255); if(beat.isKick()) { arduino.digitalWrite(ledPin+3, Arduino.HIGH); // kickSize =32에 LED를 설정합니다. } if(beat.isSnare()) { arduino.digitalWrite(ledPin2+3, Arduino.HIGH); // snareSize =32에 LED를 설정합니다. } if(beat.isHat()) { arduino.digitalWrite(ledPin3+3, Arduino.HIGH); // LED를 hatSize =32로 설정합니다. } arduino.digitalWrite(ledPin+3, Arduino.LOW); // LED 끄기 arduino.digitalWrite(ledPin2+3, Arduino.LOW); // LED 끄기 arduino.digitalWrite(ledPin3+3, Arduino.LOW); // LED 끄기 textSize(kickSize); text("킥", 너비/4, 높이/2); 텍스트 크기(스네어 크기); text("SNARE", 너비/2, 높이/2); 텍스트 크기(모자 크기); text("모자", 3*너비/4, 높이/2); 킥 사이즈 =제약(킥 사이즈 * 0.95, 16, 32); snareSize =제약(스네어 크기 * 0.95, 16, 32); 모자 크기 =제약(햇 크기 * 0.95, 16, 32); }void stop() { // 작업이 끝나면 항상 Minim 오디오 클래스를 닫습니다. song.close(); // minim을 종료하기 전에 항상 Minim을 중지합니다.stop(); // 이것은 스케치를 닫습니다. super.stop();}
클래스 BeatListener는 AudioListener{ private BeatDetect beat를 구현합니다. 개인 AudioPlayer 소스; BeatListener(BeatDetect 비트, AudioPlayer 소스) { this.source =소스; this.source.addListener(이); this.beat =비트; } 무효 샘플(float[] samps) { beat.detect(source.mix); } 무효 샘플(float[] sampsL, float[] sampsR) { beat.detect(source.mix); }}섹션>
제조공정
조인트 테이프는 도장을 준비하기 위해 건식 벽체 조인트를 마무리하는 데 사용되는 제품입니다. 건식 벽체를 세우는 것은 비교적 간단한 과정이지만, 엉성한 외관의 벽을 신경 쓰지 않는 한 페인팅을 위해 조인트를 준비하는 것은 실제로 약간 까다롭습니다. 이음새를 매끄럽게 하여 페인팅 후에 보이지 않게 하는 과정을 테이핑이라고 합니다. 이 작업은 이음매 위에 이음매를 붙이는 작업을 포함하기 때문입니다. 이 제품은 많은 철물점과 주택 수리점에서 구입할 수 있습니다. 조인트 테이프에는 두 가지 종류가 있습니다. 첫 번째는 종이 테이프 제품
CNC 프로그래밍은 오늘날 제조의 핵심입니다. 최신 CNC 기계는 프로그램으로 실행되기 때문에 작업자는 사용할 수 있는 코드 유형과 사용 방법을 알아야 합니다. CNC 소프트웨어에서 사용하는 가장 일반적인 프로그래밍 언어는 G 코드이며 M 코드에도 특정 응용 프로그램이 있습니다. CNC 가공에서 G 코드와 M 코드는 중요한 역할과 기능을 합니다. G 코드:CNC 프로그래밍의 G 코드는 기계의 움직임을 제어하여 부품을 이동하는 기계의 방향과 위치를 나타냅니다. M 코드:CNC 프로그래밍의 M 코드는 특정 작업이나 프로그램의 시작