DE3784830T2 - Gerät zur Bestimmung der Tonhöhe eines im wesentlichen periodischen Eingangssignales. - Google Patents
Gerät zur Bestimmung der Tonhöhe eines im wesentlichen periodischen Eingangssignales.Info
- Publication number
- DE3784830T2 DE3784830T2 DE19873784830 DE3784830T DE3784830T2 DE 3784830 T2 DE3784830 T2 DE 3784830T2 DE 19873784830 DE19873784830 DE 19873784830 DE 3784830 T DE3784830 T DE 3784830T DE 3784830 T2 DE3784830 T2 DE 3784830T2
- Authority
- DE
- Germany
- Prior art keywords
- cpu
- input signal
- zero
- period
- waveform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 230000000737 periodic effect Effects 0.000 title claims description 5
- 238000001514 detection method Methods 0.000 claims description 46
- 101100129496 Arabidopsis thaliana CYP711A1 gene Proteins 0.000 claims description 17
- 101100083446 Danio rerio plekhh1 gene Proteins 0.000 claims description 17
- 239000011295 pitch Substances 0.000 description 67
- 238000012545 processing Methods 0.000 description 65
- 238000000605 extraction Methods 0.000 description 18
- 230000015654 memory Effects 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000005259 measurement Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 101100129499 Arabidopsis thaliana MAX2 gene Proteins 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 238000000034 method Methods 0.000 description 6
- 239000003990 capacitor Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 101100026210 Drosophila melanogaster Clbn gene Proteins 0.000 description 1
- 102000008016 Eukaryotic Initiation Factor-3 Human genes 0.000 description 1
- 108010089790 Eukaryotic Initiation Factor-3 Proteins 0.000 description 1
- 101100317440 Oryza sativa subsp. japonica XAX1 gene Proteins 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 238000005311 autocorrelation function Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005316 response function Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H3/00—Instruments in which the tones are generated by electromechanical means
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2210/00—Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
- G10H2210/031—Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
- G10H2210/066—Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for pitch analysis as part of wider processing for musical purposes, e.g. transcription, musical performance evaluation; Pitch recognition, e.g. in polyphonic sounds; Estimation or use of missing fundamental
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Description
- Die vorliegende Erfindung betrifft eine Vorrichtung zum Bestimmen der Tonhöhe eines im wesentlichen periodischen Eingangssignals und insbesondere ein elektronisches Saiteninstrument so wie eine elektronische Gitarre oder einen Gitarrrensynthesizer, welcher eine solche Vorrichtung beinhaltet.
- In der jüngeren Vergangenheit sind Musikinstrumente des Typs entwickelt worden, bei welchem eine Tonhöhe (Frequenz) aus einem Wellenformsignal extrahiert wird, welches durch ein natürliches oder konventionelles Musikinstrument erzeugt worden ist, und wobei unter Steuerung der extrahierten Tonhöhe eine Tonquelle einer elektronischen Schaltung angesteuert wird, um künstlich einen Ton so wie einen Musikton zu erzeugen.
- Bei diesem Typ von Musikinstrumenten ist die Tonhöhenextraktion noch mit einigen Problemen verbunden, welche dringend gelöst werden müssen. Typische Tonhöhenextraktionssysteme sind das Nulldurchgangspunkt-Erfassungssystem und das Spitzenerfassungssystem.
- Das Nulldurchgangspunkt-Erfassungssystem erfaßt die Zeitintervalle zwischen den Nulldurchgangspunkten in der Eingangswellenform und verwendet sie als Perioden des künstlichen Tons. Die Eingangswellenform enthält häufig Oberwellen, welche durch Filter so wie Tiefpaßfilter entfernt werden sollten. Das Erfassungssystem arbeitet bei solchen Eingangswellenformen nicht gut. Bei seiner Verwendung beinhalten die erfaßten Tonhöhen viele Fehler. Um diese Fehler zu vermeiden, wird komplizierte Software-Verarbeitung erfordert, beispielsweise um die Funktion der Eingangswellenform zu überprüfen. Es ist technisch schwierig, dies zu realisieren.
- Das Spitzenerfassungssystem erfaßt Maximum- und Minimum- Spitzenpunkte des Eingangswellenformsignals und setzt ein Flipflop - bzw. setzt es zurück - bei den Spitzenpunkten, um ein Periodensignal zu erzeugen, beispielsweise ein Rechteckwellensignal. Spitzenerfassungssysteme werden in der KOKOKU Nr. 57-37074 (entspricht der US-A-4,117,757) und der 57-58672 offenbart, in der KOKAI Nr. 55-55398, 55-152597 (Gebrauchsmuster) und der 61-26090 und in der US-A- 4,627,323.
- Das Spitzenerfassungssystem bestimmt beispielsweise die Periode der künstlichen Tonwellenform durch das Zeitintervall zwischen den benachbarten Maximumspitzen. Dieses Merkmal verursacht eine Herabsetzung der Zuverlässigkeit der erfaßten Tonhöhen und ein langsames Ansprechen auf Frequenzänderung des natürlichen Tonwellenformeingangs. Die Verwendung des R-S-Flipflops macht die Instrumentenschaltung inflexibel für allgemeine Verwendung und macht es schwierig, sogenannte intelligente Musikinstrumente zu konstruieren, welche Datenverarbeitungsfunktionen aufweisen.
- Andere Vorschläge einer Tonhöhenerfassung sind in der KOKAI Nr. 55-87196 und 55-159495 und in der KOKOKU Nr. 61-51793 offenbart.
- In der KOKAI 55-87196 wird vorgeschlagen, die Periode des natürlichen Tonwellenformeingangs zu messen und danach den gemessenen Wert in eine Frequenzzahl umzuwandeln, welche wiederum der Tonquelle gesendet wird. Irgend ein neuer technischer Vorschlag zur Periodenmessung wird in dieser Beschreibung nicht offenbart.
- Die KOKAI 55-159495 und KOKOKU 61-51793 offenbaren eine Frequenzstabilisierungstechnik, bei welcher das Ertönen eines Musikinstruments beginnt, wenn die benachbarten extrahierten Perioden im wesentlichen dieselben sind. Ein Befehl zum Ertönen wird der Tonquelle nicht gesandt, bis wenigstens zwei Perioden verstrichen sind. Diesbezüglich umfassen die Systeme dieser Dokumente ein Ansprechfunktionsproblem. Um ein schnelles Ansprechen zu erzielen, sollte das Ertönen so schnell wie möglich beginnen.
- Die Gebrauchsmuster-KOKOKU Nr. 62-20871 (entspricht der US- A-4,606,255) offenbart eine andere Frequenzstabilisierungstechnik. Bei einem Saitenmusikinstrument wirkt eine Vibration einer Saite auf die Vibration einer anderen Saite ein. Die Letztgenannte vibriert extrem, wobei sie in der Vibrationsfrequenz der Erstgenannten mitschwingt. Das darin vorgeschlagene System bringt hohe Kosten hervor, da mechanische Teile verwendet werden und darüber hinaus die Resonanz nur unvollkommen entfernt werden kann.
- Es ist daher die Aufgabe der vorliegenden Erfindung, eine Tonhöhenbestimmungsvorrichtung nach dem Oberbegriff des Anspruchs 1 derart zu verbessern, daß die Tonhöhe eines periodischen Eingangssignals in einer kurzen Zeit und mit größerer Genauigkeit bestimmt werden kann.
- Gemäß der vorliegenden Erfindung wird diese Aufgabe durch die vorteilhaften Maßnahmen gelöst, welche im neuen Anspruch 1 angezeigt sind.
- Vorteilhafte Weiterentwicklungen der Erfindung sind Gegenstand der Unteransprüche.
- Die Erfindung wird nun in größerem Detail unter Hinweis auf die zugehörigen Zeichnungen beschrieben, in welchen
- Fig. 1 in Blockform eine Gesamtanordnung einer Tonhöhenbestimmungsvorrichtung erläutert;
- Fig. 2 ein Schaltungsdiagramm eines Maximum- oder Positivspitzendetektors zeigt, welcher in der Schaltung von Fig. 1 verwendet wird;
- Fig. 3 ein Schaltungsdiagramm eines Minimum- oder Negativspitzendetektors zeigt, welcher in der Schaltung von Fig. 1 verwendet wird;
- Fig. 4 ein Zeitablaufsdiagramm zeigt, welches für die Erklärung des Betriebs der Schaltungen von Fig. 2 und 3 nützlich ist;
- Fig. 5 eine graphische Repräsentation einer Grenzfrequenz eines Tiefpaßfilters zeigt, welcher in der Schaltung von Fig. 1 verwendet wird;
- Fig. 6 ein Flußdiagramm eines Hauptprogramms zeigt, welches von einer CPU einer in Fig. 1 gezeigten Schaltung verwendet wird;
- Fig. 7 ein Flußdiagramm eines Unterbrechungsprogramms zeigt, welches durch die CPU ausgeführt wird, wenn der Maximum- oder Positivspitzenpunkt MAX erfaßt wird;
- Fig. 8 ein Flußdiagramm eines Unterbrechungsprogramms zeigt, welches von der CPU ausgeführt wird, wenn der Minimum- oder Negativspitzenpunkt MIN erfaßt wird;
- Fig. 9 Wellenformen eines Eingangssignals für die Schaltung von Fig. 1 und von Flags zeigt;
- Fig. 10 und 11 in Blockform eine Gesamtanordnung einer anderen Tonhöhenbestimmungsvorrichtung erläutern;
- Fig. 12 ein Schaltungsdiagramm eines Nulldurchgangspunktdetektors zeigt, welcher in der Schaltung von Fig. 10 verwendet wird;
- Fig. 13 ein Zeitablaufsdiagramm zeigt, welches nützlich bei der Erklärung des Betriebs der Schaltung von Fig. 10 ist, wenn sie eine Wellenform des Eingangssignals empfängt;
- Fig. 14 ein Flußdiagramm eines Unterbrechungsprogramms zeigt, welches von der CPU der Schaltung von Fig. 10 und 11 ausgeführt wird, wenn der Nulldurchgangspunkt festgestellt wird, unmittelbar nachdem ein Maximum-Spitzenpunkt festgestellt wird;
- Fig. 15 ein Flußdiagramm eines Unterbrechungsprogramms zeigt, welches von der CPU der Schaltung von Fig. 10 und 11 ausgeführt wird, unmittelbar wenn der Nulldurchgangspunkt festgestellt wird, nachdem ein Minimum-Spitzenpunkt festgestellt wird;
- Fig. 16 ein Zeitablaufsdiagramm zeigt, welches nützlich ist beim Erklären des Betriebs der Schaltung von Fig. 10 und 11, wenn sie eine andere Wellenform des Eingangssignals empfängt;
- Fig. 17 in Blockform eine Gesamtanordnung einer ersten Ausführungsform der vorliegenden Erfindung erläutert;
- Fig. 18 ein Flußdiagramm eines Hauptprogramms einer CPU der Schaltung von Fig. 17 zeigt;
- Fig. 19 ein Zeitablaufsdiagramm zeigt, welches nützlich ist beim Erklären des Betriebs der Schaltung von Fig. 17, wenn sie eine Wellenform des Eingangssignals empfängt;
- Fig. 20 ein Flußdiagramm eines Unterbrechungsprogramms zeigt, welches von der CPU der Schaltung von Fig. 17 ausgeführt wird, wenn der Nulldurchgangspunkt festgestellt wird, unmittelbar nachdem ein Maximum- oder Positivspitzenwert festgestellt wird;
- Fig. 21 ein Flußdiagramm eines Unterbrechungsprogramms zeigt, welches von der CPU der Schaltung von Fig. 17 ausgeführt wird, unmittelbar wenn der Nulldurchgangspunkt festgestellt wird, nachdem ein Minimum- oder Negativspitzenpunkt festgestellt wird;
- Fig. 22 ein Flußdiagramm zeigt, welches nützlich ist bei dem Erklären des Betriebs der Schaltung von Fig. 17, wenn sie eine andere Wellenform des Eingangssignals empfängt;
- Fig. 23 ein Zeitablaufsdiagramm zum Erklären des Betriebs der Schaltung von Fig. 24 zeigt;
- Fig. 24 ein Blockdiagramm einer Modifikation der Schaltung von Fig. 17 zeigt;
- Fig. 25 eine Wellenform zeigt, welche möglicherweise einen fehlerhaften Betrieb beim Extrahieren der Tonhöhe einer Eingangssignalwellenform zur Folge hat, wobei das Problem dieses fehlerhaften Betriebs durch eine zweite Ausführungsform der vorliegenden Erfindung gelöst wird;
- Fig. 26A und 26B ein Hauptprogramm zeigen, welches von einer CPU in der zweiten Ausführungsform ausgeführt wird;
- Fig. 27 ein Zeitablaufsdiagramm zum Erklären des Betriebs der zweiten Ausführungsform zeigt; und
- Fig. 28 ein Schaltungsdiagramm der zweiten Ausführungsform zeigt.
- Zuerst wird unter Bezugnahme auf Fig. 1 bis 16 eine Tonhöhenbestimmungsvorrichtung beschrieben, welche nicht die Kernmerkmale der vorliegenden Erfindung beinhaltet. Die Konstruktion und der Betrieb jener Tonhöhenbestimmungsvorrichtung wird jedoch zum vollständigen Verstehen der vorliegenden Erfindung als nützlich erachtet.
- Eine Gesamtschaltungsanordnung eines Musikinstrumentes, welches in eine elektronische Gitarre eingefügt ist, wird in Fig. 1 erläutert. Schwingungen von 6 Saiten der elektronischen Gitarre werden von (nicht gezeigten) Pick-up's aufgenommen. Die Pick-ups wandeln die mechanischen Schwingungen der Saiten in elektrische Signale um. Diese Signale werden als Musiktonsignale sechs Eingangsanschlüssen 1 eingegeben. Diese Eingangssignale werden durch Verstärker 2 verstärkt und Tiefpaßfiltern 3 zugeführt. Diese Filter entfernen jeweils die Hochfrequenzkomponenten dieser Signale, um die Grundwellenform dieser Eingangssignale zu extrahieren. Jedes Eingangssignal der Grundwellenform wird an ein Maximum- Spitzendetektor (MAX) 4 und an einen Minimum-Spitzendetektor (MIN) 5 angelegt. Jeder Tiefpaßfilter 3 ist derart entworfen, wie es Fig. 5 zeigt, so daß die Grenzfrequenz auf 4f gesetzt wird, vier mal die Frequenz f der Schwingung der offenen Saite jeder Saite, wenn jede Saite ohne die Bundbetätigung gezupft wird. Eine derartige Auswahl der Grenzfrequenz rührt von der Tatsache her, daß die Gitarre im allgemeinen Bünde über etwa 2 Oktaven aufweist. Jeder der Maximum-Spitzendetektoren 4 erfaßt die Maximum-Spitzenpunkte des Eingangssignals. Die Pulssignale, welche die Spitzenerfassungen repräsentieren, werden als Unterbrechungsbefehlssignale INTa1 bis INTa6 verwendet und einer CPU 6 übertragen. Minimum-Spitzendetektoren 5 erfassen jeden Minimum-Spitzenpunkt des Eingangssignals. Die den Spitzenerfassungen repräsentativen Pulssignale werden der CPU 6 in der Form von Unterbrechungsbefehlssignalen INTb1 bis INTb6 übertragen.
- Wenn die CPU 6 die Unterbrechungsbefehlssignale INTa1 bis INTa6 empfängt, welche die Maximum-Spitzenpunkterfassungen repräsentieren, welche unmittelbar nach den Unterbrechungssignalen INTb1 bis INT6 erscheinen, welche die Minimum- Spitzenpunkterfassungen repräsentieren, berechnet die CPU 6 eine Zahldifferenz zwischen den vorliegenden Maximum- Spitzenpunkten und jenen, welche vorher auf ähnliche Art erlangt worden sind. Wenn die CPU 6 die Unterbrechungsbefehlssignale INTb1 bis INTb6 empfängt, welche unmittelbar nach den Unterbrechungsbefehlssignalen INTa1 bis INTa6 erscheinen, erlangt die CPU 6 ähnlich eine Zahldifferenz zwischen den Minimum-Spitzenpunkten und jenen, welche vorher auf eine ähnliche Art erlangt worden sind. Zu jeder Zeit werden beide Befehlssignale INT an einen Zähler 7 angelegt, wobei die Zahlen des Zählers 7 in einen Maximum-Speicher 14 bzw. in einen Minimum-Speicher 15 abgespeichert werden.
- Der Zeitzähldatenwert, welcher repräsentativ der Differenz der Zahlen, wie vom Zähler 7 gezählt, ist, wird durch die CPU 6 direkt, oder nachdem er in einen Tonhöhlenkode umgewandelt worden ist, einem Frequenz-ROM 8 übertragen. Der Frequenzdatenwert, welcher eine Frequenz repräsentiert, dessen Periode durch diesen Zahlendatenwert definiert ist, wird herausgelesen und einer Tonquellenschaltung 9 übertragen. Die Tonquellenschaltung 9 bildet ein Musiktonsignal, welches auf dem Frequenzdatenwert basiert. Auf den Empfang dieses Signals läßt das Tonsystem 10 den Musikton erklingen. Die Tonquellenschaltung 9 kann innerhalb oder außerhalb des Gitarrenhauptkörpers gesetzt werden.
- Sechs Musiktonsignale von den Tiefpaßfiltern 3 werden durch Übertragungsgatter T einem A/D-Konverter 11 übertragen. Der A/D-Konverter 11 wandelt diese Signale in Digitaldaten basierend auf den Wellenformpegeln um. Der Digitaldatenwert wird der CPU 6 zugeführt. Wenn die Absolutwerte der Wellenformpegeldaten einen vorherbestimmten Pegel überschreiten, sendet die CPU 6 die Daten so wie sie sie von der Zahl des Zählers 7 erlangt hat, dem Frequenz-ROM 8, um das Ertönen zu beginnen. Wenn die Absolutwerte unterhalb einem vorherbestimmten Wert liegen, beendet die CPU 6 das Senden der Daten dem Frequenz-ROM 8, um das Ertönen zu stoppen. Der Wellenformpegeldatenwert wird ebenso einer Tonquellenschaltung 9 zugeführt, um den Musikton-Ertönungspegel zu steuern. Dies zeigt an, daß die Lautstärke entsprechend der Berührungsstärke gegenüber der Saite steuerbar ist.
- Schwankende Kanalzeitsignale t1 bis t6 werden an die Übertragungsgates T angelegt, so daß die Ertönungspegel der sechs Musiktonsignale für die sechs Saiten der Gitarre auf in der Art eines Time-Sharings ausgeführt werden. Nebeneinander bestehend sind sechs Kanäle von Musiktonerzeugungssystemen in einer Tonquellenschaltung 9 in der Art eines Time-Sharings gebildet.
- Eine Schaltungsgestaltung des Maximum-Spitzendetektors 4 wird in Fig. 2 erläutert. Wie gezeigt, wird das Musiktonsignal von dem Tiefpaßfilter 3 hergeleitet und dem Plus -Anschluß eines Operationsverstärkers 12 eingegeben. Der Ausgangsanschluß des Operationsverstärkers 12 ist an die Anode einer Diode D1 gekoppelt. Die Kathode der Diode D1 ist über einen parallel angeordneten Kondensator C und Widerstand R1 geerdet. Die Kathode der Diode D1 ist ebenso an den Minus- Anschluß des Operationsverstärkers 12 gekoppelt. Das Ausgangssignal des Operationsverstärkers 12 wird durch einen Widerstand R2 und einen Operationsverstärker 13 ausgegeben wie die Unterbrechungsbefehlssignale INTa1 bis INTa6, welche repräsentativ den Maximum-Spitzenerfassungen sind.
- Wenn ein Signal mit einer Wellenform, wie in Fig. 4a gezeigt, an den Plus-Anschluß des Operationsverstärkers 12 angelegt wird, wird der Kondensator C geladen, wenn die Signalwellenform ansteigt, und entladen, wenn sie fällt. Dann wird das Signal mit einer Wellenform, wie in Fig. 4b gezeigt, wieder an den Minus-Anschluß des Operationsverstärkers 12 angelegt. Nur wenn die Wellenform ansteigt, erzeugt der Operationsverstärker 12 eine Differenz zwischen den Signalpegeln an den Plus- und Minus-Anschlüssen. Dieses Signal wird wie das in Fig. 4c gezeigte Unterbrechungsbefehlsignal INTa ausgegeben. Die Unterbrechungsverarbeitung beginnt an der Rückflanke des Pulssignals von Fig. 4c.
- Eine spezifische Gestaltung des Minimum-Spitzendetektors 5 wird in Fig. 3 gezeigt. Die Schaltungsgestaltung davon ist im wesentlichen dieselbe wie die des eben erwähnten Maximum- Spitzendetektors 4, außer dem entgegengesetzten Anschluß einer Diode D2. Dementsprechend wiederholt der Kondensator C das Laden/Entladen in entgegengesetzten Richtungen, wie in Fig. 4d gezeigt. Schließlich wird das Unterbrechungsbefehlssignal INTb, wie in Fig. 4e gezeigt, erlangt.
- Der Betrieb der oben erwähnten Vorrichtung wird nun beschrieben.
- 1. Beim Ansteigen der Wellenform:
- Auf das Einschalten der Leistung startet die CPU 6 ein Hauptprogramm, wie in Fig. 6 erläutert. In einem Schritt A1 initialisiert die CPU 6 die betreffenden Schaltungen in dem elektronischen Musikinstrument der Ausführungsform. In einem Schritt A2 holt sie den Wert des A/D-Konverters 11 herbei. Die CPU 6 fährt mit dem Ton-aus-Verfahren (note off processing) fort, wenn das Signal vom Konverter 11 nicht einen vorherbestimmten Pegel überschreitet; vergleiche Schritt A3 und A4. Wenn ein Spieler eine Gitarrensaite zupft, wird ein Musiktonsignal bei einem Pegel, welcher größer als der vorherbestimmte Pegel ist, wie in Fig. 9 gezeigt, dem A/D-Konverter, 11 (Schritt A3) eingegeben, rückt die CPU 6 zu einem Schritt A5 vor, bei welchem sie die Frequenzsteuerungsverarbeitung ausführt. Die Frequenzsteuerungsverarbeitung stellt eine Musiktonertönverarbeitung dar, bei welcher der Datenwert vom Zähler 7 direkt an das Frequenz-ROM 8 angelegt wird oder der Tonhöhenkode, wie durch die Bundnummer angezeigt, welche auf der Basis des Datenwertes extrahiert ist, wird an das Frequenz-ROM 8 angelegt. Solange wie der Musiktonpegel oberhalb dem vorherbestimmten Pegel liegt, fährt die CPU 6 mit der Ertönverarbeitung (Schritte A2, A3 und A5) fort. Der Zähldatenwert des Zählers 7 wird durch die später gegebene Unterbrechungsverarbeitung gesetzt.
- 2. Am Maximum-Spitzenpunkt MAX1:
- Nun wird berücksichtigt, daß die Wellenform des Musiktonsignals ansteigt und den ersten Maximum-Spitzenpunkt erreicht, welcher als MAX1 in Fig. 9 bezeichnet ist. An dem Maximum- Spitzenpunkt erzeugt der Maximum-Spitzendetektor 4 ein Unterbrechungsbefehlssignal INTa, welches die Maximum-Spitzenpunkterfassung repräsentiert, und legt es der CPU 6 an. Als Antwort auf dieses Signal beginnt die CPU 6 mit der Unterbrechungsverarbeitung, wie in Fig. 7 gezeigt. Die CPU 6 holt die Zahl des Zählers 7 im Schritt B1 herbei. Im Schritt B2 überprüft die CPU ob die Wellenform, welche den erfaßten Maximum-Spitzenwert aufweist, die erste Welle ist oder nicht. Da es nun der Zeitpunkt ist, unmittelbar nachdem die Tonwellenform ansteigt, ist jene Wellenform die erste Welle. Die CPU rückt zum Schritt B5 vor, um das Flag auf den Zustand "1" zu setzen und um des weiteren die im Schritt B1 herbeigeholte Zahl des Zählers 7 in den Maximum-Speicher 14 zu setzen. Der Zustand "1" des Flags zeigt an, daß der Maximum- Spitzenpunkt erfaßt worden ist. Das gelöschte Flag des Zustands "0" zeigt an, daß der Minimum-Spitzenpunkt 0 erfaßt worden ist.
- 2a. Am Maximum-Spitzenpunkt MAX2:
- Es wird angenommen, daß der Wellenformpegel den in Fig. 9 als MAX2 bezeichneten zweiten Maximum-Spitzenpunkt erreicht. An dem Maximum-Spitzenpunkt legt der Maximum-Spitzenpunktdetektor 4 das Unterbrechungsfehlsignal INTa, welches die Maximum-Spitzenerfassung anzeigt, an die CPU 6 an. Dann startet wiederum die CPU 6 die in Fig. 7 gezeigte Unterbrechungsverarbeitung. Die CPU 6 holt die Zahl des Zählers 7 herbei und überprüft, ob die vorliegende Wellenform die erste Welle (Schritt B2) ist. Da die vorliegende Welle nicht die erste ist, rückt die CPU zum Schritt B3 vor und überprüft, ob das Flag sich um Zustand "0" befindet. Da das Flag sich im Zustand "1" an dem ersten Maximum-Spitzenpunkt MAX1 befindet, beendet die CPU die vorliegende Verarbeitung, ohne die Periodenberechnungsverarbeitung zum Erlangen des Frequenzdatenwertes auszuführen.
- Auf diese Art wird der Frequenzdatenwert richtig erlangt, dessen eine Periode die Differenz zwischen den Zähldatenwerten an den Maximum-Spitzenpunkten MAX1 und MAX2 ist, und die Zeitzahl an dem Maximum-Spitzenpunkt MAX1 wird unverändert in dem Maximum-Speicher 14 gespeichert.
- 3. Am Minimum-Spitzenpunkt MIN:
- Wenn der Minimum-Spitzenpunkt MIN erreicht wird (Fig. 9), erzeugt der Minimum-Spitzendetektor 5 ein Unterbrechungsbefehlssignal INTb, welches die Minimum-Spitzenpunkterfassung repräsentiert, und legt es der CPU 6 an. Auf diesen Empfang startet die CPU 6 die in Fig. 8 gezeigte Unterbrechungsverarbeitung. Im Schritt C1 holt die CPU 6 die Zahl des Zählers 7 herbei und überprüft, ob die Wellenform am Minimum- Spitzenpunkt die erste Welle ist (Schritt C2). In diesem Fall ist die Wellenform die erste Wellenform, und danach schreitet die CPU 6 zum Schritt C5 voran. In diesem Schritt wird das Flag auf den Zustand "0" gelöscht und es setzt in den Minimum-Speicher 15 die Zahl des Zählers 7, welche im Schritt C1 herbeigeholt worden ist.
- Das Beurteilungsverfahren im Schritt B2 wird auffolgende Art durchgeführt. Wenn der Wellenformpegeldatenwert, welcher vom A/D-Konverter 11 übernommen worden ist, einen vorherbestimmten Pegel überschreitet, wird das erste Wellenflag auf den Zustand "1" gesetzt. Wenn dann das Unterbrechungsbefehlssignal INTb für die Minimum-Spitzenerfassung an die CPU angelegt wird, wird das erste Wellenflag auf den Zustand "0" gelöscht. In den Schritten B2 und C2 überprüft die CPU 6, ob das Wellenflag gesetzt ist oder nicht.
- 4. Periodenberechnung am Maximum-Spitzenpunkt XAX1:
- Wenn die Eingangssignal-Wellenform ansteigt, um den Maximum- Spitzenpunkt MAXI zu erreichen, legt der Maximum-Spitzendetektor 4 das Unterbrechungssignal INTa, welches die Maximum- Spitzenpunkterfassung repräsentiert, an die CPU 6 an. Die CPU 6 holt die Zahl des Zählers 7 im Schritt B1 herbei und bestätigt im Schritt B2, daß die Wellenform am Maximum- Spitzenpunkt MAX1 nicht die erste Welle ist und überprüft, ob das Flag sich im Schritt B3 im Zustand "0" befindet. Da sich das Flag am Minimum-Spitzenpunkt MIN unmittelbar vor dem Maximum-Punkt MAX1 im Zustand "0" befindet, rückt die CPU 6 zum Schritt B4 vor und liest in diesem Schritt den Zeitzähldatenwert aus dem Maximum-Speicher 14 aus und subtrahiert ihn von dem derzeitigen Zähldatenwert, welcher im Schritt B1 ausgelesen worden ist, und erlangt schließlich den Datenwert des Subtraktionsergebnisses. Als Ergebnis legt im Schritt A5 die CPU 6 den Subtraktionsergebnis-Datenwert dem Frequenz-ROM 8 an und steuert das System des Musikinstrumentes, so daß ein Musikton mit der Frequenz erzeugt wird, dessen Periode sich in dem Bereich zwischen dem Maximum-Spitzenpunkt MAX1 bis zu dem nächsten Maximum- Spitzenpunkt MAX1 erstreckt. Der obigen Verarbeitung folgend setzt die CPU 6 das Flag auf den Zustand "1" und setzt den derzeitigen Zeitzähldatenwert in den Maximum-Speicher 14 (Schritt B5).
- In den Schritten C5 und B3 überprüft die CPU 6 den Maximum- Spitzenpunkt, welcher dem Minimum-Spitzenpunkt folgt und mißt das Zeitintervall zwischen den Maximum-Spitzenpunkten. Im Schritt B4 wird die Periodenberechnung progressiv ausgeführt.
- Wenn daher die Eingangssignal-Wellenform zwei Maximum- Spitzenpunkte MAX1 und MAX2 fortlaufend beinhaltet, wird lediglich das Zeitintervall zwischen zwei positiven Spitzenpunkten MAX1 und MAX1 verwendet, um die Ertönfrequenz zu bestimmen. Das Zeitintervall zwischen den aufeinanderfolgenden Maximum-Spitzenpunkten MAX1 und MAX2 wird niemals für denselben Zweck verwendet.
- 5. Periodenberechnung am Minimum-Spitzenpunkt MIN:
- Wenn die Eingangssignal-Wellenform den Minimum-Spitzenpunkt MIN erreicht, legt der Minimum-Spitzendetektor 5 das Unterbrechungssignal INTb, welches die Minimum-Spitzenpunkterfassung repräsentiert, an die CPU 6 an. Die CPU 6 holt die Zahl des Zählers 7 im Schritt C1 herbei und bestätigt im Schritt C2, daß die Wellenform am Minimum-Spitzenpunkt MIN nicht die erste Welle ist, und überprüft, ob sich im Schritt C3 daß Flag im Zustand "1" befindet. Da sich das Flag am Maximum- Spitzenpunkt MAXI im Zustand "1" befindet, schreitet die CPU 6 zum Schritt C4 voran und liest in diesem Schritt den Zeitzähldatenwert aus dem Minimum-Speicher 15 heraus und substrahiert ihn von dem derzeitigen Zähldatenwert, wie er im Schritt C1 ausgelesen worden ist, und erlangt schließlich den Datenwert des Subtraktionsergebnisses. Gemäß dem Ergebnisdatenwert liest die CPU 6 aus dem ROM 8 den Frequenzdatenwert heraus, um einen Musikton bei einer Frequenz vorzusehen, dessen Periode sich zwischen den vorherigen und derzeitigen Minimum-Spitzenpunkten MIN und MIN erstreckt. Dem Schritt C4 folgend löscht die CPU 6 das Flag auf den Zustand "0" und setzt den derzeitigen Zähldatenwert in dem Minimum-Speicher 15 (Schritt C5).
- Auf diese Art wird die Zeitzahl einer Periode der Minimum- Spitzenpunkte MIN erlangt und der Frequenzdatenwert wird ausgegeben. Wenn eine Mehrzahl von Minimum-Spitzenpunkten aufeinanderfolgend ohne Nulldurchgangspegel erscheinen, wie in dem vorherigen Fall der Maximum-Spitzenpunkte MAX1 und MAX2, nimmt die CPU 6 den Minimum-Spitzenpunkt, welcher dem Maximum-Spitzenpunkt in den Schritten B5 und C3 folgt, auf und mißt das Zeitintervall zwischen solchen Minimum-Spitzenpunkten. Auf diese Art wird eine exakte Periodenberechnung im Schritt C4 durchgeführt.
- Wie oben beschrieben, wird auf der Basis des Zeitzähldatenwertes, welcher in den Schritten B4 und C4 berechnet wird, der entsprechende Frequenzdatenwert vom Frequenz-ROM 8 im Schritt AS ausgegeben. Als Ergebnis wird die Frequenz zweimal (MAX1-XAX1 und MIN-MIN) während einer Periode verändert.
- Dies beinhaltet, daß das System des Musikinstruments schnell auf die Frequenzvariation des Eingangssignals ansprechen kann.
- Um die Frequenz zu stabilisieren, wird der vorherige Zeitzähldatenwert in den Speicher im Schritt AS abgespeichert und der derzeitige Zeitzähldatenwert und der vorherige werden gemittelt. Wenn der vorherige Zeitdatenwert größer ist als der derzeitige Datenwert, beispielsweise 20% oder mehr, wird der vorherige Datenwert ausgegeben.
- Nun wird noch ein anderes Tonhöhen-Extraktionssystem beschrieben. In diesem Tonhöhen-Extraktionssystem werden zuerst die Maximum- und/oder Minimum-Spitzen der Wellenform eines Musiktons, d. h. ein Eingangssignal, erfaßt. Dann werden Nulldurchgangspunkte unmittelbar nach den Maximum- oder Minimum-Spitzen erfaßt. Ein Zeitintervall zwischen den erfaßten Nulldurchgangspunkten wird erlangt. Schließlich wird unter Verwendung des Zeitintervalls die Tonhöhe der Eingangssignal-Wellenform erlangt.
- Insbesondere wird das Zeitintervall (t1) zwischen den Nulldurchgangspunkten, welche jeweils zuerst erscheinen, nachdem die Maximum-Spitzen erfaßt werden, oder das Zeitintervall (t2) zwischen den Nulldurchgangspunkten, welche zuerst erscheinen, nachdem die Minimum-Spitzen erfaßt werden, erfaßt. Das erfaßte Zeitintervall oder die erfaßten Zeitintervalle werden für die Tonhöhen-Extraktion verwendet. Die Tonhöhen- Extraktion ist mittels einer einfachen Konstruktion exakt.
- Eine Anordnung dieser Tonhöhen-Bestimmungsvorrichtung wird nun unter Bezugnahme auf Fig. 10 bis 15 beschrieben. In jenen Figuren werden ähnliche Symbole zum Bezeichnen ähnlicher oder äquivalenter Teile von Fig. 1 bis 9 verwendet.
- Es wird auf Fig. 10 und 12 Bezug genommen, welche eine Gesamtschaltungsanordnung der Vorrichtung erläutern. Jede einzelne einer Mehrzahl von Maximum-Spitzendetektoren 4 erfaßt den Maximum-Spitzenpunkt einer Eingangssignal-Wellenform. An der Rückflanke des erfaßten Pulssignals gibt ein Flipflop (FF) 214, welches an der Endstufe eines jeden Detektors 4 angeordnet ist, an den Q-Ausgang einem hohen Pegel aus. Das Ausgangssignal des FF 214 und der invertierte Ausgang eines Inverters 230, welcher mit einem Nulldurchgangspunkt-Detektor 206 gekoppelt ist, werden an das UND-Gatter 224 angelegt. Das Ausgangssignal von dem UND-Gatter wird als Unterbrechungssignal INTbn an die CPU 200 angelegt (wobei n irgendeine der Zahlen 1 bis 6 ist).
- Auf ähnliche Weise erfaßt jeder einer Mehrzahl von Minimum- Spitzendetektoren 5 den Minimum-Spitzenpunkt einer Eingangssignal-Wellenform. An der Vorderflanke des erfaßten Pulssignals gibt ein Flipflop (FF) 215, welches an der Endstufe jedes Detektors 5 angeordnet ist, an seinem Q-Ausgang einen hohen Pegel aus. Das Ausgangssignal des Flipflops 215 und der invertierte Ausgang des Inverters 230, welcher an den Nulldurchgangspunktdetektor 206 gekoppelt ist, werden an ein UND-Gatter 225 angelegt. Das Ausgangssignal des UND-Gatters 225 wird als Unterbrechungssignal INTbn an die CPU 200 angelegt (wobei n irgend eine Zahl von 1 bis 6 ist).
- Wenn so der Maximum-Spitzenpunkt erfaßt wird und FF 214 an dem Q-Ausgang sich im logischen hohen Zustand befindet, falls die Wellenform den Nullpegel aus dem positiven Bereich zu dem negativen Bereich durchläuft, wird das Unterbrechungssignal INTan an die CPU 200 angelegt. Wenn der Minimum-Spitzenpunkt erfaßt wird und sich FF 215 an dem Q-Ausgang im logisch hohen Zustand befindet, falls die Wellenform den Nullpegel aus dem negativen Bereich zu dem positiven Bereich durchläuft, wird das Unterbrechungssignal INTbn an die CPU 200 angelegt.
- Unmittelbar nach dem Empfang des Unterbrechungssignals INTan oder INTbn legt die CPU 200 ein Löschungssignal CLan (wobei n zwischen 1 und 6 liegt) oder CLbn an das FF 214 oder 215 an. Dann wird wieder das entsprechende Flipflop zurückgesetzt. Bis der nächste Maximum- oder Minimum-Spitzenpunkt erfaßt wird, verbleibt demgemäß das entsprechende Flipflop zurückgesetzt, sogar wenn die Wellenform irgendeine Anzahl von Malen den Nullpegel durchläuft, und daher wird die CPU 200 niemals unterbrochen.
- Wenn die CPU 200 das Unterbrechungssignal INTan für den Nulldurchgangspunkt empfängt, welcher unmittelbar auftritt, nachdem der Maximum-Spitzenpunkt erfaßt worden ist, berechnet die CPU 200 eine Differenz zwischen der vorliegenden Zahl des Zählers 7 und jener des Zählers 7, bei welcher die Wellenform vorhergehend den Nullpegel unmittelbar nach dem Maximum-Spitzenpunkt durchläuft. Wenn das Unterbrechungssignal INTbn erzeugt wird, berechnet die CPU 200 auf ähnliche Weise eine Differenz zwischen der vorliegenden Zahl des Zählers 7 und derjenigen des Zählers 7, bei welcher die Wellenform vorhergehend den Nullpegel unmittelbar nach dem Minimum-Spitzenpunkt durchläuft. Zu jeder Zeit werden Unterbrechungssignale INTan und INTbn erzeugt, und die CPU 200 speichert die Zahlen des Zählers 7 in einen Maximum-Speicher 201 bzw. einen Minimum-Speicher 202 ab. Der Zeitzähldatenwert wie die Zahldifferenz wird von der CPU 200 dem Frequenz-ROM 8 direkt, oder nachdem er in einen Tastenkode (keycode) umgewandelt worden ist, übertragen. Der Frequenzdatenwert mit einer Periode des Zählerdatenwerts wird ausgelesen und der Tonquellenschaltung 9 gesendet, bei welcher ein Musiktonsignal erzeugt wird. Das Tonsystem 10 empfängt dieses und beginnt mit dem Ertönen des Musiktons.
- Die Anordnung des Nulldurchgangsdetektors 206 wird beschrieben. Fig. 12 erläutert eine spezifische Schaltanordnung des Nulldurchgangspunkt-Detektors 206, wobei das Musiktonsignal, welches vom Tiefpaßfilter 3 hergeleitet worden ist, an den Plus-Anschluß eines Operationsverstärkers 206-1 angelegt wird. Der Minus-Anschluß des Operationsverstärkers ist geerdet. Das Ausgangssignal des Operationsverstärkers 206-1 wird über einen Widerstand R5 und einen anderen Operationsverstärker 206-2 ausgegeben. Bei einem positiven Eingangssignal gibt der Operationsverstärker 206-2 ein Signal des logisch hohen Zustands aus. Bei einem negativen Eingangssignal gibt der Verstärker 206-2 ein Signal des logisch niedrigen Zustands aus. Dies zeigt an, daß zu jeder Zeit die Wellenform des Signals, d. h. des Musiktons, den Nullpegel durchläuft, wobei der logische Pegel am Ausgang des Operationsverstärkers 206-2 invertiert wird.
- Der Betrieb der vorher erwähnten Vorrichtung wird beschrieben.
- Das Hauptprogramm, welches bei dieser Vorrichtung verwendet wird, ist dasselbe wie jenes von Fig. 6 und wird daher hier nicht beschrieben. Die Beschreibung des Betriebs wird in Verbindung mit den Unterbrechungsprogrammen gegeben.
- Ein Spieler zupft eine der Saiten der Gitarre und ein Musikton mit einer Wellenform, wie in Fig. 13(a) gezeigt, wird erzeugt. Die Musiktonwellenform variiert und steigt an, um ein Maximum-Spitzenpunkt MAXI zu erreichen. Zu dieser Zeit erzeugt der Maximum-Spitzendetektor 4 ein Signal, wie in Fig. 13(b) gezeigt. Diese Signale versetzen den Ausgang des Flipflops 214 in einen logisch hohen Zustand (Fig. 13(e)). An dem Nulldurchgangspunkt Zero 1 (Fig. 13(c)), wird der Nulldurchgangspunkt-Erfassungsausgang des Nulldurchgangspunkt-Detektors 206 invertiert (Fig. 13(c)). Zu dieser Zeit legt das UND-Gatter 224 das Unterbrechungssignal INTa an die CPU 200 an. Auf den Empfang dieses Signals beginnt die CPU 200 mit der Unterbrechungsverarbeitung.
- Das Unterbrechungsprogramm ist dasselbe wie jenes von Fig. 7 außer Schritt B10. Daher wird das Unterbrechungsprogramm kurz beschrieben.
- Die CPU 200 setzt das Flipflop 214 im Schritt B10 zurück und liest die Zahl des Zählers 7 und prüft im Schritt B2, ob die vorliegende Welle der Eingangssignal-Wellenform die erste Welle ist. Da die Musiktonwellenform eben angestiegen ist und daher die vorliegende Wellenform die erste Welle ist, rückt die CPU 200 zum Schritt B5 vor und setzt das Flag auf den Zustand "1" und setzt, die Zahl des Zählers 7, wie im Schritt B1 ausgelesen, in den Maximum-Speicher 201. Wenn das Eingangssignal mit der Wellenform, wie in Fig. 13(a) gezeigt, dem Musikinstrument eingegeben wird, erzeugt der Nulldurchgangspunkt-Detektor 6 das invertierte Ausgangssignal, wie in Fig. 13(c) gezeigt, wobei zu jeder Zeit die Nulldurchgangspunkte Zero 2 und Zero 3 aufeinanderfolgend erfaßt werden.
- Zu dieser Zeit jedoch ist das Flipflop 214 im Schritt B10 zurückgesetzt worden, und es wird kein Unterbrechungssignal INTb erzeugt.
- Wenn der in Fig. 13(a) gezeigte Minimum-Spitzenpunkt MINI erreicht wird, erzeugt der Minimum-Spitzendetektor 5 ein Spitzenerfassungssignal und setzt das Flipflop 215 durch das Signal. Am nächsten Nulldurchgangspunkt (Zero 4) wird das Ausgangssignal des Nulldurchgangspunkt-Detektors 206 invertiert und das UND-Gatter 225 legt das Unterbrechungssignal INTb an die CPU 200 an. Die CPU 200 beginnt die in Fig. 15 gezeigte Unterbrechungsverarbeitung.
- Das Unterbrechungsprogramm von Fig. 15 ist ebenso im wesentlichen dasselbe wie jenes von Fig. 8, außer Schritt C10. Dieses Programm wird daher kurz beschrieben. Die CPU 200 setzt das Flipflop 215 im Schritt C10 zurück, und holt die Zahl des Zählers 7 herbei und überprüft im Schritt C2, ob die vorliegende Welle der Wellenform die erste Welle ist. Die Welle, welche den Nulldurchgangspunkt auf den Minimum- Spitzenpunkt folgend beinhaltet, ist die erste Welle. Dann rückt die CPU 200 zum Schritt C5 vor und löscht das Flag auf den Zustand "0" und speichert die Zahl des Zählers 7, wie im Schritt C10 ausgelesen, in den Minimum-Speicher 202 ab.
- Wenn der Nulldurchgangspunkt (Zero 5), welcher auf den in Fig. 13(a) gezeigten Maximum-Spitzenpunkt MAX2 folgt, erreicht wird, wird das Unterbrechungssignal INTa zu der Erfassung des Nulldurchgangspunktes, welcher auf den Maximum- Spitzenpunkt folgt, erzeugt, und die CPU 200 holt die Zahl des Zählers 7 im Schritt B10 herbei. Im Schritt B2 bestätigt die CPU 200, ob die vorliegende Welle nicht die erste Welle ist. Dann überprüft die CPU im Schritt B3, ob sich das Flag im Zustand "0" befindet. Da das Flag auf den Zustand "0" an dem Nulldurchgangspunkt (Zero 4) unmittelbar nach dem vorhergehenden Minimum-Spitzenpunkt MIN1 gelöscht worden ist, rückt die CPU 200 zum Schritt B4 vor und liest den Zeitzähldatenwert, welcher in dem Maximum-Speicher 201 an dem Nulldurchgangspunkt (Zero 1) unmittelbar nach dem Maximum-Spitzenpunkt MAX1 eine Periode vorher gesichert worden ist, und subtrahiert den Zeitzähldatenwert, welcher diesesmal ausgelesen worden ist, von demjenigen, welcher im Schritt B1 ausgelesen worden ist, um den Subtraktionsergebnis-Datenwert zu erhalten. Als Ergebnis wird im Schritt A5 des Hauptprogramms der Ergebnisdatenwert an das Frequenz-ROM 8 angelegt, und das Musikinstrument wird derart gesteuert, um den Musikton bei einer Frequenz ertönen zu lassen, dessen Periode sich von dem Nulldurchgangspunkt (Zero 0) bis zu dem Nulldurchgangspunkt (Zero 5) erstreckt. Auf diese Verarbeitung folgend setzt die CPU 200 das Flag auf den Zustand "1" und setzt den derzeitigen Zeitzähldatenwert in den Maximum-Speicher 201 (B5).
- Auf diese Art wird der Nulldurchgangspunkt unmittelbar nach dem Maximum-Spitzenpunkt in den Schritten C5 und B3 überprüft, und das Zeitintervall (t1) wird lediglich zwischen den Nulldurchgangspunkten gemessen, und die Periodenberechnung wird im Schritt B4 durchgeführt.
- Ähnlich werden die Nulldurchgangspunkte (Zero 6 und Zero 7) ignoriert. Als Antwort auf das Unterbrechungssignal INTb, welches auf die Erfassung des Nulldurchgangspunkts (Zero 8) unmittelbar nach der Maximum-Spitzenpunkterfassung erzeugt wird, führt die CPU 200 das Programm von Fig. 16 aus. Das Zeitintervall (t2) von dem vorausgehenden Nulldurchgangspunkt (Zero 4) zu dem vorliegenden Nulldurchgangspunkt (Zero 8) wird als Tonhöhendatenwert verwendet.
- Auf diese Weise werden das Zeitintervall (t1), d. h. Zero 1 → Zero 5, zwischen den Nulldurchgangspunkten unmittelbar nach den Maximum-Erfassungspunkten, und das Zeitintervall (t2), d. h. Zero 4 → Zero 8, zwischen den Nulldurchgangspunkten unmittelbar nach den Minimum-Punkterfassungen erlangt. Mit anderen Worten, die Frequenzänderung wird zweimal während einer Periode auf dieselbe Art wie in der ersten Ausführungsform durchgeführt. Daher kann das Musikinstrument schnell auf die Frequenzänderung des Eingangssignals ansprechen.
- In dem vorher beschriebenen Musikinstrument werden, wenn die Wellenform, wie in Fig. 16(a) gezeigt, eingegeben wird, die Nulldurchgangspunkte Zero 12 und Zero 14 mit der Funktion des Flags in den Fluß von Fig. 15 ignoriert.
- Wenn insbesondere die Signale für die Nulldurchgangspunkte Zero 0 und Zero 14 hereinkommen wie das Unterbrechungssignal INTa, ist das Flag auf den Zustand "1" gesetzt worden, wenn diese Signale ankommen (Schritt B5), und daher ist die Antwort auf Schritt B3 NEIN, und daher wird keine Periodenberechnung durchgeführt. Auf diese Art werden die Nulldurchgangspunkte aufeinanderfolgend erfaßt, nachdem die Maximum- Spitzen erfaßt werden, wobei diese durch das Flag ignoriert werden und die Effekte durch die Oberwellen entfernt werden.
- Um die Frequenz zu stabilisieren, wird im Schritt A5 der vorangehende Zeitzähldatenwert in den Speicher abgespeichert und der derzeitige Zeitzähldatenwert und der vorangehende werden gemittelt. Wenn der vorhergehende Zeitdatenwert größer ist als der derzeitige um beispielsweise 20% oder mehr, wird der vorhergehende Datenwert ausgegeben. Die Periodenberechnungen, welche auf der Nulldurchgangspunkterfassung unmittelbar nach den Maximum- und Minimum-Spitzenpunktenerfassungen basieren, können selektiv auf eine Weise durchgeführt werden, so daß die Periodenberechnung, welche auf dem Nulldurchgangspunkt unmittelbar nach der Maximum- Spitzenpunkterfassung basiert, für die Wellenform ausgeführt wird, welche an dem Startpunkt ansteigt, und diejenige, welche auf dem Nulldurchgangspunkt basiert, wird unmittelbar nach der Minimum-Spitzenpunkterfassung für die Wellenform ausgeführt, welche an dem Startpunkt fällt. Eine solche Anordnung sieht ein schnelles Ansprechen zum Beginn des Ertönens vor.
- Wie oben beschrieben, kann die CPU 6 eine geeignete Verarbeitung wie die Verarbeitung des in Fig. 6 gezeigten Schrittes A5 ausführen. Die Auswahl der geeigneten Verarbeitung kann durch Modifizierung des Programms für die CPU 6 erreicht werden und erfordert keine Modifizierung der Hardware, d. h. der externen Schaltung der CPU 6. Daher ist das Musikinstrument ausgezeichnet im Hinblick auf die Flexibilität der Verwendung und kann leicht entworfen werden, um sogenannte intelligente Funktionen aufzuweisen.
- Die Zeitintervalle (t1) und (t2) jeweils zwischen den Nulldurchgangspunkten unmittelbar nach den Maximum- und Minimum- Spitzenpunkten werden beide erlangt, aber das Musikinstrument ist betriebsfähig mit hinreichenden Funktionen, wenn eines von ihnen verwendet wird. Wenn dies geschieht, kann die Kombination des Maximum-Spitzendetektors 4, des Flipflops 214, des UND-Gatters 224 und des Inverters 230 oder die Kombination des Maximum-Spitzendetektors 5, des Flipflops 215 und des UND-Gatters 225 ausgelassen werden, wodurch die Schaltungsanordnung des Musikinstruments vereinfacht wird.
- Eine erste Ausführungsform einer Tonhöhen-Bestimmungsvorrichtung gemäß den Kernmerkmalen der Erfindung wird nun hinsichtlich Fig. 17 bis 23 beschrieben.
- Die Vorrichtung der ersten Ausführungsform ist dahingehend vorteilhaft, daß die Zeit von dem Eingeben einer Eingangssignal-Wellenform bis zur Erzeugung eines aktuellen akustischen Tons verkürzt wird, um ein gutes Ansprechen zum Eliminieren eines unnatürlichen Gefühls bezüglich der ertönten Musiktöne zu erzielen.
- Die erste Ausführungsform basiert auf der Tatsache, daß drei Ausdrücke unterschiedlicher Periodeninformation zwischen zwei Perioden der Eingangssignal-Wellenform existieren. Innerhalb des Zeitintervalls von weniger als zwei Perioden der Eingangssignal-Wellenform werden zwei Perioden der Wellenform erfaßt. Wenn die erfaßten zwei Perioden einander nahezu gleich sind, erteilt ein Kontroller einen Befehl, um das Ertönen zu starten.
- Insbesondere werden die zwei Perioden durch Erfassen eines Zeitintervalls t1 zwischen den Nulldurchgangspunkten erfaßt, wobei jedes erste Erscheinen nach der Maximum-Spitze der Eingangssignal-Wellenform erfaßt wird, und durch Erfassen eines Zeitintervalls T2 zwischen den Nulldurchgangspunkten, deren erstes Erscheinen nach dem Minimum-Spitzenpunkt der Eingangssignal-Wellenform erfaßt wird.
- Alternativ werden zwei Perioden erfaßt durch Erfassen eines Zeitintervalls T1 zwischen den Maximum-Spitzenpunkten der Eingangssignal-Wellenform und durch Erfassen eines Zeitintervalls T2 zwischen den Minimum-Spitzenpunkten derselben Wellenform.
- Die oben erwähnten technischen Merkmale reduzieren die Zeit zwischen dem Ankommen des Eingangssignals bis zu der Erzeugung der künstlichen akustischen Welle, wodurch eine attraktive Funktion durch die Gitarre vorgesehen wird.
- Die erste Ausführungsform ist ähnlich wie die oben beschriebene, in Fig. 10 und 11 gezeigte Vorrichtung gestaltet. Daher werden ähnliche oder äquivalente Teile zur Vereinfachung mit ähnlichen Bezugszeichen wie in Fig. 10 und I1 bezeichnet.
- Es werden sechs Tonhöhen-Extraktionsschaltungen P1 bis P6 verwendet. In jeder Tonhöhen-Extraktionsschaltung P1 bis P6 ist ein A/D-Konverter 411 enthalten. Ausgangssignale der Flipflops 214 und 215 werden als Einlesesignale an ein Latch 412 über ein ODER-Gatter 413 angelegt. Als Antwort auf das Signal vom ODER-Gatter 413 holt das Latch 412 den Digitalausgang des A/D-Konverters 411 herbei.
- Mit einer derartigen Anordnung speichert jedes Latch 412 den Maximum- oder Minimum-Spitzenpunkt der Eingangssignalwellenform, so daß eine CPU 400 leicht diese Spitzenwerte herbeiholen kann.
- Das Ausgangssignal jedes ODER-Gatters 413 wird als jeweiliges Signal L1 bis L6 an die CPU 400 angelegt.
- Fig. 17 zeigt ein Hauptprogramm, welches von der CPU 400 ausgeführt wird. Dieses Programm ist ähnlich jenem der vorher erwähnten Vorrichtung. Das erläuterte Hauptprogramm dient der Verarbeitung des Musiktons, welcher durch eine Saite der Gitarre erzeugt wird. Diese Verarbeitung wird entsprechend für die anderen fünf Saiten verwendet. Die CPU 400 führt diese Programme im Zeitmultiplexverfahren aus. Die CPU 400 führt zuerst Schritt A401 aus, um das System der elektrischen Gitarre zu initializieren. Dem folgend liest die CPU 400 den Inhalt des A/D-Konverters 411 im Schritt A402 aus. Die CPU fährt mit der Ton-aus-Verarbeitung des Musiktons fort, bis der Ausgangspegel des A/D-Konverters 41 einen vorherbestimmten Pegel erreicht (Schritte A403, 404 und 405). Wenn die Gitarrensaite gezupft wird, wird das Musiktonsignal oberhalb des in Fig. l9 gezeigten vorherbestimmten Pegels dem A/D-Konverter 411 (Schritt A403) eingegeben, und die CPU rückt zum Schritt A405 vor. In diesem Schritt überprüft die CPU, ob die bereits extrahierten Zeitintervalle T1 und T2 gleich sind. Da jedoch bis jetzt beide Zeitintervalle noch nicht erfaßt sind, ist die Antwort im Schritt A406 NEIN, und die CPU kehrt zum ursprünglichen Fluß zurück. Wenn, wie später beschrieben wird, daß Ertönen beginnt, rückt die CPU zum Schritt A407 vor und startet das Ertönen des Musiktons zu der Tonhöhe, welche durch das Zeitintervall t1 (welches nahezu t2 gleicht) bestimmt ist. Anschließend durchläuft die CPU den Pfad A403 → A404 → A408. Im Schritt A408 führt die CPU die Frequenzsteuerverarbeitung durch, d. h. die Ertönverarbeitung, um den Datenwert zum Bezeichnen des Musiktons dem Frequenz-ROM 8 zuzuführen. Diese Ertönverarbeitung wird solange fortgesetzt, wie der Musiktonsignalpegel oberhalb dem vorherbestimmten Pegel liegt (Schritte A402 → A403 → A404 → A408). Wenn der Ausgangspegel des A/D- Konverters 411 unterhalb dem vorherbestimmten Pegel liegt, wird der Schritt A405 ausgeführt und das Ertönen beginnt.
- Der Betrieb der elektronischen Gitarre, bei welcher eine Saite gezupft wird, wird nun beschrieben. Eine Saite wird gezupft und die Wellenform des Musiktons wie erzeugt erhebt sich, und ihr Pegel erreicht den in Fig. 19(a) gezeigten ersten Maximum-Spitzenpunkt MAX1. Der Maximum-Spitzendetektor 4 erzeugt ein Signal, wie in Fig. 19(b) gezeigt. Dieses Signal setzt den Ausgang des Flipflops 214 auf den logisch hohen Zustand (Fig. 19(d)). Das Nulldurchgangspunkt-Erfassungsausgangssignal von dem Nulldurchgangspunkt-Detektor 6 wird an dem Nulldurchgangspunkt Zero 1 invertiert (vergl. Fig. 19(a) und 19(c)). Zu dieser Zeit wird das Unterbrechungssignal INTan vom UND-Gatter 224 der CPU 400 übertragen. Auf diesen Empfang startet die CPU die Unterbrechungsverarbeitung von Fig. 20. Diese Verarbeitung ist im wesentlichen dieselbe wie die Unterbrechungsverarbeitung von Fig. 14. Die im Schritt B4 erlangte Periode in dem Programm von Fig. 20 wird als Intervall t1 verwendet.
- Wenn am Nulldurchgangspunkt Zero 4 von Fig. 19(a) das Unterbrechungssignal INTbn an die CPU 400 angelegt wird, führt die CPU die Verarbeitung von Fig. 21 aus. Die Unterbrechungsverarbeitung von Fig. 21 ist im wesentlichen dieselbe wie die Verarbeitung von Fig. 15.
- In Fig. 19(a) erlangt die CPU 400 zuerst den Periodendatenwert t1 durch die Unterbrechungsverarbeitung an den Nulldurchgangspunkt Zero 5 und erlangt den Periodendatenwert t2 durch die Unterbrechungsverarbeitung an dem Nulldurchgangspunkt Zero 8.
- Der Erfassung dieses Nulldurchgangspunktes Zero 8 folgend kehrt die CPU zum Hauptprogramm zurück. In diesem Programm führt die CPU die Schritte A403 und A406 von Fig. 18 aufeinanderfolgend aus. Wenn die Zeitdatenwerte t1 und t2 ungefähr gleich sind und die Differenz zwischen ihnen innerhalb eines tolerierbaren Bereiches liegt, ist die Antwort im Schritt A406 JA, und im Schritt A407 veranlaßt die CPU die Tonquellenschaltung dazu, das Ertönen des Musiktons bei einer Frequenz zu starten, welche durch den Zeitdatenwert t1 oder t2 definiert ist (vergl. Fig. 19(f)).
- Wenn die Antwort auf den Schritt A406 NEIN ist, d. h. wenn das Intervall t1 zwischen den Nulldurchgangspunkten Zero 1 und Zero 5 nicht gleich dem Intervall t2 zwischen den Nulldurchgangspunkten Zero 4 und Zero 8 ist, beginnt kein Ertönen und die CPU wartet auf die nächste Unterbrechungsverarbeitung. Danach überprüft die CPU, ob das Zeitintervall t2 zwischen den Punkten Zero 4 und Zero 8 gleich dem nächsten Zeitintervall t1 ist, welches sich von dem Nulldurchgangspunkt Zero 5 bis zu Zero 9 (Fig. 19(a)) erstreckt. Dies wird im Schritt A406 durchgeführt. Wenn das Überprüfungsergebnis JA ist, rückt die CPU zum Schritt A407 vor, bei welchem sie auf den Start des Ertönens abzielt.
- Anschließend mißt die CPU das Zeitintervall t1 zwischen den Nulldurchgangspunkten unmittelbar nach der Maximum-Spitzenpunkterfassung und das Zeitintervall t2 unmittelbar nach der Minimum-Spitzenpunkterfassung. Die CPU führt, wenn nötig, die Frequenzänderungsverarbeitungen zweimal für eine Periode durch. Daher kann die Gitarre auf die Frequenzänderung des Eingangssignals schnell ansprechen
- In dieser ersten Ausführungsform mit der Flag-Funktion in dem Fluß der Fig. 20 und 21, werden die Nulldurchgangspunkte 12 und 14 ignoriert, wenn die Wellenform, wie in Fig. 15 gezeigt, eingegeben wird.
- In der ersten Ausführungsform ist der Wellenformeingang von dem Typ, bei welchem die Wellenform zuerst ansteigt, d. h. die Amplitude der Wellenform steigt vom Nullpegel zum Positiven an. Derselbe Betrieb kann erlangt werden, wenn die Wellenform eingegeben wird, welche zuerst fällt oder vom Nullpegel zum Negativen übergeht.
- Ein solches Beispiel ist in Fig. 22 gezeigt. Wenn die Wellenform, wie in Fig. 22(a) gezeigt, hereinkommt, gibt der Nulldurchgangspunkt-Detektor 206 ein Signal mit einer Wellenform, wie in Fig. 22(b) gezeigt, aus. Als Ergebnis wird das Unterbrechungssignal INTb an die CPU 400 angelegt. Zu diesem Zeitpunkt startet das Programm von Fig. 21. Der Zähler 7 beginnt dar Zählen des Zeitintervalls t2 (vergl. Nulldurchgangspunkt Zero 21 von Fig. 22(a)), danach wird das Unterbrechungssignal INTa an den Nulldurchgangspunkt Zero 22 in derselben Zahl erzeugt. Die CPU startet die Verarbeitung des Flußdiagramms von Fig. 20. Am nächsten Nulldurchgangspunkt Zero 23 wird die erste Periodenberechnung beendet, um das Intervall t2 zu erlangen. Am nächsten Nulldurchgangspunkt Zero 24 wird die Zeit t1 erlangt (vergl. Fig. 22(c)).
- Die CPU führt die Verarbeitung von Fig. 20 wie die Unterbrechung am Nulldurchgangspunkt Zero 24 aus. Nach Beendigung dieser Verarbeitung kehrt die CPU zum Hauptfluß von Fig. 18 zurück und führt Schritte A403 und A404 aufeinanderfolgend aus. Der Schritt A406 wird zum Überprüfen verwendet, ob die Intervalle t2 und t1 innerhalb einer Zeitlänge innerhalb einer gegebenen Toleranz abfallen (Fig. 22(c)). Wenn die Antwort auf diesen Schritt JA ist, rückt die CPU zum Schritt A407 vor und gibt den Befehl, einen Musikton mit der Periode der Zeitlänge zu erzeugen an das Frequenz-ROM 8 und die Tonquellenschaltung 9 (Fig. 22(d)).
- Wenn die Antwort auf den Schritt A406 NEIN ist, überprüft die CPU, ob das vorhergehende Zeitintervall t1 (zwischen Zero 22 und Zero 24) gleich dem nächsten Intervall t2 ist (welches sich von den Nulldurchgangspunkten Zero 22 bis Zero 24 erstreckt), nach etwa der halben Periode. Wenn diese Intervalle ungefähr gleich sind, führt die CPU die Startverarbeitung des Ertönens durch.
- Sogar wenn die Wellenform fällt, kann auf diese Weise das Ertönen während der Zeitperiode von weniger als zwei Perioden (für eine Sinuswelle ist es 1,5 Perioden) gestartet werden.
- Um die Frequenz zu stabilisieren werden im Schritt A408 von Fig. 18, nachdem das Ertönen gestartet ist, der vorhergehend gespeicherte Zeitzähldatenwert und der derzeitige Zeitzähldatenwert gemittelt und der gemittelte Datenwert wird ausgegeben. Wenn alternativ die Differenz zwischen dem vorhergehenden Datenwert und dem derzeitigen Datenwert groß ist, beispielsweise 20% oder mehr, wird der vorhergehende Datenwert ausgegeben. Die Periodenberechnungen, welche auf der Nulldurchgangspunkterfassung unmittelbar nach den Maximum- und Minimum-Spitzenpunkterfassungen basieren, können selektiv auf eine Art durchgeführt werden, bei welcher die Periodenberechnung, welche auf den Nulldurchgangspunkten unmittelbar nach der Maximum-Spitzenpunkterfassung basiert, für die Wellenform ausgeführt wird, welche an dem Startpunkt ansteigt, und jene, welche auf den Nulldurchgangspunkten unmittelbar nach der Spitzenpunkterfassung basiert, wird für die Wellenform ausgeführt, welche am Startpunkt fällt.
- Wie oben beschrieben, kann die CPU eine geeignete Verarbeitung in dem Schritt A405 von Fig. 18 auswählen. Es wird bemerkt, daß diese Auswahl durch Modifikation der Software erreicht werden kann, und nicht durch Modifizierung der externen Schaltung der CPU. Daher kann das Musikinstrument dieser Erfindung flexibel verwendet werden.
- In der oben erwähnten ersten Ausführungsform wird im Schritt B4 von Fig. 20 und im Schritt C4 von Fig. 21 die Periode der Wellenform berechnet. Die Steuerung des Ertönens, welche auf der berechneten Periode basiert, und die Musiktonfrequenz werden im Schritt A407 oder A408 im Hauptfluß von Fig. 18 durchgeführt. Diese Verarbeitungen können, wenn nötig, bei der Unterbrechungsverarbeitung (Fig 20 und 21) durchgeführt werden. Wenn dies geschieht, ist das Ansprechen auf das Eingangssignal noch schneller.
- Eine Modifikation der ersten Ausführungsform wird nun beschrieben, deren Gesamtschaltungsgestaltung in Fig. 24 gezeigt wird. In der Modifikation werden Zeitintervalle T1 bzw. T2 zwischen den Maximum- und Minimum-Spitzenpunkten erfaßt. Die Steuerung des Ertönens wird auf der Basis der so erfaßten Zeitintervalle durchgeführt.
- Die Ausgangssignale von einem Mikrophon und Aufnehmern werden an einen Eingangsanschluß 1 angelegt und danach an die Extraktionsschaltungen P11 bis P16. Die spezifische Gestaltung jeder Tonhöhen-Extraktionsschaltung P11 bis P16 wird in Fig. 24 dargestellt. Wie gezeigt wird, empfängt jeder von einer Vielzahl von Verstärkern 2 das Musiktonsignal von dem entsprechenden Eingangsanschluß 1. Jeder der Vielzahl von Tiefpaßfiltern 3 trennt die Hochfrequenzkomponenten des Ausgangssignals von dem Verstärker 8 ab. Das Ausgangssignal des Filters wird einem Maximum-Spitzendetektor 4, einem Minimum- Spitzendetektor 5 und einem A/D-Konverter 411 angelegt.
- Diese Detektoren 4 und 5 können dieselben sein wie jene der ersten Ausführungsform.
- Die Signale dieser Detektoren 4 und 5 und des A/D-Konverters 411 werden an die CPU 400 angelegt. Auf der Basis dieser Signale verarbeitet die CPU geeignet den Start des Ertönens und die Frequenzänderung.
- Fig. 23 zeigt ein Zeitablaufsdiagramm von betreffenden Signalen, bei welchen die Eingangssignalwellenform ansteigt. Wenn die Wellenform, wie in Fig. 23(a) gezeigt, hereinkommt, besitzt der Maximum-Spitzendetektor 4 die Ausgangswellenform, wie in Fig. 23(b) gezeigt. Die Wellenform des Ausgangssignals des Minimum-Spitzendetektors 5 ist wie in Fig. 23(c) gezeigt.
- Die CPU 400 bestimmt die Zeitintervalle T1 und T2 auf der Basis der Ausgangssignale von jenen Detektoren, wie in Fig. 23(d) gezeigt. Wenn die Zeitintervalle T1 und T2, welche jeweils eine Periode der Wellenform repräsentieren, im wesentlichen einander gleich sind und die Differenz zwischen ihnen innerhalb eines tolerierbaren Bereiches liegt, wird ein Startkommando zum Ertönen, wie in Fig. 23(e) gezeigt, an die Tonquellenschaltung angelegt.
- Wenn diese Zeitintervalle T1 und T2 nicht gleich sind, wird das Zeitintervall T1 etwa eine halbe Periode später gemessen und wird mit dem alten Zeitintervall T1 verglichen. Wenn diese im wesentlichen gleich sind, wird die Ertönstartverarbeitung ausgeführt.
- Es sollte verstanden werden, daß für die Tonhöhen-Extraktion irgendein geeignetes Messen verwendet werden kann. In der oben erwähnten ersten Ausführungsform werden jede der zwei Zeitintervalle t1 und t2 für die Tonhöhenextraktion verwendet. Es wird in Erinnerung gerufen, daß das Zeitintervall t1 zwischen dem Nulldurchgangspunkt liegt, welcher zuerst nach den Maxium-Spitzenwerten der Eingangswellenform erscheint. Das Zeitintervall t2 liegt zwischen dem Nulldurchgangspunkt, welcher nach den Minimum-Spitzenwerten der ersten Wellenform erscheint. Wie in der Modifikation beschrieben, besteht eine andere mögliche Tonhöhenextraktion darin, das Zeitintervall T1 zwischen zwei benachbarten Maximum-Spitzenwerten der Eingangswellenform mit dem Zeitintervall T2 zwischen zwei benachbarten Minimum-Spitzenpunkten zu vergleichen. Eine weitere mögliche Tonhöhenextraktion besteht darin, das Zeitintervall zwischen zwei benachbarten Nulldurchgangspunkten zu verwenden. Eine zusätzliche Tonhöhenextraktion besteht darin, eine Autokorrelationsfunktion oder eine andere geeignete Funktion der Periodenberechnung zu verwenden.
- Die erste Ausführungsform und seine Modifikation verwenden drei Typen von Periodendatenwerten t1, t2, t3 oder t2, t1, t2 und T1, T2, T1 oder T1, T2, T1. Während des Zeitintervalls von weniger als zwei Perioden der Eingangswellenform (falls es eine perfekte Sinuswelle ist, beträgt das Intervall 1,5 Perioden) werden zwei Perioden der Wellenform erfaßt. Wenn diese Werte der Perioden miteinander übereinstimmen, richtet sich die CPU auf die Tonquellenschaltung, um das Ertönen zu starten.
- Während in der oben erwähnten ersten Ausführungsform die vorliegende Verwendung für eine elektronische Gitarre verwendet wird, kann sie für irgendein anderes System des Typs verwendet werden, in welchem Tonhöhen aus einem Tonsignal oder eine elektrische Schwingung als Eingang eines Mikrophons beispielsweise extrahiert werden, und ein akustisches Signal, welches unterschiedlich zu dem ursprünglichen Signal ist, wird bei den Tonhöhen oder Tonfrequenzen entsprechend jenen des ursprünglichen Signals erzeugt. Spezifische Beispiele diesbezüglich sind elektronische Pianos mit Tastaturen, elektronische Blasinstrumente, elektronische Saiteninstrumente so wie elektronische Violinen und das japanische Saiteninstrument Koto.
- Wie oben beschrieben, werden während des Zeitintervalls von weniger als zwei Perioden der Eingangssignalwellenform zwei Perioden der Eingangssignalwellenform erfaßt. Wenn diese im wesentlichen gleich sind, richtet sich die CPU auf das Ertönen eines Musiktons bei einer Frequenz, welche durch die Periode definiert ist. Daher wird die vom Eingeben der Wellenform bis zum aktuellen Starten des Ertönens erforderte Zeit reduziert. Das Ergebnis ist eine Verbesserung der Ansprechleistung und das Eliminieren des unnatürlichen Empfindens von ertönten Musiktönen.
- Eine zweite Ausführungsform einer elektronischen Gitarre gemäß dieser Erfindung wird unter Bezugnahme auf Fig. 25 bis 27 beschrieben. Diese Ausführungsform ist imstande, die Tonhöhe einer Eingangssignal-Wellenform sogar dann zu extrahieren, wenn sie mehrere Grundwellenkomponenten enthält, wie in Fig. 25 gezeigt wird.
- Wie in Fig. 25 gezeigt, enthält die Wellenform viele intensive Grundwellen und besitzt viele Spitzenpunkte und Durchgangspunkte. Wenn die elektronische Gitarre eine solche Wellenform empfängt, kann sie fehlerhaft ein Wellenlängen-Zeitintervall P als Intervalle PS und PR messen, welche jede unterschiedlich zu dem wahren Zeitintervall P sind. Die Gitarre läßt die Musiktöne unter inkorrekten Tonhöhen erklingen. Dies ist problematisch bei der in der KOKOKU Nr. 61- 51793 offenbarten Technik. Wenn die benachbarten Wellenformperioden im wesentlichen gleich sind, wird bei dieser Technik die Frequenzsteuerung auf der Basis der Zeitlänge der verglichenen Periode ausgeführt.
- Diese Erfindung zielt darauf ab, ein solches Problem zu lösen, und stellt eine Vorrichtung bereit, welche die Tonhöhe von vielen Oberwellen, welche in der Wellenform enthalten sind, exakt extrahieren kann und den Musikton unter der korrekten Tonhöhe ertönen läßt.
- Um diese Aufgabe zu erreichen, wird eine Messung der Zeitlänge einer ersten Welle der Eingangswellenform durchgeführt, welche teilweise eine Welle derselben Wellenform überlappt, und der Zeitlänge einer zweiten Welle, welche ebenso die erste Welle überlappt. Wenn die gemessenen Zeitlängen im wesentlichen gleich sind, richtet sich eine Steuerung auf das Ertönen eines Musiktons zu der Frequenz, welche durch die Zeitlänge definiert ist.
- Eine Anordnung der zweiten Ausführungsform wird in Fig. 28 gezeigt.
- Der Betrieb der zweiten Ausführungsform ist mit Betonung auf das Hauptprogramm dargelegt.
- Vor einem Fortschreiten mit der detaillierten Beschreibung des Betriebs der CPU 600, wird zuerst das Hauptregister in einem Arbeitsspeicher 601 beschrieben.
- PS-, PR- und P-Register speichern jeweils die Meßzeit einer Periode PS, die Meßzeit einer Periode PR, welche partiell die Periode PS überlappt, und die Meßzeit einer Periode P, welche partiell die Periode PR überlappt. Wenn diese drei Tonhöhendatenwerte PS, PR und P im wesentlichen übereinstimmen, führt die CPU 600 die Frequenzsteuerung für ein Frequenz-ROM 8 und eine Tonquellenschaltung 9 auf der Basis des letzten Tonhöhendatenwertes P aus. Dies wird später detailliert beschrieben. Zu einer anderen Zeit als der Startzeit des Ertönens wird jede Periode, der Tonhöhendatenwert des P- Registers unversehrt dem PS-Register übertragen. In der folgenden Beschreibung beziehen sich PS, PR und P auf die erste, die zweite bzw. die dritte Periode.
- Das TS-Register speichert die Zahl eines Zählers 7 zum Start der Periode P. Das TR-Register speichert die Zahl des Zählers 7 zum Start der PR-Periode. Diese Register werden verwendet, um den jeweiligen Tonhöhendatenwert zu erlangen. Der Zähler 7 läuft frei, um ein gegebenes Taktsignal zu zählen.
- Ein TRIGGER-Register wird während einer Periode unmittelbar vor dem Start des Ertönens, wie in Fig. 26A gezeigt, auf den Zustand "1" gesetzt. In anderen Perioden als dieser weist dieses Register den Zustand "0" auf und speichert den Datenwert, welcher das "Fortschreiten der Vorbereitungsverarbeitung zum Start des Ertönens" anzeigt.
- Ein SIGN-Register wird verwendet, um anzuzeigen, daß der Nulldurchgangspunkt für die Periodenmessung nach dem Maximum-Spitzenpunkt oder dem Minimum-Spitzenpunkt angeordnet ist. Der Zustand "1" des Registers zeigt den Nulldurchgangspunkt nach dem Maximum-Spitzenpunkt an und der Zustand "2" des Registers zeigt den Nulldurchgangspunkt nach dem Minimum-Spitzenpunkt an.
- Ein AMP(i)-Register speichert den Maximum- oder Minimum- Spitzenwert, genauer gesagt, seinen Absolutwert, welcher von einem A/D-Konverter 411 verwendet wird und in einem Latch 412 gespeichert wird. Ein AMP(1)-Register speichert den Maximum-Spitzenwert, und ein AMP(2)-Register dient der Minimum-Spitzenwertspeicherung.
- Zusätzlich beinhaltet die CPU 600 des weiteren drei Schwellenwertpegel ONLEVI, ONLEVII und ONLEV.
- In einem Hauptprogramm (Fig. 26A und 26B) löscht die CPU 600 jedes Register TRIGGER, AMP(1) und AMP(2) zuerst in den Schritten S31 bis S33. Im Schritt S1 führt die CPU die Unterbrechungsverarbeitung aus, wie oben erwähnt, und beurteilt, ob die Inhalte a', b' und t' (welche a, b und t' entsprechen und die vorhergehende Aufzeichnung anzeigen) in dem Arbeitsspeicher 101 gesichert sind. Wenn keine Unterbrechungsverarbeitung ausgeführt worden ist, wird die Antwort NEIN gegeben, und dieser Schritt S1 wird wiederholt ausgeführt.
- Wenn der Schritt S1 JA ergibt, wird der nächste Schritt S2 ausgeführt, um die Inhalte a', b' und t' auszulesen. Im nächsten Schritt S3 liest die CPU 600 den Wert des Spitzenpunkts desselben Registertyps aus (Maximum oder Minimum von AMP(a'), und lädt ihn in das s'-Register in der CPU. Des weiteren setzt die CPU den Spitzenwert b' nun extrahiert in das AMP(a')-Register.
- Im Schritt S4 überprüft die CPU, ob die Inhalte des TRIGGER- Registers sich auf "1" befinden oder nicht. Wenn das System der elektronischen Gitarre sich in der Anfangsbedingung befindet, kann der Zustand "1" nicht in dem Register gesetzt sein, und die CPU begibt sich zu dem Schritt S5, bei welchem sie überprüft, ob die Ton-ein-Bedingung (note-on condition) errichtet worden ist oder nicht. In diesem Fall jedoch ist die Ton-ein-Bedingung nicht errichtet worden, und die CPU kehrt zum Schritt S1 zurück. Wenn das Eingangssignal, dessen Pegel größer als ONLEVI ist, hereinkommt, ergibt der Schritt S6 die Antwort JA, und danach wird der Schritt S7 ausgeführt.
- Im Schritt S7 wird der Wert a' dem SIGN-Register eingegeben. Der Wert für a' ist 1 am Nulldurchgangspunkt unmittelbar nach dem Maximum-Spitzenpunkt und ist 2 am Nulldurchgangspunkt unmittelbar nach dem Minimum-Spitzenpunkt.
- In den Schritten S8 und 59 speichert die CPU den Wert von t' als den Zahlwert an dem Start der ersten Periode PS in das TS-Register und lädt "1" in das TRIGGER-Register. Als Ergebnis wird der Wert von a' in das SIGN-Register geladen (im Fall von Fig. 27(a) enthält dies Register "1"). Der Wert von b' wird in das AMP-Register gesetzt und der Wert von t' wird in das TS-Register gesetzt. Danach kehrt die CPU zum Schritt S1 zurück.
- Die Verarbeitung des Hauptprogramms unmittelbar nach dem Nulldurchgangspunkt Zero 1 (Fig. 27(a)) wird an diesem Punkt beendet.
- Die Verarbeitung des Hauptprogramms unmittelbar nach dem Nulldurchgangspunkt Zero 2 wird nun beschrieben. In den Schritten S1 bis S3 wird die Datenwertsetzverarbeitung ausgeführt und im Schritt S4 ist die Antwort JA, und danach wird Schritt S10 ausgeführt.
- Wenn die Wellenform zu der Zeit des Eingebens der Wellenform positiv wird, wie in Fig. 27(a) gezeigt, enthält das SIGN- Register "1". Die vorliegende Wellenform weist zurückliegend die negative Spitze auf und daher enthält das a'-Register "2". Bei dieser Bedingung wird NEIN gegeben, und es wird der Schritt S11 ausgeführt. In diesem Schritt wird der Wert von t' wie der Zählwert am Start der zweiten Periode PR in das TR-Register gesetzt. Danach kehrt die CPU zum Schritt S1 zurück.
- Nach dem nächsten Nulldurchgangspunkt Zero 3, wenn das Hauptprogramm wiederum ausgeführt wird, wird im Schritt S4 die Antwort JA gegeben, und danach springt die CPU zum Schritt S10. Der vorliegende Wert von a' ist "1" und der von SIGN ist "1". Daher ergibt sich im Schritt 510 die Antwort JA und es wird der Schritt S12 ausgeführt, um das TRIGGER- Register zu löschen. Im folgenden Schritt S13 wird der Wert des TS-Registers, d. h. die Zeit am Nulldurchgangspunkt Zero 0 von der Zahl des Zählers 7 abgezogen, welche in der vorliegenden Unterbrechung angenommen wird und in dem t'-Register enthalten ist. Das Ergebnis der Subtraktion wird in das PS-Register geladen.
- Auf diese Weise wird der Tonhöhendatenwert der ersten Periode PS, dessen Länge PS ist, wie in Fig. 27(c) gezeigt, erlangt.
- Wie in Fig. 27(d) gezeigt, gibt im Schritt S14 die CPU 600 ein Ton-ein-Befehl (note-on command) dem Frequenz-ROM 8 und der Tonquellenschaltung 9 gemäß dem Inhalt des PS-Registers. Und das Ertönen beginnt zu diesem Zeitpunkt. Alternativ kann der Musikton wie durch eine offene Saite gegeben anstelle des Inhalts des PS-Registers erzeugt werden.
- In der Hauptprogrammverarbeitung unmittelbar nach dem nächsten Nulldurchgangspunkt Zero 4 wird der Ton-ein-Modus (note-on mode) errichtet. Die CPU schreitet vom Schritt S5 zum Schritt S15 fort und überprüft, ob der Wert von b' wie der gerade herbeigeholte Spitzenwert nun oberhalb des Pegels OFFLEV liegt. Wenn er nicht oberhalb OFFLEV liegt, überprüft die CPU, ob die Relativ-ein-Verarbeitung (relative-on processing) ausgeführt wird. Insbesondere überprüft die CPU, ob der derzeitige Spitzenwert b' um ONLEVII größer als der vorhergehende Spitzenwert "c", anders gesagt, sie überprüft, ob der extrahierte Spitzenwert während des Ertönens abrupt ansteigt.
- Wenn die Saite gezupft wird, wird die Saite allmählich gegen Null gedämpft. Die Antwort auf diesen Schritt S16 ist NEIN. In dem Falle, bei welchem die Saite wiederum gezupft wird, bevor die Schwingung einer Saite auf Null gedämpft wird, durch Tremolo spielen, kann die Antwort des Schrittes S16 JA sein, obwohl dies ein seltener Fall ist. In diesem Fall liefert der Schritt S16 JA, und der Fluß springt zum Schritt S17, und Schritte S8 und S9 werden fortlaufend ausgeführt. Als Ergebnis wird das Triggerregister auf "1" gesetzt, und es wird dieselbe Operation wie jene zum Beginn des Ertönens ausgeführt. Mit anderen Worten, die Schritte S12 bis S14 werden aufeinanderfolgend ausgeführt, um die Relativ-einverarbeitung zu bewirken.
- Unter normaler Bedingung wird der Schritt S17, welcher Schritt S16 folgt, ausgeführt, um den Wert von a' und den Wert des SIGN-Registers zu vergleichen. Wenn diese nicht übereinstimmen wie in dem Fall des Nulldurchgangspunkts Zero 4, Zero 6, . . ., werden Schritte S18 und Sl9 ausgeführt. In diesen Schritten wird der Inhalt des TR-Registers von dem t'-Register subtrahiert, um die zweite Periode PR zu erlangen. PR wird in das PR-Register gesetzt, und der Wert von t' wird in das TS-Register gesetzt, um den Tonhöhendatenwert der nächsten Periode PR zu erlangen.
- An dem Nulldurchgangspunkt Zero 5, Zero 7,..., deren Charakteristik umgekehrt zu jenen der Nulldurchgangspunkte Zero 4 und Zero 6 ist, werden die Folgen von Schritten S1 bis S5 und S15 bis S17 ausgeführt. In diesem Fall stimmen der Inhalt des a'-Registers mit dem Inhalt des TS-Registers überein. Daher wird der Schritt S20 ausgeführt. In diesem Schritt wird die Inhaltsdifferenz zwischen dem t'-Register und dem TS-Register erlangt, um den Tonhöhendatenwert der nächsten dritten Periode zu erlangen. Die Differenz wird in das P-Register gesetzt. Der Wert t' wird im Schritt S21 des TS-Register gesetzt, um den Tonhöhendatenwert der nächsten dritten Periode P zu erlangen.
- Anschließend überprüft die CPU 600 im Schritt S22, ob die Datenwertdifferenz zwischen den ersten und dritten Perioden PS und P innerhalb einer vorherbestimmten Fehlertoleranz liegt, welche kleiner als die dritte Periode P ist (0< α< 0,4). Des weiteren überprüft die CPU im Schritt S23, ob die Datenwertdifferenz zwischen der zweiten und dritten Periode PR und P innerhalb einer vorherbestimmten Fehlertoleranz fällt, welche kleiner ist als die dritte Periode P (0< α< 0,4). Wenn diese drei Ausdrücke von Tonhöhendatenwerten PS, PR und P innerhalb der Toleranz übereinstimmen, führt die CPU im Schritt 524 die Frequenzsteuerung (Tonhöhenänderung) für das Frequenz-ROM 8 und die Tonquellenschaltung 9, wie in Fig. 5 (d) gezeigt, durch. Wenn diese nicht miteinander übereinstimmen, führt die CPU nicht im Schritt S24 die Tonhöhenänderungsverarbeitung durch und behält die bislang benutzte Tonhöhe bei.
- Wie oben beschrieben, wird die genaue Tonhöhenextraktion durch Vergleichen von drei Ausdrücken der Tonhöhendatenwerte ausgeführt, mit dem Ertönen des Musiktons in der richtigen Tonhöhe.
- Die elektronische Gitarre nimmt diskret die Frequenzvariation in der Saitenschwingung von Zeit zu Zeit auf und führt die Frequenzsteuerung auf der Basis des aufgenommenen Datenwertes in Realzeit aus.
- Die CPU schreitet vom Schritt 324 zum Schritt S25 fort und überträgt den Tonhöhendatenwert der dritten Periode des P- Registers in das PS-Register. Der Tonhöhendatenwert wird als Tonhöhendatenwert der nächsten neuen ersten Periode verwendet.
- Wenn, wie oben beschrieben, die Saitenschwingung allmählich abgedämpft wird und ihr Pegel unterhalb dem Pegel OFFLEV liegt, schreitet die CPU vom Schritt 515 zum Schritt S26 fort und führt die Ton-aus-Verarbeitung (Ertönen-aus-Verarbeitung (sounding-off processing)) aus, wie im rechten Teil von Fig. 27 gezeigt. Die CPU gibt der Tonquellenschaltung 9 ein Ton-aus-Befehl (note-off command) aus, um das Ertönen zu stoppen.
- Auf diese Art werden die Verarbeitung der Tonaufbereitung und Starts des Ertönens in den Schritten S7 bis S9, dem Schritt S11 und Schritten 12 bis S14 an den jeweiligen Nulldurchgangspunkten der ersten Periode ausgeführt. An den Nulldurchgangspunkten unmittelbar nach den Minimum-Spitzenpunkten der jeweiligen Perioden, d. h. an den gerade-numerierten Nulldurchgangspunkten der Eingangswellenform von Fig. 27 wird die Tonhöhenänderungsverarbeitung in den Schritten S18 und S19 ausgeführt. An den Nulldurchgangspunkten unmittelbar nach den Maximum-Spitzenpunkten, d. h. an den ungerade-numerierten Nulldurchgangspunkten der Eingangswellenform von Fig. 27 wird dieselbe Verarbeitung in den Schritten S20 bis S25 ausgeführt. Schließlich wird im Schritt S26 die Ton-aus-Verarbeitung ausgeführt.
- Wie aus der Beschreibung bezüglich Fig. 25 zu sehen ist, wird die Frequenzänderungsverarbeitung nicht ausgeführt, sogar wenn die Eingangswellenform viele Oberwellen enthält, wenn die Perioden PS, PR und P nicht einander gleich sind. Das Ergebnis reduziert die Möglichkeit von fehlerhafter Tonhöhenextraktion.
- Bei der Tonhöhenvergleichsverarbeitung der Schritte S22 und S23 wird der Vergleich von PS und PR zusätzlich zu dem Vergleich von PS und P, PR und P gestattet. Es ist wesentlich, zu überprüfen, ob diese drei Faktoren gleich sind oder nicht. Der Tonhöhendatenwert, welcher bei der Tonhöhenänderungsverarbeitung im Schritt S24 verwendet wird, welcher der Erfassung der Gleichheit der drei Faktoren folgt, kann die arithmetische Mitte oder die geometrische Mitte von PS, PR und P zusätzlich zu P sein. Darüber hinaus werden zwei oder drei dieser Faktoren geeignet gewichtet und dann für diesen Datenwert gemittelt.
- In der oben erwähnten Ausführungsform wird das Ertönen des Musiktons gemäß dem Inhalt des PS-Registers gestartet, wodurch das Ansprechen des Musikinstrument-Systems verbessert wird. Alternativ kann nach Erfassung der Übereinstimmung dieser drei Faktoren PS, PR und P der Musikton bei der extrahierten Frequenz ertönen.
- Während in der oben erwähnten Ausführungsform die Tonhöhe zwischen den Nulldurchgangspunkten gemessen wird, ist es gestattet, die Periode zwischen irgendwelchen anderen geeigneten Punkten so wie zwischen dem Maximum-Spitzenpunkt und dem Nulldurchgangspunkt, dem Minimum-Spitzenpunkt und dem Nulldurchgangspunkt und dem Maximum- und Minimum-Spitzenpunkt zu messen. In einem solchen Fall wird der Signalausgang des Maximum- oder Minimum-Spitzendetektors 4 oder 5 als Unterbrechungssignal INT verwendet, und es können dieselben Effekte erlangt werden. Zusätzlich kann auf die Erfassung des Nulldurchgangspunkts unmittelbar vor dem Spitzenpunkt eine ähnliche Verarbeitung ausgeführt werden. Irgendeine andere Messung kann verwendet werden, um den Referenzpunkt zur Tonhöhenextraktion zu errichten.
- In der oben erwähnten Ausführungsform werden die jeweiligen Verarbeitungen in dem Hauptfluß ausgeführt, aber sie können ebenso in den Unterbrechungsverarbeitungen ausgeführt werden.
- Während in der oben erwähnten Ausführungsform die vorliegende Erfindung für eine elektronische Gitarre verwendet wird, kann sie ebenso für irgendwelche anderen Systeme des Typs verwendet werden, bei welchem Tonhöhen aus einem Tonsignal oder eine elektrische Schwingung beispielsweise als Eingang von einem Mikrophon extrahiert werden, und es wird ein akustisches Signal, welches unterschiedlich zu dem ursprünglichen Signal ist, unter den Tonhöhen oder Tonfrequenzen entsprechend jenen des ursprünglichen Signals erzeugt. Spezifische Beispiele dafür sind elektronische Pianos mit Tastaturen, elektronische Blasinstrumente, elektronische Saiteninstrumente sowie elektronische Violinen und das Koto (japanisches Saiteninstrument).
- Wie aus der vorhergehenden Beschreibung ersichtlich ist, wird in der zweiten Ausführungsform eine Messung der Zeitlänge einer ersten Welle einer Eingangswellenform durchgeführt, welche eine Welle derselben Wellenform partiell überlappt, und der Seitenlänge einer zweiten Welle, welche ebenfalls die erste Welle überlappt. Wenn die gemessenen Zeitlängen im wesentlichen gleich sind, steuert die CPU das Ertönen eines Musiktons mit der durch die Zeitlänge definierten Frequenz. Daher kann das System der elektronischen Gitarre, welches für den Vergleich der drei Perioden am besten geeignet ist, genau die Tonhöhe der Wellenform extrahieren, sogar wenn sie viele Oberwellen enthält.
Claims (9)
1. Vorrichtung zur Bestimmung der Tonhöhe eines im
wesentlichen periodischen Eingangssignals,
gekennzeichnet durch:
ein Erfassungsmittel (P1-P6) zum Durchführen einer
Mehrzahl von Erfassungen der Periode des
Eingangssignals, wobei die Abtastwerte des Eingangssignals für
die Erfassung verwendet werden, welche zeitlich
überlappt; und
ein Bestimmungsmittel (CPU), welches die Tonhöhe des
Eingangssignals bestimmt, wenn wenigstens zwei der
erfaßten Perioden nahezu gleich sind, und welches die
Tonhöhe des Eingangssignals bestimmt, um reziprok einer
der nahezu gleichen erfaßten Perioden zu sein.
2. Die Vorrichtung nach Anspruch 1,
dadurch gekennzeichnet, daß
das Erfassungsmittel (P1-P6) zwei Erfassungen der
Periode des Eingangssignals innerhalb einer Zeit,
welche kürzer ist als die zwei Perioden des
Eingangssignals, ausführt; und
das Bestimmungsmittel (CPU) die Tonhöhe des
Eingangssignals bestimmt, wenn die zwei erfaßten Perioden
innerhalb der Zwei-Perioden-Zeitspanne ungefähr gleich
sind, und die Eingangssignaltonhöhe als das Reziproke
eines der zwei-ungefähr gleichen erfaßten Perioden
bestimmt.
3. Die Vorrichtung nach Anspruch 1 oder 2, gekennzeichnet
durch ein Befehlsmittel (CPU) zum Geben eines Befehls,
um einen Musikton bei einer Frequenz zu erzeugen,
dessen Periode der bestimmten Periode entspricht.
4. Die Vorrichtung nach Anspruch 2 oder 3, dadurch
gekennzeichnet, daß das Erfassungsmittel (P1-P6) die zwei
Perioden erfaßt durch Erfassen einer Zeitdauer (t1)
zwischen zwei Nulldurchgangspunkten, welche zwei
aufeinanderfolgenden Spitzenpunkten (MAX1) des
Eingangssignals folgen, und durch Erfassen einer Zeitdauer (t2)
zwischen zwei Nulldurchgangspunkten, welche zwei
aufeinanderfolgenden negativen Spitzenpunkten (MINi) des
Singangssignals folgen.
5. Die Vorrichtung nach Anspruch 2 oder 3, dadurch
gekennzeichnet, daß das Erfassungsmittel (P1-P6) die zwei
Perioden durch Erfassen einer Zeitdauer (P1) zwischen
den zwei aufeinanderfolgenden positiven Spitzenpunkten
(NAX1) und durch Erfassen einer Zeitdauer (T2) zwischen
den zwei aufeinanderfolgenden negativen Spitzenpunkten
(MIN1) erfaßt.
6. Die Vorrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß das Bestimmungsmittel (CPU) ein erstes
Meßmittel (7) zum Messen einer gegebenen Zeitperiode (PS)
einer Periode des Eingangssignals' ein zweites
Meßmittel (7) zum Messen einer gegebenen Zeitperiode (PR)
einer Periode des Eingangssignals, welches teilweise
die eine Periode (PS) überlappt, welche durch das erste
Meßmittel gemessen worden ist, ein drittes Meßmittel
(7) zum Messen einer gegebenen Zeitperiode (P) einer
Periode des Eingangssignals, welches teilweise die eine
Periode < PR) überlappt, welche durch das zweite
Meßmittel (7) gemessen worden ist, und ein
Beurteilungsmittel enthält zum Beurteilen der Periode des
Eingangssignals, wenn die gegebenen Zeitperioden (PS, PR, P),
welche durch das erste bis dritte Meßmittel (7)
gemessen worden ist, miteinander übereinstimmen.
7. Die Vorrichtung nach Anspruch 6, gekennzeichnet durch
Befehlsmittel (CPU) zum Geben eines Befehls, um einen
Musikton bei einer Frequenz zu erzeugen, welche auf den
gegebenen Zeitperioden wie durch das erste bis dritte
Meßmittel (7) gemessen basieren, wenn die gegebenen
Zeitperioden im wesentlichen übereinstimmen.
8. Die Vorrichtung nach einem der Ansprüche 1 bis 7,
dadurch gekennzeichnet, daß das Eingangssignal durch die
Vibration einer Saite erzeugt wird.
9. Die Vorrichtung nach einem der Ansprüche 1 bis 7,
dadurch gekennzeichnet, daß das Eingangssignal ein
Toneingangssignal ist.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61253487A JPS63106795A (ja) | 1986-10-24 | 1986-10-24 | 電子楽器の入力制御装置 |
JP61282142A JPS63136088A (ja) | 1986-11-28 | 1986-11-28 | 電子楽器の入力制御装置 |
JP61283292A JP2555551B2 (ja) | 1986-11-28 | 1986-11-28 | 入力波形信号制御装置 |
JP61285985A JPS63139399A (ja) | 1986-12-02 | 1986-12-02 | 波形信号入力制御装置 |
JP61286745A JPS63141099A (ja) | 1986-12-03 | 1986-12-03 | 電子楽器の入力制御装置 |
JP62004714A JP2508044B2 (ja) | 1987-01-12 | 1987-01-12 | 電子楽器の入力制御装置 |
JP62050381A JPH07104666B2 (ja) | 1987-03-06 | 1987-03-06 | ピッチ抽出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3784830D1 DE3784830D1 (de) | 1993-04-22 |
DE3784830T2 true DE3784830T2 (de) | 1993-10-14 |
Family
ID=27563289
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873784830 Expired - Lifetime DE3784830T2 (de) | 1986-10-24 | 1987-10-23 | Gerät zur Bestimmung der Tonhöhe eines im wesentlichen periodischen Eingangssignales. |
DE19873752185 Expired - Lifetime DE3752185T2 (de) | 1986-10-24 | 1987-10-23 | Gerät zum Erzeugen eines Musiktonsignales gemäss eines Eingangswellenform-Signals |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873752185 Expired - Lifetime DE3752185T2 (de) | 1986-10-24 | 1987-10-23 | Gerät zum Erzeugen eines Musiktonsignales gemäss eines Eingangswellenform-Signals |
Country Status (3)
Country | Link |
---|---|
EP (2) | EP0493374B1 (de) |
DE (2) | DE3784830T2 (de) |
HK (1) | HK1005348A1 (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0196700A (ja) * | 1987-10-08 | 1989-04-14 | Casio Comput Co Ltd | 電子楽器の入力制御装置 |
CN108333506A (zh) * | 2018-04-08 | 2018-07-27 | 杭州欣美成套电器制造有限公司 | 一种近零信号提取与交流开关位置检测电路 |
CN111030412B (zh) * | 2019-12-04 | 2022-04-29 | 瑞声科技(新加坡)有限公司 | 一种振动波形的设计方法及振动马达 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4633748A (en) * | 1983-02-27 | 1987-01-06 | Casio Computer Co., Ltd. | Electronic musical instrument |
JPS6145298A (ja) * | 1984-08-09 | 1986-03-05 | カシオ計算機株式会社 | 電子楽器 |
US4627323A (en) * | 1984-08-13 | 1986-12-09 | New England Digital Corporation | Pitch extractor apparatus and the like |
-
1987
- 1987-10-23 EP EP92105224A patent/EP0493374B1/de not_active Expired - Lifetime
- 1987-10-23 DE DE19873784830 patent/DE3784830T2/de not_active Expired - Lifetime
- 1987-10-23 EP EP19870115594 patent/EP0264955B1/de not_active Expired - Lifetime
- 1987-10-23 DE DE19873752185 patent/DE3752185T2/de not_active Expired - Lifetime
-
1998
- 1998-05-20 HK HK98104364A patent/HK1005348A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP0493374B1 (de) | 1998-04-29 |
DE3752185T2 (de) | 1998-08-27 |
HK1005348A1 (en) | 1998-12-31 |
EP0493374A3 (en) | 1992-11-19 |
DE3752185D1 (de) | 1998-06-04 |
EP0264955B1 (de) | 1993-03-17 |
EP0493374A2 (de) | 1992-07-01 |
EP0264955A3 (en) | 1989-08-30 |
EP0264955A2 (de) | 1988-04-27 |
DE3784830D1 (de) | 1993-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Moorer | On the transcription of musical sound by computer | |
DE69615284T2 (de) | Synthesizer mit Erkennung der Tonhöhe und des Tonausgangspunkts eines Saiteninstruments zur Tonerzeugung | |
US5780759A (en) | Method for pitch recognition, in particular for musical instruments which are excited by plucking or striking | |
DE69222782T2 (de) | Verfahren und vorrichtung für die erzeugung von vokal-harmonien | |
DE69907498T2 (de) | Verfahren zur schnellen erfassung der tonhöhe | |
DE19709930B4 (de) | Tonprozessor, der die Tonhöhe und die Hüllkurve eines akustischen Signals frequenzangepaßt nachweist | |
DE60315880T2 (de) | Datenerzeugungseinrichtung und verfahren für musikkompositionen | |
DE3889331T2 (de) | Vorrichtung zur Steuerung von Musiktönen gemäss einem Eingangswellenformsignal. | |
US7507899B2 (en) | Automatic music transcription apparatus and program | |
DE3877246T2 (de) | Elektronisches musikinstrument. | |
DE3436645A1 (de) | Elektronisches musikinstrument | |
DE10157454B4 (de) | Verfahren und Vorrichtung zum Erzeugen einer Kennung für ein Audiosignal, Verfahren und Vorrichtung zum Aufbauen einer Instrumentendatenbank und Verfahren und Vorrichtung zum Bestimmen der Art eines Instruments | |
US4104946A (en) | Voicing system for electronic organ | |
US8750530B2 (en) | Method and arrangement for processing audio data, and a corresponding corresponding computer-readable storage medium | |
DE3784830T2 (de) | Gerät zur Bestimmung der Tonhöhe eines im wesentlichen periodischen Eingangssignales. | |
DE69613157T2 (de) | Verfahren zur Erkennung des Beginns und Endes einer Note bei einem Perkussions- oder Saiteninstrument | |
US5349130A (en) | Pitch extracting apparatus having means for measuring interval between zero-crossing points of a waveform | |
DE60214409T2 (de) | Verfahren und vorrichtung zur zweiphasen-grundfrequenzdetektion | |
DE68911858T2 (de) | Verfahren und Vorrichtung zum automatischen Transkribieren. | |
DE10117871C1 (de) | Verfahren und Vorrichtung zum Extrahieren einer Signalkennung, Verfahren und Vorrichtung zum Erzeugen einer Datenbank aus Signalkennungen und Verfahren und Vorrichtung zum Referenzieren eines Such-Zeitsignals | |
DE2750121C2 (de) | Musikinstrumenten-Stimmgerät | |
JP3092197B2 (ja) | ピッチ抽出装置 | |
JP2532424B2 (ja) | 波形信号入力制御装置 | |
DE4190022C2 (de) | Gitarrensteuersystem | |
DE4008872C2 (de) | Verfahren zum Erzeugen von Klängen und elektronisches Musikinstrument |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |