{"id":2132,"date":"2012-11-07T12:07:56","date_gmt":"2012-11-07T11:07:56","guid":{"rendered":"http:\/\/www.naoteamhumboldt.de\/?page_id=2132"},"modified":"2012-11-07T12:08:05","modified_gmt":"2012-11-07T11:08:05","slug":"robotcontrol","status":"publish","type":"page","link":"https:\/\/www.naoteamhumboldt.de\/de\/projects\/robotcontrol\/","title":{"rendered":"RobotControl"},"content":{"rendered":"Das Software-Framework des Teams bietet eine global verf\u00fcgbare Debugging- Architektur, die verschiedene Debugging- Aktionen anbietet, wie etwa Logging von Messdaten, Visualisierung der Umgebungsinformationen oder Daten zum Laufzeitverhalten des Codes. Auch Modifikation des Softwareverhaltens ist \u00fcber diese Debugging-Architektur m\u00f6glich, so k\u00f6nnen Parameter modifiziert oder Funktionen ein- oder ausgeschaltet werden. Dies ist durch Code-Makros an beliebiger Stelle innerhalb des Codes nutzbar.\r\n\r\nDieses Debugging- Framework kommuniziert \u00fcber ein Plaintext-Protokoll, das unter anderem von RobotControl interpretiert wird. RobotControl ist eine javabasierte Debugging- und Steuersoftware, die sicher als wichtiges Werkzeug f\u00fcr Entwicklung und Konfiguration des Softwareframeworks bezeichnet werden kann. RobotControl bietet eine Vielzahl von unterschiedlichen Ansichten, mit denen die Daten visualisiert und gesteuert werden k\u00f6nnen.\r\n\r\n<a href=\"http:\/\/www.naoteamhumboldt.de\/wp-content\/uploads\/2012\/11\/roboctl-simparpaper.png\"><img loading=\"lazy\" class=\"alignnone size-medium wp-image-2133\" title=\"Roboctl\" src=\"http:\/\/www.naoteamhumboldt.de\/wp-content\/uploads\/2012\/11\/roboctl-simparpaper-300x192.png\" alt=\"\" width=\"300\" height=\"192\" srcset=\"https:\/\/www.naoteamhumboldt.de\/wp-content\/uploads\/2012\/11\/roboctl-simparpaper-300x192.png 300w, https:\/\/www.naoteamhumboldt.de\/wp-content\/uploads\/2012\/11\/roboctl-simparpaper.png 734w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\r\n\r\nDie relevantesten Ansichten in RobotControl sind:\r\n<ul>\r\n\t<li>BehaviorViewer: Visualisiert den aktuellen Pfad innerhalb der Verhaltenshierarchie sowie Debugging-Daten zum aktuellen Zustand des Verhaltens.<\/li>\r\n\t<li>ColorTableTool: Farb- Kalibration des Roboters: Hier werden die f\u00fcr das Spiel relevanten Farben (Ball, Boden, Linien, Tore, Roboter) zugeordnet und kalibriert.<\/li>\r\n\t<li>DebugRequests: Steuerungstool f\u00fcr die einzelnen Debug- Informationen \u2013 hier wird konfiguriert, welche Daten \u00fcbertragen und angezeigt werden sollen.<\/li>\r\n\t<li>FieldViewer: Visualisierung des Spielfeldes aus Vogelperspektive, in der vor allem Lokalisierungsinformationen wie zum Beispiel die Verteilung von Lokalisierungsperzepten oder die vermutete Position des Tores und des Balls gezeigt wird.<\/li>\r\n\t<li>LogfileRecorder: Aufzeichnung eines Logfiles des aktuellen Zustandsverlaufs. So kann zum Beispiel ein Spiel oder eine bestimmte Spielsituation sp\u00e4ter im Labor wiedergegeben und zur Codeverbesserung benutzt werden.<\/li>\r\n\t<li>StopwatchViewer: Anzeige des Laufzeitverhaltens der einzelnen Module<\/li>\r\n\t<li>3DViewer: 3D-Darstellung des Roboters mit seinen einzelnen Gelenken sowie diverser Umgebungsinformationen<\/li>\r\n<\/ul>\r\nAuf dem Screenshot\u00a0sind einige dieser Ansichten zu sehen: Oben links ist der 3DViewer zu sehen, rechts daneben der FieldViewer &#8211; darunter der ValuePlotter, mit dem Wertverl\u00e4ufe geplottet werden k\u00f6nnen, sowie der BehaviorViewer. Ganz rechts \u00fcber beide Spalten ist das DebugRequest Center zu sehen, in dem konfiguriert wird, welche Debug-Daten der einzelnen Module gezeigt werden sollen. So sieht man im Screenshot, dass die Option\u00a0<em>draw_players_model<\/em>\u00a0eingeschaltet ist, und daher im FieldViewer die Position der vom\u00a0<em>PlayersLocator<\/em>\u00a0angezeigten Roboter eingezeichnet wird.\r\n\r\nRobotControl kann sowohl \u00fcber Netzwerk direkt auf den Roboter zugreifen, als auch vorab aufgezeichnete Logfiles abspielen, um so auch eine nachtr\u00e4gliche Analyse zu Test- und Entwicklungszwecken zu erm\u00f6glichen.","protected":false},"excerpt":{"rendered":"Das Software-Framework des Teams bietet eine global verf\u00fcgbare Debugging- Architektur, die verschiedene Debugging- Aktionen anbietet, wie etwa Logging von Messdaten, Visualisierung der Umgebungsinformationen oder Daten zum Laufzeitverhalten des Codes. Auch Modifikation des Softwareverhaltens ist \u00fcber diese Debugging-Architektur m\u00f6glich, so k\u00f6nnen Parameter modifiziert oder Funktionen ein- oder ausgeschaltet werden. Dies ist durch Code-Makros an beliebiger Stelle [&hellip;]","protected":false},"author":1,"featured_media":0,"parent":310,"menu_order":5,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ngg_post_thumbnail":0},"_links":{"self":[{"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/pages\/2132"}],"collection":[{"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/comments?post=2132"}],"version-history":[{"count":4,"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/pages\/2132\/revisions"}],"predecessor-version":[{"id":4043,"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/pages\/2132\/revisions\/4043"}],"up":[{"embeddable":true,"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/pages\/310"}],"wp:attachment":[{"href":"https:\/\/www.naoteamhumboldt.de\/de\/wp-json\/wp\/v2\/media?parent=2132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}