Mit dem PC externe Lampen steuern

Hallo!

Im Informatikunterricht sollen wir uns eine Projektarbeit ausdenken, die auf Programmierung und Steuerung aufbaut. Mir ist auch sofort was eingefallen. Doch leider weiß ich überhaupt nicht, wie ich das machen soll.

Hier mein Prinzip: An den PC sind (keine Ahnung in welcher Art und Weise) Lämpchen oder Leuchtdioden angeschlossen. Der Benutzer ruft nun ein Programm auf, mit dem er einzelne Lämpchen ein- und ausschalten kann.

Beim Herumstöbern im Internet hab ich was von „Interface-Steuerng“ u.ä. gelesen, dass man über den COM-Anschluss etwas steuern kann.

Was brauche ich für Bauteile, welche Programmiersprache eignet sich dazu, wo finde ich Information über die Befehle, den Aufbau der Schaltung …

Für hilfreiche Links, Hinweise und Tipps wäre ich wirklich sehr dankbar.

Danke für eure Hilfe,
Stefan.

Hi stefan!

Also ich kann dir zu deiner Frage wie folgt helfen.
Ich hatte bei meiner Matura Diplomarbeit die Aufgabenstellung Stromsicherungen zu überwachen, bzw. Spannungs- und Stromverläufe aufzuzeichnen und zu speichern. Das ganze dann am PC zu transferieren, wo dann „ein geschultes Auge“ Fehler an der Sicherung finden kann/soll/muss…
So aber ich will dich nciht mit meinen Taten langweilen,.
Also wie ich das sehe ist deine aufgabenstellung im prinzip die Selbe. Es kommt letztlich auf die Kommunikation zw. einem PC und einem anderen selbst gebauten Gerät an, welches dann irgendetwas tut.

Wir haben das Projekt zu 3 gemacht und hatten 1 1/2 Tage von fast einem gesamtem Schuljahr dafür Zeit (dafür musste es allerdings nachher wirklich 100% funktionieren und vorallem vollständig dokumentiert sein).

Also PC Seitig, haben wir eine Windows Applikation mit MS Visual C++ 6.0 geschrieben. (dazu kann ich leider nichts spezifisches sagen, da ich dies nicht realisiert hat, hat ein Kollege gemacht)

„ausserhalb“ des PC’s haben wir mit einem Mikrocontroller (C167 von Infineon) gearbeitet. Dieser hat die serielle Schnittstelle (RS232) schon implementiert und deshalb braucht man dabei nicht alles neu programmieren (man muss das Rad nicht immer neu erfinden)

Ich weiß nicht in welcher größenordnung, bzw. in welchen umfang sich dein projekt bewegt, aber ich glaube es ist die einfachste, sicherste und beste lösung, einfach ein PC Programm ( welchen compiler du verwendest ist letztlich nicht so wichtig, am einfachsten ist aus meiner sicht Delphi (ist wie PAscal, nur ein Win Prog. kommt raus)) schreibst, und einen kleinen Mikrocontroller dranhängst. Diese haben jede Menge Ein/Ausgänge, an denen du mit einem Transistor und einem Relai eigentlich alles dranhängen kannst was du willst (zb. auch eine Lampe).
Bei der Wahl des Mikrocontroller würd ich einen billigen nehmen, der nicht wesentlich mehr anschlüsse hat als du brauchst, aber wichtig: eine serielle Schnittstelle sollte er haben, denn sonst wirds kompliziert bzw. zu langwierig wenn du die RS232 Protokoll erst programmieren musst.
Für die meisten Mikrocontroller (ab jetzt schreib ich MC) gibts sog. „Entwicklungsboards“ da ist nur der Controller, eine ser. Schnittstelle, und halt ein paar einstellungsDipschalter, und halt sämtliche I/O Pins des MC’s.
achja, die meisten modernen MC’s sind schon voll in C programmierbar, also auch nichts wirklich unmögliches…

ich hoffe ich konnte dir zumindest mal in deinen allgemeinen überlegungen weiterhelfen, wenn du noch fragen hast oder so, poste es halt.

mfg martin

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo!

Im Informatikunterricht sollen wir uns eine Projektarbeit
ausdenken, die auf Programmierung und Steuerung aufbaut. Mir
ist auch sofort was eingefallen. Doch leider weiß ich
überhaupt nicht, wie ich das machen soll.

Hier mein Prinzip: An den PC sind (keine Ahnung in welcher Art
und Weise) Lämpchen oder Leuchtdioden angeschlossen. Der
Benutzer ruft nun ein Programm auf, mit dem er einzelne
Lämpchen ein- und ausschalten kann.

So was ähnliches habe ich hier gebaut, allerdings per Parallelport (einfacher anzusteuern, falls 8 Lampen reichen). Zur Not bekommt man da aber auch I2C „von Hand“ drüber, daher ist die Anzahl der Ausgänge nicht wirklich auf 8 begrenzt.

Beim Herumstöbern im Internet hab ich was von
„Interface-Steuerng“ u.ä. gelesen, dass man über den
COM-Anschluss etwas steuern kann.

COM ist dahingehend schlecht, das man da extern auf jeden Fall extern einen seriellen Controller braucht.

Was brauche ich für Bauteile, welche Programmiersprache eignet
sich dazu, wo finde ich Information über die Befehle, den
Aufbau der Schaltung …

per Parallelport: Low Current LEDs sollte man direkt mit entsprechendem Vorwiderstand dran hängen können. Da ich extern was anderes steuere, habe ich die Signale per Optokoppler ausgekoppelt und verstärke hinterher per Transistor, bevor die eigentliche anzusteuernde Schaltung kommt. Ggfs. ist die Frage nach der Hardware im „Elektronik“-Brett besser aufgehoben.
Ansteuern tue ich das Ganze unter Linux per Deamon (der ist in C programmiert), der per Netzwerk Befehle entgegen nimmt. Der direkte Portzugriff ist unter Linux unproblematisch.
Unter Windows NT/2k braucht man wohl spezielle Treiber, um direkt auf den Port zugreifen zu können, ansonsten sollte sich jede Programmiersprache eigenen, welche direkt auf Treiber oder Hardwarefunktionen zugreifen kann.
Evtl. ist es mit http://www.codemercs.com/IOWarriorD.html einfacher, den Chip habe ich hier noch rumliegen (kann man im Heise-Shop auch einzeln bestellen), habe ich aber mangels Zeit noch nicht verbaut. Da ist auf jeden Fall ein SDK mit ein paar Beispielen zur Ansteuerung dabei.

Alexander