MIDIfying a Electronic Organ: 6 Step
MIDIfying a Electronic Organ: 6 Step
Anonim
MIDIfying a Electronic Organ
MIDIfying a Electronic Organ

Tài liệu hướng dẫn này hướng dẫn bạn cách sử dụng cây đàn organ điện tử cũ không khóa mà bạn có trong nhà để xe hoặc tầng hầm và chuyển đổi thành một nhạc cụ hiện đại. Chúng tôi sẽ không tập trung quá nhiều vào các chi tiết của cây đàn organ cụ thể mà bạn có, ngoài việc nói rằng về cơ bản bàn phím âm nhạc điển hình là một tập hợp các phím kết nối khi được nhấn vào một bus chung. Trong thế giới cũ, mạch điện đáng kể tồn tại cùng với các phím khiến một đầu ra được truyền lên xe buýt, đến lượt nó được khuếch đại và chuyển đến hệ thống âm thanh. Ngày nay bàn phím là một tập hợp các cảm biến; chúng tôi đọc trạng thái của các phím riêng lẻ và gửi các thay đổi đến bộ tổng hợp phần mềm, được điều khiển bởi các lệnh MIDI.

Hướng dẫn bao gồm phần lớn quy trình liên quan, từ thu thập trạng thái kỹ thuật số của các phím, quản lý nó bằng bộ vi xử lý Arduino, xây dựng luồng dữ liệu MIDI và chuyển nó đến máy tính (bao gồm Raspberry Pi) đang chạy bộ tổng hợp.

Bước 1: Bàn phím trừu tượng

Phần sau đại diện cho một cơ quan điện tử được trừu tượng hóa, trong đó mỗi hàng là một tập hợp các phím hoặc điểm dừng hoặc các công tắc điều khiển khác. Các mục nhập cột 0 đại diện cho các phím riêng lẻ và - một bus mà phím được kết nối khi nó được nhấn. 61 phím Great Manual có thể là hàng đầu tiên, Sổ tay Swell ở hàng thứ hai, Bàn đạp ở hàng thứ ba và Dừng lại, v.v. ở hàng thứ tư. Các hàng thực sự chứa 64 phần tử vì ý nghĩa kỹ thuật số của nó là sức mạnh của 2 vượt quá 61. Trong các hàng bàn phím, các phím tuân theo quy ước âm nhạc bình thường với C ở bên trái.

Xe buýt 0 - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ……………….. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Xe buýt 1 - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ……………….. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Xe buýt 2 - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ……………….. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Bus 3 - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ……………….. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Mỗi xe buýt là độc lập và được cách ly về điện với các xe buýt khác. 8 phần tử đầu tiên được đánh dấu trong Bold, với 8 khối như vậy theo cách sắp xếp ở trên. Bước tiếp theo trình bày chi tiết về một Bảng mạch in hoạt động trên các phần tử in đậm và 7 khối khác của chúng.

Các phím đã được biểu diễn dưới dạng số 0 ở trên. Chúng ta có thể xem xét điều này xa hơn một chút và nói rằng một phím là số 1 khi được nhấn và 0 nếu không. Và các phím có thể là các phím đàn màu trắng hoặc phím đàn màu đen thông thường, hoặc bàn đạp organ, hoặc các phím dừng của đàn organ, hoặc một dãy công tắc xoay có thể mang lại cho chúng ta giai điệu saxophone. Chúng tôi chỉ đơn giản coi công cụ như một tập hợp các công tắc trên một tập hợp các xe buýt, và về cơ bản là một luồng kỹ thuật số của 0 và 1.

Bước 2: Nối dây từ bàn phím

Nối dây từ bàn phím
Nối dây từ bàn phím
Nối dây từ bàn phím
Nối dây từ bàn phím

Để giúp nối dây các bàn phím, một bảng mạch in đã được xây dựng bằng Eagle CAD. Kích thước của nó là khoảng 96mm X 43mm và bắt buộc phải có 8, trải dài trên mặt sau của cụm bàn phím organ.

