-
Die vorliegende Anmeldung beansprucht die Priorität der vorläufigen US-Anmeldung mit der Seriennummer 61/717,380, eingereicht am 23. Oktober 2012, die für alle Zwecke durch Bezugnahme in den vorliegenden Text aufgenommen wird.
-
GEBIET DER ERFINDUNG
-
Die vorliegende Erfindung betrifft allgemein ein System zur Fernpositionierung eines Endeffektors nach den Ansprüchen 1 und 4.
-
ALLGEMEINER STANDFUSS DER TECHNIK
-
Der Fachmann kennt computer-numerisch gesteuerte (CNC)-Maschinen als hochpräzise und hochgenaue Maschinen. Eine CNC-Maschine kann zum Beispiel einen Bohrer, eine Presse, eine Drehbank oder andere Maschinen während der Herstellung und/oder Endbearbeitung verschiedener Teile oder Komponenten mit relativ geringen Fertigungstoleranzen steuern. Jede CNC-Maschine erfordert in der Regel irgendeine Art von Ersteinrichtung, um einen Endeffektor vor dem Betrieb zu positionieren. Diese Erstpositionierung des Endeffektors wird herkömmlicherweise mittels eines kundenspezifischen Bedienpaneels ausgeführt, das eine Kombination aus Kipp- und/oder Drehschaltern aufweist, um die manuelle Positionierung des Endeffektors präzise zu steuern. Zum Beispiel kann ein Bediener eine erste Achse auswählen, um den Endeffektor zu bewegen, und kann einen Schalter drücken und/oder ein Potentiometer drehen, um den Endeffektor entlang der ausgewählten ersten Achse mit der ausgewählten Geschwindigkeit zu bewegen. Der Bediener kann dann den Prozess für zwei oder mehr Achsen wiederholen, bis der Bediener den Endeffektor zufriedenstellend in der gewünschten Position positioniert hat. Dieser iterative Prozess des Auswählens einer bestimmten Achse und des Bewegens des Endeffektors entlang der ausgewählten Achse mag am Ende zwar für eine Positionierung des Endeffektors effektiv sein, doch er kann auch zeit- und arbeitsaufwändig sein.
-
Die Entwicklung mikroelektromechanischer Systeme hat es ermöglicht, Beschleunigungsmesser und andere Sensoren in immer weiter verbreitete Produkte zu integrieren, wie zum Beispiel Smartphones, Tablet-Computer und Bedienkonsolen für virtuelle Spiele. Infolge dessen wären ein System und ein Verfahren, die mit einem oder mehreren dieser weit verbreiteten Produkte arbeiten, um einen Endeffektor zu positionieren, nützlich, um den Zeit- und Arbeitsaufwand zu verringern, der mit der Positionierung des Endeffektors einher geht.
-
BESCHREIBUNG DER ERFINDUNG
-
Um die oben angesprochenen Probleme zu überwinden, und insbesondere das Problem der Verringerung des Zeit- und Arbeitsaufwandes im Zusammenhang mit der Positionierung des Endeffektors zu lösen, wird ein System zur Fernpositionierung eines Endeffektors nach den Ansprüchen 1 und 4 beschrieben. Weitere Ausführungsformen der Erfindung bilden den Gegenstand der Unteransprüche. Aspekte und Vorteile der Erfindung werden unten in der folgenden Beschreibung dargelegt, werden aus der Beschreibung offensichtlich, oder können während der Praktizierung der Erfindung in Erfahrung gebracht werden.
-
Eine Ausführungsform der vorliegenden Erfindung ist ein System zur Fernpositionierung eines Endeffektors. Das System enthält eine Eingabevorrichtung und einen ersten Sensor in der Eingabevorrichtung. Der erste Sensor ist auf eine erste Achse ausgerichtet und ist dafür konfiguriert, ein erstes Signal zu generieren, das eine erste Winkelverschiebung des ersten Sensors um die erste Achse herum widerspiegelt. Ein Prozessor kommuniziert mit dem ersten Sensor, so dass der Prozessor das erste Signal empfängt. Der Prozessor ist dafür konfiguriert, einen ersten Satz Logik auszuführen, der in einem Speicher gespeichert ist und den Prozessor veranlasst, das erste Signal zu filtern, das erste Signal zu glätten und ein erstes Steuersignal an den Endeffektor zu generieren, das proportional zu der ersten Winkelverschiebung des ersten Sensors um die erste Achse herum ist.
-
Eine weitere Ausführungsform der vorliegenden Erfindung ist ein System zur Fernpositionierung eines Endeffektors, das eine Eingabevorrichtung und einen Beschleunigungsmesser in der Eingabevorrichtung enthält. Der Beschleunigungsmesser ist dafür konfiguriert, ein erstes Signal zu generieren, das eine erste Winkelverschiebung des Beschleunigungsmessers von der ersten Achse widerspiegelt. Ein Prozessor kommuniziert mit dem Beschleunigungsmesser, so dass der Prozessor das erste Signal empfängt. Der Prozessor ist dafür konfiguriert, einen ersten Satz Logik auszuführen, der in einem Speicher gespeichert ist und den Prozessor veranlasst, das erste Signal zu glätten und ein erstes Steuersignal an den Endeffektor zu generieren, das proportional zu der ersten Winkelverschiebung des Beschleunigungsmessers um die erste Achse herum ist.
-
Ein Verfahren zur Fernpositionierung eines Endeffektors kann Folgendes enthalten: Bewegen einer Eingabevorrichtung, Abfühlen einer ersten Winkelverschiebung eines ersten Sensor um eine erste Achse herum, und Generieren eines ersten Signals, das die erste Winkelverschiebung des ersten Sensors um die erste Achse herum widerspiegelt. Das Verfahren enthält des Weiteren das Glätten des ersten Signals und das Generieren eines ersten Steuersignals an den Endeffektor, das proportional zu der ersten Winkelverschiebung des ersten Sensors um die erste Achse herum ist.
-
Der Durchschnittsfachmann kann die Merkmale und Aspekte solcher Ausführungsformen sowie anderer anhand des Studiums der Spezifikation besser würdigen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Eine vollständige und ihre Praktizierung ermöglichende Offenbarung der vorliegenden Erfindung, einschließlich der besten Art ihrer Realisierung, an den Fachmann wird im restlichen Teil der Spezifikation unter Bezug auf die beiliegenden Figuren ausführlicher dargelegt. In diesen Figuren ist Folgendes zu sehen:
-
1 ist ein beispielhaftes Blockschaubild eines Systems zur Fernpositionierung eines Endeffektors gemäß einer Ausführungsform der vorliegenden Erfindung;
-
2 ist eine beispielhafte Eingabevorrichtung, die auf erste, zweite und dritte Achsen ausgerichtet ist;
-
3 ist ein beispielhaftes Kurvendiagramm von Rohsignalen, die eine Winkelverschiebung eines Sensors um drei Achsen herum widerspiegeln;
-
4 ist ein beispielhaftes Kurvendiagramm der in 3 gezeigten Rohsignale in normalisierter Form;
-
5 ist ein beispielhaftes Kurvendiagramm des in 4 gezeigten normalisierten dritten Signals mit einer Überlagerung desselben Signals in gefilterter und geglätteter Form;
-
6 ist ein beispielhaftes Display einer Mensch-Maschine-Schnittstelle;
-
7 ist ein beispielhaftes Kurvendiagramm eines Steuersignals, das aus dem dritten Signal erzeugt wurde;
-
8 ist ein beispielhaftes Kurvendiagramm eines Beschleunigungsprofils, das in das in 1 gezeigte System integriert werden kann; und
-
9 ist ein Blockschaubild eines Algorithmus für ein Verfahren zur Fernpositionierung eines Endeffektors gemäß einer Ausführungsform der vorliegenden Erfindung.
-
DETAILLIERTE BESCHREIBUNG
-
Wir gehen nun im Detail auf vorliegende Ausführungsformen der Erfindung ein, von denen ein oder mehrere Beispiele in den beiliegenden Zeichnungen veranschaulicht sind. Die detaillierte Beschreibung verwendet Zahlen und Buchstaben zum Bezeichnen der Merkmale in den Zeichnungen. Gleiche oder ähnliche Bezeichnungen in den Zeichnungen und in der Beschreibung wurden zum Bezeichnen gleicher oder ähnlicher Teile der Erfindung verwendet. Im Sinne des vorliegenden Textes können die Begriffe „erster”, „zweiter” und „dritter” austauschbar verwendet werden, um eine Komponente von einer anderen zu unterscheiden, und sollen weder Position noch Wichtigkeit der einzelnen Komponenten bezeichnen. Darüber hinaus beziehen sich die Begriffe „stromaufwärts” und „stromabwärts” auf die relative Position von Komponenten in einem Fluidströmungsweg. Zum Beispiel liegt Komponente A stromaufwärts von Komponente B, wenn ein Fluid von Komponente A zu Komponente B strömt. Umgekehrt liegt Komponente B stromabwärts von Komponente A, wenn Komponente B einen Fluidstrom von Komponente A empfängt.
-
Jedes Beispiel dient lediglich der Erläuterung der Erfindung und nicht ihrer Einschränkung. Dem Fachmann ist klar, dass Modifizierungen und Variationen an der vorliegenden Erfindung vorgenommen werden können, ohne von ihrem Schutzumfang oder Wesen abzuweichen. Zum Beispiel können Merkmale, die als Teil einer Ausführungsform veranschaulicht oder beschrieben sind, dafür verwendet werden, in einer anderen Ausführungsform verwendet werden, um eine weitere Ausführungsform zu erhalten. Somit ist es beabsichtigt, dass die vorliegende Erfindung alle Modifizierungen und Variationen erfasst, die in den Schutzumfang der beiliegenden Ansprüche und ihrer Äquivalente fallen.
-
Verschiedene Ausführungsformen der vorliegenden Erfindung enthalten ein System und ein Verfahren zur Fernpositionierung eines Endeffektors. Das System enthält allgemein ein Smartphone, einen Tablet-Computer, eine Bedienkonsole für virtuelle Spiele oder eine sonstige tragbare Eingabevorrichtung, die einen oder mehrere Sensoren aufweist, die auf orthogonale Achsen ausgerichtet sind. Jeder Sensor kann ein Signal generieren, das eine Winkelverschiebung des Sensors um die zugehörige Achse herum widerspiegelt, und ein Prozessor in Kommunikation mit den Sensoren kann die Signale empfangen. Der Prozessor kann dafür konfiguriert sein, Logik auszuführen, die in einem Speicher gespeichert ist, um die Signale zu filtern und/oder zu glätten und um ein Steuersignal an den Endeffektor zu generieren, das proportional zu der Winkelverschiebung jedes Sensors um die zugehörige Achse herum ist. In bestimmten Ausführungsformen kann das System des Weiteren eine Sperrvorrichtung enthalten, die eine Fernpositionierung des Endeffektors nur dann gestattet, wenn die Sperrvorrichtung entsperrt ist. Alternativ oder zusätzlich kann das System zusätzliche Logik enthalten, die den Prozessor für verschiedene Endeffektoren modifiziert und/oder die Änderungsrate des oder der Steuersignale in Reaktion auf eine Beschleunigung der Winkelverschiebung des Sensors um die zugehörige Achse herum justiert. Obgleich beispielhafte Ausführungsformen der vorliegenden Erfindung im Kontext einer CNC-Maschine beschrieben werden, leuchtet dem Durchschnittsfachmann ein, dass Ausführungsformen der vorliegenden Erfindung auf jeden beliebigen Endeffektor angewendet werden können, und die vorliegende Erfindung ist nicht auf eine CNC-Maschine beschränkt, sofern nicht in den Ansprüchen ausdrücklich etwas anderes ausgesagt wird.
-
1 zeigt ein beispielhaftes Blockschaubild eines Systems 10 zur Fernpositionierung eines Endeffektors 12 gemäß einer Ausführungsform der vorliegenden Erfindung. Der Endeffektor 12 kann ein beliebiges ferngesteuertes Werkzeug enthalten, das zum Schneiden, Schleifen, Fräsen, Oberflächenbearbeiten oder zum sonstigen Herstellen einer Komponente verwendet wird. Zum Beispiel kann der Endeffektor 12 ein Messer, ein Bohrer, ein Oberfräsenkopf, ein Laser, ein Schleifrad, eine Flachbettmaschine mit einer herkömmlichen kartesischen XYZ-Konfiguration oder eine beliebige sonstige Fertigungsvorrichtung sein, die dem Durchschnittsfachmann bekannt ist und die in einer oder mehreren Richtungen fernpositioniert werden kann. Der Endeffektor 12 kann mit einem oder mehreren Drehpunkten oder Gelenken wirkverbunden sein, um eine Fernpositionierung des Endeffektors 12 entlang einer Linie, in einer Ebene oder in einem Volumen zu erlauben. In der in 1 gezeigten konkreten Ausführungsform beispielsweise sind die ersten, zweiten und dritten Gelenke 14, 16, 18 orthogonal zueinander angeordnet und verbinden den Endeffektor 12 mit einem Standfuß 20. Servomotoren oder andere Aktuatoren (nicht gezeigt), die mit den Gelenken 14, 16, 18 verbunden sind, ermöglichen eine Bewegung des Endeffektors 12 in drei Dimensionen.
-
Wie in 1 gezeigt, enthält das System 10 allgemein eine Eingabevorrichtung 30 und eine Computervorrichtung 32, die mit dem Endeffektor 12 wirkverbunden ist. Die Eingabevorrichtung 30 kann zum Beispiel ein Smartphone, ein Tablet-Computer, ein Controller für virtuelle Spiele oder eine sonstige handelsübliche tragbare Vorrichtung sein, die den einen oder die mehreren Sensoren aufweist, die die Eingabevorrichtung 30 um eine oder mehrere Achsen herum detektieren und/oder quantifizieren können. Obgleich verschiedene Ausführungsformen der vorliegenden Erfindung im vorliegenden Text der Vollständigkeit halber so beschrieben werden, dass sie mehrere separate Sensoren haben, die auf orthogonale Achsen ausgerichtet sind, kann die Eingabevorrichtung 30 in bestimmten Ausführungsformen einen einzelnen Sensor haben, der auf eine oder auf mehrere Achsen ausgerichtet ist, und die vorliegende Erfindung erfordert keinen separaten Sensor für jede Achse, sofern nicht in den Ansprüchen ausdrücklich etwas anderes ausgesagt wird. Darüber hinaus sind zwar die Eingabevorrichtung 30 und die Computervorrichtung 32 durch separate Blöcke in 1 veranschaulicht, doch dem Durchschnittsfachmann ist ohne Weiteres klar, dass eines ins andere integriert sein kann. Zum Beispiel kann die Eingabevorrichtung 30 ein Smartphone sein, und die Computervorrichtung 32 kann eine Anwendung sein, die auf das Smartphone geladen wird und darauf arbeitet.
-
In der in 1 gezeigten konkreten Ausführungsform zum Beispiel kann die Eingabevorrichtung 30 ein Smartphone sein, das einen Beschleunigungsmesser-Sensor 34 und einen Ausrichtungssensor 36 enthält. Der Beschleunigungsmesser-Sensor 34 wiederum kann einen Stampf-Beschleunigungsmesser 38 und einen Roll-Beschleunigungsmesser 40 enthalten, und der Ausrichtungssensor 36 kann einen Kompass oder Gier-Beschleunigungsmesser 42 enthalten. Jeder Sensor 34, 36 und/oder jeder Beschleunigungsmesser 38, 40, 42 kann auf eine andere orthogonale Achse ausgerichtet sein. Zum Beispiel kann, wie am deutlichsten in 2 gezeigt, jeder Sensor 34, 36 und/oder jeder Beschleunigungsmesser 38, 40, 42 (in 2 zusammen als eine Kugel im Inneren der Eingabevorrichtung 30 dargestellt) auf erste, zweite und dritte Achsen 44, 46 bzw. 48 ausgerichtet sein. Auf diese Weise kann jeder Sensor 34, 36 und/oder jeder Beschleunigungsmesser 38, 40, 42 die Richtung und den Betrag detektieren, die bzw. den sich die Eingabevorrichtung 30 um jede jeweilige Achse 44, 46, 48 herum bewegt.
-
Wir kehren zu der in 1 gezeigten konkreten Ausführungsform zurück. Der Stampf-Beschleunigungsmesser 38 kann auf die erste Achse 44 ausgerichtet sein und kann dafür konfiguriert sein, ein erstes Signal 50 zu generieren, das eine erste Winkelverschiebung des Stampf-Beschleunigungsmessers 38 um die erste Achse 44 herum widerspiegelt. Gleichermaßen kann der Roll-Beschleunigungsmesser 40 auf die zweite Achse 46 ausgerichtet sein, die orthogonal zu der ersten Achse 44 verläuft, und kann dafür konfiguriert sein, ein zweites Signal 52 zu generieren, das eine zweite Winkelverschiebung des Roll-Beschleunigungsmessers 40 um die zweiten Achse 46 herum widerspiegelt. Und zum Schluss kann der Gier-Beschleunigungsmesser 42 auf die dritte Achse 48 ausgerichtet sein, die orthogonal zu den ersten und zweiten Achsen 44, 46 verläuft, und kann dafür konfiguriert sein, ein drittes Signal 54 zu generieren, das eine dritte Winkelverschiebung des Gier-Beschleunigungsmessers 42 um die dritte Achse 48 herum widerspiegelt. Auf diese Weise können die Stampf-, Roll- und Gier-Beschleunigungsmesser 38, 40, 42 eine Bewegung der Eingabevorrichtung 30 in drei Ebenen erfühlen und können separate Signale 50, 52, 54 generieren, die die Richtung und Größenordnung widerspiegeln, in der sich die Eingabevorrichtung 30 um jede Achse 44, 46, 48 herum gedreht hat. Die in diesen Signalen 50, 52, 54 enthaltenen Informationen können dann durch die Computervorrichtung 32 verarbeitet werden, um die Informationen in ein dreidimensionales Koordinatensystem hinein abzubilden, um den Endeffektor 12 zu positionieren. Genauer gesagt, kann für jeden Sensor 34, 36 oder jeden Beschleunigungsmesser 38, 40, 42 das Vorzeichen oder die Richtung der Winkelverschiebung der Bewegungsrichtung um jede Achse 44, 46 bzw. 48 herum in einer einzelnen Ebene entsprechen, und die Größenordnung der Winkelverschiebung kann der Rate oder Geschwindigkeit der Bewegung um jede Achse 44, 46 bzw. 48 herum in einer einzelnen Ebene entsprechen. Zusammen können die drei Signale 50, 52, 54 somit eine gewünschte Bewegung des Endeffektors 12 in einem dreidimensionalen Raum anzeigen.
-
Die Computervorrichtung 32 kommuniziert mit der Eingabevorrichtung 30, um die ersten, zweiten und dritten Signale 50, 52, 54 zu empfangen und zu verarbeiten und in erste, zweite und dritte Steuersignale 56, 58, 60, die an den Endeffektor 12 gesendet werden, abzubilden. Im Allgemeinen kann die Computervorrichtung 32 eine beliebige geeignete Prozessor-basierte Computervorrichtung sein. Geeignete Computergeräte können zum Beispiel Personalcomputer, Mobiltelefone (einschließlich Smartphones), Personal Digital Assistants, Tablet-Computer, Laptop-Computer, Desktop-Computer, Arbeitsplatzrechner, Spielekonsolen, Server, sonstige Computer und/oder sonstige geeignete Computergeräte sein. Wie in 1 gezeigt, kann die Computervorrichtung 32 einen oder mehrere Prozessoren 62 und zugehörigen Speicher 64 enthalten. Der oder die Prozessoren 62 können allgemein ein oder mehrere beliebige, dem Fachmann bekannte geeignete Verarbeitungsvorrichtungen sein. Gleichermaßen kann der Speicher 64 allgemein ein oder mehrere beliebige, geeignete computerlesbare Medien sein, einschließlich beispielsweise RAM, ROM, Festplatten, Flash-Laufwerke oder sonstige Speichervorrichtungen. Es versteht sich allgemein, dass der Speicher 64 dafür konfiguriert sein kann, Informationen zu speichern, auf den der oder die Prozessoren 62 zugreifen können, einschließlich Anweisungen oder Logik, die durch den oder die Prozessoren 62 ausgeführt werden können. Die Anweisungen oder Logik können jeder beliebige Satz Anweisungen sein, die, wenn sie durch den oder die Prozessoren 62 ausgeführt werden, den oder die Prozessoren 62 veranlassen, die gewünschten Funktionen bereitzustellen. Zum Beispiel können die Anweisungen oder Logik Softwareanweisungen sein, die in einer computerlesbaren Form dargestellt sind. Wenn Software verwendet wird, so können beliebige geeignete Programmierungen, Skripts oder sonstige Arten von Sprache oder Kombinationen von Sprachen dafür verwendet werden, die im vorliegenden Text enthaltenen Lehren zu implementieren. Alternativ können die Anweisungen durch festverdrahtete Logik oder andere Schaltungen implementiert werden, einschließlich beispielsweise anwendungsspezifische Schaltkreise.
-
Die Computervorrichtung 32 kann auch eine Netzwerkschnittstelle für den Zugriff auf Informationen über ein Netzwerk enthalten. Die Netzwerkschnittstelle kann zum Beispiel eine USB-, Wi-Fi-, Bluetooth-, Ethernet- oder eine serielle Schnittstelle enthalten. Das Netzwerk kann eine Kombination aus Netzwerken enthalten, wie zum Beispiel ein Mobilfunknetz, ein WiFi-Netzwerk, ein LAN, ein WAN, das Internet und/oder ein anderes geeignetes Netzwerk, und kann eine beliebige Anzahl leitungsgebundener oder drahtloser Kommunikationslinks enthalten. Informationen können über die Netzwerkschnittstelle unter Verwendung sicherer Datenpakete ausgetauscht werden, die automatisch validiert werden, um ihre Integrität zwischen den Geräten sicherzustellen.
-
Wie in 1 gezeigt, kommuniziert der Prozessor 62 mit den Stampf-, Roll- und/oder Gier-Beschleunigungsmessern 38, 40, 42, so dass der Prozessor 62 die ersten, zweiten und/oder dritten Signale 50, 52, 54 empfängt. Der Prozessor 62 ist dafür konfiguriert, einen ersten Satz Logik 66 auszuführen, der in dem Speicher 64 gespeichert ist, um die ersten, zweiten und/oder dritten Signale 50, 52, 54 zu normalisieren, zu filtern und/oder zu glätten. Darüber hinaus kann der erste Satz Logik 66 es dem Prozessor 32 ermöglichen, die ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 an den Endeffektor 12 zu generieren, die proportional zu den ersten, zweiten bzw. dritten Signalen 50, 52, 54 sind.
-
Die 3–5 zeigen beispielhafte Kurvendiagramme der Signale 50, 52, 54 während verschiedener Verarbeitungsstufen durch den Prozessor 62. Genauer gesagt, zeigt 3 ein beispielhaftes Kurvendiagramm der ersten, zweiten und dritten Signale 50, 52, 54, die durch die jeweiligen Stampf-, Roll- und Gier-Beschleunigungsmesser 38, 40, 42 erzeugt werden. Wie in 3 gezeigt, können die Rohdaten der Beschleunigungsmesser und Ausrichtungssensoren 34, 36 ein erhebliches Rauschen enthalten, das durch elektromagnetische Interferenzen oder einfach durch die hohe Empfindlichkeit der zugehörigen Stampf-, Roll- und Gier-Beschleunigungsmesser 38, 40, 42 verursacht wird. Darüber hinaus können verschiedene Eingabevorrichtungen 30 variierende Grade von Rausch- oder Jitter-Signalen auf die Rohsignale überlagern. Wenn die in 3 gezeigten Rohsignale 50, 52, 54 nicht modifiziert werden würden, so würden schnelle Transienten auf den Endeffektor 12 wirken, was zu unnötigen Vibrationen führen würde, die es schwierig machen würden, den Endeffektor 12 präzise und genau zu positionieren. Darüber hinaus würden die unnötigen Vibrationen den normalen Verschleiß erhöhen, der mit den sich bewegenden Teilen einhergeht, und die Grenznutzungsdauer des Systems 10 verkürzen.
-
Der erste Satz Logik 66 kann es dem Prozessor 62 ermöglichen, die Rohsignale 50, 52, 54 zu normalisieren, um das Rauschen in den Signalen zu reduzieren, wie in 4 gezeigt. Die in 4 gezeigten normalisierten Signale 68, 70, 72 konvertieren die Rohdaten von ihrem nativen Bereich zu einem Bereich, der für alle drei Eingänge passt, wodurch eine weitere komparative Analyse der normalisierten Signale 68, 70, 72 ermöglicht wird, ohne individuelle Skalen für jede Bewegungsebene zu erfordern. Die normalisierten Signale 68, 70, 72 können dann gefiltert werden, um die schnellen Transienten und verrauschten Komponenten innerhalb der Signale zu entfernen, um ein glatteres Profil bereitzustellen.
-
5 zeigt ein beispielhaftes Kurvendiagramm des normalisierten dritten Signals
72, wie in
4 gezeigt, mit einer Überlagerung
74 desselben Signals, das gefiltert und geglättet wird, indem der Prozessor
62 den ersten Satz Logik
66 ausführt. Der erste Satz Logik
66 kann zum Beispiel eine Übertragungsfunktion enthalten, um die in dem normalisierten dritten Signal
72 enthaltenen Rohdaten zu filtern, um die schnellen Transienten zu entfernen. Die folgende Übertragungsfunktion ist ein solches Modell, das in den ersten Satz Logik
66 aufgenommen werden kann, um die in dem normalisierten Signale
68,
70,
72 enthaltenen Rohdaten zu filtern:
wobei o die Filterordnung definiert; ω gleich 2πf ist, wobei f die Grenzfrequenz ist; und ε die maximale Durchlassband-Filterverstärkung ist. Der erste Satz Logik
66 kann des Weiteren einen polynomen Splining-Algorithmus enthalten, um das gefilterte Signal zu glätten und ein störungsfreies Signal zu erzeugen. Zum Beispiel kann das folgende allgemeine Grad-n-Polynom angewendet werden, um jedes normalisierte und gefilterte Signal zu glätten:
P(n)(x) = anxn + an-1xn-1 + ... + a1x + a0
-
Die in 5 gezeigte resultierende Überlagerung 74 zeigt somit das normalisierte dritte Signal 72, nachdem es durch die Übertragungsfunktion gefiltert wurde, um das Hochfrequenzrauschen und schnelle Transienten zu entfernen, und durch das polynome Spline hoher Ordnung geglättet wurde, um ein akzeptables Profil zu erzeugen, das exakt interpretiert werden kann, um das dritte Steuersignal 60 zu erzeugen, um den Endeffektor 12 zu bewegen.
-
6 zeigt ein beispielhaftes Display 76 für eine Mensch-Maschine-Schnittstelle, auch als eine graphische Benutzerschnittstelle bekannt, gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. Das Display 76 kann in die Eingabevorrichtung 30 und/oder die Computervorrichtung 32 integriert werden, so dass ein Nutzer rasch darauf zugreifen kann. Wie in 6 gezeigt, kann die Benutzerschnittstelle ein oder mehrere Sicherheitsmerkmale enthalten, um vor versehentlichen Bewegungen des Endeffektors 12 zu schützen, die durch ungewollte Bewegungen der Eingabevorrichtung 30 verursacht wurden. Zum Beispiel kann die Benutzerschnittstelle eine Sperrvorrichtung 78 in Form eines harten oder weichen Knopfes enthalten, der gedrückt oder umgeschaltet werden muss, um eine Bewegung des Endeffektors 12 in einer oder mehreren Richtungen zu ermöglichen. In bestimmten Ausführungsformen kann zum Beispiel die Sperrvorrichtung 78 einen oder mehrere Relaiskontakte 80 steuern, die verhindern, dass die ersten, zweiten und/oder dritten Signale 50, 52, 54 die Computervorrichtung 32 erreichen, wie in 1 gezeigt. Alternativ oder zusätzlich können die Relaiskontakte 80 verhindern, dass die ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 den Endeffektor 12 erreichen, wie außerdem in 1 gezeigt. Auf diese Weise kann die Eingabevorrichtung 30 den Endeffektor 12 nur dann veranlassen, sich in einer bestimmten Richtung zu bewegen, wenn zuerst die Sperrvorrichtung 78 entsperrt wurde.
-
Verschiedene Ausführungsformen der vorliegenden Erfindung können auch jede beliebige Kombination aus festverdrahteter und/oder programmierbarer Logik enthalten, um es zu ermöglichen, das System 10 mit verschiedenen Endeffektoren 12 zu verbinden. Betrachten wir die 1 und 6 zusammen. Beispielsweise kann das Computersystem 32 des Weiteren einen zweiten Satz Logik 82 enthalten, der in dem Speicher 64 gespeichert ist und der durch den Prozessor 62 ausgeführt werden kann, um den ersten Satz Logik 66 für verschiedene Endeffektoren 12 zu modifizieren. In Verbindung damit kann das Display 76 ein separates Jog-Profil 84 für jeden verschiedenen Endeffektor 12 enthalten, und die Auswahl eines bestimmten Jog-Profils 84, das auf dem Display 76 gezeigt ist, kann den Prozessor 62 veranlassen, den zweiten Satz Logik 82 auszuführen, um den ersten Satz Logik 66 zu modifizieren. Auf diese Weise kann dieselbe Eingabevorrichtung 30 für mehrere verschiedene Endeffektoren 12 verwendet werden, die verschiedene Bewegungsrichtungen, Bewegungsbereiche, Bewegungsempfindlichkeiten, Beschleunigungslimits oder -erfordernisse und/oder andere spezielle Merkmale haben, die für jeden Endeffektor 12 speziell oder einmalig sind.
-
Um diese Funktionalität zu veranschaulichen, kann ein bestimmter Endeffektor 12 ein Bohrer sein, der zunächst in einer einzelnen Ebene positioniert werden kann.
-
Die Auswahl des dem Bohrer zugehörigen Jog-Profils 84 kann somit den zweiten Satz Logik 82 veranlassen, den ersten Satz Logik 66 zu modifizieren, um jedes Signal auf Null zu setzen oder zu unterbinden, das den Bohrer veranlassen könnte, sich während der anfänglichen Positionierung außerhalb der einzelnen Ebene zu bewegen. Als eine weitere Illustration kann ein bestimmter Endeffektor 12 ein Laser sein, der sich in drei Dimensionen bewegen kann, aber verschiedene maximal zulässige Geschwindigkeiten in jeder Dimension hat. Die Auswahl des dem Laser zugehörigen Jog-Profils 84 kann eine separate Geschwindigkeitsskala 86 für jede Achse auf dem Display 76 anzeigen, wie in 6 gezeigt. Ein Schieberegler 88 kann es dem Nutzer erlauben, die maximal zulässige Geschwindigkeit für jede Achse nach Bedarf zu justieren. Für bestimmte Jog-Profile erlaubt die Justierung der maximal zulässigen Geschwindigkeit für jede Achse es dem Nutzer, die Steuerungsauflösung der Geschwindigkeit für jede Achse zu justieren, weil die über die gesamte Skala gehende Geschwindigkeit zwischen null und der maximalen Geschwindigkeit, die durch die Schieberegler 88 eingestellt wird, interpoliert werden kann. Die Benutzerschnittstelle kann die Justierung der maximal zulässigen Geschwindigkeit für jede Achse an den zweiten Satz Logik 82 übermitteln, und der zweite Satz Logik 82 kann wiederum den Prozessor 62 veranlassen, den ersten Satz Logik 66 entsprechend zu modifizieren. In einer weiteren Illustration der Funktionalität des zweiten Satzes Logik 82 kann jedes Jog-Profil 84 einen bestimmten Sensor 34, 36 und/oder Beschleunigungsmesser 38, 40, 42 auf eine bestimmte Bewegungsachse für den Endeffektor 12 abbilden. Unter Verwendung der in 6 gezeigten Benutzerschnittstelle kann der Nutzer die Abbildung zwischen den Sensoren 34, 36 und Achsen oder zwischen den Beschleunigungsmessern 38, 40, 42 und Achsen nach Bedarf ändern und an die speziellen Präferenzen des Nutzers anpassen, und der zweite Satz Logik 82 kann diese Änderung der Abbildung durch entsprechendes Modifizieren des ersten Satzes Logik 66 herbeiführen.
-
Sobald die Rohsignale 50, 52, 54 normalisiert, gefiltert und/oder geglättet wurden, wie mit Bezug auf die 3–5 beschrieben und veranschaulicht, und der Nutzer das gewünschte Jog-Profil 84 ausgewählt hat, wie mit Bezug auf die 1 und 6 beschrieben und veranschaulicht wurde, kann der Prozessor 62 den ersten Satz Logik 66 ausführen, um die ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 an den Endeffektor 12 zu generieren, die zu den ersten, zweiten und/oder dritten Winkelverschiebungen der Sensoren 34, 36 und/oder der Beschleunigungsmesser 38, 40, 42 um die jeweiligen Achsen herum proportional sind. 7 zeigt ein beispielhaftes Kurvendiagramm des dritten Steuersignals 60, das an den Endeffektor 12 übermittelt wird, um den Endeffektor um die dritte Achse 48 herum neu zu positionieren. Wenn das dritte Steuersignal 60 das einzige Steuersignal ist, das den Endeffektor 12 erreicht, so dreht sich der Endeffektor 12 nur um die dritte Achse 48; anderenfalls bewegt sich der Endeffektor 12 gleichzeitig in Reaktion auf jedes Steuersignal 56, 58, 60, um eine gleichzeitige Bewegung des Endeffektors 12 in drei Dimensionen herbeizuführen.
-
Verschiedene Ausführungsformen der vorliegenden Erfindung können auch eine beliebige Kombination aus festverdrahteter und/oder programmierbarer Logik enthalten, um ein Justieren der Empfindlichkeit oder Beschleunigung des Endeffektors 12 auf eine Bewegung durch die Eingabevorrichtung 30 zu ermöglichen. Wir wenden uns den 1 und 8 zusammen zu. Zum Beispiel kann das Computersystem 32 des Weiteren einen dritten Satz Logik 90 enthalten, der in dem Speicher 64 gespeichert ist und der durch den Prozessor 62 ausgeführt werden kann, um die Skala der ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 in Reaktion auf die ersten, zweiten und/oder dritten Signale 50, 52, 54 zu modifizieren. Wie zuvor mit Bezug auf 6 beschrieben, kann das Display 76 ein separates Jog-Profil 84 für jeden verschiedenen Endeffektor 12 enthalten, und die Auswahl eines bestimmten, auf dem Display 76 gezeigten Jog-Profils 84 kann eine separate Beschleunigungsskala für jede Achse auf dem Display 76 anzeigen, mit einem Schieberegler, der es dem Nutzer erlaubt, die maximal zulässige Beschleunigung für jede Achse nach Bedarf zu justieren. Für bestimmte Jog-Profile erlaubt die Justierung der maximal zulässigen Beschleunigung für jede Achse es dem Nutzer, die Steuerungsauflösung der Beschleunigung für jede Achse zu justieren, weil die Beschleunigung über die volle Skala zwischen null und der durch die Schieberegler eingestellten maximalen Beschleunigung interpoliert werden kann. Die Benutzerschnittstelle kann die Justierung der maximal zulässigen Beschleunigung für jede Achse an den dritten Satz Logik 90 übermitteln, und der dritte Satz Logik 90 kann wiederum den Prozessor 62 veranlassen, den ersten Satz Logik 66 entsprechend zu modifizieren. Auf diese Weise kann der dritte Satz Logik 90, der in dem Speicher 64 gespeichert ist, die Änderungsrate der ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 in Reaktion auf eine Änderungsrate der ersten, zweiten und/oder dritten Signale 50, 52, 54 justieren, wie in dem beispielhaften Kurvendiagramm von 8 gezeigt.
-
Die mit Bezug auf die 1–8 gezeigten und beschrieben Ausführungsformen können somit ein Verfahren zur Fernpositionierung des Endeffektors 12 bereitstellen, und 9 zeigt ein Blockschaubild eines geeigneten Algorithmus gemäß einer Ausführungsform der vorliegenden Erfindung. Das Verfahren kann enthalten, die Eingabevorrichtung 30 um eine oder mehrere Achsen 44, 46, 48 herum zu bewegen, wie in 2 gezeigt und durch Block 100 in 9 dargestellt. Das Verfahren enthält des Weiteren das Detektieren oder Abfühlen der Winkelverschiebung der Eingabevorrichtung 30 um die eine oder die mehreren Achsen 44, 46, 48 herum und das Generieren der Signale 50, 52, 54, die die Winkelverschiebung der Sensoren 34, 36 und/oder Beschleunigungsmesser 38, 40, 42 um die jeweiligen Achsen 44, 46, 48 herum widerspiegeln, wie durch die Blöcke 102, 104 und 106 dargestellt. Bei Block 108 kann das Verfahren enthalten, eine Bewegung des Endeffektors 12 zu verhindern, sofern nicht die Sperrvorrichtung 78 entriegelt ist. Wie zuvor mit Bezug auf die 1 und 6 besprochen, kann dies zum Beispiel dadurch bewerkstelligt werden, dass man die Übermittlung der ersten, zweiten und/oder dritten Signale 50, 52, 54 an das Computersystem 32 unterbricht und/oder die Übermittlung der ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 an den Endeffektor 12 unterbricht.
-
Block 110 stellt das Verarbeiten der Rohsignale 50, 52, 54 dar. Die Datenverarbeitung kann zum Beispiel das Normalisieren 112, Filtern 114 und/oder Glätten 116 der Rohsignale 50, 52, 54 enthalten, wie zuvor mit Bezug auf die 3–5 besprochen. Bei Block 118 erzeugt das Verfahren die ersten, zweiten und/oder dritten Steuersignale 56, 58, 60 an den Endeffektor 12, die proportional zur Winkelverschiebung der Eingabevorrichtung 30 um die jeweiligen Achsen 44, 46, 48 herum sind. In bestimmten Ausführungsformen kann das Generieren der Steuersignale 56, 58, 60 zum Beispiel enthalten, eines oder mehrere der Steuersignale 56, 58, 60 für verschiedene Endeffektoren 12 durch Auswählen des jedem speziellen Endeffektor 12 zugehörigen Jog-Profils 84 abzubilden, was durch Block 120 dargestellt wird. Alternativ oder zusätzlich kann das Generieren der Steuersignale 56, 58, 60 enthalten, eine Änderungsrate eines oder mehrerer der Steuersignale 56, 58, 60 in Reaktion auf eine Änderungsrate der entsprechenden ersten, zweiten und/oder dritten Signale 50, 52, 54 zu justieren, wie mit Bezug auf die 1 und 8 gezeigt und beschrieben und durch Block 122 angedeutet.
-
Es wird davon ausgegangen, dass die verschiedenen Ausführungsformen, die im vorliegenden Text mit Bezug auf die 1–9 beschrieben wurden, einen oder mehrere Vorteile gegenüber der existierenden Technologie realisieren können. Zum Beispiel können das System 10 und das Verfahren, die im vorliegenden Text beschrieben und veranschaulicht sind, die präzise anfängliche Positionierung des Endeffektors 12 in einer oder mehreren Ebenen verbessern. Darüber hinaus kann die anfängliche Positionierung in jeder Ebene gleichzeitig und durch intuitive Bedienung einer allgemein verfügbaren, normalen Eingabevorrichtung 30 ausgeführt werden, ohne dass eine zeit- und arbeitsaufwändigere iterative Betätigung mehrere Knöpfe und/oder Drehschalter für jede Achse einer gerichteten Bewegung nötig ist. Zum Schluss kann das System 10 in bestimmten Ausführungsformen einfach und bequem zur Verwendung mit verschiedenen, durch den Nutzer ausgewählten Endeffektoren 12 justiert oder speziell angepasst werden.
-
Diese schriftliche Beschreibung verwendet Beispiele zum Offenbaren der Erfindung, einschließlich des besten Modus, und auch zu dem Zweck, es einem Fachmann zu ermöglichen, die Erfindung zu praktizieren, einschließlich der Herstellung und Verwendung jeglicher Vorrichtungen oder Systeme und der Ausführung jeglicher hierin aufgenommener Verfahren. Der patentfähige Schutzumfang der Erfindung wird durch die Ansprüche definiert und kann auch andere Beispiele enthalten, die dem Fachmann einfallen. Solche anderen Beispiele sollen in den Schutzumfang der Ansprüche fallen, falls sie strukturelle Elemente aufweisen, die sich nicht vom Wortlaut der Ansprüche unterscheiden, oder falls sie äquivalente strukturelle Elemente enthalten, die sich nur unwesentlich vom Wortlaut der Ansprüche unterscheiden.
-
Bezugszeichenliste
-
- 10
- System
- 12
- Effektor
- 14
- erstes Gelenk
- 16
- zweites Gelenk
- 18
- drittes Gelenk
- 20
- Standfuß
- 30
- Eingabevorrichtung
- 32
- Computervorrichtung
- 34
- Beschleunigungsmesser-Sensor
- 36
- Ausrichtungssensor
- 38
- erster Beschleunigungsmesser/Stampf-Beschleunigungsmesser
- 40
- zweiter Beschleunigungsmesser/Roll-Beschleunigungsmesser
- 42
- dritter Beschleunigungsmesser/Gier-Beschleunigungsmesser
- 44
- erste Achse
- 46
- zweite Achse
- 48
- dritte Achse
- 50
- erstes Signal
- 52
- zweites Signal
- 54
- drittes Signal
- 56
- erstes Steuersignal
- 58
- zweites Steuersignal
- 60
- drittes Steuersignal
- 62
- Prozessor
- 64
- Speicher
- 66
- Logik
- 68
- Signal
- 70
- Signal
- 72
- Signal
- 74
- Überlagerung
- 76
- Display
- 78
- Sperrvorrichtung
- 80
- Relaiskontakt
- 82
- Logik
- 84
- Profil
- 86
- Geschwindigkeitsskala
- 88
- Schieberegler
- 90
- Logik
- 100
- Block
- 102
- Block
- 104
- Block
- 106
- Block
- 108
- Block
- 110
- Block
- 112
- Normalisieren
- 114
- Filtern
- 116
- Glätten
- 118
- Block
- 120
- Block
- 122
- Block
- A
- Komponente
- B
- Komponente