H0Slot
Softwareentwicklung - Druckversion

+- H0Slot (https://www.h0slot.eu)
+-- Forum: Plauderecke (https://www.h0slot.eu/forumdisplay.php?fid=3)
+--- Forum: Stammtisch (https://www.h0slot.eu/forumdisplay.php?fid=12)
+--- Thema: Softwareentwicklung (/showthread.php?tid=3985)



Softwareentwicklung - gliep - 08-03-2006

Hallo,



wer von Euch hat Software zur Zeitmessung bzw. einen Rundenzähler selbst geschrieben?

Nachdem ich einen Teil der Software von meiner Liste ausprobiert hatte, bin ich zu dem Entschluss gekommen, doch mal selber eine Software zu schrieben. Eigentlich nur so als Machbarkeitsstudie.



Da mein Windows PC nur über einen seriellen Port verfügt und nicht über einen Parallel- oder Gameport war klar, dass ich über diesen Anschluss die Signale empfangen wollte. Ausgelöst werden die Signale durch die Faller Impulsschiene.



Als Entwicklungumgebung habe ich mich für Mircosoft Visual Studio Express entschieden, da die Software kostenlos zur Verfügung steht. Eigentlich wollte ich in „C++“ entwickeln (Mit „C#“ habe ich mich noch nicht beschäftigt). Dann fiel mein Blick aber doch auf „Visual Basic“. Die Einfachheit, wie man hier die serielle Schnittstelle einbinden kann hat mich überrascht. Also habe ich mit „Visual Basic“ weiterentwickelt. Wobei das Erstellen der Software ja mehr Klicken als Programmieren ist.



Nun ist ja „Visual Basic“ nicht gerade besonders performant. Trotzdem bin ich mit den ersten Ergebnissen soweit zufrieden. Die Signale werden zuverlässig registriert, keine Fehlzählungen. Das die Software nicht auf tausendstel Sekunden genau misst, ist mir bewusst und nehme ich in Kauf. Ich vermute selbst auf hundertstel Sekunden wird es Ungenauigkeiten geben. (Was aber auch daraus resultiert weil noch andere Prozesse auf dem Rechner aktiv sind)



Dafür habe ich eine Software die ich meinen Bedürfnissen ausrichten kann. Akustische Signale sind eingebaut für schnellste Runde und Rennende. Auch eine Startampel ist bereits implementiert. Als nächster Schritt folgt ein Datenbankanbindung für Fahrer und Fahrzeuge, das Speichern von Rekorden und ein Wechsel der Spuren.



Mich würde mal interessieren, wie andere Ihre Software für die Zeitmessung geschrieben haben. In welcher Sprache, mit welchen Tools.



Viele Grüße



Stefan


Softwareentwicklung - ebi - 08-03-2006

Hallo Stefan,





sorry, ich hab bei meinem Atari mal angefangen zu programmieren... und das is

lange her und längst vergessen. Ich kann Dir da also nix zu sagen.



Trotzdem bin ich aber neugierig zu sehen, was Du programmiert hast. [Bild: hi.gif]



Stell doch mal screenshots rein... wenigstens zum "look and feel" kann man so

schon mal was äußern.





Gruß, Ebi


Softwareentwicklung - Ralf - 08-03-2006

Hallo,



ich hab mir mit einem ATMEL AVR Microcontroller eine Zeitmessung für

zwei Spuren selbst gebaut. Ursprünglich für Crazysloters (Stefan) Dragsterstrecke

geplant ist damit jetzt ein vollwertiger Ersatz für den alten Faller Rundenzähler

inclusive 1msec Auflösung geworden. Wenn ich mal etwas mehr Zeit hab

stell ich das gerne hier mal vor.



Auf chrispis (Christians) betreiben hin wird der jetzt noch erweitert und schickt

dann zu jeder Runde Daten per Serieller Schnittstelle im Ascii Format an den

PC. Dort kann dann eine beliebige Terminalapplication bzw. was selbstentwickeltes

die Daten weiter auswerten. Das ist dann auch schön Plattformunabhängig (Linux rulez [Bild: ninja.gif] )

und kann auch ohne PC nur zum kurz spielen verwendet werden. ...



Ein moderner PC mit Multitasking Betriebsystem ist nicht in der Lage das ohne

Zusatzhardware mit der Auflösung (siehe slotman mit Racecontrol) vernünftig zu Handhaben.



Viele Grüße

Ralf


Softwareentwicklung - Daniel - 08-03-2006

OK, Terminalprogramm ist ja ganz nett, und C klingt auch ganz gut.



Jetzt brauchen wir unter Windows noch eine OCX, um die Daten noch irgendwo hinzuschaufeln.

Gibt es kommerziell und auch kostenlos.



Nehmen wir mal die kostenlose Variante: [url="http://ourworld.compuserve.com/homepages/richard_grier/xmcomm.htm"][url="http://ourworld.compuserve.com/homepages/r...rier/xmcomm.htm"]<a href="http://ourworld.compuserve.com/homepages/r...rier/xmcomm.htm" target="_blank">http://ourworld.compuserve.com/homepages/r...rier/xmcomm.htm[/url][/url]</a>



Die edle Firma Microsoft hat auch eine OCX, die findet sich hier:

[url="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/comm98/html/vbobjcomm.asp"][url="http://msdn.microsoft.com/library/default....l/vbobjcomm.asp"]<a href="http://msdn.microsoft.com/library/default....l/vbobjcomm.asp" target="_blank">http://msdn.microsoft.com/library/default....l/vbobjcomm.asp[/url][/url]</a>



Jetzt sind wir mal professionell und schaufeln über die OCX die Daten direkt in einen SQL-Server. Müsste über die MS OCX funktionieren. Wenn nicht direkt, dann über eine kleine VB-Applikation.



*Platsch* Daten drin.



Jetzt brauchen wir ein Tool, was mit relativ einfachem Aufwand diese Daten visualisiert und eine Fahrerdatenbank mit sich bringt. Da auf die Laufzeit des Programmes keine Rücksicht genommen werden muß, nehmen wir ein Standard-Tool, nämlich den Logik Produktkonfigurator. Den gibt es hier, kostet leider viel zu viel dafür, aber wäre eine Idee, um schnell die Daten zu handeln: [url="http://www.logik-gmbh.de/"][url="http://www.logik-gmbh.de/"]<a href="http://www.logik-gmbh.de/" target="_blank">http://www.logik-gmbh.de/[/url][/url]</a>

Preise stehen nicht dabei, Logik hat sich auf flexible Oberflächen für ERP / PPS System spezialisiert.



C geht auch, kenne ich mich aber wenig bis garnicht mit aus. Der Logik Produktkonfigurator ist ein, tja, visuelles Tool, um seine Applikation selber zusammenzuschreiben (Zusammenklicken, Zusammenziehen). Mit dem arbeite ich zur Zeit täglich, um die Kalkulationstools für unser ERP-System zu entwickeln.



Masken können frei gestaltet werden und die Datenbanktabellen könnte man z.B. auf SQL aufsetzen.

Änderungen können unheimlich schnell selber vorgenommen werden.

Ferner bringt das Dingen eine Excel-Schnittstelle mit, um direkt die Ergebnisse nach Excel auszugeben.



OK, Schnapsidee, der Logik PK ist zu teuer und eigentlich nicht für solche Zwecke vorgesehen. Aber Ihr habt mich auf eine Idee gebracht, die tatsächlich umsetzbar wäre. Der Zeitaufwand wäre überschaubar, da eine solche Anwendung (Sobald die Daten im SQL-Server liegen) innerhalb kürzester Zeit zusammengeklickt wäre.



Müsste man mal probieren. Wäre nett, wenn Ralf dann mitteilt, wann seine Elektronik in der Lage ist, eine serielle Schnittstelle mit Daten zu versorgen. Aber bitte nicht verschlüsseln wie bei Racecontrol. <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/biggrin.png' class='bbc_emoticon' alt='Big Grin' />



Zugegeben: SQL-Server ist overkill, aber witzig.





Viele Grüsse

Grogi



P.s.: Wäre natürlich nett, wenn man in einer Anwendung auch noch direkt die .dll von Racecontrol einbauen könnte


Softwareentwicklung - JOGO - 08-03-2006

Hallo Grogi!



Ich kann hier irgenwo meine Zeitnehmung reinstellen, ev. zum downloaden.

Details kann ich Dir dazu nicht liefern, Sie wurde aber entsprechend meinen Wünschen gestaltet.

Die Software ist für 4 Spuren geeignet und wird demnächst auch USB verstehen.

Wers will, bitte via PN melden. Kostet nix, ist aber hoffentlich nicht umsonst <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/blink.png' class='bbc_emoticon' alt=':blink:' />.

JOGO


Softwareentwicklung - mos - 08-03-2006

[quote name='gliep' post='7898' date='08.03.2006 - 12:47']...Mich würde mal interessieren, wie andere Ihre Software für die Zeitmessung geschrieben haben. In welcher Sprache, mit welchen Tools.[/quote]Hallo Stefan,



ich hatte vor einiger Zeit mal ein OpenSource-Projekt im DSCF angefangen. Da hatten sich auch ein paar mutige zum Mitmachen gemeldet. Leider ist da nix draus geworden, da die Ansprüche doch zu unterschiedlich waren.



Das Projekt ist für mich noch nicht gestorben. Ich warte eigentlich nur noch auf den Moment - diesmal mit klareren Voraussetzungen, einen neuen Anlauf zu wagen.



Die erste grobe Planung kannst du bei [url="http://sourceforge.net"]Sourceforge - SpeedwayControl[/url] (und dann oben rechts nach "SpeedwayControl" suchen) nachlesen. (Der direkte Einstieg [url="http://sourceforge.net/projects/speedwaycontrol"]SpeedwayControl[/url] funktioniert momentan leider nicht.)



Falls du, oder andere Interesse haben mitzumachen, meldet euch schon mal dort an. Da können wir die Infrastruktur nutzen.



Interessant sind nicht nur Leute, die programmieren können, sondern auch solche, die Anforderungen vernünftig formulieren können, Grafik-Designer, ... Eigentlich alle, die gute Ideen haben und im Team arbeiten wollen.



Falls das ganze interessant ist, kann ich die Voraussetzungen näher erläutern.



ciao

michael o.



P.S.

Die Site ist übrigens auch für Schnäppchenjäger interessant, da dort viele OpenSource-Anwendungen zu finden sind <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />


Softwareentwicklung - Ralf - 13-03-2006

Hallo,



da die ASCII Ausgabe meiner Zeitmessung bisher

nur Im Kopf exisitiert, bin ich da noch recht frei.



Ich möchte halt ein offenes Protokoll und ASCII basiert

ist da einfach nett, da man auf der PC Seite sehr

einfach was dazu programmieren kann.



Ich dachte da an sowas wie das csv format z.b.:

Spur1;999;12.543;Spur2;988;11.234



oder so ähnlich.



Viele Grüße

Ralf

@mos mit sourgeforge muss ich mich erst mal

beschäftigen, wenn ich etwas mehr Zeit hab....


Softwareentwicklung - woehrsee - 13-03-2006

Hallo

nach längerer Abwesenheit bin ich wieder einmal Online und hab den Beitrag gelesen!



Wir (Erwin) haben und vor längere Zeit eine Software geschrieben. Zu den technischen Details kann ich leider nicht sehr viel sagen da ich im programmieren eine NUll bin. Was ich weis, das Ganze wurde mit Delfi (und geeigneter Software) geschrieben. Das Programm läuft für unsere Zweckes sehr zu verlässig auf XP! Es ist mittlerweile für den 4-spurigen Betrieb ausgelegt, wobei auch bei jeder Spur tanken möglich ist. Als Schnittstelle wurde der Drucker-port verwendet, wie beim alten Slotmann. Bei port hat unser lieber Erwin ein paar Ausgänge auf Eingang "umgeschalten" da es für 4 Spuren +Tanken sonst zu wenig wären. Das geht allerdings nicht bei jedem Rechner. Soweit ich ihn verstanden hab, funktioniertes auch wenn man eine zusätzliche oder größere "Karte"einbaut. Aber sollte jemand von euch genauere Detail wissen wollen, läßt sich das noch hinterfragen! Das Programm ist frei konfigurierbar. Wie Renndauer, Tankzeiten, Tankinhalt, Strafzeiten, Sounds, Rennen auf Distanz, Punktevergabe, 0-24 Stunderennen mit Pausen für "Fahrerwechsel",....Bilder der Fahrer oder Autos können auch geladen werden, Clubrennen, Meisterschaft, Training. Wird eine Runde nicht gezählt, so kann wären des Rennens von "Rennleiter" eine dazugezählt werden. Beim Spritverbrauch ist es so, je schneller desto mehr Sprit wird verbraucht.

Für die Zeitauslösung verwenden wir Reedkontakte, so auch für das Tanken. Bei unsere Neuen Bahn (leider immer noch nicht ganz fertig) kommt noch eine zusätzliche Hardware zum Einsatz, sie wird zwischen Port und Reedkontakte gesetzt und soll vermeiden, dass bei 4 Spuren eine Zeit nicht erfaßt wird. Bei 2 Spuren hatten wir da nie Probleme, bei 4 Spuren "könnte" das passieren. Das Teil ist nicht groß und von den Materialkosten her verschwindend gering. www.cotlod.net. Ich weis dass mein "Ausführungen" zu den technischen Detail nicht sehr brauchbar sind. Aber es läst sich alles noch hinterfragen. Grüße Reinhard


Softwareentwicklung - mos - 13-03-2006

[quote name='Ralf' post='7983' date='13.03.2006 - 10:22']... Ich möchte halt ein offenes Protokoll und ASCII basiert ist da einfach nett, da man auf der PC Seite sehr einfach was dazu programmieren kann.



Ich dachte da an sowas wie das csv format z.b.: Spur1;999;12.543;Spur2;988;11.234

...

@mos mit sourgeforge muss ich mich erst mal beschäftigen, wenn ich etwas mehr Zeit hab....[/quote]Hallo Ralf,



ja, super. Die ASCII-Ausgabe passt!



Was hältst du von: "Box=1, Sensor=2, timestamp=12543" - ähnlich RaceControl?



Das läßt eine unbegrenzte Anzahl von Sensoren für verschiedene Messstellen zu. Die Rundenzahl würde ich auch weglassen. Die Zuordnung der Sensoren wird dann per Programm gemacht ...



Wann gibt es den AVR mit USB- statt RS232-Schnittstelle?



Sourceforge ist anfangs in der Tat ein bisschen hakelig, es lohnt sich aber auf jeden Fall. Wenn du Hilfe brauchs, gib Bescheid.



ciao

michael o.


Softwareentwicklung - Ralf - 13-03-2006

[quote name='mos' post='8000' date='13.03.2006 - 19:58']Hallo Ralf,



ja, super. Die ASCII-Ausgabe passt!



Was hältst du von: "Box=1, Sensor=2, timestamp=12543" - ähnlich RaceControl?[/quote]



Ich dachte Racecontrol wäre veschluesselt?



[...]

Zitat:Wann gibt es den AVR mit USB- statt RS232-Schnittstelle?
RS232 gibts ja auch nicht, muss noch ein Pegelwandler dazwischen,

aber die meisten PC kommen mittlerweile auch mit 0-5V zurecht.

AVR mit USB gibts zumindest schon ein Datenblatt, USB Software

implementierung gibts als Applicationnote.



TJa Atmel muss wieder Geld verdienen [Bild: ninja.gif] damit mein

Arbeitsplatz gesichert ist <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/biggrin.png' class='bbc_emoticon' alt='Big Grin' />



Zitat:Sourceforge ist anfangs in der Tat ein bisschen hakelig, es lohnt sich aber auf jeden Fall. Wenn du Hilfe brauchs, gib Bescheid.



ciao

michael o.



Bei Gelegenheit. ...

Viele Grüße

Ralf


Softwareentwicklung - mos - 13-03-2006

[quote name='Ralf' post='8001' date='13.03.2006 - 20:20']Ich dachte Racecontrol wäre veschluesselt?[/quote]Hallo Ralf,



das Protokoll leider schon, was mir eine eine seltsame Geschäftspolitik scheint. Ich meinte die DLL, die es naturgemäß nur für Windows gibt.



ciao

michael o.


Softwareentwicklung - gliep - 01-04-2006

Hallo,



[quote name='ebi' post='7899' date='08.03.2006 - 14:40']Trotzdem bin ich aber neugierig zu sehen, was Du programmiert hast. [Bild: hi.gif][/quote]



ich bin mit meinem Programm ein gutes Stück weiter gekommen, so dass ich gerne ein paar Bilder hier einstelle. Doch vorweg ein paar Worte: Die Software ist von mir für mich alleine geschrieben. Sie entspricht meinen Bedürfnissen und Wünschen. Man könnte aber noch viel daran erweitern und verbessern.



Ich möchte mit diesem Eintrag anderen Leuten Mut machen, sich einfach mal selber daran zu versuchen eine Software für Rennbahnzeitmessung zu schreiben, und sei sie auch noch so unperfekt wie meine. Es macht viel Spaß.



Die Größe vom Fenster und der Schrift habe ich bewusst so gewählt, weil ich noch einen kleinen Monitor von meiner PlayStation habe. Den kann man dann am PC anschließen und an die Bahn stellen. Die Anwendug selber besteht aus mehreren Seiten die über Reiter erreicht werden können. Theoretisch kann man während des Rennen auch noch die Reiter wechseln und sich so z.B. die Rekorde ansehen.



[attachment=943:attachment]



Dieser Bildschrim zeigt das laufende Rennen an. Die Runden werden runtergezählt und die gefahrene Rundenzeit angezeigt. Nach jeder Messung wird die Gesamtzeit aktualisiert und ggf. die Zeit für die beste Runde. Bei einem neuen Rundenrekord (bezogen auf das Rennen) gibt es ein akustisches Signal.



Gestartet wird das Rennen durch Klick auf die Zielflagge Ja, ist etwas unlogisch <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/smile.png' class='bbc_emoticon' alt='Smile' /> . Will man das Rennen abbrechen und neu starten drückt man einfach erneut darauf. Wichtig war mir eine kleine Startampel und auch ein Startschluss ist zu hören.



[attachment=944:attachment]



Hier das Rennergebnis. Ich fand ganz Interessant anzuzeigen mit wieviel Vorsprung man gewonnen hat, also werden diese Informationen angezeigt. Wurde ein neuer Bahnrekord erfahren, so weist ein Infotext darauf hin.



[attachment=945:attachment]



Die Renneinstellungen sind (noch) sehr mager. Auf eine Verwaltung der Fahrer, Fahrzeuge und Rennbahnen habe ich zunächst verzichtet. Das kommt in Version 2.0 (wenn es die irgendwann mal geben sollte) Auch ein Zeitrennen habe ich nicht implementiert. Da aber meine Strecke keinen Spurausgleich hat, war mir eine Funktion wichtig, die den Sieger erst dann ermittelt, wenn jeder ein mal die eingegebene Rundenzahl auf beiden Spuren gefahren ist. Die beiden Zeiten werden summiert und der Gewinner ermittelt.



[attachment=946:attachment]



Rekorde finde ich ganz wichtig. Gerade wenn ich alleine spiele kann ich so versuchen meine alten Rekorde zu schlagen. Wobei nur bei einem 20 oder 50 Runden dauernden Rennen ein Eintrag erfolgt. Eigentlich wollte ich eine Rekordliste pro Wagentyp implementiern, was ja auch Sinn macht, aber auch das kommt erst in Verion 2.0.



[attachment=947:attachment]



Unter Einstellung findet man das was man erwartet: Um Fehlzeiten zu vermeiden, wird eine angegebene Anzahl von Sekunden Messungen ignoriert. Die Startampel und die akustischen Signale können ausgeschaltet werden. Zudem kann das Rennen beendet werden, wenn der erste Fahrer im Ziel ist. Wenn ich also alleine fahre, brauche ich nicht mit dem zweiten Wagen auch noch die Runden fahren, bis ich das Rennergbnis sehe.



Soweit mein kleiner Rundflug über meine Software die ich RaceTime getauft habe. Übrigens gibt es keinen Fehlstart bei mir. Wer zu früh startet hat Pech und die erste Runde wird nicht gewertet, da erst mit Grün die Signale ausgewertet werden.



Die Messung erfolgt über die Faller Implusschiene, die ich per selbstgebauten Kabel an den seriellen Port angeschlossen habe. (Ich habe am PC keinen Druckeranschluss)



Viele Grüße



Stefan


Softwareentwicklung - JOGO - 01-04-2006

Ich habe hier einmal 2 Screenshots meiner Software eingestellt.


Softwareentwicklung - Martin - 02-04-2006

Hallo Stefan [Bild: hi.gif],



klein, einfach, übersichtlich. Sieht gut aus was du da programmiert hast. Da steckt noch Potenzial drin, sollte man im Auge behalten.

Was lange (oder kurz) währt, wird eigentlich gut.



@Jogo

2 Screenshots <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/huh.png' class='bbc_emoticon' alt='Huh' />, wo denn?



Gruß Martin


Softwareentwicklung - mos - 02-04-2006

[quote name='gliep' post='8416' date='01.04.2006 - 22:27']ich bin mit meinem Programm ein gutes Stück weiter gekommen, so dass ich gerne ein paar Bilder hier einstelle. Doch vorweg ein paar Worte: Die Software ist von mir für mich alleine geschrieben. Sie entspricht meinen Bedürfnissen und Wünschen. Man könnte aber noch viel daran erweitern und verbessern ...[/quote]Hallo Stefan,



klein, aber fein <img src='http://www.h0slot.de/public/style_emoticons/<#EMO_DIR#>/biggrin.png' class='bbc_emoticon' alt='Big Grin' />



Find ich klug, sich auf die wesentlichen und bekannten Anforderungen zu beschränken und dann zu wachsen. Hat was von eXtreme Programming (auch XP) an sich [Bild: secret.gif].



ciao

michael o.