Autor Beitrag
Hidden
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Sa 28.03.09 18:56 
Hi :wave: :wave:

Seit längerer Zeit spukt in meinem Kopf eine Idee herum, ein etwas größeres Projekt mit teilweise verknüpften Teilbereichen, von denen aber ein paar für sich recht schnell lauffähig wären. Zusammen kennen wir sicher auch ein wenig an bestehenden Komponenten und Code-Bibliotheken(Code-Editor, Quelltext-Parser, Physik-Engine, ..), da vieles etwas elementarerer Natur ist.

Da ich auch brav die Regeln dieser Sparte gelesen habe, laufe ich jetzt mal die Punkte ab:
  1. Projekttitel: Sandbox - ein Roboting Developement Tool. (zu diskutieren :))
  2. Projektbeschreibung inkl. Ziel des Projektes
    Sandbox ist ein Programm, das zunächst IDE(-> Programmierung), später Simulator(-> Test) und dann auch Download-Manager(-> Übertragen des Programms) zur Erstellung von Robotersoftware sein will.

    IDE
    Zunächst will ich mich auf die wohl verbreitetsten Roboter, RCX und NXT von Lego Mindstorms, konzentrieren. Erweiterungsvorschläge auf andere Systeme nehme ich aber gerne an :D

    Mir ist aufgefallen, dass Roboter bei fast allen Wettbewerben und komplexeren Aufgaben ein Programm benötigen, das Orts- und Fortschrittsinformationen in strikt getrennten Programmschleifen umsetzt. Auch das Auslagern von Programmteilen in getrennte Textdateien kann dem nur teilweise gerecht werden, da dies zu sehr vielen, teilweise 5-zeiligen, Dateien führt und damit alles andere als übersichtlich ist.

    Die Anzeige des Quelltextes wird deshalb auf Tabs mit Initialisierung, Konstanten, Methoden, Tasks, einer Phasenübersicht und dem Gesamtquelltext aufgeteilt. Das Programm kann mit einstellbarer Geschwindigkeit getestet werden, dabei kann der Sensorinput frei eingestellt werden.

    Simulator
    Geplant ist eine Umgebung mit getrennt gestaltbaren Karten für Hintergrundbild(-> Foto hereinladen), blockierenden Wänden, detektierbaren Farben sowie mehreren Skizzenebenen.

    Außerdem wird es Objekte geben, die der Natur nach alle Roboter sind. Eine Wippe demnach, oder eine Bodenwelle, könnte zusätzlich innerhalb ihrer Bewegungsmöglichkeiten ein beliebig komplexes Programm ausführen.

    Zunächst soll sich noch alles in 2D abspielen; durch Rechnung mit Vektorklassen aber leicht auf 3D erweiterbar.

    Programmdownload - für den RCX von Lego Mindstorms existiert bereits eine Komponente; die verbreitete IDE BricxCC ist mit Delphi geschrieben.

  3. Verwendete Sprache: Delphi/Object Pascal.

  4. Lizenz: Open Source oder frei verwendbar.


  5. voraussichtliche Projektdauer: IDE evtl. bis Sommer. Danach Neuorientierung bzgl. Dimension des Simulationsprogramms.

  6. ToDo-Liste:

    • IDE

      • Editor: Komponente verwenden? Zeilenmarkierungen für Breakpoints und Nummerierungen benötigt
      • Menüleiste und Toolbar
      • Konvertierbarkeit zu bestehender Software(BricxCC, Robolab, NQC-Software).
        :arrow: alpha-Version, Phasenbasierte Codeansicht verwendbar.

      • Parser und variable Code-Bibliothek
        :arrow: Elemente der Sprache und Operatoren per Formular hinzufügbar
        :arrow: Color-Highlighting entsprechend wählbar für Oberklassen wie Operator, Zahl, .., denen die Sprachelemente zugeordnet werden müssen.
        :arrow: Datei-Format für Code-Bibliothek und zugeordnetes Highlighting
      • Code-Bibliotheken vorbereiten: BricxCC, Pascal, ..
      • Parser-Erweiterung zur Ausführung des Programms
      • Programmtest-Umgebung mit Breakpoints, Step, Run, etc.

    • Simulator

      • grundlegende Objektlogik
      • Design-Umgebung für Objekte und Terrain/Labyrinth(der logik nach auch ein Objekt, kann in ein größeres Labyrinth als Objekt eingefügt werden)
      • Testumgebung zum Programmenwurf



  7. zeitlicher Ablauf: Reihenfolge wie in ToDo-Liste gruppiert. Erster Teil auf jeden Fall in mittlerer Zeit realisierbar. Arbeitsaufwand und Zulauf für Code-Ausführung und Robotersimulation vorerst schwer abschätzbar.

  8. benötigte Fähigkeiten der Team-Mitglieder:
    Aufgaben sehr vielseitig, vermutlich für jeden etwas dabei ;)

  9. sinnvolle Teamgröße:
    Genug Teilgebiete haben wir ja :) Wie viel wir umsetzen, müssen wir dann sehen. Insofern können wir glaube ich mit einem kleineren Team effizient arbeiten und hätten trotzdem schnell Erfolge. Nach oben würde ich dann aber erstmal keine Grenze setzen.

  10. Organisation innerhalb des Teams (Prozess der Entscheidungsfindung):
    U. A. Skype, TeamViewer, TeamSpeak, EE und ICQ möglich.

