Mục lục:

Giao diện kỹ thuật số âm nhạc: 6 bước (có hình ảnh)
Giao diện kỹ thuật số âm nhạc: 6 bước (có hình ảnh)

Video: Giao diện kỹ thuật số âm nhạc: 6 bước (có hình ảnh)

Video: Giao diện kỹ thuật số âm nhạc: 6 bước (có hình ảnh)
Video: Intro Video Dành Cho Công Nghệ , Đoạn Mở Đầu Chuyên Dụng Thu Hút Người Dùng Công Nghệ | 100pic.top 2024, Tháng mười một
Anonim
Giao diện kỹ thuật số âm nhạc
Giao diện kỹ thuật số âm nhạc

Chào mừng tất cả mọi người, Tôi muốn cho bạn xem Giao diện kỹ thuật số âm nhạc của riêng tôi. Tôi đã thực hiện nó trong thời gian tốt nghiệp kỹ thuật âm thanh của tôi, đây là tài liệu nghiên cứu của tôi. Để bắt đầu, tôi đã hỏi tôi làm thế nào tôi có thể sáng tác nhạc mà không cần DAW, với các nguồn cung cấp tái chế và khả năng chơi độc lập.

Trong phần hướng dẫn này, tôi sẽ dạy bạn cách sử dụng giao tiếp nối tiếp để gửi / nhận thông tin cảm biến (tương tự và kỹ thuật số) từ Arduino đến Raspberry pi theo hướng dữ liệu phần mềm để kích hoạt âm thanh.

Vật liệu được yêu cầu là:

x1 Raspberry PI3

x1 Boîter de bảo vệ PI3

x1 Micro SD (32G)

x1 Arduino UNO

x1 Cảm biến IR Sharp GP2Y0E02B

x1 Breadbord

x1 Máy đo thử nghiệm dạng tấm (0,2)

x28 Kháng 10MΩ

x2 Kháng 1.8kΩ

x1 Điện trở 10kΩ

x20 vấu đầu cuối Nam / Nữ

x1 Chất mang hàn

x1 cuộn dây thiếc (1 mét)

x1 Sắt hàn

x25 Dây đai Flexibles Nam / Nam

Bước 1: Cảm biến

Cảm biến
Cảm biến
Cảm biến
Cảm biến
Cảm biến
Cảm biến

Tôi đã sử dụng 4 áp điện từ điều khiển từ xa Harmonix XBOX 360 của "Guitar Hero". Tôi đã sử dụng nút bật / tắt do công tắc sậy từ của điều khiển từ xa của bàn đạp guitar hero bị kẹt.

Tôi đã sử dụng cảm biến IR Sharp GP2Y0E02B. Đối với tất cả các cảm biến này, tôi đã lắp ráp kéo lên để hoạt động hiệu quả…

Vì vậy, theo kinh nghiệm tôi đã tìm thấy giá trị điện trở đối với cảm biến nút và cảm biến hồng ngoại. Tuy nhiên, tôi đã thử nghiệm áp điện để biết toàn bộ quy mô của cái này và giá trị của điện trở cố định là điều kiện cần và áp dụng cho 4 cảm biến tương tự.

Bước 2: Kéo lên Montage

Kéo lên Montage
Kéo lên Montage
Kéo lên Montage
Kéo lên Montage
Kéo lên Montage
Kéo lên Montage
Kéo lên Montage
Kéo lên Montage

Sau khi thử nghiệm áp điện với máy phát điện áp, tôi cố định giá trị của điện trở là 7MΩ.

Cụm điện trở nút kéo lên là 10 kΩ.

Đối với cảm biến IR, tôi đã sử dụng hai điện trở 1, 8kΩ giữa điện áp cung cấp tương ứng và SDA (dữ liệu) và SCL (đồng hồ).

Hãy cẩn thận vì các giá trị của điện trở đó dành cho RTX Arduino UNO; một số điều cần biết về đầu vào trở kháng Arduino: 10MΩ.