Hãy cùng chúng tôi xem xét chi tiết Bảng mạch in (PCB) này. Hình ảnh bên trái là mặt trước của PCB mà các thành phần được gắn vào, và bên phải là mặt sau của nó, nơi chúng tôi hàn các thành phần.

Đầu tiên, các thành phần 2X3 ở trên cùng được thiết kế để kết nối với các phím ở trên, với hai kết nối trên cùng là 0 và 1, cặp tiếp theo là 2 và 3, và cặp dưới cùng cũng là bus 2 và 3. Người ta đã tìm thấy một PCB Tiêu đề 2X3 đủ cứng để chứa dây móc nối sợi đơn từ các phím được đẩy đơn giản vào tiêu đề, tương tự như hệ thống dây lá chắn Arduino. Dây móc mà tôi sử dụng đã được phục hồi từ cơ quan ban đầu; nó có đường kính 0,75 mm.

Vì vậy, mỗi Tiêu đề 2X3 chứa một cột gồm các phím được tô đậm, hay nói một cách khái quát là một nốt. Vì vậy, hội đồng quản trị yêu cầu 8 trong số các tiêu đề này. Hình ảnh chứa một trong những tiêu đề nữ này ở trên cùng bên trái. Phần giữa của bảng có 32 điốt (1N4148 hoặc tương tự), mỗi điốt tương ứng với một trong các đầu vào màu đỏ. Cực tính của diode như được đánh dấu trên bảng, với cực âm (dải màu đen) ở đầu trên cùng của bảng. Một diode duy nhất được minh họa ở vị trí 4. Cuối cùng, một tiêu đề đực 2X5 duy nhất nằm ở phần thấp nhất của bảng. 2 chân trên của nó không được kết nối. Chân 1 nằm ở góc dưới cùng bên phải và kết nối với 4 điốt ngoài cùng bên trái, Chân 2 với điốt 5-8 và cuối cùng là 29-32 kết nối với chân 8. Đầu cắm có thể được cắt từ phần DIL dài hơn, như minh họa trên hội đồng quản trị. Hệ thống dây điện giữa các thành phần khác nhau được mang trong chính PCB, chỉ cần hàn các điốt và tiêu đề.

8 trong số các bảng hoàn chỉnh này được gắn ngay bên dưới sách hướng dẫn sử dụng các lỗ gắn được cung cấp, kéo dài thuận tiện trên đàn organ. Do đó, chức năng của bảng này là lấy một khối gồm 8 phím trên 4 bus và trình bày nó với một tiêu đề đực mà cáp ribbon 10 chiều sẽ được kết nối để chuyển sang giai đoạn tiếp theo. Thiết kế bảng có thể được tải xuống từ tệp zip được cung cấp.

Bước 3: Hợp nhất đầu ra bàn phím vào thanh ghi Shift

Hợp nhất đầu ra bàn phím vào thanh ghi Shift
Hợp nhất đầu ra bàn phím vào thanh ghi Shift

Cần thêm hai PCB nữa, như đã trình bày ở trên. Chúng được gọi là DIN R5 và phổ biến trong thế giới MIDI, mặc dù chúng chỉ cung cấp chức năng thanh ghi dịch chuyển. Đầu tiên ở phần ngang phía trên, bạn có thể thấy 4 tiêu đề đực 2X5, kết nối qua cáp ribbon với phần đối ứng 2X5 trên 8 bo mạch ở trên. Chúng tôi cần hai bảng DIN để chứa 8 loại cáp như vậy.

Xa hơn bên dưới bảng là các chip IC tạo thành một thanh ghi dịch chuyển 32-bit, và cuối cùng chúng tôi quan tâm là 2 tiêu đề 2X5 nữa, một trong số đó (J2) kết nối với các bảng DIN xa hơn (cái thứ hai của chúng tôi), và J1 còn lại để Arduino hoặc bộ vi xử lý giống Arduino của chúng tôi.

Tóm lại, chúng tôi có -

  • Lên đến 4 xe buýt 64 phím cấp vào
  • 8 bảng 32 đầu vào, 8 đầu ra trên mỗi bus
  • 64 đầu ra này cấp vào 2 thanh ghi dịch chuyển 32 bit
  • bộ vi xử lý Arduino sẽ quay vòng qua các bus

Bước 4: Đặt phần cứng lại với nhau

Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau
Đặt phần cứng lại với nhau

Các kết nối giữa Arduino, hai bảng DIN và cáp ribbon từ tổ hợp phím đàn organ được minh họa trong hình trên. Lưu ý rằng DIN’s J2 thứ hai chỉ để trống.

Các đầu nối sử dụng công nghệ IDC (tiếp điểm cách điện-dịch chuyển), và các dây không cần phải bị tước hoặc tách rời. Chúng được áp dụng cho cáp bằng một công cụ nén có sẵn tại những người có sở thích. Ở đầu bên trái của cáp uốn có thể được làm gọn bằng một lưỡi dao cạo; ở trung tâm bên dưới của đầu nối cung cấp một ổ cắm cái 2X5; và ở bên phải một chế độ xem trên cùng của trình kết nối.

Các bảng DIN và bảng PCB tùy chỉnh được gắn vào đồ gỗ nội tạng bằng cách sử dụng vít và miếng đệm bằng gỗ đầu tròn bằng đồng thau. Hình trên. Cáp dây hookup phía trên kết nối các điểm dừng hoặc điều khiển với bảng và khối lượng ở bên trái phát ra từ bàn đạp. Cuối cùng, việc loại bỏ bộ tạo âm và các loại chức năng khác của đàn organ ban đầu đã cho phép tái sử dụng khoảng trống của tủ để cất rượu.

Bước 5: Phức hợp Arduino

Phức hợp Arduino
Phức hợp Arduino
Phức hợp Arduino
Phức hợp Arduino
Phức hợp Arduino
Phức hợp Arduino
Khu phức hợp Arduino
Khu phức hợp Arduino

Phức hợp Arduino được nhìn thấy ở bên trái của hai bảng DIN ở trên bây giờ sẽ được thảo luận. Nó bao gồm ba lớp riêng biệt, được kết nối với nhau như lá chắn Arduino. PCB bao gồm các lớp có màu xanh lam, xanh lục và đỏ ngẫu nhiên.

Lớp Blue (ở trên cùng) là một tấm chắn do Freetronics sản xuất, cung cấp màn hình ký tự tinh thể lỏng 16X2. (2 hàng 16 ký tự). Nó không hoàn toàn cần thiết, nhưng cực kỳ hữu ích trong việc kiểm tra hoạt động của bàn phím, bàn đạp và điểm dừng. Nó được điều khiển bởi thư viện LiquidCrystal và các biến thể phần cứng khác có thể dễ dàng thay thế.

Lớp Đỏ (ở dưới cùng) là Teensy 3.2 được gắn trên bảng Sparkfun Teensyduino. Teensy cung cấp hỗ trợ MIDI trực tiếp và hoạt động như một Arduino UNO. Vì vậy, sử dụng Teensy tiết kiệm các thành phần ở hạ lưu. Kết nối nguồn điện (5V 2A) ở dưới cùng bên trái và đầu nối USB hỗ trợ đầu ra nối tiếp hoặc MIDI ở giữa bên trái. Các tiêu đề ở các cạnh trên và dưới cung cấp chức năng lá chắn Arduino tiêu chuẩn.

Lớp Xanh lá cây (xen giữa Xanh lam và Đỏ) là một bảng PCB tùy chỉnh. Mục đích rộng rãi của nó là hỗ trợ các bit và mảnh chẳng hạn như liên kết với bảng DIN và cắt giảm hệ thống dây điện bên ngoài. Một số chức năng của nó là dư thừa. Nó bao gồm một số mạch để hỗ trợ MIDI thông qua Arduino UNO tiêu chuẩn. Nó cũng cung cấp một tiêu đề đực 2X5 để kết nối cáp ruy-băng với tiêu đề J1 trên bo mạch DIN đầu tiên. Các chức năng khác bao gồm hỗ trợ Điều khiển âm lượng; Organ ban đầu sử dụng một chiết áp 10K (nồi) được điều khiển bởi Foot Shoe.

Bốn tiêu đề ngang cung cấp kết nối lá chắn Arduino tiêu chuẩn với bảng Teensy bên dưới và màn hình Tinh thể lỏng. Dấu ấn giống như một trạm xe buýt ở góc dưới cùng bên trái là phần còn sót lại và tiêu đề dọc dài ở bên trái cung cấp kết nối với bốn xe buýt, điều khiển âm lượng và mặt đất.

Bảng tùy chỉnh được phát triển bằng Eagle CAD và các tệp zip của tổ hợp Gerber được gửi đến các nhà chế tạo PCB có sẵn trong tệp zip PCB2.

Bước 6: Phần mềm Arduino

Phần mềm ban đầu được phát triển cho Arduino UNO, và sau đó đã được sửa đổi với rất ít thay đổi để sử dụng Teensy. Việc sử dụng mã pin không thay đổi.

Màn hình Liquid Crystal sử dụng nửa tá chân, và người ta đã quyết định sử dụng các chân Analog ở chế độ kỹ thuật số để có được một khối các chân liền kề cho các bus. Điều khiển Âm lượng sử dụng một chân Analog khác ở chế độ Analog.

Phần lớn phần mềm liên quan đến việc đọc các phím riêng lẻ, bàn đạp và phím dừng bằng cách bật lần lượt từng bus và di chuyển các giá trị bit ra khỏi thanh ghi shift do bảng DIN cung cấp.

Môi trường hạ nguồn thường sẽ bao gồm một bộ xử lý chạy Windows, UNIX hoặc Linux và một Bộ tổng hợp phần mềm như FluidSynth, có thể do jOrgan quản lý. FluidSynth cuối cùng được điều khiển bởi một hoặc nhiều Soundfont, chỉ định âm thanh nào được tạo ra khi nhận được một lệnh MIDI cụ thể. Có một số tương tự với các phông chữ Xử lý Văn bản. Đối với bàn phím và bàn đạp, sự thay đổi so với lần quét trước đó sẽ dẫn đến việc tạo ra một chuỗi MIDI Note On hoặc Note Off. Phím ngoài cùng bên trái là MIDI 36 và tăng dần trên bàn phím. Chỉ số bus sẽ dễ dàng cung cấp phạm vi cho số kênh MIDI. Đối với các phím dừng, trình tự điều khiển chương trình MIDI được tạo hoặc có thể hợp lý khi tạo Ghi chú Bật / Tắt và để nó cho jOrgan hoặc phần mềm xuống dòng MIDI tương tự để diễn giải, điều chỉnh và mở rộng. Bất cứ khóa học nào được thực hiện, quyết định cuối cùng được áp đặt bởi định nghĩa của (các) Soundfont hạ lưu. Phần mềm này đã được sử dụng dưới nhiều hình thức khác nhau để tạo MIDI qua USB tới Windows chạy ứng dụng Wurlitzer và FluidSynth, và cho Raspberry Pi chạy FluidSynth và MIDI Soundfont chung. Mô tả này được thừa nhận là sơ sài, nhưng bất kỳ ai quen thuộc với môi trường Arduino hoặc C sẽ không gặp khó khăn gì khi sửa đổi nó cho mục đích riêng của họ; có tài liệu nội bộ hợp lý và mô đun hợp lý.

Phần mềm Arduino được chứa trong organno.zip.