-
GEBIET DER BESCHREIBUNG
-
Die vorliegende Beschreibung bezieht sich auf die Umwandlung mobiler Maschinen in hochpräzise Roboter. Genauer gesagt: Die Vorliegende Beschreibung bezieht sich auf die Umwandlung einer mobilen Maschine in einen hochpräzisen Roboter durch Erkennen einer Position eines Endeffektors des präzisen Roboters in Bezug auf einen Ablauf am Einsatzort.
-
HINTERGRUND
-
Es gibt viele verschiedene Arten von Arbeitsmaschinen. Manche solcher Arbeitsmaschinen umfassen unter anderem landwirtschaftliche Maschinen, Baumaschinen, forstwirtschaftliche Maschinen, Maschinen zur Pflege von Rasenflächen. Viele dieser Teile mobiler Anlagen haben Mechanismen, die im Betriebseinsatz vom Bediener gesteuert werden. So kann eine Baumaschine unter anderem diverse mechanische, elektrische, hydraulische, pneumatische und elektromechanische Untersysteme haben, die alle vom Bediener betrieben werden können.
-
Baumaschinen sind häufig mit der Aufgabe betraut, Material auf einer Baustelle zu transportieren, oder zur oder von einer Baustelle, entsprechend des Arbeitseinsatzes. Verschiedene Baustelleneinsätze können Materialbewegungen von einem Ort zum anderen oder das Einebnen einer Baustelle usw. umfassen. Während eines Arbeitseinsatzes kann eine Vielfalt von Baumaschinen verwendet werden, darunter unter anderem Muldensattelschlepper, Radlader, Planierraupen und Bagger. Baustelleneinsätze können eine große Zahl von Schritten oder Phasen umfassen und können recht komplex sein.
-
Es können auch Roboterköpfe an Arbeitsmaschinen montiert werden, um die Arbeitsmaschinen zu modifizieren oder zusätzliche Funktionen hinzuzufügen. Beispielsweise kann ein Roboterkopf mit einem Endeffektor in Gestalt eines Materialspenders bei Bauarbeiten einen Eimer eines Baggers ersetzen. Sobald er montiert ist, kann die Arbeitsmaschine Material entsprechend des Arbeitseinsatzes ausgeben.
-
Die vorangehende Erläuterung ist allein als allgemeine Hintergrundinformation angeführt und ist nicht dafür vorgesehen, als Hilfsmittel zur Bestimmung des Umfangs des beanspruchten Gegenstands zu dienen.
-
ZUSAMMENFASSUNG
-
Ein Rechnersystem umfasst eine Steuerlogik für Stellglieder, die für das Erzeugen und Senden von Steuersignalen an ein Stellglied einer mobilen Maschine und zur Bestimmung von Richtung und Geschwindigkeit des Gestänges der mobilen Maschine konfiguriert ist. Das Rechnersystem umfasst auch ein System zum Erzeugen von Steuerkarten, welches für den Empfang von Sensorsignalen hinsichtlich der Richtung und Geschwindigkeit von Bewegungen des Gestänges der mobilen Maschine konfiguriert ist und, auf den empfangenen Sensorsignalen basierend, eine Steuerkarte erzeugt, die die Steuersignale mit der Richtung und der Geschwindigkeit der Bewegung des Gestänges der mobilen Maschine abgleicht.
-
Diese Zusammenfassung dient der Einführung einer Auswahl von Konzepten in vereinfachter Form, die weiter unten in der Ausführlichen Beschreibung näher beschrieben werden. Diese Zusammenfassung ist weder dafür gedacht, wichtige oder wesentliche Eigenschaften des beanspruchten Gegenstands darzulegen, noch als Hilfsmittel zur Bestimmung des Geltungsbereichs des beanspruchten Gegenstands zu dienen. Der beanspruchte Gegenstand ist nicht auf Implementierungen beschränkt, die manche oder alle der im Hintergrund angeführten Nachteile beheben.
-
Figurenliste
-
- 1 ist eine bildliche Veranschaulichung eines Beispiels einer mobilen Maschine, bei der ein Roboter-Anbaugerät verwendet werden kann.
- 2 ist eine bildliche Veranschaulichung der Architektur einer mobilen Maschine, in der eine mobile Maschine mit einem Roboter-Anbaugerät, einem Roboter-Positionierungs- und Kalibrierungssystem, einem externen Sensorsystem und einem Fernsteuerungssystem gekoppelt ist.
- 3 ist eine bildliche Veranschaulichung eines in 2 veranschaulichten Roboter-Anbaugerätes.
- 4A-4B sind Blockdiagramme einer Anordnung der mobilen Maschine, die eine über ein Gelenk mit einem Roboter-Anbaugerät gekoppelte mobile Maschine umfasst.
- 5A-5B sind Ablaufdiagramme, die ein Beispiel für die Erzeugung eines Steuermodells für eine mobile Maschine darstellen, die ein in 4A-4B veranschaulichtes Roboter-Positionierungs- und Kalibrierungssystem verwendet.
- 6A-6B sind Ablaufdiagramme, die einen Beispielvorgang zur Bestimmung einer Beziehung zwischen Steuersignalen des Stellglieds und einer Geschwindigkeit und/oder Richtung eines Gestänges unter Verwendung eines in 4A-4B veranschaulichten Roboter-Positionierungs- und Kalibrierungssystems darstellen.
- 7 ist ein Ablaufdiagramm, welches einen weiteren Beispielvorgang zur Bestimmung einer Beziehung zwischen Steuersignalen des Stelglieds und der Geschwindigkeit/Richtung eines Gestänges unter Verwendung eines in 4A-4B veranschaulichten Roboter-Positionierungs- und Kalibrierungssystems darstellt.
- 8 ist ein Ablaufdiagramm, das ein Beispielsystem für die Steuerung einer Position eines Roboter-Anbaugerätes darstellt, welches einen Endeffektor umfasst, in dem auf dem Steuermodell basierende Steuersignale erzeugt werden.
- 9 ist ein Ablaufdiagramm, welches ein Beispiel für die Modifizierung einer aktuellen Positionsbestimmung eines Roboter-Anbaugerätes unter Verwendung eines in 4A-4B veranschaulichten Roboter-Positionierungs- und Kalibrierungssystems darstellt.
- 10 ist ein Blockdiagramm, das ein Beispiel einer Rechnerumgebung zeigt, die in den Architekturen verwendet werden kann, die in den vorhergehenden Figuren dargestellt sind.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Um einen Arbeitseinsatz erfolgreich abzuschließen, kann es erforderlich sein, eine mobile Maschine in einen hochpräzisen Roboter umzuwandeln. Bei solchen Arbeitseinsätzen kann es sich um forstwirtschaftliche Einsätze, Baustelleneinsätze, landwirtschaftliche Einsätze, Einsätze zur Rasenpflege usw. handeln. Der Roboter kann dann zur Ausführung einer bestimmten Aufgabe, oder einer Vielzahl von Aufgaben eingesetzt werden, die den Arbeitseinsatz darstellen. Bei einem forstwirtschaftlichen Einsatz kann beispielsweise ein Roboter-Anbaugerät an eine mobile Maschine montiert werden, wie eine Erntemaschine oder einen Bagger, und zum Entrinden, Verarbeiten von Holz, Fällen, auf Länge zuschneiden usw. verwendet werden. Roboter-Anbaugeräte sind aber häufig für einen bestimmten Typ und ein spezifisches Modell einer mobilen Maschine ausgelegt und gefertigt. Demzufolge müssen Kunden oft speziell für eine mobile Maschine ausgelegte Roboter-Anbaugeräte kaufen, so dass sich die Umwandlung einer mobilen Maschine in einen hochpräzisen Roboter als ziemlich teuer und/oder einschränkend erweisen kann.
-
Außerdem ist es nach dem Anbau eines Roboter-Anbaugerätes an eine mobile Maschine oft erforderlich, eine Position eines Endeffektors am Roboter-Anbaugerät genau zu überwachen, um die akkurate Steuerung zu gewährleisten. Im forstwirtschaftlichen Einsatz kann beispielsweise ein Endeffektor des Roboter-Anbaugerätes zum Schneiden bestimmter Längen von Bäumen konfiguriert werden. Um bei jedem Schnitt die richtige Länge sicherzustellen, ist es wichtig, dass der Endeffektor korrekt positioniert ist.
-
Die vorliegende Beschreibung betrifft ein Roboter-Positionierungs- und Kalibrierungssystem, das die Steuerung eines Roboter-Anbaugerätes durch jede beliebige mobile Maschine zulässt, so dass die mobile Maschine effektiv in einen hochpräzisen Roboter umgewandelt wird. In einem Beispiel lernt und erzeugt das Roboter-Positionierungs- und Kalibrierungssystem automatisch ein Steuermodell, welches sich aus Konfigurationsinformationen, kinematischen Informationen und Steuersignalinformationen für die mobile Maschine aufbaut. Das Modell wird dann für die Steuerung des Anbaugerätes verwendet. In anderen Beispielen kann das Steuermodell jedoch lediglich aus einem Teilsatz dieser Informationen aufgebaut sein. Dessen ungeachtet kann ein Roboter-Anbaugerät unter Verwendung des erzeugten Steuermodells auf eine vorwärts ausgerichtete Weise gesteuert werden, wenn es an der mobilen Maschine montiert ist. Auf diese Weise kann das Roboter-Anbaugerät im Wesentlichen mit jeder beliebigen mobilen Maschine verwendet werden, da das Roboter-Positionierungs- und Kalibrierungssystem entweder automatisch oder halbautomatisch ein Steuermodell für die mobile Maschine erzeugt, unabhängig von Marke und Modell der mobilen Maschine. Es ist aber auch vorgesehen, dass das Roboter-Anbaugerät feedbackorientiert gesteuert werden kann. In einem Beispiel umfasst dies den Empfang von Sensorsignalen und die Modifikation einer Position des Roboter-Anbaugerätes, basierend auf den empfangenen Sensorsignalen. Außerdem ermöglicht das Roboter-Positionierungs- und Kalibrierungssystem präzise Positionsmessungen eines Endeffektors des Roboter-Anbaugerätes. Im Ergebnis kann so gut wie jede mobile Maschine in einen hochpräzisen Roboter umgewandelt werden, in dem eine Position eines Endeffektors genau überwacht werden kann.
-
1 ist eine bildliche Veranschaulichung eines Beispiels einer mobilen Maschine, mit der ein Roboter-Anbaugerät verwendet werden kann. Während die mobile Maschine 100 veranschaulichend als Bagger dargestellt ist, ist zu beachten, dass jede beliebige mobile Maschine entsprechend der vorliegenden Beschreibung verwendet werden kann.
-
Die mobile Maschine 100 umfasst veranschaulichend einen zentral, über einen Schwenkpunkt 108 an einem Unterwagen 104 mit Raupenbändern 106 schwenkbar montierten Rahmen 102. Die mobile Maschine 100 umfasst eine Reihe von Gestängen (z. B. beweglicher, zwischen zwei Gelenken befindlicher Teil), die durch eine Reihe von Stellgliedern gesteuert werden. Dies kann beispielsweise einen Ausleger 114 und/oder einen Arm 118 umfassen, gesteuert durch elektrische oder hydraulische Stellglieder (z. B. Zylinder 116, 120 und 122). Wie veranschaulichend dargestellt, umfasst der Rahmen 102 eine Kabine 110, eine Motoranordnung 112, einen Abschnitt für ein Ausgleichsgewicht 126, einen über Auslegerzylinder 116 beweglich am Rahmen 102 montierten Ausleger 114, einen an einem Ende des Auslegers 114 befestigten Arm 118 und einen an einem Ende des Arms 118 befestigten Eimer 124. Im Betrieb wird eine Position des Arms 118 relativ zum Ausleger 114 über einen Zylinder 122 gesteuert. Außerdem wird eine Position des Eimers 124 relativ zum Arm 118 über einen Zylinder 120 gesteuert. Ein Fahrer in Kabine 110 betätigt veranschaulichend Benutzereingabemechanismen zur Steuerung der Zylinder 116, 120 und 122 sowie zur Steuerung anderer Stellglieder (wie zum Schwenken der Kabine 110, zum Bewegen und Lenken der Maschine 100 usw.).
-
2 ist eine bildliche Veranschaulichung der Architektur einer mobilen Maschine, in der eine mobile Maschine 100 mit einem Roboter-Anbaugerät 200, einem Roboter-Positionierungs- und Kalibrierungssystem 204, einem externen Sensorsystem 202 und einem Fernsteuerungssystem 206 gekoppelt ist. Das Fernsteuerungssystem 206 kann eine breite Vielfalt verschiedener Fernsteuerungssysteme (oder eine Vielzahl von Fernsteuerungssystemen) umfassen, darunter ein durch andere Elemente in 2 zugängliches Remote-Rechnersystem (z. B. per mobiler Maschine 100, Roboter-Anbaugerät 200, externem Sensorsystem 202 und/oder Roboter-Positionierungs- und Kalibrierungssystem 204). Im Betrieb führt das Roboter-Positionierungs- und Kalibrierungssystem 204 nach dem Ankoppeln des Roboter-Anbaugerätes 200 an der mobilen Maschine 100 und der Positionierung der Maschine 100 in einer bestimmten Position relativ zum externen Sensor 202 präzise Positionsmessungen eines Endeffektors des Roboter-Anbaugerätes 200 durch. In einem Beispiel werden diese Messungen zum Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet. Darüber hinaus können auch Sensorsignale von an der mobilen Maschine 100 und/oder Roboter-Anbaugerät 200 befindlichen Sensoren verwendet werden. Die verschiedenen Sensoren werden später ausführlicher behandelt. Kurzgefasst, sie können jedoch einen mittels einer Verbindung 214 an einem Roboter-Anbaugerät 200 flüssigkeitsbasierten Höhenmesser oder einen Höhensensor 212, Rotationssensoren 210 am Roboter-Anbaugerät 200 und/oder ein Navigationssystem 208 oder andere Positionsmelder aus einer Reihe von Sensoren und Systemen umfassen.
-
Es ist zu beachten, dass in einem Beispiel die mobile Maschine 100 und/oder das Roboter-Anbaugerät 200 über ein eigenes Roboter-Positionierungs- und Kalibrierungssystem 204 verfügen können, das mit einem oder mehreren Fernsteuerungssystem 206 und/oder dem externen Sensorsystem 202 kommunizieren kann. Außerdem können Teile des Roboter-Positionierungs- und Kalibrierungssystems 204 auf der mobilen Maschine 100, auf dem Roboter-Anbaugerät 200 und/oder einem zentralen System angeordnet sein. Für den Zweck der vorliegenden Erörterung wird angenommen, dass das Roboter-Positionierungs- und Kalibrierungssystem 204 ein System innerhalb des Roboter-Anbaugerätes 200 ist, welches die Umwandlung der mobilen Maschine 100 durch das Roboter-Anbaugerät 200 mit der Fähigkeit der präzisen Überwachung und Steuerung einer Position eines Endeffektors des Roboter-Anbaugerätes 200 ermöglicht, wie es ausführlicher in 4A-4B behandelt wird.
-
3 ist eine bildliche Veranschaulichung eines Beispiels eines in 2 veranschaulichten Roboter-Anbaugerätes. Entsprechend der veranschaulichenden Darstellung umfasst das Roboter-Anbaugerät 200 eine an den Arm 118 gekoppelte Stewart-Plattform 304 und einen Endeffektor 308, Sensoren 210, ein Ortungssystem 208, ein Roboter-Positionierungs- und Kalibrierungssystem 204 und eine Verbindung 214 (z. B. einen Rohr) vom Sensor 212. In einem Beispiel ist die Stewart-Plattform 304 eine Roboterplattform mit mehreren hydraulischen und/oder elektrischen Zylindern 310 zwischen einer Plattformbasis 312 und einem Plattformtisch 306. Während das Roboter-Anbaugerät 200 eine Stewart-Plattform 304 mit sechs veranschaulichten Zylindern 310 und einen Endeffektor 308 in Gestalt eines Materialspenders umfasst, wird ausdrücklich berücksichtigt, dass andere Arten von Roboter-Anbaugeräten 200 entsprechend der vorliegenden Beschreibung verwendet werden können, abhängig vom Betrieb am Einsatzort. Im Betrieb ermöglicht eine Stewart-Plattform 304 die Bewegung des Endeffektors 308 nach der Ausgabe verschiedener Materialien in mindestens einem Freiheitsgrad.
-
Nach dem Ankoppeln des Roboter-Anbaugerätes 200 an den Arm 118 der mobilen Maschine 100 erzeugt das Roboter-Positionierungs- und Kalibrierungssystem 204 ein Steuermodell für die mobile Maschine 100. Das Steuermodell ermöglicht die Verwendung des Roboter-Anbaugerätes 200 mit der mobilen Maschine 100 und die Steuerung durch diese, unabhängig von der Art der mobilen Maschine. Dieses wird in 4A-4B ausführlicher behandelt. Kurzgefasst, beginnt das Roboter-Positionierungs- und Kalibrierungssystem 204 aber in einem Beispiel, die unterschiedlichen Stellglieder der Maschine 100 zu betätigen und erkennt eine Richtung und Geschwindigkeit einer Bewegung (und kann auch andere Dinge feststellen) des Endeffektors 308 am Anbaugerät 200 als Reaktion auf diese Aktionen. Basierend auf der erkannten Richtung und Geschwindigkeit erzeugt das Roboter-Positionierungs- und Kalibrierungssystem 204 ein Steuermodell für verschiedene Gestänge der mobilen Maschine 100, gesteuert durch die verschiedenen Stellglieder (wie die Zylinder 116, 122 und/oder 120). Das Steuermodell kann auch von anderen an der mobilen Maschine 100 und/oder am Roboter-Anbaugerät 200 befindlichen Sensoren erzeugt werden, die einige oder alle Konfigurationsinformationen, kinematischen Informationen und/oder Steuersignalinformationen für die mobile Maschine liefern.
-
4A-4B sind Blockdiagramme einer Anordnung von mobilen Maschinen, die veranschaulichend eine über eine Verbindung 466 mit einem Roboter-Anbaugerät 200 gekoppelte mobile Maschine 100 umfasst. Außerdem sind, wie veranschaulichend dargestellt, die mobile Maschine 100, das Roboter-Anbaugerät 200, externe/s Sensorsystem(e) 202 und Fernsteuerungssystem(e) 206 über das Netzwerk 490 kommunizierend gekoppelt. Das Netzwerk 490 kann eines aus einer Reihe unterschiedlicher Arten von Netzwerken sein, wie beispielsweise ein Wide Area Network, ein lokales Netzwerk, ein Nahfeidkommunikationsnetzwerk, ein Mobilfunknetzwerk oder eine breite Vielfalt anderer Netzwerke oder Kombination von Netzwerken sein.
-
Die mobile Maschine 100 umfasst veranschaulichend Prozessor(en)/Steuereinheit(en) 402, ein Kommunikationssystem 404, eine Benutzerschnittstellenvorrichtung 406, eine Benutzerschnittstellen-Logikschaltung 408, eine Stromquelle 410, welche dieselbe oder eine andere als die Motorenanordnung 112 nach 1 sein kann, ein Steuerungssystem 412, steuerbare Untersysteme 414, ein Datenspeicher 418, Sensor(en) 420, Stellglied(er) 454 und eine breite Vielfalt anderer Elemente 416. Vor der ausführlicheren Beschreibung des Betriebs des Roboter-Anbaugerätes 200 und des Roboter-Positionierungs- und Kalibrierungssystems 204 erfolgt zunächst eine kurze Beschreibung einiger der Elemente der mobilen Maschine 100 und ihrer Funktionen.
-
Das Steuerungssystem 412 kann Steuersignale für eine Reihe verschiedener steuerbarer Untersysteme 414 erzeugen, darunter das/die Stellglied(er) 454, basierend auf vom/von Sensor(en) 420 erzeugten Sensorsignalen, vom/von Remote-System(en) 206 oder dem Roboter-Positionierungs- und Kalibrierungssystem 204 empfangenem Feedback, basierend auf durch die Benutzerschnittstellenvorrichtung 406 empfangenen Bedienereingaben, oder es kann Steuersignale auch auf vielfältige andere Weisen erzeugen. Steuerbare Untersysteme 414 können auch andere Untersysteme 498 umfassen, welche eine Vielfalt mechanischer, elektrischer, hydraulischer, pneumatischer, rechnerimplementierter und anderer Systeme umfassen können, die sich auf die Bewegung der mobilen Maschine 100, die durchgeführte Funktion und andere steuerbare Eigenschaften beziehen.
-
Das Kommunikationssystem 404 kann eine oder mehr Kommunikationssysteme umfassen, welche Komponenten der mobile Maschine 100 die Kommunikation untereinander ermöglichen (wie über ein Controller Area Network (CAN-Bus) oder anderweitig), während der mobilen Maschine 100 auch die Kommunikation mit dem/den Fernsteuerungssystem(en) 206, externem/n Sensorsystem(en) 202 und/oder Roboter-Anbaugerät 200 über das Netzwerk 490 gestattet wird.
-
Die Benutzerschnittstellenvorrichtung 406 kann Anzeigevorrichtungen, mechanische oder elektrische Geräte (z. B. ein Lenkrad, Joysticks, Pedale, Hebel, Knöpfe usw.), Audiogeräte, haptische Vorrichtungen und eine Vielfalt anderer Vorrichtungen umfassen. In einem Beispiel erzeugt die Benutzerschnittstellen-Logikschaltung 206 auf der Benutzeroberfläche 406 eine Bedieneranzeige, welche eine Anzeigevorrichtung umfassen kann, die in der Fahrerkabine 110 der mobilen Maschine 100 integriert ist, oder es kann eine separate Anzeige auf einer separaten Vorrichtung sein, die von einem Bediener getragen werden kann (wie ein Laptop-Rechner, ein mobiles Gerät usw.).
-
Die Stromquelle 410 kann eine breite Vielfalt von Stromquellen sein, die für die Lieferung von Strom an verschiedene Komponenten und Untersysteme der mobilen Maschine 100 und/oder des Roboter-Anbaugerätes 200 konfiguriert sind. Die Stromquelle 410 kann einen Motor, eine Batterie, Generatoren, Lichtmaschinen usw. umfassen. Im Betrieb kann die Stromquelle 410 zur Lieferung elektrischen Stroms an das Roboter-Positionierungs- und Kalibrierungssystem 204 im Roboter-Anbaugerät 200 verwendet werden.
-
Der Datenspeicher 418 kann einige oder alle den Betrieb der mobilen Maschine 100 und/oder des Roboter-Anbaugerätes 200 betreffenden Daten speichern. In einem Beispiel kann der Datenspeicher 418 Positionsdaten des Effektors für verschiedene Vorgänge am Einsatzort, Herstellungs- und/oder Modellangaben für die mobile Maschine 100 und Stellglied-/Sensor-Informationen umfassen, die per Roboter-Anbaugerät 200 unter einer Vielfalt von anderen Daten zugänglich sind. In einem Beispiel können Stellglieddaten extreme Betriebspositionsdaten für das/die Stellglied(er) 454 und/oder Gestänge umfassen (welches die Positionen der Stellglieder oder Gestänge im Extrembereich ihrer Bewegung anzeigt), unter einer Vielfalt anderer Daten. In einem Beispiel können die Daten im Datenspeicher 418 vom Roboter-Positionierungs- und Kalibrierungssystem 204 für die korrekte Positionierung des Roboter-Anbaugerätes 200 zur Ausführung eines Arbeitseinsatzes und zum Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet werden, wie in 4B weiter erläutert wird.
-
Das/die Stellglied(er) kann/können eine große Vielzahl an verschiedenen Arten von Stellgliedern umfassen, die für den Empfang eines Steuersignals und das Auslösen der Gestängebewegung an der mobilen Maschine 100 und/oder einen Transport der mobilen Maschine 100 konfiguriert sind. Stellglied(er) kann/können Motor(en) 456, Steuerventil(e) 458, Pumpensteuerung(en) 460, hydraulische/s Stellglied(er) 116, 120, 122 (in FIG. dargestellt), elektrische/s lineare/s Stellglied(er) 462 aus einer Reihe anderer Stellglieder 464 umfassen. Im Betrieb kann das/können die Stellglied(er) 454 nach dem Empfang eines Steuersignals die Bewegung des Gestänges und/oder den Transport der mobilen Maschine 100 antreiben, was die Bewegung des Auslegers 114, des Arms 118, des Rahmens 102 und/oder eines Endeffektors 308 umfassen kann, unter einer Reihe anderer Gestänge. Sie können auch für den Antrieb der Positionierung des Roboter-Anbaugerätes (oder Roboterkopfes) 200 verwendet werden.
-
Sensor(en) 420 erzeugt/erzeugen Sensorsignale, die vom Roboter-Positionierungs- und Kalibrierungssystem 204 zum genauen Bestimmen einer Position eines Roboter-Anbaugerätes 200 und/oder einer mobilen Maschine und zum Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet werden können. Zum Beispiel kann ein Sensor/können Sensoren 420 Gestängebewegungen an der mobilen Maschine 100 erkennen, und/oder einen Transport der mobilen Maschine 100, und kann/können Signale zur Anzeige der erkannten Gestängebewegung und/oder des Transports der mobilen Maschine 100 erzeugen. Anhand des angegebenen Sensorsignals/der angegebenen Sensorsignale kann das Roboter-Positionierungs- und Kalibrierungssystem 204 bestimmen, welche/s Stellglied(er) 454 die verschiedenen Gestänge, eine Konfiguration aus mobiler Maschine 100, Kinematik verschiedener Gestänge, Stellglied 454 und/oder Systembegrenzungen steuert und eine Steuerkarte für die Gestänge erzeugen (die Eingaben für Geschwindigkeit und Richtung der Gestängebewegung widergibt), was in 4B erläutert wird.
-
Sensor(en) 420 kann/können Drehgeber-Encoder 422, Linearpositions-Encoder (424), Inertialmesseinheit(en) 426, Höhensensor 212, Distanzmesssensor(en) 436, Kamera(s) und Bereichsmesssensor(en) 442 aus einer breiten Vielfalt an anderen Sensoren 440 umfassen. In einem Beispiel kann ein Sensor/können Sensoren 420 bereits ab Werk an der mobilen Maschine 100 präsent sein, oder alternativ zu einem späteren Zeitpunkt der mobilen Maschine 100 hinzugefügt worden sein. In einem Beispiel kann/können die Inertialmesseinheit(en) 426 Beschleunigungsmesser 428, Gyroskop(e) 430, Magnetometer 432 aus einer Reihe weiterer Sensoren umfassen. Außerdem kann der/können die Bereichsmesssensor(en) 442 radarbasierte Sensoren 444, LIDAR-basierte Sensoren 446, Ultrabreitband-Strahlungssensoren 448, Ultraschall-Strahlungssensoren 450 aus einer Reihe weiterer Sensoren 452 sein.
-
Im Betrieb ist die mobile Maschine 100 über eine oder mehrere Verbindungen 466 mit dem Roboter-Anbaugerät 200 gekoppelt. Die Verbindungen 466 können mechanische Gestänge umfassen, so dass das Roboter-Anbaugerät 200 physisch mit der mobilen Maschine 100 gekoppelt ist. Es kann auch andere Verbindungen (wie einen Kabelbaum, Drahtlos-Verbindungen usw.) für die Übertragung von elektronischen Daten, Strom, unter Druck stehende Hydraulikflüssigkeit pneumatische Leistung oder eine breite Vielfalt anderer Dinge umfassen.
-
Nun zu dem Roboter-Anbaugerät 200 kommend, das Roboter-Anbaugerät 200 umfasst veranschaulichend Prozessor(en)/Steuereinheit(en) 470, Kommunikationssystem 472, Benutzerschnittstellenvorrichtung 476, Benutzerschnittstellen-Logikschaltung 478, Steuerungssystem 480, steuerbare Untersysteme 482, Datenspeicher 488, globales Positionierungssystem 208, Roboter-Positionierungs- und Kalibrierungssystem 204, Sensor(en) 210, unter einer Reihe anderer Komponenten 474. Vor einer ausführlicheren Betrachtung des Roboter-Positionierungs- und Kalibrierungssystems 204, folgt zunächst eine kurze Beschreibung einiger der Elemente des Roboter-Anbaugerätes 200 und ihrer Funktionen.
-
Das Steuerungssystem 480 des Roboter-Anbaugerätes 200 kann Steuersignale zum Steuern einer Vielfalt unterschiedlicher steuerbarer Untersysteme 482 erzeugen, die, wie in einem Beispiel, einen Endeffektor 484 (der auch ein wie oben erläuterter Endeffektor 308 sein kann) und/oder eine Stewart-Plattform 304 umfassen können. Das steuerbare Untersystem/die steuerbaren Untersysteme 482 kann/können eine breite Vielfalt an mechanischen, elektrischen, hydraulischen, pneumatischen, rechnerimplementierten und anderen Systemen 486 von Roboter-Anbaugeräten 200 umfassen, die sich auf die Bewegung des Roboter-Anbaugerätes 200, die ausgeführte Funktion und andere steuerbare Merkmale beziehen. Das Steuerungssystem 480 kann auf empfangenen Sensorsignalen basierende Steuersignale erzeugen, die auf dem von der mobilen Maschine 100 empfangenen Feedback basieren, Fernsteuerungssystem(en) 206, externes/n Sensorsystem(en) 202, Roboter-Positionierungs- und Kalibrierungssystem 204, basierend auf über die Benutzerschnittstellenvorrichtung 476 empfangenen Bedienereingaben, oder es kann auch Steuersignale auf vielfältige andere Arten erzeugen.
-
Das Kommunikationssystem 472 kann ein oder mehr Kommunikationssysteme umfassen, die die kommunikative Kopplung von Komponenten des Roboter-Anbaugerätes 200 miteinander ermöglicht, während das Roboter-Anbaugerät 200 auch kommunikativ mit der mobilen Maschine 100 gekoppelt sein kann. In anderen Beispielen ermöglicht das Kommunikationssystem 472 dem Roboter-Anbaugerät 200 die Kommunikation mit der mobilen Maschine 100, externem/externen Sensorsystem(en) 202 und/oder Fernsteuerungssystem(en) 206 über das Netzwerk 490. Die Benutzerschnittstellenvorrichtung 476 kann Anzeigevorrichtungen, mechanische oder elektrische Geräte, Audiovorrichtungen, haptische Vorrichtungen und eine Vielzahl anderer Vorrichtungen umfassen. In einem Beispiel ermöglicht die Benutzerschnittstellenvorrichtung 476 einem Bediener der mobilen Maschine 100 die Interaktion mit dem Roboter-Anbaugerät 200, um verschiedene Betriebsparameter zu ändern (z. B. aus der Bedienerkabine der mobilen Maschine 100 heraus), die, wie in einem Beispiel, einen bestimmten Funktionsparameter eines Endeffektors umfassen kann. Auf einer empfangenen Benutzereingabe basierend, kann die Benutzerschnittstellen-Logikschaltung 478 eine Angabe der empfangenen Benutzereingabe für das Steuerungssystem 480 erzeugen.
-
Der Datenspeicher 488 kann manche oder alle Daten in Bezug auf den Betrieb des Roboter-Anbaugerätes 200 und/oder Daten in Bezug auf die mobile Maschine 100 speichern. In einem Beispiel kann der Datenspeicher 488 Positionsdaten des Effektors für verschiedene Arbeitseinsätze umfassen, unter einer Vielzahl anderer Daten. Außerdem können Daten im Datenspeicher 488 auf einem bestimmten Arbeitseinsatz basierend indiziert werden; es können aber auch andere Indizes verwendet werden. Im Betrieb können Daten im Datenspeicher 488 vom Roboter-Positionierungs- und Kalibrierungssystem 204 für das korrekte Positionieren des Endeffektors 484 und/oder das Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet werden, was später behandelt wird.
-
Sensor(en) 210 erzeugt/erzeugen Sensorsignale, die vom Roboter-Positionierungs- und Kalibrierungssystem 204 zum Erzeugen eines Steuermodells für die mobile Maschine 100 und/oder für das korrekte Positionieren des Roboter-Anbaugerät 200 anhand des Steuermodells verwendet werden können. In einem Beispiel kann/können Sensor(en) 210 Neigungssensor(en) und/oder Inertial-Messeinheit(en) zum Bestimmen von Rollen, Neigung und/oder Gieren der Stewart-Plattform 304, Endeffektor 484 unter anderen Komponenten des Roboter-Anbaugerätes 200 umfassen. Es kann aber auch eine breite Vielfalt anderer Sensoren verwendet werden. Außerdem umfasst das Roboter-Anbaugerät 200 ein Ortungssystem 208, welches eines oder mehr eines globalen Positionierungssystems-(GPS)Empfängers, eines LORAN-Systems, eines Kopplungssystems, eines Mobilfunk-Triangulationssystem oder eines anderen Ortungssystems sein kann, das es dem Roboter-Positionierungs- und Kalibrierungssystem 204 ermöglicht, die Positionsangaben des Roboter-Anbaugerätes 200 zu bestimmen. Dies kann Informationen zu den Koordinaten von X-Achse, Y-Achse und Z-Achse umfassen, oder ein System, das die Position des Roboter-Anbaugerätes 200 beispielsweise anhand der Position der Maschine 100 ermittelt.
-
Das Roboter-Positionierungs- und Kalibrierungssystem 204 konvertiert die mobile Maschine 100 in eine Roboter-Plattform, während die Position des Roboter-Anbaugerätes 200 genau überwacht wird, was in einem Beispiel den Endeffektor 484 umfasst. Dieses wird in 4B ausführlicher erörtert. Kurz gefasst bestimmt und erzeugt das Roboter-Positionierungs- und Kalibrierungssystem 204 aber ein Steuermodell, welches, in einem Beispiel, Konfigurationsinformationen, kinematische Informationen und Steuersignalinformationen für die mobile Maschine 100 umfasst. Auf dem Steuermodell basierend, kann das Roboter-Anbaugerät 200 in Vorschubweise durch die die mobile Maschine 100 gesteuert werden, um einen Arbeitseinsatz durchzuführen. Da das Steuermodell vom Roboter-Positionierungs- und Kalibrierungssystem 204 erzeugt ist, kann das Roboter-Anbaugerät 200 außerdem an jede mobile Maschine 100 gekoppelt werden, und das Roboter-Positionierungs- und Kalibrierungssystem 204 wird entweder automatisch oder halbautomatisch ein Steuermodell für die mobile Maschine erzeugen. Es ist auch berücksichtigt, dass das Roboter-Positionierungs- und Kalibrierungssystem 204 das Roboter-Anbaugerät 200 auch durch ein Feedback-Steuerungssystem steuern kann. Außerdem kann das Roboter-Positionierungs- und Kalibrierungssystem 204 auf empfangenen Sensorsignalen basierend den Endeffektor 484 akkurat zum Durchführen des Arbeitseinsatzes positionieren unter Verwendung des Steuermodells.
-
In einem Beispiel ist das/sind die externe/n Sensorsystem(e) 202 zur Bereitstellung von Positionsinformationen zur Angabe einer Position des Roboter-Anbaugerätes 200 für das Roboter-Positionierungs- und Kalibrierungssystem 204 konfiguriert. Das/die externe/n Sensorsystem(e) 202 kann/können ein Lasersystem (oder ein anderes, auf Optik oder Bild basiertes System) 492, ein Navigationssystem 494 mit Echtzeit-Kinematikfunktion unter einer Vielfalt anderer Systeme 496 umfassen. In einem Beispiel kann ein auf Optik basierendes System 492 die Verwendung von Kameras, Infrarotstrahlung, LIDAR, Tachymeter mit Prismen und andere ähnliche Vorrichtungen umfassen. Im Betrieb werden von (einem) externen Sensorsystem(en) 202 erzeugten Positionsangaben vom Roboter-Positionierungs- und Kalibrierungssystem 204 empfangen und für die akkurate Überwachung von Position, Richtung und Geschwindigkeit des Roboter-Anbaugerätes 200 verwendet, den Endeffektor 484 umfassend. Dieses kann zum Erzeugen des Steuermodells und zum Steuern des Endeffektors 484 während des Betriebs verwendet werden.
-
4B ist ein Blockdiagramm, welches ein Beispiel eines Roboter-Positionierungs- und Kalibrierungssystem 204 ausführlicher darstellt. Das Roboter-Positionierungs- und Kalibrierungssystem 204 umfasst veranschaulichend die Initialisierungs-Logikschaltung 502, Stellglied-Steuerlogikschaltung 504, Konfigurationsidentifikations-Logikschaltung 506, kinematische Identifikations-Logikschaltung 508, Freiheitsgrad-Identifikations-Logikschaltung 510, Stellglied-Identifikations-Logikschaltung 512, Abfrage-Logikschaltung 514, Kommunikationssystem 516, Steuermodellgenerator 560, Datenspeicher 518, Prozessor(en)/Steuereinheit(en) 520, Warnungs-/Benachrichtigungssystem 522, Roboter-Ortungssystem 524, Steuerkarten-Erzeugungssystem 536, Modellsystem 552, und es kann eine Vielfalt anderer Systeme und Komponenten 534 umfassen. Der Datenspeicher 518 kann einige oder alle den Betrieb der mobilen Maschine 100 und/oder des Roboter-Anbaugerätes 200 betreffende Daten speichern. Dieser kann derselbe wie die Datenspeicher 418 und 488 sein, oder sich von ihnen unterscheiden.
-
Das Roboter-Positionierungs- und Kalibrierungssystem 204 ist für das Erzeugen eines Steuermodells für die mobile Maschine 100 konfiguriert, was die Steuerung des Roboter-Anbaugerätes 200 in Vorschubweise ermöglicht. Das Roboter-Positionierungs- und Kalibrierungssystem 204 bestimmt und überwacht zum Beispiel die Position des Roboter-Anbaugerätes 200 als Reaktion auf verschiedene Stellglied-Signale, so dass das Modell während des Einsatzes erzeugt und verwendet werden kann. Dann können, unter Verwendung des entwickelten Steuermodells, spezifische Stellglieder der mobilen Maschine 100 gesteuert werden, um die gewünschte Gestängebewegung herbeizuführen, damit die die Position des Roboter-Anbaugerätes 200 anpassend. Es kann aber auch ein Feedback-Steuerungssystem verwendet werden.
-
In einem Beispiel kann ein Steuermodell Konfigurationsinformationen, kinematische Informationen und Steuersignalinformationen unter einer breiten Vielfalt anderer Informationen umfassen, die auf vom externen Sensorsystem 202 und/oder dem/den Sensor(en) 410, 210 empfangenem/empfangenen Sensorsignal(en) erzeugten Informationen basieren. Während die vorliegende Beschreibung die Erfassung von Konfigurations-, kinematischer und Steuersignalinformationen erwähnt, ist es deutlich, dass in anderen Beispielen ein erzeugtes Steuermodell nur einen Teilsatz dieser Informationen enthalten kann, oder es kann zusätzliche oder andere Informationen umfassen.
-
Im Betrieb ist die Initialisierungs-Logikschaltung 502 nach dem Ankoppeln des Roboter-Anbaugerätes 200 an die mobile Maschine 100 für das Erkennen der Kopplung und das Erzeugen einer Anzeige der Kopplung an die Stellglied-Steuerlogikschaltung 504 konfiguriert. Nach dem Empfang der Anzeige kann die Stellglied-Steuerlogikschaltung 504 automatisch Stellglied-Steuersignale über das Kommunikationssystem 516 für das/die Steuerungs-Steuerteil(e) 454 der mobilen Maschine 100 erzeugen. Es wird aber auch ausdrücklich berücksichtigt, dass die Stellglied-Steuerlogikschaltung 504 Steuersignale in Reaktion auf eine empfangene Benutzereingabe erzeugen kann, unter einer Vielfalt anderer manueller Eingaben. Als Reaktion auf die empfangenen Steuersignale sorgt das Stellglied/sorgen die Stellglieder 454 für eine Gestängebewegung an der mobilen Maschine 100, welche die Bewegung von Ausleger 114, Arm 188, unter einer Vielzahl anderer Gestänge umfassen kann.
-
Als Reaktion auf die Gestängebewegung können vom externen Sensorsystem 202 und/oder Sensor(en) 210, 420 Sensorsignale erzeugt werden, die eine Bewegung des Gestänges erkennen können und vom Roboter-Positionierungs- und Kalibrierungssystem 204 zum Identifizieren von Konfigurationsinformationen, kinematischen Informationen und/oder Information zur Geschwindigkeit und Richtung der Bewegung eines Gestänges als Reaktion auf die Steuersignale des Stellglieds verwendet werden. Zum Beispiel können von der Konfigurationsidentifikations-Logikschaltung 506 Sensorsignale empfangen und zum Bestimmen einer physischen Konfiguration der mobilen Maschine 100 oder des Roboter-Anbaugerätes 200 oder von beiden verwendet werden. Konfigurationsinformationen können die Position des Stellglieds/der Stellglieder 454 und/oder des Sensors/der Sensoren 420 an der mobilen Maschine 100, eine Anordnung von Gestängen, Abmessungsinformationen unter einer breiten Vielfalt von anderen Informationen umfassen. Außerdem können Sensorsignale von der kinematischen Identifikations-Logikschaltung 508 empfangen und für die Identifizierung eines bestimmten Stellglieds/Gestänges oder für alle Stellglieder und Gestänge verwendet werden. Dieses kann Informationen zu einer Reihe von Bewegungen für jedes Gestänge relativ zum Rest der mobilen Maschine 100 umfassen. Konfiguration und kinematische Ausgaben können dann von der Konfigurationsidentifikations-Logikschaltung 506 bzw. der kinematischen Identifikations-Logikschaltung 508 erzeugt und an den Steuermodellgenerator 560 geliefert werden.
-
Außerdem kann die Freiheitsgrad-Identifikations-Logikschaltung 510, basierend auf den identifizierten kinematischen Informationen, die Anzahl der Freiheitsgrade für jedes Gestänge der mobilen Maschine 100 und für das Roboter-Anbaugerät 200 bestimmen. Es ist auch berücksichtigt, dass ein Bediener diese Informationen und andere kinematische Informationen auch über eine Benutzereingabe bereitstellen kann. In einem Beispiel kann eine Benutzereingabe durch die Benutzerschnittstellenvorrichtung 406 der mobilen Maschine 100 empfangen und an das Roboter-Positionierungs- und Kalibrierungssystem 204 geleitet werden. Ferner kann die Identifikations-Logikschaltung 512 eine Reihe von Stellgliedern 454 an der mobilen Maschine 100 identifizieren. Zum Beispiel kann die Stellglied-Identifikations-Logikschaltung 512 die Abfrage-Logikschaltung 514 nutzen, um Maschinendaten einzuholen, die eine Reihe von Stellgliedern an der mobilen Maschine 100, Fernsteuerungssystem(e) 206 und/oder Datenspeicher 418, 488 und/oder 518 identifiziert. Eine Angabe kann von der Stellglied-Identifikations-Logikschaltung 512 an die Stellglied-Steuerlogikschaltung 504 erfolgen, um sicherzustellen, dass Steuersignale an jedes Stellglied 454 der mobilen Maschine kommuniziert werden. Maschineninformationen, die eine Angabe zur Anzahl von Stellgliedern machen, können aber auch durch eine Benutzereingabe geliefert werden.
-
Während empfangene Sensorsignale vom externen Sensorsystem 202 und/oder Sensor(en) 210, 420 zum Erzeugen von Informationen für ein Steuermodell verwendet werden können, ist auch ausdrücklich vorgesehen, dass einige oder alle bereits vorhandenen Informationen zu Konfiguration, Kinematik und/oder Steuerung der mobilen Maschine 100 und des Roboter-Anbaugerätes 200 vom Roboter-Positionierungs- und Kalibrierungssystem 204 zum Entwickeln eines Steuermodells für die mobile Maschine 100 verwendet werden können. Zum Beispiel kann ein Bediener die bestimmte Marke und das Modell der mobilen Maschine eingeben, oder sie können erkannt werden. Dann kann die Abruf-Logikschaltung 514 Informationen vom/von den Fernsteuerungssystem(en) 206 und/oder Datenspeichern 418, 488 und 518 in Bezug auf die Konfiguration, Kinematik und/oder Steuersignalinformationen der bestimmten mobilen Maschine einholen. Die abgerufenen Informationen können vom Steuermodellgenerator 560 zum Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet werden, so dass die Informationen nicht erzeugt werden brauchen.
-
Ergänzend zur Erkennung oder Einholung von Konfigurations- und kinematischen Informationen für die mobile Maschine 100 bestimmt das Roboter-Positionierungs- und Kalibrierungssystem 204 außerdem Steuersignalinformationen für die mobile Maschine 100. In einem Beispiel umfassen die Steuersignalinformationen eine Beziehung zwischen den von der Stellglied-Steuerlogikschaltung 504 erzeugten Stellglied-Steuersignalen und einer zugehörigen Geschwindigkeit und/oder Richtung für ein identifiziertes Gestänge der mobilen Maschine 100. Zum Beispiel kann unter Verwendung des Steuerkarten-Erzeugungssystems 536 des Roboter-Positionierungs- und Kalibrierungssystems 204 eine Steuerkarte erzeugt werden, welche ein Stellglied-Steuersignal für die Geschwindigkeit/Richtung des Gestänges der mobilen Maschine 100 abbildet.
-
Dazu umfasst das Steuerkarten-Erzeugungssystem 536 in einem Beispiel die Bekannte-Position-Logikschaltung 538, Dauer-Logikschaltung 540, Entfernungs-Logikschaltung 542, Geschwindigkeitsberechnungs-Logikschaltung 544, Richtungsberechnungs-Logikschaltung 546, Steuerkarten-Logikschaltung 548, unter einer Vielfalt anderer Logikschaltungen 550. Um die Stellglied-Steuersignale genau für die entsprechende Geschwindigkeit und/oder Richtung des Gestänges abzubilden, kann das Steuerkarten-Erzeugungssystem 536 verschiedene Tests ausführen, um die Beziehung zu bestimmen. Außerdem kann das Steuerkarten-Erzeugungssystem 536 in einem Beispiel, auf den Tests basierend, eine Steuerkarte für jeden Freiheitsgrad jedes Gestänges der mobilen Maschine 100 erzeugen. In einem weiteren Beispiel können die Karten nur ein Steuersignal für die Bewegung (Geschwindigkeit, Richtung) des Endeffektors abbilden. Während zwei verschiedene Methoden erwähnt werden, wird berücksichtigt, dass eine Vielzahl von Methoden zum Bestimmen der Beziehung zwischen den Steuersignalen und Geschwindigkeit und/oder Richtung des Gestänges verwendet werden können.
-
In einem Beispiel holt die Bekannte-Position-Logikschaltung 538 zunächst Informationen zum Identifizieren extremer Betriebspositionen für Gestänge und/oder Stellglied(er) 454 der mobilen Maschine 100 ein. Während extreme Betriebspositionen für Gestänge erwähnt werden, wird berücksichtigt, dass eine Vielzahl anderer Positionsinformationen, die eine bekannte Position eines Gestänges bestimmen, stattdessen verwendet werden können. Unter Verwendung der Abruf-Logikschaltung 514 kann die Bekannte-Position-Logikschaltung 538 auf Informationen von Fernsteuerungssystem(en) 206 und/oder Datenspeichern 418, 488 und 518 zugreifen, um die extremen Betriebspositionen für die Gestänge der mobilen Maschine 100 für jeden Freiheitsgrad zu bestimmen. Außerdem können Positionsinformationen auch durch eine Benutzereingabe angegeben werden. Unabhängig davon empfängt die Stellglied-Steuerlogikschaltung 504 nach dem Empfang der Positionsinformationen die Informationen und erzeugt ein Steuersignal zum Steuern des Stellglieds/der Stellglieder 454 zum Positionieren des Gestänges in einer extremen Betriebsposition (z. B. voll ausgefahrenes Stellglied 454). Danach wird von der Stellglied-Steuerlogikschaltung 504 ein nachfolgendes Steuersignal erzeugt, welches das/die Steuer-Stellglied(er) 454 zum Positionieren des Gestänges in einer zweiten extremen Position steuert (z. B. ganz eingezogenes Stellglied 454).
-
Dann werden Sensorsignale vom/von den externen Sensorsystem(en) 202 und/oder Sensor(en) 210, 420 empfangen, die eine Gestängebewegung (Richtung und Geschwindigkeit der Bewegung) zwischen der ersten extremen Betriebsposition und der zweiten extremen Betriebsposition anzeigen. Wenn zum Beispiel das externe Sensorsystem 202 einen Lasersensor oder ein anderes auf Optik oder Vision basiertes System hat, kann die Bewegung des Endes des Gestänges im Raum gegenüber einem dreidimensionalen globalen Koordinatensystem verfolgt werden. Diese Art der Verfolgung kann sowohl Geschwindigkeit als auch Richtung einer Bewegung des Endes des Gestänges in Reaktion auf das Stellglied-Steuersignal liefern. Auf dem/den empfangenen Sensorsignal(en) basierend, erzeugt das Steuerkarten-Erzeugungssystem 536 eine Steuerkarte, welche die erzeugten Stellglied-Steuersignale für die Geschwindigkeit und/oder Richtung des entsprechenden Gestänges abbildet. Es wird erneut darauf hingewiesen, dass die ersten und zweiten Positionen nicht die extremen Positionen sein müssen, so lange sie bekannte Positionen oder Positionen sind, die entlang der Ausdehnung des Weges des Gestänges hergeleitet werden können.
-
In einem Beispiel können Sensorsignale vom externen Sensorsystem 202 von der Dauer-Logikschaltung 540, vom Steuerkarten-Erzeugungssystem 536 empfangen werden, die eine Zeitdauer angeben, in der das Gestänge von der ersten extremen Position in die zweite extreme Position bewegt wurde. Nach dem Empfang der Sensorsignale kann die Dauer-Logikschaltung 540 eine Dauerausgabe erzeugen, welche die Zeitdauer angibt.
Darüber hinaus kann die Entfernungs-Logikschaltung 542 Sensorsignale vom externen Sensorsystem 202 empfangen, die eine Entfernung zwischen den extremen Positionen angibt und eine Entfernungsausgabe erzeugen kann. Die Geschwindigkeitsberechnungs-Logikschaltung 544 kann dann die Dauer- und Entfernungsausgabe von der Dauer- bzw. Entfernungs-Logikschaltung empfangen und die Geschwindigkeit des Gestänges berechnen. Außerdem kann die Richtungs-Logikschaltung 546 Sensorsignale vom externen Sensorsystem 202 empfangen, die die Richtung angeben, in der sich das Gestänge von der ersten extremen Position in die zweite extreme Position bewegte, relativ zu einem festen Koordinatensystem. Nach dem Empfang der Sensorsignale kann die Richtungs-Logikschaltung 546 eine Richtungsausgabe erzeugen. Dann wird eine Geschwindigkeits- und/oder Richtungsausgabe an die Steuerkarten-Logikschaltung 548 geliefert, welche ein Stellglied-Steuersignal für Geschwindigkeit und/oder Richtung der Bewegung des Gestänges abbildet. Dann kann eine Ausgabe an den Steuermodellgenerator 560 geliefert werden. Dieses kann für jeden Freiheitsgrad des Gestänges und für jedes Stellglied 454 und Gestänge der mobilen Maschine 100 und des Roboter-Anbaugerätes 200 wiederholt werden. Darüber hinaus kann dies auch für verschiedene Lasten am/an den Stellglied(em) 454 wiederholt werden.
-
Alternativ umfasst ein zweiter Weg zum Abbilden eines Steuersignals für die Geschwindigkeit/Richtung eines Gestänges auf ähnliche Weise die Verwendung der Bekannte-Position-Logikschaltung 538, um zunächst ein Gestänge in einer extremen Position zu platzieren. Anschließend kann ein/können Steuersignal(e) von der Stellglied-Steuerlogikschaltung 504 erzeugt werden, um Stellglied(er) 454 entsprechend dem Gestänge in vollem Betriebsumfang zu bedienen. Dann kann ein/können Sensorsignal(e), das/die Geschwindigkeit und/oder Richtung eines Gestänges angibt/angeben, an die Geschwindigkeitsberechnungs-Logikschaltung 544 bzw. Richtungs-Logikschaltung 546 geliefert werden. Nach dem Empfang von Sensorsignal(en) berechnen Geschwindigkeitsberechnungs-Logikschaltung 544 und Richtungs-Logikschaltung 546 Geschwindigkeit bzw. Richtung der mobilen Maschine 100.
-
Die Geschwindigkeits- und Richtungsausgaben können dann an die Steuerkarten-Logikschaltung 548 geliefert werden, um das von der Stellglied-Steuerlogikschaltung 504 erzeugte Stellglied-Steuersignal für Geschwindigkeit und Richtung des Gestänges abzubilden. Dann kann eine Steuerkarte an den Steuermodellgenerator 560 geliefert werden.
-
Mit einigen oder allen der empfangenen Konfiguration, Kinematik und/oder Steuersignalinformationen kann der Steuermodellgenerator 560 ein Steuermodell für die mobile Maschine 100 erzeugen. So kann der Steuermodellgenerator 560 zum Beispiel die Karten zusammenstellen, die ein Steuersignal für mehrere Gestängebewegungen abbilden, um eine Karte zwischen dem Steuersignal und der Bewegung des Endeffektors zu erhalten. Auch kann der Steuermodellgenerator 560 eine umgekehrte Karte erzeugen, die von einer bestimmten Position oder einer gewünschten Bewegung des Endeffektors für das für die Bewegung des Endeffektors von einer aktuellen Position in die bestimmte Position oder zum Erzielen der gewünschten Bewegung (Geschwindigkeit/Richtung) des Endeffektors erforderliche Steuersignal (oder Kombination oder Abfolge von Steuersignalen) abbildet. Außerdem kann der Steuermodellgenerator 560 in manchen Beispielen die Steuersignalinformationen der Steuerkarten-Logikschaltung 548 verwenden, um die empfangene Konfiguration und/oder kinematische Informationen der Konfigurationsidentifikations-Logikschaltung 506 bzw. der kinematischen Identifikations-Logikschaltung 508 zu überprüfen. Sobald das Steuermodell erzeugt wurde, kann eine Vorschubmethode für die Steuerung des Roboter-Anbaugerätes 200 verwendet werden. Dieses wird nachfolgend ausführlicher beschrieben.
-
Darüber hinaus umfasst das Roboter-Positionierungs- und Kalibrierungssystem 204 auch das Modellsystem 552, welches für das Bestimmen der Betriebsbegrenzungen von Stellteil und/oder System konfiguriert ist. Das Modellsystem 552 umfasst neben einer Vielfalt anderer Logikschaltungen 558 eine Stellgliedbegrenzungs-Logikschaltung 554 und eine Systembegrenzungs-Logikschaltung 556.
-
Die Stellgliedbegrenzungs-Logikschaltung 554 ist für das Bestimmen einer Geschwindigkeitsbegrenzung für Stellglied(er) 454 konfiguriert, basierend auf bestimmten Konfigurations-, kinematischen und/oder Steuersignalinformationen. In einem Beispiel bestimmt die Stellgliedbegrenzungs-Logikschaltung 554 jeden Freiheitsgrad für jedes Stellglied 454. Außerdem bestimmt die Systembegrenzungs-Logikschaltung 556 auf den empfangenen Informationen basierende Systembegrenzungen, die beinhalten können, ob mehrere Gestänge simultan positioniert werden können, eine maximale Betriebsposition für einzelne Gestänge usw. Im Betrieb kann das Warn-/Benachrichtigungssystem 522 eine Angabe der überschrittenen Stellglied- und/oder Systembegrenzung erzeugen, wenn ein Benutzer einen über die berechneten Grenzen hinausgehende Betriebsparameter für ein Stellglied oder System spezifiziert. Dieses kann eine Anzeige auf der Benutzeroberfläche oder einen Alarm umfassen.
-
Ergänzend zum Erzeugen eines Steuermodells für die mobile Maschine 100 überwacht und ändert das Roboter-Positionierungs- und Kalibrierungssystem 204 außerdem eine Position des Roboter-Anbaugerätes 200, darunter des Endeffektors 484, basierend auf einer gewünschten Position des Endeffektors 484. In einem Beispiel kann eine Position des Endeffektors 484 unter Verwendung des vom Steuermodellgenerator 560 erzeugten Steuermodells geändert werden. Das Roboter-Ortungssystem 524 des Roboter-Positionierungs- und Kalibrierungssystems 204 umfasst neben anderen Logikschaltungen 532 Koordinaten-Logikschaltung 526, Betriebspositions-Logikschaltung 528, Positionsidentifikations-Logikschaltung 530 und Vorschubsteuerungssystem 562.
-
Es wird nun angenommen, dass das Roboter-Positionierungs- und Kalibrierungssystem 204 mit Hilfe des externen Sensorsystems 202 eine Position des Roboter-Anbaugerätes 200 bestimmt, dies ist jedoch nur ein Beispiel. Im Betrieb kann die Koordinaten-Logikschaltung 526 einen Bezugskoordinatenrahmen für das Roboter-Anbaugerät 200 bestimmen, basierend auf einem vorgesehenen Betrieb des Roboter-Anbaugerätes 200, in welchem der Bezugskoordinatenrahmen global oder lokal für die mobile Maschine 100 sein kann. Die Positionsidentifikations-Logikschaltung 530 empfängt Sensorsignale vom/von externen Sensorsystem(en) 202 und kann eine aktuelle Position des Endeffektors 484 und/oder anderer Komponenten des Roboter-Anbaugerätes 204 (wie die Stewart-Plattform 304) innerhalb des Koordinatensystems identifizieren. Basierend auf einer identifizierten aktuellen Position und einer gewünschten Position, wie von der Betriebspositions-Logikschaltung 528 bestimmt, kann eine aktuelle Position des Endeffektors 484 mittels des Vorschubsteuerungssystems 562 modifiziert werden, welches für die Bewegung des Endeffektors 484 aus der aktuellen Position in die gewünschte Position konfiguriert ist, dafür das erzeugte Steuermodell nutzend, welches später ausführlich erörtert wird.
-
Außerdem kann das Roboter-Ortungssystem 524 eine Position des Roboter-Anbaugerätes 200 bestimmen, wobei vom/von den Sensor(en) 210, 420 gelieferten Informationen verwendet werden. Zum Beispiel kann/können Sensor(en) 210 am Roboter-Anbaugerät 200 Neigungssensor(en) und/oder Inertial-Messeinheiten an der Stewart-Plattform 304 umfassen, welche Sensorsignale zur Angabe von Rollen, Neigen und Gieren der Stewart-Plattform 304 erzeugt. Beschleunigungs- und Gyroskop-Informationen können auch von den Inertial-Messeinheiten eingeholt und auch vom Roboter-Ortungssystem 524 verwendet werden. Basierend auf den empfangenen Sensorsignalen, kann die Positionsidentifikations-Logikschaltung 530 eine Rotationsposition der Stewart-Plattform 304 und/oder anderer Komponenten des Roboter-Anbaugerätes 200 relativ zum Rahmen und zur Position der mobilen Maschine 100 bestimmen.
-
In einem weiteren Beispiel kann/können Sensor(en) 420 an der mobilen Maschine 100 einen flüssigkeitsgelagerten Höhenmesser 212 einschließen, welcher Sensorsignale zur Angabe einer Höhe (Z-Koordinatenposition) des Roboter-Anbaugerätes 200 erzeugt. Der flüssigkeitsgelagerte Höhenmesser 212 kann zum Beispiel an der Verbindung 214 (z. B. ein flexibles Rohr oder Schlauch) befestigt sein, sich vom Höhenmesser 212 entlang eines Gestänges der mobilen Maschine 100 erstrecken. In einem Beispiel enthält das Rohr 214 eine Flüssigkeit und erstreckt sich vom Höhenmesser 212 entlang des Auslegers 114 und Arms 118. Im Betrieb kann der Höhenmesser 212 eine abweichende Höhe der Flüssigkeitssäule zwischen den beiden Enden der Verbindung 214 messen und eine Angabe des Höhenunterschieds für die Positionsidentifikations-Logikschaltung 530 erzeugen. Die Positionsidentifikations-Logikschaltung 530 bestimmt gemäß dem Pascalschen Prinzip eine Höhe des Endeffektors 484, basierend auf der empfangenen Angabe und basierend auf einer bekannten Höhe des Höhenmessers 212. Es wird auch bedacht, dass eine Position des Roboter-Anbaugerätes 200 auch mithilfe des Navigationssystems 208 durch Berechnung eines geografischen Versatzes zwischen dem System 208 und dem Endeffektor 484 des Roboter-Anbaugerätes 200 unter Verwendung von erlernter oder bekannter Kinematik bestimmt werden kann.
-
Ein Beispiel der Betriebspositions-Logikschaltung 528 wird jetzt beschrieben. Auf einem Arbeitseinsatz basierend, bestimmt die Betriebspositions-Logikschaltung 528 eine gewünschte Position für das Roboter-Anbaugerät 200. In einem Beispiel kann die empfangene Benutzereingabe die gewünschte Position spezifizieren, in welcher die Betriebspositions-Logikschaltung 528 die empfangene Benutzereingabe für eine gewünschte Position abbildet. Alternativ kann ein Benutzer einen Arbeitseinsatz spezifizieren, und die Betriebspositions-Logikschaltung 528 kann die Abruf-Logikschaltung 514 zum Einholen von Positionsinformationen verwenden, die angeben, wo der Endeffektor 484 positioniert werden sollte, um den Arbeitseinsatz auszuführen. Die Betriebspositions-Logikschaltung 528 bestimmt somit die gewünschte Position für das Roboter-Anbaugerät 200 und erzeugt eine gewünschte Positionsausgabe.
-
Das Vorschubsteuerungssystem 562 empfängt die Positionsausgabe von der Positionsidentifikations-Logikschaltung 530 und die gewünschte Positionsausgabe von der Betriebspositions-Logikschaltung 528 und erzeugt Steuersignale für das/die Steuerungs-Stellglied(er) 454 zum Positionieren des Roboter-Anbaugerätes 200 in der gewünschten Position unter Verwendung des erzeugten Steuermodells. In manchen Beispielen kann die gewünschte Positionsausgabe aber nur eine allgemeine Positionsänderung für das Roboter-Anbaugerät 200 angeben, so dass in diesem Fall vor dem Erzeugen des Stellglied-Steuersignals nur die gewünschte Positionsausgabe empfangen werden kann (z. B. eine durch Joystick, Analog-Stick usw. vorgenommene und empfangene Benutzereingabe).
-
Das Vorschubsteuerungssystem 562 umfasst die Kartenzugriffs-Logikschaltung 564, die Vorschubsteuerungs-Logikschaltung 566, und es kann eine Vielfalt anderer Logikschaltungen 568 umfassen. In einem beispielhaften Betrieb empfängt die Vorschubsteuerungs-Logikschaltung 566 sowohl die Positionsausgabe als auch die gewünschte Positionsausgabe und verwendet die Kartenzugriffs-Logikschaltung 564, um auf Informationen vom erzeugten Steuermodell zuzugreifen, um die verschiedenen Stellglied-Steuersignale zu bestimmen, welche effektiv das Roboter-Anbaugerät 200, inklusive des Endeffektors 484, an der gewünschten Position positionieren. Dieses kann Stellglied-Steuersignale für ein einzelnes Stellglied oder eine Vielfalt von Stellgliedern 454 umfassen, welche ein oder mehrere Gestänge der mobilen Maschine 100 antreiben, abhängig von der gewünschten Position. Nach dem Bestimmen der notwendigen Steuersignale zum Positionieren des Roboter-Anbaugerätes 200 in der gewünschten Position kann die Vorschubsteuerungs-Logikschaltung 564 die Stellglied-Steuerlogikschaltung 504 steuern, um Stellglied-Steuersignale für Stellglied(er) 454 der mobilen Maschine zu erzeugen. In einem Beispiel kann das Vorschubsteuerungssystem 562 Sensorsignal(e) vom externen Sensorsystem 202 und/oder Sensor(en) 210, 420 empfangen, um zu bestimmen, ob das Roboter-Anbaugerät 200 korrekt in der gewünschten Position positioniert ist. Auf der Bestimmung basierend, kann die Vorschubsteuerungs-Logikschaltung 566 die Kartenzugriffs-Logikschaltung 564 verwenden, um eine andere Steuerungsabfolge zu bestimmen, einen Bediener über eine erzeugte Benutzeroberflächenanzeige zu benachrichtigen, oder erneut das Steuerkarten-Erzeugungssystem 536 Stellglied-Steuersignale für Geschwindigkeit und/oder Richtung eines Gestänges abbilden zu lassen.
-
5-9 sind Ablaufdiagramme, die beispielhafte Vorgänge des Roboter-Positionierungs- und Kalibrierungssystems 204 darstellen, wie in 4B veranschaulicht. Der in 5A-5B dargestellte Betrieb ist ein Beispiel für die Erzeugung eines Steuermodells für die mobile Maschine 100 unter Verwendung des Roboter-Positionierungs- und Kalibrierungssystems 204. Während es im Zusammenhang mit der Erzeugung von Konfigurations-, kinematischen und Steuersignal-Informationen behandelt wird, können auch zusätzliche oder andere Daten erfasst werden. Darüber hinaus können die Funktionen in 5A-9, während sie nach dem physischen Ankoppeln des Roboter-Anbaugerätes 200 an der mobilen Maschine 100 ausgeführt oder initiiert werden, jederzeit oder an jedem Punkt des Arbeitseinsatzes - selbst dann, wenn ein Arbeitseinsatz aktuell nicht erfolgt - ausgeführt werden. Während der Betrieb entsprechend der mobilen Maschine 100 und des Roboter-Anbaugerätes 200 beschrieben wird, ist ferner verständlich, dass auch andere mobile Maschinen und Roboter-Anbaugeräte verwendet werden können.
-
Die Verarbeitung beginnt bei Block 602, wo das Roboter-Anbaugerät 200 unter Verwendung der Verknüpfung 466 an die mobile Maschine 100 gekoppelt wird. In einem Beispiel empfängt das Roboter-Anbaugerät 200 nach dem physischen Ankoppeln an die mobile Maschine 100 Strom von der mobilen Maschine 100, wie durch Block 604 angegeben. Die Verarbeitung wendet sich dann Block 606 zu, wo die Initialisierungs-Logikschaltung 502 erkennt, dass die Maschine und das Anbaugerät zusammengekoppelt worden sind, und eine Angabe zur Kopplung zwischen der mobilen Maschine 100 und dem Roboter-Anbaugerät 200 an die Stellglied-Steuerlogikschaltung 504 sendet. Die Stellglied-Steuerlogikschaltung 504 kann nach Empfang der Angabe automatisch Steuerglied-Stellsignal(e) für Stellglied(er) 454 der mobilen Maschine 100 erzeugen, wie durch Block 608 angegeben. In einem Beispiel können die Stellglied-Steuersignale für ein einzelnes Steuerglied erzeugt werden, wie durch Block 610 angegeben, oder für eine Vielzahl von Steuergliedern, wie durch Block 612 angegeben. Selbst ohne Kenntnis darüber, welche Stellglieder durch welche Signale gesteuert werden, oder wie sie gesteuert werden, oder welche Bewegung basierend auf dem aktivierten Stellglied eintreten wird, kann die Steuerlogikschaltung 504 mit der Steuerung der Stellglieder 454 beginnen, und die unbekannten Informationen werden erlernt.
-
Als Reaktion auf die empfangenen Stellglied-Steuersignale treibt das/treiben die Stellglied(er) 454 die Gestängebewegung an der mobilen Maschine an. Dieses kann den Ausleger 114, den Arm 118 usw. umfassen. Als Reaktion auf die Gestängebewegung wendet sich die Verarbeitung Block 614 zu, wo Sensorsignal(e) vom externen Sensorsystem 202 und/oder Sensor(en) 210, 420 empfangen werden, die angeben, welche Gestänge sich bewegen und welche Gestängebewegung erfolgt. In einem Beispiel können von den Sensoren 202, 210, 420 erzeugte Steuersignale von der Konfigurationsidentifikations-Logikschaltung 506, wie durch Block 616 angegeben, kinematischer Identifikations-Logikschaltung 508, wie durch Block 618 angegeben, und Steuerkarten-Erzeugungssystem 536, wie von Block 620 angegeben, empfangen werden. Andere Komponenten können aber ebenfalls die Sensorsignale empfangen, wie durch Block 658 angegeben. Es wird nun angenommen, dass die Konfigurationsidentifikations-Logikschaltung 506, die kinematische Identifikations-Logikschaltung 508 und das Steuerkarten-Erzeugungssystem 536 Sensorsignale empfangen, aber es ist zu beachten, dass nur ein Teilsatz in anderen Beispielen Sensorsignale empfangen kann. Unabhängig davon wendet sich die Verarbeitung in diesem Beispiel Block 622 zu, wo die Konfigurationsidentifikations-Logikschaltung 506 eine Konfigurationsausgabe erzeugt. Die Konfigurationsausgabe kann Stellglied-/Gestängeposition und/oder Abmessungsinformationen umfassen, welche die Abmessungen des sich bewegenden Gestänges identifizieren, wie durch Block 624 angegeben. Sie kann Abmessungsinformationen zur mobilen Maschine 100 umfassen, welche verschiedene Abmessungen der Maschine 100 identifizieren, wie durch Block 626 angegeben, unter einer breiten Vielfalt an anderen Konfigurationsinformationen, wie durch Block 628 angegeben.
-
Die Verarbeitung wendet sich dann Block 630 zu, wo die kinematische Identifikations-Logikschaltung 508 eine kinematische Ausgabe für die mobile Maschine 100 erzeugt. Die kinematische Ausgabe kann Freiheitsgrad-Angaben umfassen, welche eine Reihe von unabhängigen Arten identifiziert, auf welche sich die Gestänge der mobilen Maschine 100 bewegen können, wie durch Block 632 angegeben, eine Reihe verschiedener Bewegungen für Gestänge der mobilen Maschine 100, wie durch Block 634 angegeben, unter einer Vielfalt von anderen kinematischen Informationen, wie durch Block 636 angegeben. Nach dem Erzeugen einer kinematischen Ausgabe wendet sich die Verarbeitung Block 638 zu, wo das Steuerkarten-Erzeugungssystem 536 eine Steuerkarte für die entsprechenden Gestänge der mobilen Maschine 100 erzeugt. In einem Beispiel umfasst die Steuerkarte eine Karte, die ein von der Stellglied-Steuerlogikschaltung 504 erzeugtes Steuersignal für Geschwindigkeit und/oder Richtung eines entsprechenden Gestänges erzeugt, wie durch Block 652 angegeben. So lernt das System 204 für jenes bestimmte Stellglied-Steuersignal, welche Gestänge an der Maschine oder am Anbaugerät oder beidem bewegt werden, und ihre Richtung, Geschwindigkeit und den Umfang der Bewegung. Es kann auch die Abmessungen der verschiedenen Gestänge, die Konfiguration und Abmessungen der Maschine und des Anbaugerätes und anderes lernen. Es kann aber eine Vielfalt anderer Informationen in der Steuerkarte enthalten sein, wie durch Block 654 angegeben. Das Erzeugen der Steuerkarte wird in Bezug auf 6-7 weiter behandelt.
-
Sobald eine Konfigurationsausgabe, kinematische Ausgabe und eine Steuerkarte erzeugt sind, wendet sich die Verarbeitung Block 640 zu, wo die Ausgaben und/oder Steuerkarte für den Steuermodellgenerator 560 geliefert werden, wie durch Block 640 angegeben. Basierend auf den empfangenen Konfigurations-, kinematischen und Steuerkarteninformationen erzeugt der Steuermodellgenerator 560 ein Steuermodell für die mobile Maschine 100, wie durch Block 642 angegeben. Während ein Steuermodell basierend auf den empfangenen Konfigurationsinformationen, kinematischen Informationen und der Steuerkarte erzeugt wird, wird ausdrücklich bedacht, dass, in anderen Beispielen, nur manche dieser Informationen erzeugt und anschließend an den Steuermodellgenerator 560 geliefert und zum Erzeugen eines Steuermodells verwendet werden. Das erzeugte Steuermodell erlaubt in einem Beispiel der mobilen Maschine 100, das Roboter-Anbaugerät 200 mittels Vorschubsteuerungssystem 562 zu steuern.
-
Nach dem Erzeugen eines Steuermodells wendet sich die Verarbeitung Block 644 zu, wo das erzeugte Steuermodell vom Modellsystem 552 empfangen und vom Modellsystem 552 zum Bestimmen der Stellglied- und/oder Systembeschränkungen verwendet wird, sofern diese nicht bereits bekannt sind. In einem Beispiel können die Stellglied- und/oder Systembeschränkungen Betriebsgeschwindigkeitsbeschränkungen, wie durch Block 646 angegeben, Positionsbeschränkungen, wie durch Block 648 angegeben, oder etwaige andere Beschränkungsinformationen umfassen, wie durch Block 650 angegeben.
-
Die Verarbeitung wendet sich dann Block 656 zu, wobei von der Stellglied-Identifikations-Logikschaltung 512 eine Bestimmung vorgenommen wird, ob es zusätzliche Stellglieder 454 der mobilen Maschine 100 gibt, für die noch Karten zu erlernen sind. Falls ja, wendet sich die Verarbeitung zurück an Block 608, wo zusätzliche Stellglied-Steuersignale mittels der Stellglied-Steuerlogikschaltung 504 erzeugt werden. Wenn nicht, endet die Verarbeitung anschließend. Es ist auch zu beachten, dass Karten erzeugt werden können, die Steuereingaben (welche simultan mehrere Stellglieder wie Links, Schwenken, Kippen usw. aktivieren) zum Bewegen des Endeffektors 484 abbilden (Geschwindigkeit, Richtung, Stärke oder Entfernung usw.). Die Steuermodelle können diese Mappings ebenfalls integrieren.
-
6A-6B sind Ablaufdiagramme, die einen Beispielvorgang zur Bestimmung einer Beziehung zwischen Steuersignalen des Stellteils und der Geschwindigkeit und/oder Richtung eines Gestänges unter Verwendung eines in 4A-4B veranschaulichten Steuerkarten-Erzeugungssystems 536 Roboter-Positionierungs- und Kalibrierungssystems 204 darstellen. Die Verarbeitung beginnt bei Block 702, wo die Bekannte-Position-Logikschaltung 538 des Steuerkarten-Erzeugungssystems 536 die Abruf-Logikschaltung 514 verwendet, um Positionsinformationen für Gestänge der mobilen Maschine 100 zu bestimmen. In einem Beispiel umfassen die Positionsinformationen extreme Positionsinformationen, welche eine bekannte extreme Position eines bestimmten Gestänges identifizieren, wie durch Block 704 angegeben. Positionsinformationen können von den Datenspeichern 418 und 488, wie durch den Block 706 angegeben, und/oder einen Fernsteuerungssystem 206, wie durch Block 708 angegeben, eingeholt werden. Alternativ können Positionsinformationen durch eine Benutzereingabe empfangen werden, wie durch Block 710 angegeben, und/oder unter Verwendung des externen Sensorsystems/der externen Sensorsysteme 202 und/oder des Sensors/der Sensoren 420, 210 erkannt werden, wie durch Block 740 angegeben.
-
Die Verarbeitung wendet sich dann Block 712 zu, wo die Bekannte-Position-Logikschaltung 538 die Stellglied-Steuerlogikschaltung 504 zum Erzeugen von Stellglied-Steuersignalen zum Positionieren eines Gestänges der mobilen Maschine 100 an einer ersten bekannten Position (bspw. wo das antreibende Stellglied/die antreibenden Stellglieder an einem extremen Ende des Hubs ist/sind) steuert. Darauffolgend wird ein/werden Sensorsignale empfangen, die angeben, dass sich das Gestänge in der ersten bekannten Position befindet, wie durch Block 714 angegeben. Sensorsignale können vom externen Sensorsystem 202, wie in Block 742 angegeben, und/oder Sensor(en) 210, 420, wie in Block 744 angegeben, geliefert werden. Sobald an der ersten bekannten Position, wendet sich die Verarbeitung zurück zu Block 716, wo die Bekannte-Positions-Logikschaltung 538 die Stellglied-Steuerlogikschaltung 504 zum Erzeugen von Steuersignalen zum Bewegen des Gestänges in eine zweite bekannte Position steuert. In einem Beispiel kann die zweite bekannte Position eine gegenüberliegende extreme Position sein (bspw. wo sich die antreibenden Stellteile am zweiten extremen Ende des Hubs befinden), wie durch Block 718 angegeben, oder an jeder anderen durch den Block 720 angegebenen Position.
-
Sensorsignale, welche die Gestängebewegung von der ersten bekannten Position in die zweite bekannte Position angeben, werden dann vom externen Sensorsystem 202 und/oder dem Sensor/den Sensoren 210, 420 erzeugt und von der Dauer-Logikschaltung 540, der Entfernungs-Logikschaltung 542 und der Entfernungsberechnungs-Logikschaltung 546 empfangen, wie durch Block 722 angegeben. Nach dem Empfang des Sensorsignals/der Sensorsignale wendet sich die Verarbeitung Block 724 zu, wo die Dauer-Logikschaltung 540 bestimmt, wie lange die Bewegung dauerte, und eine Dauerausgabe erzeugt, die eine Zeitdauer erzeugt, die angibt, wie lange die Bewegung des Gestänges aus der ersten bekannten Position in die zweite bekannte Position dauerte. Dann wendet sich die Verarbeitung Block 726 zu, wo die Entfernungs-Logikschaltung 542 die Entfernung bestimmt, die ein Bezugspunkt am Gestänge (z. B. sein Ende) während der Bewegung zurücklegte, und erzeugt eine Entfernungsausgabe, welche die Entfernung zwischen der ersten bekannten Position und der zweiten bekannten Position angibt. Die Verarbeitung geht dann zu Block 742, wo die Entfernungsberechnungs-Logikschaltung 546 die Bewegungsrichtung relativ zu einem Koordinatensystem bestimmt und eine Richtungsausgabe erzeugt, welche die Richtung angibt, in der sich der Bezugspunkt am Gestänge aus der ersten bekannten Position in die zweite bekannte Position bewegt hat.
-
Sowohl die Dauerausgabe als auch die Entfernungsausgabe werden anschließend an die Geschwindigkeitsberechnungs-Logikschaltung 544 geliefert, wie durch Block 728 angegeben. Nach dem Empfang sowohl der Dauerausgabe als auch der Entfernungsausgabe berechnet die Geschwindigkeitsberechnungs-Logikschaltung 544 eine Geschwindigkeit, mit der sich das Gestänge bewegt hat, wie durch Block 730 angegeben. Eine von der Geschwindigkeitsberechnungs-Logikschaltung 544 erzeugte Geschwindigkeitsausgabe und eine von der Logikschaltung 546 erzeugte Richtungsausgabe werden der Steuerkarten-Logikschaltung 548 geliefert, welche diese (und möglicherweise andere Informationen) zum Bestimmen einer Beziehung zwischen den Stellglied-Steuersignalen von der Stellglied-Steuerlogikschaltung 504 und der Geschwindigkeit/Richtung (z. B. Weg) des Gestänges verwendet, wie durch Block 732 angegeben. Als Reaktion auf die bestimmte Beziehung wendet sich die Verarbeitung an Block 734, wo die Steuerkarten-Logikschaltung 548 eine Steuerkarte für das Gestänge erzeugt, welche die Stellglied-Steuersignale für Geschwindigkeit/Richtung der Bewegung des Gestänges abbildet. In einem Beispiel kann die erzeugte Steuerkarte wie vom Block 736 angezeigt an den Steuermodellgenerator 560 geliefert und als Eingabe zum Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet werden.
-
Die Verarbeitung wendet sich dann Block 738 zu, wo durch die Freiheitsgrad-Identifikations-Logikschaltung 510 eine Bestimmung vorgenommen wird, ob es zusätzliche Freiheitsgrade für das Gestänge gibt. Es kann, in einem Beispiel, eine Bestimmung anhand der von der kinematischen Identifikations-Logikschaltung 508 empfangenen Informationen vorgenommen werden. Wenn ja, wendet sich die Verarbeitung zurück an Block 702, wo die Positionsinformationen mittels Abruf-Logikschaltung 514 für den zusätzlichen Freiheitsgrad dieses Gestänges eingeholt werden. Wenn nicht, wendet sich die Verarbeitung zu Block 740, wo eine Stellglied-Identifikations-Logikschaltung 512 bestimmt, ob zusätzliche Gestänge oder Stellglieder an der mobilen Maschine 100 vorhanden sind, die für Steuersignale abzubilden sind. Wenn ja, wendet sich die Verarbeitung zurück an Block 702, wo die Positionsinformationen mittels Abruf-Logikschaltung 514 für das zusätzliche Gestänge oder Stellglied eingeholt werden. Wenn nicht, endet die Verarbeitung anschließend.
-
7 ist ein Ablaufdiagramm, welches einen weiteren beispielhaften Einsatz zur Bestimmung einer Beziehung zwischen von der Stellglied-Steuerlogikschaltung 504 erzeugten Stellglied-Steuersignalen und einer Geschwindigkeit/Richtung (Weg) eines das Steuerkarten-Erzeugungssystem 536 des in 4A-4B veranschaulichten Roboter-Positionierungs- und Kalibrierungssystems 204 verwendet. Die Verarbeitung beginnt bei Block 802, wo die Bekannte-Position-Logikschaltung 538 des Steuerkarten-Erzeugungssystems 536 die Abruf-Logikschaltung 514 verwendet, um Positionsinformationen für Gestänge der mobilen Maschine 100 einzuholen. In einem Beispiel identifizieren Positionsinformationen die extremen Positionen, die das Gestänge zurücklegen kann, wie durch Block 804 angegeben. Positionsinformationen können von den Datenspeichern 418 und 488, wie durch den Block 806 angegeben, und/oder ein Fernsteuerungssystem 206, wie durch Block 808 angegeben, eingeholt werden. Alternativ können Positionsinformationen durch eine Benutzereingabe empfangen werden, wie durch Block 810 angegeben, oder unter Verwendung des externen Sensorsystems/der externen Sensorsysteme 202 und/oder des Sensors/der Sensoren 420, 210 erkannt werden, wie durch Block 832 angegeben. Im letzteren Beispiel kann ein Steuersignal erzeugt und auf ein Stellglied angewandt werden, bis sich das betreffende Gestänge nicht mehr bewegt. Die Position des Gestänges kann im Koordinatensystem identifiziert werden, vom/von den externen Sensorsystem(en) 202 verwendet und als eine extreme Position identifiziert werden, wenn das Gestänge vom gewählten Stellglied angetrieben wird. Dieses kann für dasselbe Stellglied in der Gegenrichtung wiederholt werden, ebenso wie für andere Stellglieder.
-
Die Verarbeitung wendet sich Block 812 zu, wo die Bekannte-Position-Logikschaltung 538 die Stellglied-Steuerlogikschaltung 504 steuert, um Stellglied-Steuersignale zum Positionieren eines Gestänges der mobilen Maschine 100 in der bekannten Position zu erzeugen. Dann werden Sensorsignale empfangen, die angeben, dass sich das Gestänge in der bekannten Position befindet, wie durch Block 814 angegeben. Sensorsignale können vom externen Sensorsystem 202, wie in Block 834 angegeben, und/oder Sensor(en) 210, 420, wie in Block 836 angegeben, geliefert werden. Sobald die bekannte Position erreicht ist, wendet sich die Verarbeitung Block 816 zu, wo die Stellglied-Logikschaltung 504 Steuersignal(e) für den Betrieb des Stellglieds 454 entsprechend dem Gestänge in einer maximalen Betriebskapazität erzeugt. Das heißt, das Stellglied wird zum Bewegen mit seiner höchsten Geschwindigkeit gesteuert.
-
Sensorsignal(e), das/die eine Geschwindigkeit und Richtung eines Gestänges angibt/angeben, werden dann von der Geschwindigkeitsberechnungs-Logikschaltung 544 bzw. der Richtungsberechnungs-Logikschaltung 546 empfangen, wie durch Block 818 angegeben.
-
In einem Beispiel werden von einem Geschwindigkeitssensor erzeugte Sensorsignale mit dem Gestänge und/oder Stellglied gekoppelt, wie durch Block 838 angegeben. Wie durch Block 840 angegeben, könnte aber eine Vielfalt von Sensorsignalen empfangen werden. Auf den empfangenen Sensorsignalen basierend, wendet sich die Verarbeitung Block 820 zu, wo die Geschwindigkeitsberechnungs-Logikschaltung 544 eine Geschwindigkeitsausgabe, eine Geschwindigkeit der Gestängebewegung angebend und auf den empfangenen Sensorsignalen basierend, berechnet. Die Verarbeitung wendet sich dann Block 842 zu, wo die Richtungsberechnungs-Logikschaltung 546 die Richtung der Bewegung identifiziert und eine Richtungsausgabe erzeugt, die eine Richtung angibt, in der sich das Gestänge nach dem Betreiben des Stellglieds in seiner maximalen Betriebskapazität bewegt hat.
-
Die Geschwindigkeits- und Richtungsausgaben werden anschließend an die Steuerkarten-Logikschaltung 548 geliefert, wie durch Block 822 angegeben, und zum Bestimmen einer Beziehung zwischen den von der Stellglied-Steuerlogikschaltung 504 erzeugten Stellglied-Steuersignalen und der berechneten Geschwindigkeit/Richtung (Weg) des Gestänges verwendet. Als Reaktion auf die bestimmte Beziehung wendet sich die Verarbeitung Block 824 zy, wo die Steuerkarten-Logikschaltung 548 eine Steuerkarte für das Gestänge erzeugt, welche die bestimmte Beziehung abbildet. In einem Beispiel kann die erzeugte Steuerkarte wie vom Block 826 angezeigt an den Steuermodellgenerator 560 geliefert und als Eingabe zum Erzeugen eines Steuermodells für die mobile Maschine 100 verwendet werden.
-
Die Verarbeitung wendet sich dann Block 828 zu, wo durch die Freiheitsgrad-Identifikations-Logikschaltung 510 eine Bestimmung vorgenommen wird, ob es zusätzliche Freiheitsgrade für das Gestänge gibt. Es kann, in einem Beispiel, eine Bestimmung anhand der von der kinematischen Identifikations-Logikschaltung 508 empfangenen Informationen vorgenommen werden. Wenn ja, wendet sich die Verarbeitung zurück an Block 802, wo die Positionsinformationen mittels Abruf-Logikschaltung 514 für den zusätzlichen Freiheitsgrad eingeholt werden. Wenn nicht, wendet sich die Verarbeitung zu Block 830, wo eine Stellglied-Identifikations-Logikschaltung 512 bestimmt, ob zusätzliche Gestänge oder Stellglieder an der mobilen Maschine 100 vorhanden sind, die für Steuersignale abzubilden sind. Wenn es mehr Gestänge gibt, kehrt die Verarbeitung zurück zu Block 802, wo mithilfe der Abruf-Logikschaltung 514 Positionsinformationen für das zusätzliche Gestänge eingeholt werden. Wenn nicht, endet die Verarbeitung anschließend.
-
8 ist ein Ablaufdiagramm, das ein Beispiel darstellt, in dem das System 204 eine Position eines Roboter-Anbaugerätes 200 steuert, welches einen Endeffektor 484 umfasst, indem auf dem Steuermodell basierende Steuersignale erzeugt werden. Es wird zunächst angenommen, dass das Roboter-Anbaugerät 200 mit der mobilen Maschine 100 gekoppelt ist, wie durch Block 902 angegeben. In einem Beispiel ist das Roboter-Anbaugerät 200 mit der Verbindung 466 gekoppelt, wie durch Block 904 angegeben. Es ist aber auch eine Vielzahl anderer Arten vorgesehen, wie durch Block 906 angegeben.
-
Die Verarbeitung geht zu Block 908, wo die Positionsidentifikations-Logikschaltung 530 Sensorsignal(e) empfängt, das/die eine aktuelle Position des Roboter-Anbaugerätes 200 angibt/angeben. In einem Beispiel wird ein/werden Sensorsignal(e) vom/von den Sensor(en) 420, 210 empfangen, wie durch Block 912 oder andere Sensoren angegeben. Sensor(en) 420, 210 an der mobilen Maschine 100 bzw. am Roboter-Anbaugerät 200 können den flüssigkeitsgelagerten Höhenmesser 212 der mobilen Maschine 100 beeinflussen, welcher eine aktuelle Höhe des Roboter-Anbaugerätes 200 angibt, wie durch Block 914 angegeben, Rotationssensor(en) 210 auf der Stewart-Plattform 304, welche/r Neigen, Rollen und Gieren der Stewart-Plattform 304 misst/messen, wie durch Block 916 angegeben, unter einer breiten Vielfalt von anderen Sensoren, wie durch Block 918 angegeben.
-
Basierend auf den empfangenen Sensorsignalen, bestimmt die Positionsidentifikations-Logikschaltung 530 eine aktuelle Position des Roboter-Anbaugerätes 200, inklusive des Endeffektors 484, wie durch Block 920 angegeben. Dieses kann eine Koordinatenposition unter Verwendung der Koordinaten-Logikschaltung 526 umfassen, wie durch Block 922 angegeben, eine lokale Position, wie durch Block 924 angegeben, eine globale Position, wie durch Block 926 angegeben, unter einer Vielzahl anderer Positionsinformationen, wie durch Block 928 angegeben.
-
Die Verarbeitung wendet sich Block 930 zu, wo die Betriebspositions-Logikschaltung 528 eine Betriebsposition bestimmt, in die das Roboter-Anbaugerät 200 zu bewegen ist, um einen gewünschten Vorgang auszuführen. In einem Beispiel werden vom/von den Datenspeicher(n) 418, 488 und/oder 518, wie durch Block 944 angegeben, Fernsteuerungssystem(e) 206, wie durch Block 946 angegeben, oder andere Quellen, wie durch Block 948 angegeben, Betriebsdaten eingeholt. Außerdem kann für den Endeffektor 484 eine Betriebsposition auf dem Arbeitseinsatz basieren, wie durch Block 932 angegeben, oder eine Benutzereingabe (z. B. kann der Benutzer manuell Eingaben vornehmen, um den Endeffektor 484 in seine Betriebsposition oder durch eine Reihe von Positionen bewegen, um einen Vorgang auszuführen, und die Positionen können erkannt und gespeichert werden, so dass sie automatisch wiederholt werden können), wie durch Block 934 angegeben.
-
Die Verarbeitung wendet sich dann Block 936 zu, wo das Vorschubsteuerungssystem 562 sowohl die Positionsausgabe von der Positionsidentifikations-Logikschaltung 530 als auch die Betriebspositionsausgabe von der Betriebspositions-Logikschaltung 528 empfängt und bestimmt, ob sich die aktuelle Position des Endeffektors 484 von der Betriebsposition unterscheidet. Falls festgestellt wird, dass die aktuelle Position dieselbe ist wie die Betriebsposition, endet als Folge die Verarbeitung. Wenn sich die aktuelle Position aber von der Betriebsposition unterscheidet, verwendet das Vorschubsteuerungssystem 562 die Kartenzugangs-Logikschaltung 564 für den Zugriff auf das Steuermodell, für die Maschine 100 und das Anbaugerät 200, um die bestimmten Steuersignale zu identifizieren, welche erzeugt werden müssen für die Steuerung der Stellglieder, um den Endeffektor 484 auf einem Weg zu bewegen, der ihn mit der gewünschten Geschwindigkeit von seiner aktuellen Position in die Betriebsposition (oder durch die erzeugte Abfolge von Betriebspositionen) bewegt, wie durch Block 937 angegeben. Die Vorschubsteuerungs-Logikschaltung 566 des Vorschubsteuerungssystems 562 steuert dann die Stellglied-Steuerlogikschaltung 504, um den Endeffektor in die Betriebsposition zu bewegen. Die Logikschaltung 504 erzeugt die Stellglied-Steuersignale für Stellglied (er) 454 der mobilen Maschine 100 entsprechend dem Steuermodell, um den Endeffektor 484 in der Betriebsposition zu positionieren, wie durch Block 938 angegeben. Die Verarbeitung wendet sich dann Block 940 zu, wo wieder durch das Vorschubsteuerungssystem 562 bestimmt wird, ob sich die aktuelle Position des Endeffektors 484 von der Betriebsposition unterscheidet. In einem Beispiel umfasst dies den Empfang zusätzlicher Sensorsignale vom/von den Sensor(en) 420, 210, wie durch Block 942 angegeben.
-
Wenn festgestellt wird, dass sich eine aktuelle Position des Roboter-Anbaugerätes 200 immer noch von der Betriebsposition unterscheidet, kehrt die Verarbeitung zu Block 938 zurück, wo die Stellglied-Steuerlogikschaltung 504 weiter das/die Stellglied(er) 454 steuert, basierend auf der Vorschubsteuerungs-Logikschaltung 566, entsprechend einem erzeugten Steuermodell. Falls aber die aktuelle Position des Endeffektors 484 dieselbe ist wie die Betriebsposition, endet als Folge die Verarbeitung.
-
9 ist ein Ablaufdiagramm, das ein Beispiel darstellt, in dem ein Höhenmesser (oder Höhensensor) 212 verwendet wird, um die Position des Roboter-Anbaugerätes 200 mithilfe des Roboter-Positionierungs- und Kalibrierungssystems 204 zu steuern, wie es in 4A-4B veranschaulicht wird. Im Zusammenhang mit der ersten Identifikation einer aktuellen Position des Roboter-Anbaugerätes 200 mithilfe des Ortungssystems 208 und der anschließenden Modifikation der Position des Roboter-Anbaugerätes 200 ist dies veranschaulichend beschrieben. In anderen Beispielen kann die aktuelle Position des Roboter-Anbaugerätes 200 unter Verwendung des Sensors/der Sensoren 420, 210 erzeugt werden, wobei das Ortungssystem 208 nicht verwendet wird. Im vorliegenden Beispiel beginnt die Verarbeitung jedoch an Block 1002, wo Sensorsignale vom Ortungssystem 208 empfangen werden, welche eine aktuelle Position des Roboter-Anbaugerätes 200 angeben. In einem Beispiel umfasst das Ortungssystem 208 ein GPS-System mit RTK-Funktion, gekoppelt mit dem Roboter-Anbaugerät 200, wie durch Block 1004 angegeben. Es können aber auch andere Ortungssysteme verwendet werden, wie durch Block 1006 angegeben.
-
Die Verarbeitung wendet sich Block 1008 zu, wo eine aktuelle Position des Roboter-Anbaugerätes 200 unter Verwendung der Positionsidentifikations-Logikschaltung 530 des Roboter-Ortungssystems 524 berechnet wird. Eine aktuelle Position kann eine Koordinatenposition umfassen, wie durch Block 1010 angegeben, welche die X-, Y- und Z-Achsen-Koordinaten umfasst (z. B. Breitengrad, Längengrad, Höhe usw.), wie durch Block 1009 angegeben. In anderen Beispielen wird jedoch nur eine Untermenge dieser Koordinatenpositionen bestimmt, wie durch Block 1024 angegeben. Außerdem kann eine aktuelle Position des Roboter-Anbaugerätes 200 in einem Beispiel auch eine Position des Endeffektors 484 identifizieren, wie durch Block 1014 angegeben. Eine aktuelle Position des Roboter-Anbaugerätes 200 kann aber Positionsinformationen für eine Vielfalt anderer Komponenten im Roboter-Anbaugerät 200 haben, wie durch Block 1012 angegeben.
-
Nach dem Bestimmen einer aktuellen Position des Roboter-Anbaugerätes 200 wendet sich die Verarbeitung unter Verwendung des Ortungssystems 208 Block 1016 zu, wo vom Höhensensor 212 Sensorsignale empfangen werden, welche eine Höhe des Roboter-Anbaugerätes 200 oder des Endeffektors 484 oder beides angeben. Zusätzliche Sensorsignale könnten ebenfalls empfangen werden, wie durch Block 1019 angegeben.
-
In einem Beispiel gibt das Sensorsignal eine Flüssigkeits-Höhendifferenz im Rohr 214 an, das mit dem Höhensensor 212 gekoppelt ist. In einem Beispiel wird die Flüssigkeits-Höhendifferenz durch Erkennen einer Flüssigkeitshöhe zwischen den Enden des Rohrs 214 bestimmt, wie durch Block 1018 angegeben. Basierend auf dem/den empfangenen Sensorsignal(en) berechnet die Positionsidentifikations-Logikschaltung 530 eine Flüssigkeits-Höhendifferenz zwischen den zwei Enden des Rohrs, wie durch Block 1020 angegeben. Unter Verwendung der Flüssigkeits-Höhendifferenz berechnet die Positionsidentifikations-Logikschaltung 530 einen Differenzdruck, wie durch Block 1022 angegeben, welcher in einem Beispiel dem Pascalschen Prinzip entspricht, wie durch Block 1025 angegeben. Andere Arten der Berechnung eines Differenzdrucks können aber auch verwendet werden, wie durch Block 1029 angegeben. Mithilfe des berechneten Differenzdrucks kann eine Höhe des Roboter-Anbaugerätes 200, relativ zur Maschine 100 oder anderweitig, unter Verwendung der Positionsidentifikations-Logikschaltung 530 bestimmt werden, wie durch Block 1026 angegeben. Andere Koordinationspositionen könnten auch berechnet werden, wie durch Block 1033 angegeben.
-
Dann wird eine Bestimmung vorgenommen, ob sich die Höhenmessung von der berechneten Z-Koordinatenposition vom Ortungssystem 208 unterscheidet, wie durch Block 1028 angegeben. Falls ja, wendet sich die Verarbeitung zurück zu Block 1030, wo die Positionsidentifikations-Logikschaltung 530 eine aktuelle Koordinatenposition des Roboter-Anbaugerätes 200 modifiziert, um die Höhenmessung zu integrieren, wie durch Block 1030 angegeben. Nach dem Modifizieren einer aktuellen Position des Roboter-Anbaugerätes 200 oder alternativ der Feststellung, dass sich eine aktuelle Koordinatenposition nicht von der Höhenmessung unterscheidet, endet in Folge die Verarbeitung.
-
10 ist ein Blockdiagramm eines Beispiels einer Rechnerumgebung, die in den Architekturen verwendet werden kann, die in den vorhergehenden Figuren dargestellt sind. Mit Bezug auf 10 umfasst ein Beispielsystem für die Einführung einiger Beispiele eine Allzweck-Rechnervorrichtung in Gestalt eines Rechners 1110. Komponenten des Rechners 1110 können eine Verarbeitungseinheit 1120 (die Prozessoren oder Server vorhergehender Figuren umfassen kann), einen Systemspeicher 1130 und einen Systembus 1121 umfassen, die verschiedene Systemkomponenten inklusive des Systemspeichers mit der Verarbeitungseinheit 1120 koppeln. Der Systembus 1121 kann eine von mehreren Arten von Busstrukturen sein, inklusive eines Speicherbusses oder Speicher-Controllers, eines Peripherie-Busses und eines lokalen Busses, eine von vielen Busarchitekturen verwendend. Die in Bezug auf 4A und 4B beschriebenen Speicher und Programme können in den entsprechenden Teilen von 10 eingesetzt werden.
-
Der Rechner 1110 umfasst in der Regel eine Vielfalt computerlesbarer Medien. Computerlesbare Medien können alle verfügbare Medien sein, auf die der Rechner 1110 zugreifen kann, und dazu gehören sowohl flüchtige als auch nicht-flüchtige Medien, herausnehmbare und nicht herausnehmbare Medien. Beispielsweise und ohne Einschränkungen, können computerlesbare Medien Speichermedien und Kommunikationsmedien von Rechnern umfassen. Speichermedien von Rechnern unterscheiden sich von einem modulierten Datensignal oder einer Trägerwelle und schließen diese nicht ein. Sie umfassen Hardware-Speichermedien inklusive sowohl flüchtiger als auch nicht-flüchtiger, herausnehmbarer und nicht herausnehmbarer Medien, die in einer Methode oder Technologie für die Speicherung von Informationen implementiert sind, wie computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten. Zu Speichermedien von Rechnern gehören imter amdere, RAM, ROM, EPROM, Flash Memory oder andere Speichertechnologien, CD-ROM, Digital Versatile Disks (DVD) oder andere optische Plattenspeicher, Magnetkassetten, Magnetband, magnetische Plattenspeicher oder andere magnetische Speichervorrichtungen, oder alle anderen Medien, die zum Speichern der gewünschten Informationen verwendet werden können und auf die der Rechner 1110 zugreifen kann. Kommunikationsmedien können computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem Transportmechanismus enthalten und schließen alle Medien zur Informationsbereitstellung ein. Der Begriff „moduliertes Datensignal“ bezeichnet ein Signal, von dem ein oder mehr seiner Merkmale auf eine solche Weise eingestellt oder geändert werden, dass im Signal Informationen verschlüsselt werden.
-
Der Systemspeicher 1130 umfasst Rechnerspeichermedien in Gestalt flüchtiger und/oder nicht-flüchtiger Speicher, wie schreibgeschützten Speicher (ROM) 1131 und Arbeitsspeicher (RAM) 1132. Ein einfaches Eingabe/Ausgabe-System 1133 (BIOS), welches die grundlegenden Routinen enthält, die zur Übertragung von Informationen zwischen Elementen innerhalb des Rechners 1110 beitragen, wie beim Einschalten, ist in der Regel im ROM 1131 gespeichert. RAM 1132 enthält in der Regel Daten und/oder Programmmodule, die sofort zugänglich sind und/oder aktuell von der Verarbeitungseinheit 1120 betrieben werden. Als Beispiel, und ohne Einschränkung, veranschaulicht 10 das Betriebssystem 1134, Anwendungsprogramme 1135, sonstige Programmmodule 1136 und Programmdaten 1137.
-
Der Rechner 1110 kann auch andere herausnehmbare/nicht herausnehmbare flüchtige/nicht-flüchtige Rechnerspeichermedien umfassen. Als Beispiel veranschaulicht 10 ein Festplattenlaufwerk 1141, das von nicht herausnehmbaren, nicht-flüchtigen magnetischen Medien, und einem optischen Plattenlaufwerk 1156 und nicht-flüchtiger optischer Platte 856 liest oder auf diese schreibt. Das Festplattenlaufwerk 1141 ist in der Regel über eine nicht herausnehmbare Speicherschnittstelle, wie die Schnittstelle 1140, mit dem Systembus 1121 verbunden, und das optische Plattenlaufwerk 1155 ist in der Regel über eine herausnehmbare Speicherschnittstelle, wie die Schnittstelle 1150, mit dem Systembus 1121 verbunden.
-
Alternativ, oder ergänzend, kann die hierin beschriebene Funktion, zumindest in Teilen, durch eine oder mehrere Hardware-Steuerelektronikkomponenten durchgeführt werden. Zum Beispiel können, ohne Einschränkung, veranschaulichte Arten von verwendbaren Hardware-Steuerelektronikkomponenten feldprogrammierbare Gate Arrays (FPGAs), anwendungsspezifische integrierte Schaltungen (z. B. ASICs), anwendungsspezifische Standardprodukte (z. B. ASSPs), System-on-a-Chip-Systeme (SOCs), komplexe programmierbare Steuerelektronikvorrichtungen (CPLDs) usw. umfassen.
-
Die Laufwerke und ihre zugehörigen, oben erwähnten und in 10 veranschaulichten Rechnerspeichermedien stellen die Speicherung computerlesbarer Anweisungen, Datenstrukturen, Programmmodulen und anderen Daten für den Rechner 1110 bereit. Zum Beispiel ist das Festplattenlaufwerk 1141 in 10 als Betriebssystem 1144, Anwendungsprogramme 1145, sonstige Programmmodule 1146 und Programmdaten 1147 speichernd veranschaulicht. Es ist zu beachten, dass diese Komponenten entweder mit dem Betriebssystem 1134, Anwendungsprogrammen 1135, sonstigen Programmmodulen 1136 und Programmdaten 1137 identisch sein oder sich von ihnen unterscheiden können.
-
Ein Benutzer kann Befehle und Informationen über Eingabevorrichtungen wie eine Tastatur 1162, ein Mikrofon 1163 und ein Zeigegerät 1161, wie eine Maus, einen Trackball oder ein Touchpad in den Rechner 1110 eingeben. Andere (nicht abgebildete) Vorrichtungen können ein Joystick, ein Gamepad, eine Satellitenschüssel, ein Scanner oder ähnliches sein. Diese und andere Eingabevorrichtungen sind häufig über eine Benutzereingabeschnittstelle 1160 mit der Verarbeitungseinheit 1120 verbunden, die mit dem Systembus gekoppelt ist, können aber auch über andere Schnittstellen- und Busstrukturen verbunden werden. Eine optische Anzeige 1191 oder eine andere Art von Anzeigevorrichtung ist ebenfalls über eine Schnittstelle, wie eine Videoschnittstelle 1190, mit dem Systembus 1121 verbunden. Ergänzend zum Bildschirm können Rechner auch andere periphere Ausgabevorrichtungen wie Lautsprecher 1197 und Drucker 1196 umfassen, die über eine periphere Ausgabeschnittstelle 1195 verbunden sein könnten.
-
Der Rechner 1110 wird unter Verwendung logischer Verbindungen (wie ein lokales Netz (LAN) oder ein Fernnetz (WAN)) zu einem oder mehreren Remote-Rechnern, wie der Remote-Rechner 1180, in einer Netzwerkumgebung betrieben.
-
Wenn der Rechner 1110 in einer LAN-Netzwerkumgebung verwendet wird, ist er über eine Netzwerkschnittstelle oder einen Adapter 1170 mit dem LAN 1171 verbunden. Wenn der Rechner 1110 in einer WAN-Netzwerkumgebung verwendet wird, umfasst er in der Regel ein Modem 1172 oder andere Mittel zum Herstellen der Kommunikation über das WAN 1173, wie das Internet. In einer Netzwerkumgebung können Programmmodule in einer Remote-Speichervorrichtung gespeichert werden. 10 veranschaulicht beispielsweise, dass sich die Remote-Anwendungsprogramme 1185 auf dem Remote-Rechner 1180 befinden.
-
Es ist auch zu beachten, dass die verschiedenen hierin beschriebenen Beispiele auf verschiedene Weise kombiniert werden können. Das heißt, dass Teile eines oder mehrerer Beispiele mit Teilen eines oder mehrerer anderer Beispiele kombiniert werden können. All dies ist hierin berücksichtigt.
-
Beispiel 1 ist ein Rechnersystem, umfassend:
- eine Steuerlogik für Stellglieder, die für das Erzeugen und Senden von Steuersignalen an ein Stellglied einer mobilen Maschine und zur Bestimmung von Richtung und Geschwindigkeit des Gestänges der mobilen Maschine konfiguriert ist, und
- ein System zum Erzeugen von Steuerkarten, welches für den Empfang von Sensorsignalen hinsichtlich der Richtung und Geschwindigkeit von Bewegungen des Gestänges der mobilen Maschine konfiguriert ist und, auf den empfangenen Sensorsignalen basierend, eine Steuerkarte erzeugt, die die Steuersignale mit der Richtung und der Geschwindigkeit der Bewegung des Gestänges der mobilen Maschine abgleicht.
-
Beispiel 2 ist das Rechnersystem eines jeden oder aller vorhergehenden Beispiele und umfaast:
- ein Roboter-Ortungssystem, welches zum Positionieren eines Roboter-Anbaugerätes an der mobilen Maschine unter Verwendung des Steuer-Mappings konfiguriert ist.
-
Beispiel 3 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei das Roboter-Ortungssystem umfasst:
- Betriebspositions-Logikschaltung, welche für die Identifikation einer Betriebsposition des Roboter-Anbaugerätes konfiguriert ist, und
- ein Vorschub-Steuersystem, welches für das Erzeugen eines auf der Steuer-Abbildung basierenden Stellglied-Steuersignals konfiguriert ist, um das Roboter-Anbaugerät in die Betriebsposition zu bewegen.
-
Beispiel 4 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei das Steuerkarten-Erzeugungssystem für das Erzeugen einer Vielzahl von Steuer-Abbildungen konfiguriert ist, welche eine Vielzahl verschiedener Steuersignale für eine Vielzahl verschiedener Richtungs- und Geschwindigkeitsbewegungen des Gestänges abbilden.
-
Beispiel 5 ist das Rechnersystem eines jeden oder aller vorhergehenden Beispiele und umfasst ferner:
- einen Steuermodellgenerator, der für den Empfang einer Vielzahl von Steuerabbildungen und das Erzeugen eines Steuermodells für die mobile Maschine konfiguriert ist, wobei das Roboter-Ortungssystem für das auf dem Steuermodell basierende Positionieren des Roboter-Anbaugerätes konfiguriert ist.
- Beispiel 6 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei die Sensorsignale von mindestens einem der sich extern von der mobilen Maschine befindlichen optischen Sensorsysteme erzeugt werden.
-
Beispiel 7 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei die Sensorsignale von mindestens einem der sich an der mobilen Maschine befindlichen optischen Sensorsysteme erzeugt werden.
-
Beispiel 8 ist das Rechnersystem eines jeden oder aller vorhergehenden Beispiele und, ferner umfassend: Freiheitsgrad-Identifikations-Logikschaltung, konfiguriert für das Identifizieren einer Reihe von Freiheitsgraden für jedes Gestänge der mobilen Maschine.
-
Beispiel 9 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei der Steuerkartengenerator für das Erzeugen einer Vielzahl von Abbildungen, für jedes Gestänge der mobilen Maschine, für jeden Freiheitsgrad konfiguriert ist.
-
Beispiel 10 ist das Rechnersystem eines jeden oder aller vorhergehenden Beispiele, ferner umfassend: Konfigurationsidentifikations-Logikschaltung, die für den Empfang von Sensorsignalen konfiguriert ist, die Richtung und Geschwindigkeit der Bewegung des Gestänges und, basierend auf den Sensorsignalen, eine physische Konfiguration der mobilen Maschine bestimmt und eine Konfiguration erzeugt, welche der physischen Konfiguration der mobilen Maschine entspricht.
-
Beispiel 11 ist das Rechnersystem eines jeden oder aller vorhergehenden Beispiele, ferner umfassend: kinematischer Identifikations-Logikschaltung, welche für den Empfang von Sensorsignalen konfiguriert ist, die Richtung und Geschwindigkeit der Bewegung des Gestänges und, basierend auf den Sensorsignalen, einen Kinematik-Satz bestimmt, der die mobile Maschine charakterisiert und eine kinematische Ausgabe erzeugt, die dem Satz der Kinematik der mobilen Maschine entspricht.
-
Beispiel 12 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei mindestens eines der Sensorsignale von einem flüssigkeitsgelagerten Höhenmeter an der mobilen Maschine, die für das Erzeugen eines Sensorsignals zur Anzeige einer aktuellen Höhe des Roboter-Anbaugerätes konfiguriert ist, erzeugt wird.
-
Beispiel 13 ist das Rechnersystem eines oder aller vorhergehenden Beispiele, wobei mindestens eines der Sensorsignale von mindestens einem am Roboter-Anbaugerät befindlichen Rotationssensor, der für das Erzeugen eines Sensorsignals zur Angabe einer aktuellen Rotationsposition des Roboter-Anbaugerätes konfiguriert ist, erzeugt wird.
-
Beispiel 14 ist eine mobile-Maschine-Anordnung, die umfasst:
- ein Stellglied, welches zum Antrieb der Bewegung eines Gestänges an der mobilen Maschine konfiguriert ist; eine Stellglied-Steuereinheit, die für das Erzeugen eines Stellglied-Steuersignals zum Aktivieren des Stellglieds konfiguriert ist;
- eine Vielzahl von Sensoren, die zum Erzeugen von Sensorsignalen konfiguriert sind, welche die Bewegung des Gestänges der mobilen Maschine anzeigen;
- ein an der mobilen Maschine für die Bewegung mit dem Gestänge gekoppeltes Roboter-Anbaugerät, und ein Roboter-Positionierungs- und Kalibrierungssystem, das für den Empfang von Sensorsignalen von einer Vielzahl von Sensoren konfiguriert ist und, basierend auf den Sensorsignalen eine Steuer-Abbildung erzeugt, wobei die Steuer-Abbildung eine Beziehung zwischen dem Stellglied-Steuersignal und einer entsprechenden Geschwindigkeit und Richtung der Bewegung des Roboter-Anbaugerätes angibt.
-
Beispiel 15 ist die mobile-Maschine-Anordnung, wobei das Roboter-Positionierungs- und Kalibrierungssystem für das Steuern der Stellglied-Steuerung zum automatischen Erzeugen einer Vielzahl verschiedener Stellglied-Steuersignale zum Aktivieren einer Vielzahl verschiedener Stellglieder und zum Erzeugen einer Vielzahl verschiedener Abbildungen zwischen der Vielzahl der verschiedenen Stellglied-Steuersignale und der Geschwindigkeit und Richtung der Bewegung des Roboter-Anbaugerätes konfiguriert ist.
-
Beispiel 16 ist die mobile-Maschine-Anordnung eines oder aller vorhergehenden Beispiele, wobei das Roboter-Positionierungs- und Kalibrierungssystem ferner umfasst:
- einen Steuermodellgenerator, welcher zum Erzeugen eines auf der Vielzahl unterschiedlicher Abbildungen basierenden Steuermodells konfiguriert ist.
-
Beispiel 17 ist die mobile-Maschine-Baugruppe eines oder aller vorhergehenden Beispiele, wobei mindestens einer der Vielzahl der Sensoren umfasst:
- einen flüssigkeitsgelagerten Höhenmesser, der für das Erzeugen eines Sensorsignals konfiguriert ist, das die aktuelle Höhe des Roboter-Anbaugerätes anzeigt.
-
Beispiel 18 ist eine Methode zum Erzeugen einer Steuerkarte für eine mobile Maschine, umfassend:
- Erzeugung eines Stellglied-Steuersignals zum Steuern eines Stellglieds, um ein Anbaugerät aus einer ersten bekannten Position in eine zweite bekannte Position zu bewegen;
- Empfang von Sensorsignalen, die eine Richtung der Bewegung, eine Entfernung zwischen den ersten und zweiten bekannten Positionen und eine Zeitdauer angeben, in der das Anbaugerät aus der ersten in die zweite bekannte Position bewegt wurde;
- Bestimmung, basierend auf den empfangenen Sensorsignalen, von Geschwindigkeit und Richtung der Bewegung des Anbaugerätes, und
- Abbilden des Steuersignals mit Geschwindigkeit und Richtung der Bewegung des Anbaugerätes.
-
Beispiel 19 ist die Methode eines jeden oder aller vorhergehenden Beispiele und umfasst ferner:
- Bestimmung einer Reihe von Freiheitsgraden für das Anbaugerät;
- Erzeugung einer Vielzahl von Stellglied-Steuersignalen, von denen jedes das Stellglied steuert, um das Anbaugerät zwischen bekannten Positionen in verschiedenen Freiheitsgraden zu bewegen;
- Empfang von Sensorsignalen, welche die Richtung, Entfernung und Dauer der Bewegung in jedem Freiheitsgrad angeben;
- Bestimmung von Geschwindigkeit und Richtung der Bewegung des Anbaugerätes in jedem Freiheitsgrad, und
- Abbilden der Steuersignale mit Geschwindigkeit und Richtung in jedem Freiheitsgrad.
-
Beispiel 20 ist die Methode eines oder aller vorhergehenden Beispiel, wobei der Empfang von Sensorsignalen umfasst:
- Empfang eines Höhensignals, das die Höhe des Anbaugerätes anhand eines flüssigkeitsgelagerten Höhenmessers angibt.