welche Relaiskarte findet ihr besser und wie kann ich die programmieren?
lima-city → Forum → Sonstiges → Technik und Elektronik
artikel
basteln
bedienungsanleitung
bit
code
dank
frage
hinweis
http
karte
mache
output
paar
programm
programmieren
projekt
relais
schnittstelle
steuerelement
wetterdaten
-
war mir nicht sicher obs hier reichtig ist oder in programmieren, aber habs ersmtal hier rein getan, mit der hoffnung es ist richtig.
also nich böse sein, wenns falsch ist.
Hey Leute, ich habe etwas im conradshop gestöbert und 2 Relaiskarten gefunden die ich doch irgendwie interessanter finde als den ganzen kram selbst zu machen, vorallem diese fertigen karten haben 8 Relais und somit 8 steuermöglichkeiten und von daher ist das günstiger. aber nun ersmtal die beiden links danach kommen dann noch paar fragen:
http://www.conrad.de/goto.php?artikel=967720
http://www.conrad.de/goto.php?artikel=190989
Es gab zwar noch eine die über LPT gesteuert wird, doch da ja da mein drucker ist kann ich diesen anschluß nicht nutzen und da bleibt nur noch der Com Anschluß da der ja so erstmal nicht genutzt ist.
und nun meine frage, kann mir irgendjemand vernünftige Tutorials zeigen, wo ich für Qbasic die steuerung realiesieren kann? also es würde mir ein programm wie folgt etwa reichen nur für 8 relais bei diesen platinen:
http://www.franksteinberg.de/IMG/ERELPROG.GIF
also das war der Link dazu. also die frage ist, gibts für Qbasic schöne tutorials in deutsch weil mein englisch ist nicht wirklich brauchbar.
wenn nicht evtl für Delphi oder Virtualbasic? also habe mal mit qbasic angefangen vor ne langen weile und bin eigentlich auf v basic umgestiegen und habe etwas in delphi rein geschnuppert. aber da kommt die frage auf, in welcher programmiersprache der 3 würdet ihr es machen und wenn könnt ihr mir tutorials oder hilfestellungen bieten?
Und welche karte findet ihr empfehlenswerter und wieso?
Ich hoffe auf viele hilfreichen tips und hinweise die mir die entscheidung vereinfachen.
und am rande, steuern möchte ich keine riesigen lasten, eher kleine lämpchen, leds und co. also maximal 12 V.
Michael -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich würde C/C++ verwenden, da gibt es auch mehr Tutorials und Support.
Google ergab folgendes:
OPEN "COM1:9600,N,8,1,BIN" FOR OUTPUT AS #1
wobei "COM1" der Name des Ports ist
"9600" die Baud rate
"N" = parity
"8" = wordlength
"1" = stopbit
"BIN" = binärmodus
Mit
PRINT #1, "foo"
kann man dann an den Port senden
MFG
-
ich wollte nicht mit c++ ne neue sprache anfangen sondern bei den alten bleiben, weils einfacher ist.
Michael
-
Hallo,
ich kann aus eigener Erfahrung sprechen. Mit Visual Basic.NET geht das ganz simpel man hat ein Steuerelement für die Serielle Schnittstelle. Mit der Methode Write schreibt man die Daten. Den Rest kann man unter Einstellungen festlegen.
Wenn du nichts programmieren möchtest - öffne einfach Hyperterminal und gebe so die Relais ein, die geschaltet werden sollen.
MfG Sebastian
-
hey kannst du mir für dot net zufällig paar weitere hinweise geben? oder hast vielleicht ein art grund programm, wo ich mal sehe wie das aussieht? bzw kannst du mir eines mal machen? wäre super nett.
Michael -
Hallo,
in der Bedienungsanleitung steht ein Basic-Skript drin.
Ich habe folgendes Skript programmiert:
download.lima-city.de/sebastian-online/Relaiskarte.zip
Das funktioniert allerdings nur für einfache Karten mit Schieberegister.
Ich habe gerade gelesen , dass in diesen Karten ein Mikrocontroller ist und nicht ein billiges Schieberegister. Jetzt müsste man den Mic. noch initialisieren. Also Visual Studio öffnen und gegebenenfalls korrigieren.
Solltest Du noch keine Karte haben, kannst du natürlich auch ein 8-bit-Schieberegister, 8 Relais, 8Dioden 1N48??, einen MAX232, eine Stromversorgung(Festspannungsregler etc.),... holen und eine einfache Karte basteln. Dann würde mein Skript funktionieren, weil es nichts anderes als 8 Bits mit den Zuständen der Relais sendet.
MfG Sebastian
PS: Die Karten von Conrad sind so gemacht, dass man mehrere parallel schalten kann. Ich weiß nicht, ob Du das brauchst.
Beitrag geändert: 6.9.2008 15:42:56 von sebastian-online -
danke schon mal soweit. naja ich hab mir für den anfang so ein Teil gekauft. und zwar folgendes:
http://www.conrad.de/goto.php?artikel=190989
und ich habe ja zwei schnittstellen und das was ich mit dem fertigen karte mache, also nach dem ich die zusammen gelötet habe, werde ich sie mit der basissoftwar betreiben wo ich ein und ausschalten kann. das reicht ja.
und ich wollte aber nach und nach mir auch noch mal eine eigene relaiskarte basteln und die soll traditionell sein und da kann ich deine hilfe sicher anwenden. und mein projekt mit der eigenenkarte kommt auch bald.
danke aber noch mals.
Michael -
Nimm VB.NET.
Dort gibt es ein Steuerelement für die Serielle Schnttstelle.
Beispiel:
http://www.activevb.de/tutorials/tut_com/com.html
Brauchst du mehrere RS232-Schnittstellen, dann nimm einfach einen USB-RS232-Adapter(Ebay für unter 10 Euros). Funktioniert 1a mache ich auch so.
Ich lese darüber alle 3 Minuten Wetterdaten ein.
lg Mike -
wie klappt den das mit den wetterdaten? also wie macht das und naja soweit ich weiß hab ich 2 com anschlüsse am pc und beide frei, gut nach dem ich die Relaiskarte anbaue ist nur noch einer frei aber so reichts erstmal und relaiskarten kann ich ja an einander koppeln.
aber verrate doch mal wegen den wetterdaten.
Michael -
Also hier mal meine Umsetzung der Wetteraufzeichnung.
Ich habe alles von ELV gekauft.
PC-Wettersensor-Empfänger:
http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=6724
Spannungsversorgung 5 V, stabilisiert
Stromaufnahme ca. 20 mA
Empfangsfrequenz 433,92 MHz
Schnittstelle RS 232
Abmessungen 79 x 48 x 15 mm
In der Bedienungsanleitung steht das genaue Datenprotokoll drinnen.
Dazu habe ich diverse Wettersensoren mit 433,92 MHz gekauft und die Adressen unterschiedlich vergeben. http://www.elv.de/Sensoren/x.aspx/cid_74/detail_1/detail2_114
Den von ELV angebotenen Poolsensor z.B. habe ich umgebaut auf 433,92 MHz.
Nun zum Programmieren:
http://wetter.tdressler.net/wetter_projekte.html
Ich muss meinen Quellcode erst mal suchen...
Das Projekt läuft seit 12 Monaten Fehlerfrei, daher habe ich nix daran machen müssen.
-
hey was ist falsch hier? ich habe endlich was vernünftiges im I-Net gefunden und habe damit etwas rum gedoctort, doch es Tut nicht das was es soll. hier ist der Code mal:
Setzen
Private Sub Command23_Click() checksum = (255 - ((((13 + address + Asc("S") + Asc("1")) / 256) - Int((13 + address + Asc("S") + Asc("1")) / 256)) * 256)) + 1 messagestring = Chr$(13) & Chr$(address) & "S1" & Chr$(checksum) messagestring = messagestring & messagestring messagestring = messagestring & messagestring comm.Output = messagestring checksum = (255 - ((((13 + address + Asc("S") + Asc("2")) / 256) - Int((13 + address + Asc("S") + Asc("2")) / 256)) * 256)) + 1 messagestring = Chr$(13) & Chr$(address) & "S2" & Chr$(checksum) messagestring = messagestring & messagestring messagestring = messagestring & messagestring comm.Output = messagestring checksum = (255 - ((((13 + address + Asc("S") + Asc("3")) / 256) - Int((13 + address + Asc("S") + Asc("3")) / 256)) * 256)) + 1 messagestring = Chr$(13) & Chr$(address) & "S3" & Chr$(checksum) messagestring = messagestring & messagestring messagestring = messagestring & messagestring comm.Output = messagestring End Sub[/i]
Rücksetzen
Private Sub Command23_Click() checksum = (255 - ((((13 + address + Asc("C") + Asc("1")) / 256) - Int((13 + address + Asc("C") + Asc("1")) / 256)) * 256)) + 1 messagestring = Chr$(13) & Chr$(address) & "C1" & Chr$(checksum) messagestring = messagestring & messagestring messagestring = messagestring & messagestring comm.Output = messagestring checksum = (255 - ((((13 + address + Asc("C") + Asc("2")) / 256) - Int((13 + address + Asc("C") + Asc("2")) / 256)) * 256)) + 1 messagestring = Chr$(13) & Chr$(address) & "C2" & Chr$(checksum) messagestring = messagestring & messagestring messagestring = messagestring & messagestring comm.Output = messagestring checksum = (255 - ((((13 + address + Asc("C") + Asc("3")) / 256) - Int((13 + address + Asc("C") + Asc("3")) / 256)) * 256)) + 1 messagestring = Chr$(13) & Chr$(address) & "C3" & Chr$(checksum) messagestring = messagestring & messagestring messagestring = messagestring & messagestring comm.Output = messagestring End Sub
Vielleicht findet einer von euch den fehler. bzw sagt mir das geheimnis.
danke schon mal im vorraus
Michael
Beitrag geändert: 10.9.2008 21:32:27 von freewareecke -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage