PDA

Vollständige Version anzeigen : Programmierung


FinP
01.02.2011, 11:21
Hallo!

Weiter Offtopic kann man wahrscheinlich nicht gehen, aber ich würde mich über einen Anschubstipp von Insidern freuen.

Ich würde gerne ein Programm schreiben, weiß allerdings noch nicht in welcher Sprache - bzw auf welcher Basis. Ich habe in verschiedenen Sprachen Grundkenntnisse, hätte aber auch Lust, mich dafür aber auch in andere Sprachen einzuarbeiten.

Anforderung:
- das Programm muss hinterher auf einem Windows-Rechner stabil laufen (:Cheese: )
- das Programm soll Daten, die sekündlich an einem COM-Port angekommen, einlesen, die relevanten Rosinen herauspicken und verrechnen.
- die Ergebnisse sollen mit sekündlichem Update schick graphisch dargestellt werden und teilweise an den Com-Port zurückgegeben werden.
- ein Teil der Daten soll relativ zu anderen Daten in einer Art 2D-Plot dargestellt werden
- Es sollte eine Art Vektorechnung möglich sein.

In welche Programmiersprache arbeite ich mich idealerweise ein um das Projekt angehen zu können? Ist dies in Python umsetzbar?

3-rad
01.02.2011, 11:24
java
c
c++
c#


ausführlicher:
ich hab was ähnliches (nur ohne grafische Darstellung) am Laufen.
Ich schalte über die serielle verschiedene Relais (Licht, Wasserpumpe im Sommer, etc),
lese über irgendwelche Sensoren Temperatur, Wind, etc und stelle diese auf eine Webseite dar, bzw. schalte von dort.
Die Webseite habe ich in PHP/Perl (plus ein wenig html) entwickelt, die Schalterei und die Sensorik-Interfaces werden mit einem kleinen C-Programm gesteuert.

Java ist natürlich komfortabler.

chris.fall
01.02.2011, 11:39
Moin,

ich würde ja C++ empfehlen, allerdings weil ich in der Hauptsache
damit arbeite :cool:

Ernsthaft. Ich würde die Grafik und den Zugriff auf den COM-Port
nicht von Hand programmieren (zumal das beim COM-Port auch nicht
so ohne weiteres geht), sondern das mit Bibliotheken erledigen.

Guck einfach, ob Du für eine Programmiersprache leicht passende
Bibliotheken findest, und wie Du damit gut zurecht kommst. Sind
beide Bedingungen erfüllt, hast Du die Sprache Deiner Wahl.


Viele Grüße,

Christian

topre
01.02.2011, 11:39
Prinzipiell sind diese Anforderungen mit jeder Hochsprache möglich.
Also ob C++, Java oder eben VBnet (bzw. VB6)

Falls du nur Programmiergrundkenntnisse hast, dann empfehle ich dir VB, das ist meiner Meinung nach am leichtesten erlernbar. Aber vielleicht ist das auch nur subjektiv, da ich es am besten kann... :Lachen2:
Edit meint: Und wie Chris schon schreibt - das Rad nicht neu erfinden und Bibliotheken nutzen! Aber das geht eh auch überall...

Superpimpf
01.02.2011, 11:51
Ist dies in Python umsetzbar?

In python ist so ziemlich alles umsetzbar, und das mit sehr geringem Aufwand!

Es läuft nachher auf allen Systemen (und damit auch auf Windows) und du hast mit matplotlib eine super Bibliothek die dir alle Arbeiten beim Darstellen abnimmt.

Mit scipy (bzw. numpy) kannst du auch Vektor und Matrizenrechnung sehr effektiv erledigen (trotz, dass es eine Interpretersprache ist).

und mit PyQt kannst du problemlos deine eigene Anwendung schreiben.

Solange es nicht auf die letzte hundertstel Sekunde in der ausführungszeit ankommt (dann wäre woh oder übel Fortran die Wahl) und es kein Problem darstellt, das python auf dem jeweiligen Rechner installiert sein muss (da als kleiner Tip pythonxy - da hast du alles was du brauchst komplett mit einer Installation), würde ich in nichts anderem mehr programmieren

m2c

FinP
01.02.2011, 11:55
Danke Euch allen für die Hinweise.
Ich tendiere zu Python - es genügt eine sekündliches Update, das sollte Python schaffen. Häufiger kommen die Daten vom Com-Port eh nicht herein.
Es ist ein privates Projekt und soll nicht zur Marktreife getrieben werden (wer weiß - gibt es auf dem Markt schließlich nicht).

Wenn Ihr weitere Hinweise habt, immer gerne her damit.

chris_f
01.02.2011, 12:33
Ich habe vor kurzem was ähnliches mit C++ und QT gemacht, mit QT Creator (http://qt.nokia.com/downloads/). Ich war überrascht, wie einfach das ging...

FinP
01.02.2011, 12:34
Was hat das mit Nokia zu tun? Ich sehe das auf die Schnelle nicht.

3-rad
01.02.2011, 12:39
nichts.
du kannst es auch woanders runterladen.
z.B. hier: http://www.heise.de/software/download/qt_creator/63227

FinP
01.02.2011, 12:51
Das sieht auch sehr nett aus. Ich lade mir das mal runter und spiele ein wenig damit herum.

Dann sehe ich wohl recht schnell, ob es für meine zwecke geeignet ist.

Ein bißchen Sorge macht mir diese COM-Port Geschichte. Ich habe recht wenig Möglichkeiten die Dateneingänge zu simulieren. Und wenn ich die Datengeber angeschlossen habe, dann ist ein weiteres Programmieren sehr ungemütlich. :Cheese:
Aber das scheint das Programm ja auch zu können.

Superpimpf
01.02.2011, 13:01
Ein bißchen Sorge macht mir diese COM-Port Geschichte.

sollte mit PySerial auch kein Problem darstellen