So, dann hoffe ich mal auf rege Beteiligung. Sofern sich jetzt hier nicht die Rückmeldungen häufen, auch gerne das ein oder andere "vielleicht".

Im Anhang habe ich mal zur besseren Vorstellung das hochgeladen, was ich bislang entworfen habe.

Hier ein paar Fälle, bei denen eine phasenbasierte Programmierung sinnvoll wäre:
mfG,
Einloggen, um Attachments anzusehen!
_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)


Zuletzt bearbeitet von Hidden am Mo 07.06.10 20:10, insgesamt 5-mal bearbeitet
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: So 29.03.09 17:04 
Für die Ansteuerung des NXT könnte ich unter Umständen meine NXT-Delphi-Lib zur Verfügung stellen, wenigstens in Form einer DLL.

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)

Für diesen Beitrag haben gedankt: Hidden
Hidden Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Do 02.04.09 18:48 
*push*

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
Webo
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 577
Erhaltene Danke: 14

Win 7, Debian
C# (Visual Studio 2013), PHP, C, C++ (Eclipse, KDevelop)
BeitragVerfasst: Do 02.04.09 20:30 
Das Projekt hört sich richtig cool an, habe selbst noch einen Lego Mindstorms Roboter hier stehen. Morgen werd ich mir das ganze nochmal genauer anschauen ...

_________________
Man kann nur das aus dem Ärmel schütteln, was man auch vorher reingesteckt hat.
der organist
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 467
Erhaltene Danke: 17

WIN 7
NQC, Basic, Delphi 2010
BeitragVerfasst: Mo 06.04.09 07:42 
Lieber Hidden,

ich denke, dass es da eine ganze Reihe von Interessierten (mich eingeschlossen) gibt. Main Problem dabei ist nur, die ToDo-Liste beschreibt zwar was gemacht werden muss, aber ich hab absolut keine Ahnung, wie ich einzelne Dinge davon anstellen soll. Soll heissen, das ich mich in dem Gebiet (wie auch vielen anderen bei Delphi) einfach als Anfänger beschreiben muss....
Wenn du noch hinzufügen könntest, welche Komponenten du da verwenden willst, etc, wie das Programm grundsätzlich aussehen soll, das würde einiges helfen.

_________________
»Gedanken sind mächtiger als Waffen. Wir erlauben es unseren Bürgern nicht, Waffen zu führen - warum sollten wir es ihnen erlauben, selbständig zu denken?« Josef Stalin
fireworker
ontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 28



BeitragVerfasst: Di 21.04.09 19:56 
Hallo Leute,

Aus reinem Interesse und um die Übersicht zu bewahren, wollte ich allgemein mal fragen:
a) Wie viele haben Interesse an diesem Projekt, bzw. macht mit?
b) Gibt es schon weitere Fortschritte?

mfG

_________________
Statistik ist die mathematische Form der Lüge.
Hidden Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Di 21.04.09 20:39 
Hi :)

Sry, dass ich auf Lukas' Beitrag nicht sofort reagiert habe, aber ich hatte erst einmal anderes zu erledigen :)

user profile iconder organist hat folgendes geschrieben Zum zitierten Posting springen:
Wenn du noch hinzufügen könntest, welche Komponenten du da verwenden willst, etc, wie das Programm grundsätzlich aussehen soll, das würde einiges helfen.
Tja, mal abgesehen von den ganz grundlegenden Komponenten wie TRichEdit(die du ja per Skype angesprochen hattest): Es existieren sicherlich bereits Komponenten für einen Editor mit Zeilenmarkierungen und der Möglichkeit, Icons oder Zeilenmarkierungen(wie in Delphi z.B. für Breakpoints) zu setzen.

Die andere Sache wäre ein möglichst flexibler Quelltext-Parser(Lesekopf-Programm, das die Eingaben interpretiert und in Machinensprache umsetzt). Dort werde ich mich einmal umsehen und, wenn ich nichts nach meinem Geschmack finde, mal ein erstes Konzept entwickeln.

