************************************* * * * V3 * * Godfried-Willem Raes * * versie 2006 * ************************************* last update: 21.05.2006 - 14u50 MIDI kanaal voor : 3 (offset 0) of 4 (offset 1) PICSPECS: PIC1: pulse board (16 outputs + 1 extra) ---------------------------------------- hiermee worden de saxofoonkleppen bestuurd. Voor elke midi noot moet een 16-bit getal gedefinieerd zijn waarbij elk bit overeenkomt met een uitgang en dus met een klep. De tabel moet via sysex kunnen geherprogrammeerd worden. Keyword voor deze sysex: sax1 Een tabel neemt dus 127 16-bit woorden in beslag. De selektie van een andere tabel kan dan via program change. vb: 100 tot 127 voor de selektie van deze tabellen. De kleppen werken alleen in on/off mode. Nota: de mosfets op het PIC board sturen hier niet rechtstreeks de kleppen, maar wel een ander board waarop de hoogspannings mosfets gemonteerd zijn. De extra output wordt op dit board gebruikt voor het inschakelen van de voedingsspanning voor de kleppenmagneten. (Via een relais). - mapping op midi controller 65 (on/off) default lookup voor de noot-klep relatie binair genoteerd: (MSB = laagste klep) Deze lookup moet worden geselekteerd bij ontvangst van program change zero. 0 , 00000000 00000000 1 , 10000000 00000000 2 , 11000000 00000000 3 , 00000000 00000000 4 , 00010000 00000000 5 , 11000000 00000000 6 , 01111100 00100000 7 , 00000000 00000000 8 , 10000000 00000000 9 , 01000000 00000000 10, 11000000 00000000 11, 00100000 00000000 12, 00000000 00000000 13, 10000000 00000000 14, 11000000 00000000 15, 00000000 00000000 16, 00010000 00000000 17, 11000000 00000000 18, 01111100 00100000 19, 00000000 00000000 20, 10000000 00000000 21, 01000000 00000000 22, 11000000 00000000 23, 00100000 00000000 24, 00000000 00000000 25, 10000000 00000000 26, 11000000 00000000 27, 00000000 00000000 28, 00010000 00000000 29, 11000000 00000000 30, 01111100 00100000 31, 00000000 00000000 32, 10000000 00000000 33, 01000000 00000000 34, 11000000 00000000 35, 00100000 00000000 36, 00000000 00000000 37, 10000000 00000000 38, 11000000 00000000 39, 00100000 00000000 40, 00010000 00000000 41, 11000000 00000000, &HB000 42, 01111100 00100000 43, 00000000 00000000, &H00 44, 10000000 00000000, &H8000 45, 01000000 00000000, &HB000 46, 00000000 00000000 47, 00100000 00000000 48, 00000000 00000000 49, 10000000 00000000 50, 11000000 00000000 51, 00100000 00000000 52, 00010000 00000000 53, 00001000 00000000 54, 01111100 00100000 55, 01111110 11000000 56, 01111111 01000000 57, 01111111 10000000 58, 01111111 11010000 59, 01111111 11100010 60, 00000000 00000000 61, 01000000 00000000 62, 01100000 00000000 63, 01110000 00011000 64, 01111000 00011000 65, 01111100 10000000 66, 01111110 00100000 67, 01111111 00111000 68, 01111111 00000000 69, 01111111 10111000 70, 01111111 11010000 71, 01111111 11100010 72, 01111111 11110000 73, 01111111 11111001 74, 01111111 11111100 75, 01111111 11111110 76, 01111111 11111111 77, 01111111 11001000 78, 01111111 11100000 79, 01111111 11110000 80, 01111111 11111000 81, 11111111 11111100 82, 01111111 11011110 83, 11111111 11111111 84, 01111111 11110000 85, 11111111 11111000 86, 01111111 11111110 87, 01011111 11111110 88, 01111111 11001111 89, 00000000 00001111 90, 00000000 00000110 91, 00000000 00000111 92, 00000000 00000101 93, 00000000 00000011 94, 00000000 00000010 95, 00000000 00000001 voor 96-127: 00000000 00000001 PIC2: midihub board ------------------- - motor control controller 1: PWM output, motor speed - Weidmueller X17, pin2 controller 66: Motor ON/OFF - weidmueller X11, pin2 must be OFF on init. Value: 0 for OFF or 1-127 for ON Should not switch off on reception of all notes off. Weidmueller X11, pin 3 connected to PIC pin 4, RA2 controller 67: Motor error reset - weidmueller X11, pin3 must be OFF on init Resets the motor controller after a fault condition has occured. Should ideally be a one shot (ca. 200ms pulse), rather than a toggle. Weidmueller X11, pin 2 connected to PIC pin 5, RA3 - expression valve control velo-byte van alle note ON's: PWM output, - weidmueller X17, pin3 (PIC pin 12 = RC1) moet tevens reageren op elke echte noteoff door naar 0 te gaan Deze controller stuurt het proportioneel kegelventiel. Optie: ook laten reageren op channel pressure, voor modulatie van de lucht tijdens het klinken van een toon. Weidmueller X11: Weidmueller X11, pin1 - GND Weidmueller X11, pin4 = +24V from motorcontroller PIC3: DS-PIC board: sound and waveform synthesizer -------------------------------------------------- midi note range: 0 - 81 note = note-frequency opgelet: het velo byte wordt verwerkt door PIC2 voor de sturing van het expressieventiel controller 7 = amplitude De signaal uitgang moet simultaan aanwezigzijn op twee afzonderlijke PIC pinnen, onderling 180 graden gedraaid in faze. pitch bend (+/- 1 semitone) DC offset, stuurbaar via panning controller (10) gemapt op duty cycle.(5 - 95%). Default 50%. De uitgang van dit signaal wordt naar een analoge power eindversterker gevoerd voor de sturing van het elektromagnetisch riet. Optional: reed opening via PWM sturing van een elektromagneet boven het riet. Midi controller 11 NOTA: hiervoor bestaat nog geen PC board. Een ontwerp ervoor is ook nodig voor en verdere in aanbouw zijnde blaas- en strijkinstrumenten