The_Real_Black Geschrieben May 27, 2012 at 18:34 Geschrieben May 27, 2012 at 18:34 Update: Version: 1.3 Datum: 27.05.2012 - Zeitmessung beim "Full Scan" in ms. - Wartezeit (ms) beim Servo Bewegen im Full Scan wurde nun mit der passenden Option verknüpft. - Eine Radarlinie damit man optisch beser sieht wo der Sensor ausgerichtet ist\sein sollte. - Events im Menüsystem - Wert wird geändert -> Für Live Änderungen - Wert wurde geändert -> Info zum Variablen neu abrufen. - Box3 Schritte in der Automessung des Scanners. Die Auflösung setzte dann nur jeden xten Punkt! Diese Options sollte nur verwewndet werden wenn vorher alle Punkte geresettet werden. - Im Utils Projekt unter Doc liegt ein SVG erstellt mit Inkscape Portable - Bricks - Lochraster (Raster: 5mm Lochdurchmesser: 3mm) - Ideen... Zitieren
The_Real_Black Geschrieben June 1, 2012 at 21:31 Geschrieben June 1, 2012 at 21:31 Mein Roboterunterbau ist gekauft (kommt die Tage an), ich bin wieder in eine neue Kiste umgezogen... hab die alte Kiste in die neue gestellt als Stabilisator. Erinnert alles an den Umzug von Krebsen oder so. Box 4 wird keine Joysticks mehr haben und es wird deswegen auch keinen Handmodus geben. Tags: [build] and [Run] ToDos: - Box 4 Coden\Roboter zusammenbauen - In der Doku zusammenschreibne welche Bricks für welches Projekt benötigt werden - IMU weiter Testen. - ... Ich hatte ein Problem mit dem IMU und dem IR-Distanz Bricklet: Wenn ich das IR Bricklet am IMU hatte hat der IMU um Brivkd nichts angezeigt und das Bricklet wurde nicht erkannt und auch nicht aufgelistet. Was kann da schief gehen? Zitieren
The_Real_Black Geschrieben June 2, 2012 at 08:43 Geschrieben June 2, 2012 at 08:43 Im Moment kein Code sondenr nur ein Paar Bilder: Box 4: (für die neue Höhe des Stacks mit dem IMU) http://www.therealblack.net/TFUploads/Box4_Ex.jpg Box 4 Innenleben man kann noch Box 3 erkennen ^^: http://www.therealblack.net/TFUploads/Box4_Innen.jpg Edit: Ups etwas groß das Bild Zitieren
The_Real_Black Geschrieben June 3, 2012 at 19:20 Geschrieben June 3, 2012 at 19:20 Mein Roboter und die weiteren Beiteile sind da ^^ Ich hab damit mal was zusammen gebastelt. Box 4 fällt mehr oder weniger aus und es wird gleich zum Roboter 1.0 gegangen ^^ Bot 1: - Servo - IMU - 2xDC - 1xservo -- IR Distanz - Master - Power Aufgaben: - Gerade ausfahren - Gelände scannen - Drehen wenn Objekte im Weg sind. - Karte anfertigen(?) - Hand-Steuerung -> Stand: Aufbau\Begonnen\Konzept Ausbau A: - 2 IR Sensoren - Licht und Temperaturmessung (+in Karte eintragen) Zitieren
Imbafestor Geschrieben June 3, 2012 at 20:21 Geschrieben June 3, 2012 at 20:21 Cooles Bild. Bei mir sieht es ähnlich aus Allerdings finde ich deine Idee, die Grundplatte mit den L-Profilen zu erhöhen nicht schlecht. Bei mir liegt die direkt auf und deswegen ist da kaum Platz. Werden wohl noch Ebenen dazukommen müssen^^ Am Ende müssen die Bricks, RaspPi, Akku, Webcam, Usb Hub und etliche Kabel drauf. Leider ist das Grundgestell so klein :/ Hast du mittlerweile eine Idee, wie du eine genaue Positionserkennung sicher stellst? Das ist in meinen Augen das größte Problem, wenn es um die Erstellung einer Karte geht. Schöne Grüße Zitieren
The_Real_Black Geschrieben June 3, 2012 at 20:55 Geschrieben June 3, 2012 at 20:55 @Imbafestor: Ich habe noch eine zweite Platine mit identischen Maßenich, daher kann ich die Fläche nochmal verdoppeln. Es hängt dann halt alles seitlich etwas über die Ketten hinaus oder es wird erhöht und die Servos am Kopf gestellt. so kann ich den Überhang besser nutzen. Die U-Profile oder ein Rahmen sollen nur dazu dienen, dass ich nicht die Schrauben öfters in das Plastik schrauben muss. Auf diesen Unterbau soll dann der eigendliche Aufbau (Platinen und Bricks) plaziert werden. So sollte die Belastung am Plastik reduziert werden. Wie oft kann man an den 4 Ecken eine Schraube reindrehen ohne Schäden zu haben? Zur Positionsermittlung habe ich mir noch wenig Gedanken gemacht. Beim Geradeausfahren werde ich bestimmte Schritte machen und diese dann vorraussetzen, dass diese immer Länge X haben. Dies sollte für die ersten Versuche genügen. Drehungen um welche ich mir mehr sorgen gemacht habe werde ich mittels IMU ausmessen. Es ist auf ein Grad genau bei meinen Experimenten und dass sollte auch genügen. Wenn es nicht genügt sollte immer ein Fix Punkt in Sichtweite sein an welchen dann Vergleichen wird wie weit der Roboter gefahren ist. Aber alles erst zu seiner Zeit und ein Schritt nach den anderen. -> STEP 1: Code Clean Up und neuen Projektordner beginnen. Ich hoffe nur jemand macht einen Kompas aus den Messdaten des IMU sonst muss ich das selbst zusammen rechnen ^^ dann wird es auch Zeit für die WLan Erweiterung sonst ist mein Roboter Kabel gestützt... -> STEP 2: Neue Klassen für Roboter schreiben -> STEP 3: Roboter fahren lassen usw. Zitieren
M4ST3R Geschrieben June 3, 2012 at 21:08 Geschrieben June 3, 2012 at 21:08 Sieht echt gut aus was du da bastelst. Vorallem die Kollisionsdetection interessiert mich. Du programmierst in Java oder? Wie hast du den Scanner visualisiert Zitieren
AuronX Geschrieben June 4, 2012 at 07:49 Geschrieben June 4, 2012 at 07:49 Finde den Aufbau deines schwenkbaren IR-Sensors ganz cool... ich hatte für mich bisher einen flachen Aufbau im Kopf, aber das sieht auch ziemlich gut aus ^^ Zitieren
The_Real_Black Geschrieben June 4, 2012 at 18:18 Geschrieben June 4, 2012 at 18:18 @M4ST3R: In Java programmiere ich auch, aber nicht privat ;-) bis jetzt ist in diesen Projekt alles in C# geschrieben. Im Falle, dass ich irgendwann einen Rasberry bekommen sollte werde ich dort entweder in Mono+C#, C++ oder Java etwas aufsetzen. Dies wird dann aber entscheiden wenn es soweit ist. Der Scanner ist einfach eine UserControl Ableitung bei welchen das Paint-Event implementiert wurde und dort Graphics Methoden verwendet. Es ist im Moment also nur einfache GUI Zeichnerei. Ich habe schon überlegt eine 3D Visiualisierung zu schreiben, aber ich kann mich im Moment nicht zwischen XNA und ManagedDX entscheiden. Was habt ihr eher Installiert? XNA oder managed DX? @AuronX: Ich wollte es auch erst flach anbringen, aber ich habe so nicht an den Armen des Servos anschrauben können. Als ich ein Lochblechstreifen in einen Baukasten gefunden habe war dies Ideal um den Sensor hochkant anzuschrauben. Zitieren
Imbafestor Geschrieben June 4, 2012 at 18:41 Geschrieben June 4, 2012 at 18:41 Ich hab schon das ein oder andere mit XNA gemacht, das ist eigentlich recht schön. Zu managed dx kann ich nichts sagen Das Distance IR sollte hochkant gestellt werden, weil es sonst einen relativen großen Detektorwinkel (blödes Wort) hat, also es lässt sich nicht allzu genau messen imho. Zitieren
AuronX Geschrieben June 4, 2012 at 19:09 Geschrieben June 4, 2012 at 19:09 Das Distance IR sollte hochkant gestellt werden, weil es sonst einen relativen großen Detektorwinkel (blödes Wort) hat, also es lässt sich nicht allzu genau messen imho. Hmmm, habe ich bisher nicht drüber nachgedacht aber könnte stimmen. Sollte ich beachten. @The_Real_Black: Ich habe XNA installiert und Managed DX bisher nicht kennengelernt. Allerdings habe ich XNA bisher auch nur 2D genutzt. Zitieren
ThomasKl Geschrieben June 4, 2012 at 19:38 Geschrieben June 4, 2012 at 19:38 wie wäre es denn mit so einer MS Kinect Kamera als 3D Scanner? da müsste man doch relativ schnell eine Übersicht zusammen haben. Zitieren
The_Real_Black Geschrieben June 4, 2012 at 20:01 Geschrieben June 4, 2012 at 20:01 Dann ist da die Entscheidung gefallen ^^ XNA ist der Sieger. mDX habe ich im Studium mitbekommen XNA habe ich mir selbst beigebracht. Es ist wenn man alle Vertices per Hand zeichnet nicht viel Unterschied. Wenn hier mehr Leute schon mit XNA zu tun hatten und dies auch Installiert ist besser als wenn man die Leute erst zum Installieren "zwingen" muss. @ThomasKl: Die Idee hatte ich schon mal, aber ich hatte keine Kinect zur Hand, mein Prof. wollte auch keine Sponsorn und als ich mit meiner Bachelorarbeit angefangen hatte gab es noch keine Treiber für Windows, da musste ich auf Tiefelbilderzeugung mittels 2 Web-Kameras zurückgreifen. Es ist möglich nette 3D Strukturen daraus zu erzeugen, aber es ist alles sehr anfällg wenn man nicht alles selbst implementiert... Tipp: OpenCV und für C# der Wrapper EmguCV falls du es noch nicht kennst. Ist aber je Version etwas verbuggt... Ich werde das vieleicht verwenden um eine Kamera abzufragen und das Bild auf die visualisierung der Messdaten zu klatschen. Zitieren
The_Real_Black Geschrieben June 6, 2012 at 18:32 Geschrieben June 6, 2012 at 18:32 -> Roboter begonnen. Version: 1.4 Datum: - Einfache Vectorklasse: Dateneimer - Vektor Input Element. - Mathhelper Klasse aus meheren früheren Projekten übernommen - A_DummyTest Lautsprecherausgabe\Rechteck\irgendwas wie Sinusgenerator. - SVG: Lochraster benannt und verglichen. - SVG: Backup erstellt -> "Lochblech Backup" da es zum arbeiten mit allen Blechen in einer Datei zu rucklig ist! - SVG: Roboter Überlegungen eingefügt - Box 4 Mapper - GUI begonnen... - letztes Update in diesen Projekt: Ich beginne mit den Klassen noch mal ein neues Projekt welches auf meinen Roboter ausgerichtet ist. Zitieren
The_Real_Black Geschrieben June 9, 2012 at 10:39 Geschrieben June 9, 2012 at 10:39 http://www.therealblack.net/TFUploads/Datenhaltung.png Hat jemand Anmerkungen zum Datenbank Aufbau? Zitieren
The_Real_Black Geschrieben June 9, 2012 at 18:58 Geschrieben June 9, 2012 at 18:58 Notiz: 2 Projekt Ideen welche ich vermutlich nicht umsetzen werde. - Luftschiff: Ein steuerbarer Zeppelin. Ein DC Brick für den\die Motoren und ein Stepper Brick oder Servo Brick zum ausrichten der Motoren. IMU, Master und ein IO4, "Funk"Brick würde ich auch noch dafür vorschlagen. Vorteil: Es stürtzt nicht ab wenn die Verbindung reißt (anders als ein Flugzeug oder Octocopter) - Automatischer Kresse Farm: Kresse wird in kleinen Schalen unter einen Plastikzelt angebaut und dann mittels Schneidemessern geerntet. Nach der Ernte kann man einen Trocknungsschritt hinzufügen oder sonst eine Idee. Bricks: Master, DC + Servo oder noch ein DC, IO16 Bricklet, Luftfeuchte Bricklet. Die DCs steuern ein Drehgewinde auf dem sich ein Erntekopf befindet der Servo oder DC das Schneidewekzeug (siehe anderen Thread: Rasenmäher). Eine Pumpe Oder noch ein DC kann Wasser in die Schalen Pumpen damit die Kresse immer genügend Wasser hat. Endlage Taster können dann für Positionen "Start Schnitt" und "Abwurf Ernte" verwendet werden. Frage ist wann der Ernte-Vorgang starten soll... IR Bricklet zum messen? Oder eine Kamera an einen Rasberry ;-) Zitieren
The_Real_Black Geschrieben June 12, 2012 at 20:18 Geschrieben June 12, 2012 at 20:18 Es fährt!!!! Es fährt!!!!!!!! Ich kann nun einen Joystick nach vorne bewegen und es fährt nach vorne. Links\Rechts dreht es sich und sogar rückwärts kann es fahren... die letzten Codeschnipsel stelle ich noch nicht online ich muss erst mal weiter aufräumen bevor es das nächste Update gibt. Happy Coding und bis die Tage. Zitieren
lecktricker Geschrieben June 13, 2012 at 08:59 Geschrieben June 13, 2012 at 08:59 Schön das es funktioniert. So ging es mir auch, bis er sich das erste Mal deformiert hatte, da der IR Sensor nicht alles erfassen konnte Ich bin echt mal gespannt auf deinen Code, wie du das erstellt hast. Zitieren
The_Real_Black Geschrieben June 13, 2012 at 19:15 Geschrieben June 13, 2012 at 19:15 Bis er mit einen IR Sensor fährt wird es noch mindestens ein Update benötigen. Das nächste wird erstmal der Handmodus werden. Zitieren
The_Real_Black Geschrieben June 15, 2012 at 19:35 Geschrieben June 15, 2012 at 19:35 http://www.therealblack.net/TFUploads/TRB_Bot.7z Hier mal ein Test Projekt. Ich würde mich freuen wenn ihr es ausführen könntet (Exe liegt bei). -> Entzippt die Dateien -> Klickt bitte auf "Erstelle DB" (als Pfad ist der Ausführungsort gedacht) -> dann gibt in den Popup Fenster einen Namen ein und klickt auf "ok" -> Eine neue Datei sollte im Ordner liegen. <der eingegebene Name>.mdb -> Klickt auf Öffnen -> wählt die Datei -> es sollte auf der Oberfläche "geöffnet" stehen -> Klickt auf "Default DB" -> und beendet mit "Beende" bitte die Datenbankverbindung -> Falls ihr wollt könnt ihr auch im Textfeld eigene SQLs absetzen. Dieser Test auf anderen Rechnern soll zeigen, dass die Datenbank-Erstellung bei euch klappt ansonsten muss ich immer eine leere DB mitgeben welche ich dann kopiere und mit leben fülle. Ich könnte auch ein paar kleine Ideen für ein Webinterface in dieses Projket einbringen, aber dann müstet ihr das Programm und auch Visual Studio im Adminmodus ausführen... Einwände dagegen? Oder nette Idee? Freu mich auf euer Feedback obs klappt. Edit: Auf der zweiten Seite könnt ihr im Programm die Enummerations Features antesten -> Klicken von oben nach unten -> Start Enum beginnt die Enumeration -> Add bricks fügt alles in die Connection ein -> Show List zeigt in einen Gridview alle erkannten Bricks und CSV Zwischenablage kopiert die Daten in die Zwischenablage -> uids, Namen usw zum schnellen Posten von Informationen. Zitieren
AuronX Geschrieben June 15, 2012 at 20:04 Geschrieben June 15, 2012 at 20:04 Fehler 404: URL nicht gefunden Zitieren
The_Real_Black Geschrieben June 15, 2012 at 20:33 Geschrieben June 15, 2012 at 20:33 Fehler 404: URL nicht gefunden http://www.therealblack.net/TFUploads/TRB_Bot.7z Ich hatte das T im Link platt gemacht -> ausgebessert Sorry. Zitieren
AuronX Geschrieben June 16, 2012 at 07:47 Geschrieben June 16, 2012 at 07:47 Also DB scheint zu laufen ^^ Habe alles so gemacht und vorm beenden auch noch eine Frage gestellt: SELECT * FROM Bricks Die Antwort war "Nicht eins", wenn das bedeutet es gab keine Daten ist alles okay Mir ist nur nicht klar was ich durch den Klick auf "Default DB" getan habe (Code nicht angesehen ^^). Zitieren
The_Real_Black Geschrieben June 16, 2012 at 08:46 Geschrieben June 16, 2012 at 08:46 @AuronX: Default DB erstellt alle Tabellen wie ich sie im Bild gezeigt habe. (Über die muss ich aber nochmal nachdenken ^^) Ansonsten freut es mich, dass es geklappt hat, dann ist der nächste Schritt mal die Initial-Daten mit einzufügen und eine Automatische Inventarisierung zu ermöglichen. Projektverwaltung kommt dann auch bald. Und es wird neue Bilder geben ^^ soviel zu tun... Zitieren
AuronX Geschrieben June 16, 2012 at 10:44 Geschrieben June 16, 2012 at 10:44 Was mir grad noch nicht ganz klar ist: Hat das was mit deinem Roboter zu tun oder ist das ein Projekt das du parallel verfolgst? ^^ Weil das ja eher so nach "Brick-Management" aussieht... wahrscheinlich hab ich da irgendwo den entscheidenden Post mal überlesen Was mir grad noch einfällt: Falls dein Code irgendwann mal woanders als unter Windows laufen soll schau mal ob es deine Datenbank-Lib auch woanders gibt. Ansonsten gibt es ja noch sqlite, das sollte recht portabel sein und es gibt bestimmt auch gute .NET-Libs dafür (Dieser Absatz enthält quasi ausschließlich Vermutungen ^^) Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.