Zum Aussehen: Ein erstes Layout befindet sich ja oben im Screenshot, oder was willst du genau wissen? ;)

mfG,

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)


Zuletzt bearbeitet von Hidden am Fr 24.04.09 19:25, insgesamt 1-mal bearbeitet
j.klugmann
Ehemaliges Mitglied
Erhaltene Danke: 2



BeitragVerfasst: Mi 22.04.09 18:20 
Moin!

Ich würde mich gerne bewerben um einen Teamplatz.Vor einem Jahr , habe ich auch daren gedacht sowas in der Art zu schreiben , aber irgendwie kam etwas dazwischen und ich habs dann dochnicht gemacht.Beim Simulator könnte ich mit DirectX9 aushelfen um die Umgebung anschaulicher zu gestalten.



€:Habe die Mindestanforderungen grade erst gesehen. ;)

MfG , j.klugmann
j.klugmann
Ehemaliges Mitglied
Erhaltene Danke: 2



BeitragVerfasst: Fr 24.04.09 18:38 
Gibts irgendwann auchmal eine Meldung von Hidden? ;)
Hidden Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Fr 24.04.09 19:48 
user profile iconj.klugmann hat folgendes geschrieben Zum zitierten Posting springen:
Gibts irgendwann auchmal eine Meldung von Hidden? ;)
Na kar, pünktlich zum Wochenende :D
Wir würden uns selbstverständlich freuen, dich dabei zu haben :welcome:

Alles weiter mache ich mal gerade per PN: Ich weiß nicht, was davon das Team genau in dieser Sparte sehen will :)

mfG,

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
freak4fun
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 604
Erhaltene Danke: 4

Win 7 Pro
VS 2013 Express, Delphi, C#, PHP, Java
BeitragVerfasst: Fr 24.04.09 22:21 
Hi,
also um ehrlich zu sein, habe ich den Sinn des Projektes noch nicht ganz erfassen können. Kann das vieleicht noch mal einer erklären?

Ich verstehe das so: NXT mit Delphi programmieren. :)

Wir programmieren zur Zeit den NXT mit Java / leJOS. ;)

_________________
"Ich werde auf GAR KEINEN Fall…!" - "Keks?" - "Okay, ich tu's."
i++; // zaehler i um 1 erhoehen
Hidden Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Fr 24.04.09 22:46 
Hi :)

Grundlegend gibt es da zwei Ziele, die so noch nicht von anderen Programmen umgesetzt wurden :)

Zum einen die Kompatiblität zwischen den gängigen Sprachen: NQC- oder Java-Quelltext lässt sich bisher nur schwer in die graphisch ausgelegten Sprachen portieren. Das sollte jetzt quasi mit einem Knopfdruck gehen. Kompliziertere Konstrukte wie manche Klassen müssten aber nach wie vor von Hand übersetzt werden.

Außerdem ein Programmtest ohne Übertragung auf den Roboter. Damit fällt auch das Problem weg, dass ein Labyrinth normalerweise etwas längere Bauzeit und größeren Aufwand hat. Es ist also möglich, "mal eben" ein neues Labyrinth zu erstellen oder auch den Bau eines Labyrinths im Voraus zu planen.

mfG,

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
Mitmischer 1703
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 754
Erhaltene Danke: 19

Win 7, Debian
Delphi Prism, Delphi 7, RAD Studio 2009 Academic, C#, C++, Java, HTML, PHP
BeitragVerfasst: Sa 25.04.09 09:27 
Ich würde auch gerne mitmachen :)

Ich denke nicht, dass ich sooo gut programmieren kann, aber die Grundlagen habe ich (und arbeite mich grad an Indy heran=))

MfG,

Mitmischer 1703

_________________
Die Lösung ist nicht siebzehn.
j.klugmann
Ehemaliges Mitglied
Erhaltene Danke: 2



BeitragVerfasst: Sa 25.04.09 10:53 
Ich wusste das der Mitmischer mitmischt.Also ich würde mich über Verstärkung freuen.Die Entscheidung liegt bei Hidden. ;)
Hidden Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Sa 25.04.09 11:00 
Hi :welcome:

Musste gerade mal auf Safari umsteigen^^ sobald der FF aufhört, vom aktivieren der neuen Add-Ons zu laggen, bekommst du auch deine PN :)

mfG,

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)
Mitmischer 1703
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 754
Erhaltene Danke: 19

Win 7, Debian
Delphi Prism, Delphi 7, RAD Studio 2009 Academic, C#, C++, Java, HTML, PHP
BeitragVerfasst: Sa 25.04.09 12:09 
Starte doch mal abgesichert ;)

_________________
Die Lösung ist nicht siebzehn.