Bạn có thể thấy phần dựng phim kéo lên trên hình cuối cùng của bước này; Tôi đã cố định dây đeo áp điện ở chân 0 1 2 3 trên UNO, dây đeo nút ở 2 chân kỹ thuật số nhưng giao tiếp giá trị trên chân 6 trên UNO và dây đeo cảm biến IR ở 4 chân 5 trên UNO, tất cả các đầu vào tương tự của Arduino Uno.

Bước 3: Mã Arduino

Để đảm bảo rằng hoạt động có hiệu quả, tôi đã thử nghiệm gửi / nhận thông tin của các cảm biến tới Arduino.

Tôi đặt các tệp trong mô tả nhưng bạn có thể tìm thấy chúng trong phần ví dụ về lập trình Arduino Genuino, ngoại trừ cảm biến IR vì nó chưa hoàn chỉnh, tôi đã thay đổi một số thông tin trong phần "xác định" như "dịch chuyển" và tôi đã thay đổi phép tính đo lường thành thường xuyên. trong các biến thể khoảng cách. Bạn có thể đã thấy "Wire" trong mã cảm biến IR. Thật vậy, tôi đã sử dụng giao thức I2C để giao tiếp, mời bạn xem giao thức I2C, rất thú vị, bạn có thể sử dụng giao thức này để truyền trong thời gian thực tất cả các cảm biến số mà bạn muốn.

Bước 4: Cả giao tiếp nối tiếp Arduino Raspberry

Cả giao tiếp nối tiếp Arduino Raspberry
Cả giao tiếp nối tiếp Arduino Raspberry
Cả giao tiếp nối tiếp Arduino Raspberry
Cả giao tiếp nối tiếp Arduino Raspberry

Zê: D

Như bạn có thể thấy trong hình đầu tiên, liên kết Arduino-Raspberry là đầu cắm USB.

Tôi đã tìm thấy một cách để nhận thông tin của cảm biến trực tiếp bằng PureData Extented được cài đặt trong Raspberry PI. Tại sao lại mở rộng PureData? Bởi vì phiên bản Vanilla không sử dụng cùng một thư viện với một ứng dụng trong môi trường Raspbian.

Vì vậy, hãy khởi chạy StandardFirmata trong Arduino Genuino để sửa lỗi I / O và định giá các biến thể theo đúng cách!

Để lấy lại thông tin của giá trị trong Raspberry PI, tồn tại 2 giao thức: Firmata và Msg.

Tôi chọn Firmata vì một lý do, nó đơn giản hơn để nhận thông tin trong PureData thông qua bản vá Pduino, một môi trường.

Tôi mời bạn khám phá Msg nếu bạn sử dụng giao thức OSC.

Bước 5: Đã nhận được bản vá PureData

Đã nhận được bản vá PureData
Đã nhận được bản vá PureData

Thật vậy, sau nhiều tuần viết mã trên Genuino, tôi đã thành công nhận được tất cả thông tin từ cảm biến của mình trong một trang, điều này cho phép thấy các biến thể trong thời gian thực nhờ Pduino, một bản vá trong Puredata, các thư viện phần bổ sung.

Từ bước này, chúng ta không chạm vào mã Arduino nữa. Thông tin của Value có thể đọc được.

Như tôi nhận thấy ở bước 3, tôi nhận được thông tin từ nút kỹ thuật số ở dạng analog 6 chân, thật đơn giản để thấy hoạt động hiệu quả của giao tiếp. Tất cả trong một dòng.

Bước 6: Phát triển PureData

Phát triển PureData
Phát triển PureData
Phát triển PureData
Phát triển PureData
Phát triển PureData
Phát triển PureData
Phát triển PureData
Phát triển PureData

PureData là một ngôn ngữ cụ thể và bạn phải dành thời gian rảnh rỗi để thực hiện thành công việc chắp vá tốt đẹp.

Một số bản vá PureData sẽ có sẵn trong GitHub.

Tôi hy vọng rằng những gì tôi viết ở đây đã giúp bạn bắt đầu dự án của riêng bạn gần với dự án của tôi.

Đề xuất: