Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Kravox! Drahtloses, bewegungs- und berührungsempfindliches Instrument

Komponenten und Verbrauchsmaterialien

Arduino Nano R3
Etwa 3$ / Stück. aus China (Jahr 2018). Stellen Sie sicher, dass Sie ein Angebot mit Kabel finden (siehe nächster Eintrag)
× 2
USB-A-auf-Mini-USB-Kabel
Diese Kabel dienen zum Verbinden der Arduinos mit der Powerbank und dem Computer. Sie können oft im Bundle mit einem Arduino Nano gekauft werden. Mini-USB wird auch USB-C genannt.
× 2
GY-521 MPU-6050 3-Achsen-Gyroskop + Beschleunigungssensor-Modul für Arduino
MPU6050 Gyroskope können aus China für ca. 1$ / Stück (Jahr 2018) bestellt werden
× 1
MPR121 Berührungssensorplatine
Der MPR121 wird nicht mehr von sparkfun verkauft, ABER günstige Exemplare aus China können für ca. 2$ bestellt werden / Stück (Jahr 2018)
× 2
nRF24L01+ Funkgerät
nrf24L01+ Funk-Transceiver werden oft bei ebay oder anderswo in Mengen von 3, 5 oder 10 Stück verkauft. Sie kosten ungefähr 1 $ / Stück (Jahr 2018) und es ist ratsam, ungefähr 5 und mehr zu kaufen, da einer von zehn möglicherweise nicht perfekt funktioniert (und wenn Sie etwas Funktionelles damit gebaut haben, möchten Sie mehr!)
× 2
Kondensator 10 µF
× 2
Kondensator 100 nF
× 2
40-polige Stiftleiste
40-polige Buchsenleisten können für ca. 1$ / 10 Stück (Jahr 2018) bestellt werden ab China.
× 5
Männliche Kopfzeile 40 Position 1 Zeile (0.1")
× 2
Kabel, vorzugsweise in mehreren Farben wie bei Flachbandkabel
Die benötigte Drahtmenge hängt davon ab, was Sie bauen möchten (=wie weit der Berührungssensor Elektroden sollten von der Sensorplatine entfernt sein.Dies kann sich schnell summieren, da ein Controller 24 Berührungselektroden enthält – wenn Sie also etwa 15 cm pro Elektrode veranschlagen, benötigen Sie allein dafür bereits mehr als 3,5 Meter Für die drei besenförmigen Controller, die ich für die Mailänder Designmesse gebaut habe, habe ich ca. 70m verwendet, um die Elektroden zu verdrahten). Ich würde vorschlagen, mindestens 7-10 Meter Kabel zu besorgen – wenn Sie einen Meter 10-adriges Flachbandkabel finden, sind Sie in Ordnung.
× 2
LED (generisch)
Sie benötigen drei blaue 5mm-Standard-LEDs. Natürlich können Sie auch andere Farben verwenden. (Für Standard-LEDs sind die passenden Widerstände grüne LED:220 Ohm, blaue LED:120 Ohm, weiße LED:56 Ohm. Wir verwenden jedoch 150 Ohm Widerstände für die blauen LEDs, um den durch sie fließenden Strom zu begrenzen)
× 3
10k Potentiometer
× 5
150 Ohm Widerstand (1/4 Watt)
Wird verwendet, um den durch die LEDs fließenden Strom zu begrenzen
× 3
Widerstand 220 Ohm
Diese Widerstände sind optional. Sie benötigen sie für den Fall, dass sich die Powerbank, die Sie mit dem Controller verwenden, automatisch abschaltet, da sie aufgrund des geringen Stromverbrauchs davon ausgeht, dass kein Gerät angeschlossen ist. Wenn das passiert, können Sie diese drei Widerstände parallel zwischen +5 und GND des Arduino löten – nur damit es mehr Strom verbraucht
× 3
Perfboard (mind. 50 Löcher)
Um das gleiche PCB-Layout wie ich zu erhalten, benötigen Sie Perf-Boards mit mindestens 50 Löcher auf der längsten Seite. Für den Controller müssen Sie ein Perfboard mit mindestens 9 * 50 Löchern schneiden. Das Perf-Board des Empfängermoduls muss 31 * 8 Löcher breit sein. Der Einfachheit halber werden Sie auch gerne zwei kleine Bretter schneiden, um die Stiftleisten anzubringen. Dafür benötigt ihr zwei weitere Bretter mit 2*24 und 2*17 Löchern. Unter der Annahme, dass bei jedem Zuschneiden des Perfboards eine Reihe weggeschnitten wird, benötigen Sie mindestens ein Perfboard, das 50 * 24 Löcher breit ist.
× 1
kleine Schachtel / Lebensmittelbehälter oder ähnliches
Um die Komponenten für das Master-Gerät einzufügen. Der Behälter sollte aus einem gut bohr- und/oder schneidbaren Material bestehen. Vorzugsweise kein Metallgehäuse, da dies die Fähigkeit des Funkgeräts beeinträchtigen könnte, mit dem/den Controller(n) zu kommunizieren
× 1
Powerbank
Sie können jede beliebige USB-Powerbank verwenden, vorzugsweise eine kleine, da sie Teil des Handhelds ist Steuerung
× 1
Alte Schachteln mit Haushaltsgegenständen oder etwas anderem...
Hier muss man kreativ sein:Für die Designmesse in Mailand habe ich Wasserrohre als Gehäuse verwendet für die Controller. In diesem Tutorial verwende ich Kartons mit Frischhaltefolie und Plastiktüten. Was wirst du verwenden?
× 1
Lot
× 1
Kupferband
Wird zur Herstellung der Berührungselektroden verwendet. Sie können auch andere leitfähige Gegenstände als Elektroden verwenden – vorzugsweise aus Kupfer, da es sich gut löten lässt. Wenn Sie wie in diesem Tutorial eine Frischhaltefolie als Gehäuse verwenden möchten, benötigen Sie etwas weniger als 4 Meter Kupferband (1cm breit)
× 1
Kleber
× 1
Superkleber
Sekundenkleber ist optional. Sie können damit die einreihigen Buchsenleisten zusammenkleben, um zweireihige Buchsenleisten zu erhalten. Natürlich können Sie auch Standardkleber oder Ihre Klebepistole verwenden.
× 1
Gummibänder
× 1

Notwendige Werkzeuge und Maschinen

Lötkolben (generisch)
Natürlich ist eine Lötstation schöner, aber ein einfacher Lötkolben reicht aus
Bohrschrauber + M7-Bohrer
Gebrauchsmesser
Kleine Säge
Stahllineal
Abisolierzange
Kleine Zange
Heißklebepistole (generisch)
Klemme
Kann beim Zusammenkleben der Kartons nützlich sein

Apps und Onlinedienste

Arduino-IDE
Pure Data Vanilla

Über dieses Projekt

Ein neues Art des Instruments

Kravox wurde im Rahmen eines Forschungsprojekts an der Universität Lund (Schweden) mit dem Ziel entwickelt, digitalen Musikinstrumentensteuerungen das Gefühl konventioneller, mechanischer Instrumente zu vermitteln.

Nun soll Kravox für jedermann zugänglich gemacht werden und als musikalische Experimentierplattform dienen, daher wurde dieses ausführliche Tutorial erstellt, um möglichst vielen Menschen die Nutzung dieses aufregenden neuen Instruments zu ermöglichen!

Wie man Kravox spielt

Kravox zu spielen ist genauso einfach. Stellen Sie sich vor, Sie spielen mit einem gewöhnlichen Objekt wie einem Besen herum, und die Art und Weise, wie Sie es berühren und durch den Raum bewegen, steuert die Klangerzeugung. Sehen und hören Sie in diesem Video, wie man Kravox spielt.

Was ist Kravox?

Kravox ist ein plattformübergreifendes kompatibles, digitales Open-Source-Musikinstrument, das aus drei Komponenten besteht – Controller/s, Receiver und Software.

Controller

Es können bis zu drei drahtlose Controller-Geräte angeschlossen werden. Jeder Controller verarbeitet Orientierungs- und Beschleunigungsdaten von einem digitalen MPU-6050-Gyroskop und Berührungsdaten von zwei MPR121-Touchsensorplatinen, die mit einem Arduino Nano verbunden sind. Der/die Controller senden/senden die Daten über den/die Funk-Transceiver/n nRF24L01 an ein Empfängergerät.

Wenn mehr als ein Controller verwendet werden soll, müssen dem zweiten und dritten Controller individuelle Adressen zugewiesen werden. Weitere Informationen zur Adressvergabe finden Sie in den Informationen im Abschnitt ERKLÄRUNGEN / NRF24L01 des Controller-Codes.

Empfänger

Der Empfänger gibt die von der/den Steuerung/en empfangenen Daten über USB an einen angeschlossenen Computer weiter, zusammen mit den Daten, die von mehreren Potentiometern gesammelt wurden. Der mitgelieferte Gerätecode des Empfängers ermöglicht die Kommunikation mit bis zu drei Controllern, funktioniert aber auch ohne Anpassungen mit nur einem oder zwei.

Software

Die Daten des Empfängers werden in einem in Pure Data Vanilla geschriebenen Programm verarbeitet, das Ton ausgibt.

Was wir in diesem Tutorial bauen werden – Schritt-für-Schritt-Anleitung

Das Schöne an Kravox ist, dass seine Form, sein Klang und seine Spielweise angepasst werden können. Dies gab mir die Möglichkeit, eine einfach zu replizierende Kravox-Version für dieses Tutorial zu entwerfen.

(Falls Sie neugierig sind:Auf meinem Youtube-Kanal finden Sie auch einen Zeitraffer, wie ich die größere Version von Kravox erstellt habe)

Sowohl das obige Video als auch dieses Tutorial zeigen Ihnen alle notwendigen Schritte, um voll funktionsfähige Controller und einen Empfänger aus leicht erhältlichen elektrischen Komponenten und Karton zu bauen.

Teil 1 – Sammeln von Komponenten und Werkzeugen

Sie benötigen die folgenden Komponenten, um einen Kravox-Controller + eine Empfangsstation zu bauen:

{1x} 50*24 Loch (Mindestgröße) Perfboard, {5x} 40-Pin Buchsenleisten, {5x} 40-Pin Buchsenleisten, {5x} 10 Kilo-Ohm Potentiometer und Knöpfe dafür, {3x} Blau 5mm Standard LEDs, {3x} 150 Ohm Widerstände, {2x} 10 Mikrofarad Kondensatoren, {2x} 100 Nanofarad Kondensatoren, {2x} NRF24L01 Funk-Transceiver, {2x} Arduino Nanos, {3x} 220 Ohm Widerstände, {2x} MPR121 Berührungssensorplatinen, {1x} GY-521 MPU 6050 Digitalgyroskop, {2x} USB-A-zu-USB-C-Kabel, {1x} 4 Meter (mindestens) 1 cm breites Kupferband, {1x} Powerbank, {2x } 7 Meter (Minimum) Draht in vielen Farben und optional {1x} 0,2 Meter ø=3mm Schrumpfschlauch.

Außerdem benötigen Sie Werkzeuge zum Zusammenbauen der Komponenten:

und später auch einige leere Kartons oder ähnliches:

Und Kleber, eine Klebepistole, Klebeband, eine oder mehrere Klammern und Gummibänder, um die Gehäuse herzustellen:

Teil 2 – Herstellung der Controllerplatine

Als nächstes werde ich erklären, wie man die Controller-Elektronik Schritt für Schritt aus den oben genannten Teilen herstellt

Wenn Sie Zweifel haben, wo Sie ein Kabel einlöten müssen, können Sie jederzeit zum Schaltplan unten zurückkehren und überprüfen, ob die Komponenten richtig angeschlossen sind, sobald Sie die Arduino- und Sensorplatinen an der von uns erstellten Platine befestigt haben.

2.1

Der erste Schritt besteht darin, das Perfboard und die weiblichen Stiftleisten zuzuschneiden und sie zusammen mit einem kleinen und einem großen Kondensator zusammenzusetzen, um die Zuverlässigkeit des Funk-Transceivers zu erhöhen:

Schneiden Sie das Perfboard mit einem Cuttermesser zu:

Schneiden Sie die Buchsenleisten mit einer Bügelsäge ab (ich habe sie auf ein Buch gelegt, um sie von der Tischplatte aus zu nivellieren):

Löten Sie die Teile ein. Sie können bereits jedes Pin-Paar der beiden langen, nebeneinander sitzenden Buchsenleisten verbinden. Für die restlichen Header reicht es, diese einfach mit etwas Lötzinn zu befestigen – am besten die Pins, die laut Schaltplan später sowieso keine Verbindung haben werden. Achten Sie beim Einlöten der Kondensatoren auf die Polarität des elektrolytischen 10-Mikro-Farad-Kondensators (der größere der beiden). Eine Seite hat einen Streifen und normalerweise auch ein kürzeres Bein. Diese Seite muss mit Masse verbunden werden. Der kleinere 100-Nano-Farad-Kondensator ist nicht polarisiert und kann beliebig gelötet werden.

Das Ergebnis sollte ungefähr so ​​aussehen:

2.2

Der zweite Schritt besteht darin, die beiden LEDs mit ihren Strombegrenzungswiderständen einzulöten.

Achten Sie auf die Polarität der LED:Eine Seite davon ist abgeflacht und hat meist auch einen kürzeren Schenkel. Diese Seite muss in Schritt 2.3 mit Masse verbunden werden. Die andere Seite verbinden wir nun mit einem cyanfarbenen Kabel mit der Buchse, an der später Arduino Pin D3 sitzt, wenn eingesteckt:

2.3

Als nächstes fügen wir alle roten und blauen Stromversorgungskabel hinzu. Rot steht für 3,3 Volt und Blau für Masse (GND)

Das Ergebnis sollte ungefähr so ​​aussehen:

2.4

Im vierten Schritt wird es auf dem Board schon etwas eng. Die drei Sensorboards kommunizieren über das I2C-Protokoll (Inter-Integrated Circuit). Das bedeutet, dass sie alle an die gleichen beiden Arduino-Pins angeschlossen werden können, also löten wir gelbe und grüne Kabel zwischen ihnen und den Arduino-Pins A4 und A5 ein. Wir fügen auch ein weißes Kabel für die Interrupt-Pin-Verbindung des Gyroskops hinzu.

Danach sieht das Board so aus:

2.5

Der Funk-Transceiver kommuniziert stattdessen über das SPI-Protokoll (serielle Peripherieschnittstelle), das mehr Verbindungen als I2C erfordert, daher fügen wir schwarze, graue, braune, violette und orangefarbene Kabel hinzu:

Das erhalten Sie:

2.6

Jetzt ist es an der Zeit, die Komponenten vorzubereiten.

Achten Sie neben dem Anlöten der Stiftleisten, falls diese nicht vorgelötet sind, besonders auf die Berührungssensorplatinen! Bei den billigen Modellen aus China ist der Adress-Pin ohne Pulldown-Widerstand fest mit Masse verdrahtet, sodass Sie diese Verbindung an der Unterseite der Platine mit einem Cuttermesser physisch durchtrennen müssen. Schneiden Sie zwischen den beiden Lötpads neben der Stelle, an der ADD geschrieben ist. Ich empfehle, mit einem Multimeter zu überprüfen, ob zwischen den Pads danach keine Verbindung mehr besteht:

Wenn alle Komponenten mit ihren Stiftleisten angelötet sind und die Berührungssensorplatinen vorbereitet sind, können Sie den Arduino Nano, das Gyroskop, die beiden Berührungssensorplatinen und den Funktransceiver in die Controllerplatine stecken:

Die (vielleicht) fertige Controllerplatine:

2.7

Nach nochmaliger Überprüfung, ob alles richtig verdrahtet ist, ist der nächste Schritt, den mitgelieferten Kravox-Controller-Code (siehe Anhänge) auf den Arduino nano hochzuladen, aber bevor Sie dies tun können, müssen Sie Bibliotheken für das Gyroskop installieren, die Berührungssensorplatinen und den Funk-Transceiver. Wenn Sie neu bei Arduino-Bibliotheken sind, erfahren Sie hier, wie Sie sie installieren.

  • Das Gyroskop MPU-6050 benötigt die Bibliotheken "I2Cdev.h" und "MPU6050_6Axis_MotionApps20.h" von Jeff Rowberg, die hier heruntergeladen werden können.
  • Die MPR121 Touch Sensor Boards benötigen die Bibliothek "MPR121.h" von Bare Conductive, die Sie hier finden. Es gibt mindestens zwei Versionen der Bibliothek. Stellen Sie sicher, dass Sie die von Bare Conductive entwickelte Version installieren und nicht die von Adafruit entwickelte.
  • Das Funk-Transceiver-Board NRF24L01 benötigt die Bibliotheken "nRF24L01.h" und "RF24.h" von TMRh20, die hier heruntergeladen werden können. Bitte beachten:Es existieren auch mindestens zwei Versionen dieser Bibliotheken mit identischen Namen. Stellen Sie sicher, dass Sie die von TMRh20 entwickelten und nicht die von maniacbug installieren.

Sobald die Bibliotheken installiert sind, können Sie den Kravox-Controller-Code hochladen. Wenn Sie bereits prüfen möchten, ob der Controller funktioniert, können Sie ihn über den Serial Monitor Daten von den Berührungssensoren und dem Gyroskop ausgeben lassen. Dafür musst du die Kommentarzeichen aufheben der letzte Abschnitt des Empfängercodes vor dem Hochladen:

indem Sie die Kommentarzeichen am Anfang ( /* ) und am Ende ( */ ) löschen, sodass der Code wie folgt aussieht:

Nachdem Sie den Code mit dieser Variante hochgeladen haben, öffnen Sie den Serial Monitor und stellen Sie ihn auf eine Baudrate (Datenübertragungsgeschwindigkeit) von 115200 ein. Jetzt sollten Sie Daten von den Sensoren sehen können, die sich ändern, wenn Sie die Controllerplatine bewegen und die Pins berühren der MPR121-Boards, die von 0 bis 11 beschriftet sind.

Wenn nichts funktioniert oder Sie nur Nullen erhalten, überprüfen Sie Ihre Verkabelung sorgfältig und vergleichen Sie sie mit dem obigen Schaltplan. Wenn Sie eine komische Ausgabe vom Serial Monitor erhalten, überprüfen Sie, ob Sie die richtige Baudrate eingestellt haben.

2.8

Verbinden Sie Ihr Controller Board mit der Powerbank, die Sie damit verwenden möchten.

Sollte sich das Board (oder genauer gesagt die Powerbank) nach einiger Zeit nicht automatisch abschalten, ist Ihr Controller Board fertig und Sie können mit Teil 3 fortfahren! Andernfalls führen Sie Schritt 2.9 aus

2.9

Im Prinzip ist das Controller-Board fertig, aber einige Powerbanks schalten sich nach wenigen Sekunden automatisch aus, wenn sie an das Controller-Board angeschlossen werden, wie es jetzt ist, weil es so wenig Energie verbraucht

Als schmutzige Lösung können wir einfach drei 220-Ohm-Widerstände parallel zwischen den 5V- und GND-Pins des Arduino hinzufügen. Diese Widerstände leiten zusätzliche Energie ab und wandeln sie in Wärme um, sodass der Controller genug verbraucht, damit die Powerbank eingeschaltet bleibt. Keine Sorge:Selbst mit einer kleinen Powerbank funktioniert es noch tagelang ohne Aufladen

Entfernen Sie den Arduino Nano und löten Sie die Widerstände wie folgt ein:

Das Board sieht also so aus:

und nach dem erneuten Anbringen der Komponenten sieht das (definitiv) fertige Controllerboard so aus:

Teil 3 – Herstellung der Empfängerplatine

In diesem Teil des Tutorials zeige ich Ihnen, wie Sie die Empfängerplatine herstellen. Der Prozess ist ziemlich ähnlich wie bei der Herstellung der Controllerplatine

Wenn Sie überprüfen möchten, wo ein bestimmtes Kabel angeschlossen werden soll, können Sie diesen Schaltplan verwenden:

3.1

Der erste Schritt besteht wiederum darin, das Perfboard und die weiblichen Stiftleisten zuzuschneiden und sie zusammen mit einem kleinen und einem großen Kondensator zu montieren, um die Zuverlässigkeit des Funkgeräts zu erhöhen. Die unterste weibliche Stiftleiste wird absichtlich länger als nötig belassen, sodass Sie sie später möglicherweise für andere Projekte wie einen Arduino-Granular-Synth verwenden können. Sie können diesen Schritt mit Schritt 2.1 vergleichen, um weitere Informationen zu erhalten

Ein Foto der Platine am Ende von Schritt 3.1:

3.2

Als nächstes fügen wir alle roten und blauen Stromversorgungskabel hinzu. Rot steht für 3,3 Volt und Blau für Masse (GND)

So sollte es aussehen:

3.3

Einlöten der Kabel für die SPI-Kommunikation:

3.4

Anbringen der Komponenten:

Die Empfängerplatine ist nun fertig, aber bevor wir den Kravox-Empfänger-Code aus den Anhängen auf den Arduino Nano hochladen können, müssen wir zuerst eine Schnittstelle für den Empfänger erstellen

Teil 4 – Erstellen der Empfängerschnittstelle

In diesem Teil des Tutorials zeige ich Ihnen, wie Sie ein Interface mit 4 Potentiometern und einer LED für den Empfänger erstellen. Die Schnittstelle ist wie folgt verdrahtet:

Und wird so in die Empfängerplatine eingesteckt:

Gehen Sie wie folgt vor:Nehmen Sie zunächst einen Kabelstrang von 8 Kabeln und löten Sie 5 davon an die mittleren Pins der Potentiometer an. Verwenden Sie vorzugsweise die gleichen Farben, um nicht verwirrt zu werden:

Als nächstes schneiden Sie ein 2 * 17 Loch breites Perfboard und eine 17-polige Stiftleiste auf die richtige Größe zu.

Bringen Sie die Kabel und die Stiftleiste an der Platine an. Achten Sie auf den obigen Schaltplan, um sicherzustellen, dass Sie die Kabel an den richtigen Stellen anschließen

Verbinden Sie nun eine Seite aller Potentiometer mit blauen Masse-Anschlusskabeln (und verwenden Sie vielleicht etwas längere Kabel als ich). Fügen Sie auch die blaue LED mit ihrem strombegrenzenden 150 Ohm Widerstand hinzu. Achten Sie wieder auf die Polarität der LED (vergleiche Schritt 2.2)

Als nächstes verbinden Sie die andere Seite aller Potentiometer mit grünen 5V-Anschlusskabeln (und verwenden Sie vielleicht etwas längere Kabel als ich).

The finished interface should look similar to this...

...and can be plugged into the receiver board like that:

Now you can also upload the Kravox Receiver code to the receiver's Arduino Nano.

If you want to see if it is working and receiving data from the controller, you again need to make a slight adjustment to the code before uploading. By default the Receiver will output it's data in a format that can be interpreted by pure data, but will not show useful information on the Serial Monitor. However you can change this behaviour in the code by commenting (adding // in front of) the line that says:

#define WRITE_AS_BYTES

and uncommenting (removing // in front of) the line that says:

// #define PRINT_VIA_SERIAL_MONITOR

So you turn this:

into that:

After uploading the altered code you will be able to see data from the controller and 4 of the potentiometers on the Serial Monitor as I demonstrate in this video:

Part 5 – Making the Controller Interface + Enclosure

Like the receiver the controller also gets an interface – a touch interface that we will make from copper tape:

It will be connected to the controller board like this:

As we directly want to attach the touch interface to the controller's enclosure, you should already have the (non-conductive) material at hand that you want to make the enclosure from. I used empty boxes that cling film and plastic bags came in:

Start making the controller interface by marking where you want to attach the touch electrodes. Please note that they must not touch or overlap each other:

Next, cut the 24 copper electrodes to size...

...and attach them to the enclosure:

Now we can make the plug. For that cut a 2 * 24 hole wide perfboard and a 24 pin male header to size and solder 24 cables to it. The cables in the middle should be at least 10 cm long. To the outside add the width of your electrodes plus the spacing in between for each cable. If for example you use 1 cm wide copper tape and leave 3 mm between the electrodes, your cable length should increase by 1.3 cm like this 10 / 11.3 / 12.6 / 13.9 / 15.2...

and solder the other ends of the cables to the electrodes like this:

Finish the interface by covering the copper surface with non-conductive adhesive tape:

Next fold the interface into a box and glue it:

Glue a smaller box to the box we made in the previous step. It later will contain the powerbank:

Cover the back of the controller board with some leftover cardboard orother slightly thicker non-conductive material:

Cut out holes for the LEDs and glue them and the powerbank (yellow object in the picture) in place. Make sure to place the powerbank in a way that you can still plug in and remove the USB-cable because that is how you turn your controller on and off. Also connect the touch-interface to the controller board and put it in the box. Most likely it will not move much, so you do not need to glue it in.

Make a cut out for the USB-A to USB-C cable at the junction of the two boxes, pull it through and connect it to the Arduino Nano:

Now the Controller is done!

You can close it with some rubber bands. If you later have problems with the sensors recognizing touch when there is none, try to put some non-conductive material like clingfilm or the like between the touch sensitive enclosure and the board and meandering cables. Also make sure to connect the powerbank when the touch sensitive part of the enclosure does not touch your hands or anything else. See Part 7 for more info.

Part 6 – Making the Receiver Enclosure

In part six we will make an enclosure for the receiver as well. You will need another cardboard box (I chose one that contained a bluetooth transceiver before – fitting huh?) and some knobs for the potentiometers

First cut out some circular holes for the potentiometers the LED. Also mak a cut out where you want to connect the USB-Cable to the Arduino Nano

Glue the Receiver board in. Make shure that the USB-C Jack of the Arduino Nano is aligned with the hole that you cut out for the cable connection in the step before.

Next glue in the LED and screw in all the potentiometers. The order how to put them in is the same as in the circuit diagram above:

Now you only need to attach the knobs....

...and the receiver is finished!

Part 7 – Connecting the Receiver to Pure Data

Now that all the hardware is finished, it's time to play some music with it! For that you need software that you can connect the hardware to. For Kravox that software is Pure Data Vanilla that you can download here for free

After installing Pure Data to your computer, start it and open the Kravox.pd file from the attachments. Please note that it needs to be saved on your computer in the same place as the drumsamples folder it comes with - otherwise Pure Data cannot find the samples

As soon as the Kravox.pd software interface has opened, look for a blue-info box and install the four so-called externals that are listed in the box. Installing them is straightforward:Just click on "help" in the Pure Data Menu, choose "Find additional objects on the internet" (might be phrased slightly different), search for "comport", "zexy", "freeverb" and "arraysize" one by one and install the most recent version. Now the four objects labeled, comport, repack, freeverb and arraysize should have a solid outline like in the picture below. You might need to restart Pure Data for that though

After installing the necessary externals you can connect the Receiver Box via USB. If you altered the code in Part 4 to use the Receiver with the Arduino Serial Monitor you need to undo this change first and upload the original code to the receiver's Arduino Nano before connecting and close the Arduino Serial Monitor, so the receiver is not busy trying to talk to it.

Now have a look at Pure Data's log / info window. If you see a rapidly updating data stream that's great because it means that pure data has already found the receiver, but most likely it will instead show you a red message like the one below that refreshes every other moment:

The red message might be a little different, but the result is the same:Pure Data did not yet succeed to connect to your receiver. That is because the program needs to be told, which USB port to listen to. USB-ports are sometimes a bit of a funny thing though:On a 2014 macbook Pro, Pure Data recognizes both USB ports as Serial Port 3, no matter to which you connect the receiver. In Milan I used Kravox with a Lenovo Yoga Pad with only one working USB-Port, that needed to be contacted as Serial Port 6, and recently installed it to another Windows Notebook with two USB-Ports, that wished to be addressed as Serial Ports 8 and 9... So my advice is just to try which number works with your USB-Port. For that I created a simple dialog as part of the Kravox.pd interface, where you can just click through the numbers until one works. You can also try the "Show available ports" and "Show connected USB-devices" buttons – Sometimes, but not very often that also provides useful information. However it takes a while until you get a response in the info window.

You will notice that you have found the right port number and that a connection has been established when the info window shows a data stream like this that updates rapidly:

Very good so far! Click save, so Pure Data will attempt to connect to this port the next time it opens automatically.

However we still need to turn the controller on. If you uncommented the last section of the Kravox Controller code in step 2.7 to connect the controller to the Serial Monitor you should upload the original Version again now.

Connect the controller board to the powerbank. When you do this, the touch-interface-enclosure around the the board should be closed and the touch sensitive part of the enclosure should not touch your hands or anything else, as the touch sensors sense their environment when powered up and assume it to be the untouched state

Congratulations – You are done!

Have much fun playing Kravox!

Code

Kravox Code for Arduino and Pure Data
Under this link you can download a Zip-File that contains the Arduino Code for the Kravox controller and the Kravox receiver, the Kravox.pd-file for Pure Data and the necessary drumsamples for the instrument. Please refer to the tutorial for instructions how to use the files.https://github.com/timkrahmer/Kravox

Schaltpläne


Herstellungsprozess

  1. Kanal und Schleuse
  2. Saxophon
  3. Pfeil und Bogen
  4. Hackbrett
  5. Rutronik:drahtlose Multiprotokoll-SoCs und -Module von Redpine Signals
  6. Bewegungssensor mit Raspberry Pi
  7. 5G-Wireless-Netzwerke könnten das IoT und die Steuern verändern
  8. Safety-Integrated Motion Control ermöglicht die Koexistenz von Sicherheit und Produktivität
  9. Anschlüsse für die Steuerung:Kommunikationsschnittstellen für Positions- und Bewegungssensoren
  10. Wie kann ich basierend auf meinem Werkstück zwischen Bandsäge und Kreissäge wählen?