Hi Ich habe da mal was gebaut: http://mitglied.lycos.de/madmax3333/ Ich hoffe das einer sowas auch gebrauchen kann ;-)
Sieht echt klasse aus! Alle Achtung. Wie ist das mit der Software, wenn ich irgendwo bin, brauche ich da eine eigene Software oder geht das über den Browser? Armin
Hallo Madmax, schönes Projekt! Wunsch1: Schenkst Du uns auch noch die Software für Server und Client? Dafür sind leider noch keine Links vorhanden. Wunsch2: wäre eine Webseite, die auf dem Server läuft, und dann weltweit aufgerufen werden kann ohne erst die Clientsoftware installieren zu müssen. Dann wäre es perfekt. Viele Grüsse, LötNix
Man könnte das auch über eine Webseite machen. Dazu müsste der Server umprogrammiert werden. Ich mach mal die Soft noch mit drauf.
he die Idee ist ja mal cool! Sowas ähnliches hab ich mal mit meinem Linux Rechner gemacht. Mit PHP und dem Apache Webserver ist das echt einfach... Einfach chmod 777 /dev/ttyS0 um com1 für alle User freizugeben und schon kann man via PHP auf die serielle Schnittstelle schreiben und der µC kann die Daten verarbeiten. Das ganze ging auch via WAP mit dem Handy weil man ja mit PHP auch WAP Seiten generieren kann wenn interesse besteht kann ich ja nochmal genauere Infos posten.
Das Projekt ist ja der Hammer, da ich keine Ahnung von Servern habe frage ich bestimmt doof: muss der Rechner Linux haben, Php und als Server laufen? Bitte erklärt mir: Was brauche ich, wenn ich das Zuhause schalten will und was viel geiler ist, was brauche ich, wenn ich von der Arbeit mal kurz die Heizung schalten möchte? Kann man auch Rückmeldungen bekommen? mfg Stromi
Jo, mit Linux bin ich auch am arbeiten. Ich mache das alles über die Shell. Dank WGET lüpt das wunderbar. Ich nutze dafür jedoch noch eine 2. PHP Seite als zwischenstop. Dies habe ich gemacht um a: meine IP im WEB auch ohne dyndns bekannt zu machen b: um die Firewal der Firma zu umgehen (Rechner rief immer website ab) Aber ich werde jetzt mal das Project in Angriff nehmen wo nur noch ein Server gebraucht wird. Dieser fungiert dann auch als WEB Server. Somit kann man dann mit jedem Rechner und jedem Betriebssystem die Hardware steuern.
@stromi Zur zeit brauchst du eigentlich nur Windows Rechner. Da lässt du die beiden Programme laufen. Zum Testen kannst du beide Programme auf einem Rechner starten. Als IP trägst du dann einfach 127.0.0.1 ein. Wenn das mit der Websteuerung kommt, dann kannst du alles über den Browser steuern. Das Serverprogramm werde ich ersteinmal für Windows schreiben. Da die spezifikationen für diese Hardware offen liegen können ja andere User auch Programme dafür schreiben. Ich denke das es unter einem standart Linux Rechner dank PHP noch einfacher ist und sogesehen das Servertool für Linux + Apache + PHP nur ein paar php Datein sein werden ;-) Denn bei linux ist alles Datei und die Com 1 ist dann die /dev/ttyS0 hihi...
@madmax da bekomme ich 'ne Fehlermeldung: port already open wenn ich der Server starte?
Na dann ist dein Comport schon in Benutzung ;-) Schau doch mal nach wer da dein Comport nutzt bzw. seh in die ini Datei und wechsle mal den Comport wenn du mehrere hast.
server startet... Listening on port: 99 da ist doch nicht der Comport mit gemeint? ich habe xp am laufen, nichts anderes, da muss es dran liegen. Serverprogram?
@madmax Ich habe deine Reklärung auf deiner Webseite nochmal gelesen. Wie ich es jetzt verstanden habe, dürfen Client- und Server -Software nicht gleichzeitig auf EINEM Pc laufen. der Server sendet und der Client lauscht und reagiert. Ist es so richtig?
@stromi Wenn du den Server startest und es erscheint: server startet... Listening on port: 99 Dann bedeutet es das der server auf den Port 99 (Ethernet) lauscht. Natürlich darfst du Client und Server auf EINEM PC starten. Wenn du das machst, dann stell beim Client die 127.0.0.1 als IP Adresse ein (Localhost). dann müsste der Server reagieren wenn du beim Client was drückst.
@madmax habe den Rechner runter und hoch gefahren. Comports gecheckt. Gleiche Fehlermeldung... Muss in der Ini irgentetwas beachtet werden? Muss wirklich kein PHP oder Apacheserverprogramm laufen? Du merkstst, ich habe keine Ahnung von Server oder Clientprogrammen. Sorry wenn ich so blöd frage. Muss jetzt in "Familie" nachen. Kann erst Abends wieder probieren. Tschaui
Nein, ein standart PC nehmen. Ich nutze auch Windows XP. Ersteinmal checken ob überhaupt COMports an deinem Rechner vorhanden sind und das diese im BIOS frei geschaltet sind. Das kannst du in der Verwaltung bei XP nachsehen. Unter Hardware steht ja drinn ob es ein Comport gibt oder nicht. Sollte kein Comport vorhanden sein wird der Server immer mit Fehlermeldungen abbrechen. Ich habe die Soft schon an div. rechner (alle XP) getestet und sie lief überall. Teilweise musste ich natürlich die VB6 Runtimes noch dazu installieren aber das wars schon. Auf mein Laptop funzte die Server.exe natürlich nicht, da mein Laptop kein COM Port mehr hat ;-). Aber ein Laptop soll ja auch keine Serverfunktionen erfüllen.
@madmax, die Lösung mit PHP und der Webseite ist genial. Da ich demnächst eh einen eigenen Server mit Linux vorbereite, kann es da dann einfach mitlaufen. Kannst Du die Linux Programme für die Shellscripts vielleicht auch noch online stellen? Das würd ich zur Not wahrscheinlich zwar noch hinbekommen aber... Super Sache das ganze. Schon mal Danke fürs weiterentwickeln, bin schon gespannt auf die Webseite. Ciao, LötNix
@madmax Habe im Taskmanager meine Anwendungen ausgeschaltet, die Comport's benutzen.Muss der Nokiamanager gewesen sein Jetzt FREU ... Super, werde gleich morgen mal in die Baumärkte laufen. Mal sehen was Praktiker oder Bauhaus ähnliches haben. Würdest du die Sourcen freigeben, die du so bastelst? ASM,VB,PHP und andere Sourcen. Das Projekt ist super und der eine oder andere möchte was eigenes programmieren. Sorry nochmal für meine Unkenntniss. Tschaui
Also die Sourcen für den Atmel hast du ja eigentlich schon. Ich schreibe immer in Assembler die Programme für den Atmel. Aber mal schauen, eventuell mache ich mal ein kleines Programm Open Source (Visual basic + ASM). Ich werde dann ersteinmal an die Webserver Version Basteln. Diese Woche wird es aber schwierig, da ich für die scheiss Linuxprüfung lernen muss (LPI102).
@alle Wegen der dynamische Webadresse, die DSL-Kunden immer bekommen, gibt es Ifo unter: http://www.pcwelt.de/know-how/online/15956/index18.html
@alle Die im Link beschriebene Soft ist nicht freeware sondern Shareware ! anderer Link: http://www.at-web.de/toolbox/setredirect.htm
@madmax schön wäre ja auch wenn die Informationen der bisherigen Schaltbefehle für alle Adressen in einem Fenster stehen würden. Dadurch wüsste man trotz fehlende Rückmeldungen, welche Schaltzustände zB. im Wohnzimmer bei der Deckenleuchte, im Badezimmer usw. an der Spiegellechte anstehen müssten. Poste doch mal den jetzigen VB-Code. Wäre ein schönes OpenSourceProjekt. Tschaui
Die Rückmeldungen von der Schaltung würden dir garnichts bringen, denn woher soll der Funksender von den Geräten die Rückmeldung erhalten ? Oder anders, wenn 2 Leute das Programm bedienen, weiss der andere nicht was der eine gemacht hat. Natürlich könnte sich der Server das alles merken und dem jeweiligen Client diese Infos zukommen lassen, aber deffenitiv weiss man denoch nicht ob es wirklich stimmt. Dazu müsste ein Lichtsensor die Lampe überwachen :-)
@Madmax stromi hat schon recht: Selbst wenn man nicht weiß ob das Licht jetzt wirklich an oder aus ist, kann man mit mit großer Warscheinlichkeit davon ausgehen, dass nach einem "Licht an" Befehl das Licht auch wirklich brennt. Daher wäre es schon sinnvoll im Server ein Bit zu speichern, das sich merkt ob bei einem Kanal zueletzt ein oder aus geschaltet wurde, und das beim Client als LED darstellt.
Gut, dann muss beim SERVER start der Server so eingestellt werden. Also alle Zustände der angeschlossenen Geräte müssen beim programmstart übergeben werden. Ich werde das beim Webserver berücksichtigen.
Für alle die mitprogrammieren wollen, ich nehme jetzt folgendes Ausgangsscript: http://www.programmersheaven.com/zone1/cat374/17848.htm Diesen Sourcecode werde ich jetzt ummodeln so das wir einen schönen webserver bekommen werden (hoffe ich). Jetzt hat ein jeder eine Source wo man drauf aufbauen kann.
PS: Die Funkserver.exe wurde auch aus dieser Ursource erstellt ;-)
@madmax und alle die es interessiert, habe Schalter bekommen. Jetzt lege ich los :-) Mein Wunsch der Rückmeldungen ist so begründet: Alle Schaltungen werden mit protokolliert und abgespeichert. Zyklisch oder wenn der Rechner ausgestiegen ist, kann man dafür sorgen, daß alle Schaltungen gemäß der Protokollierung nochmals abgearbeitet werden. Nochmaliges "Aus- oder Einschalten" bewirkt nur daß die Lampe "An" oder " Aus" bleibt. Sollte also nicht stören. Tschaui
@stromi >Alle Schaltungen werden mit protokolliert und abgespeichert. Zyklisch >>Schaltungen gemäß der Protokollierung nochmals abgearbeitet werden. >Nochmaliges "Aus- oder Einschalten" bewirkt nur daß die Lampe "An" >oder " Aus" bleibt. Sollte also nicht stören. Naja, wenn dann die Oma* daheim das Licht anschaltet damit sie besser lesen kann und Dein Rechner dann alle 5 Minuten das Ding wieder ausschaltet, dann stört bzw. verstört das die liebe Oma* bestimmt ein wenig. * "Oma" auch wahlweise durch anderen Mitbewohner etc ersetzen. Gruß Franz
Ganz abgesehen von dem zweifelhaften Nutzwert, die Raumbeleuchtung weltweit schalten zu können, würde ich sowas nie machen. Ich hätte einfach ein sehr ungutes Gefühl, wenn mir nicht wohlgesonnene Zeitgenossen den Kühlschrank abschalten oder die Sprenkleranlage anschalten könnten. Das Hauptproblem ist also nicht die Möglichkeit, sowas machen zu können, sondern der Verlust an Sicherheit, der in keinem Verhältnis zu dem zweifelhaften Nutzwert steht ! Ich erinnere mich noch an den PKW mit Spiegelverstellung über CAN-Bus, da haben Autoknacker ganz einfach den Spiegel abgebrochen und ein "Tür auf" Kommando gesendet. Deshalb ist es auch heute noch weit verbreitet, daß Haussteuerungen nicht über Funk, sondern verdrahtet erfolgen und der Steuercomputer keinen Internet-Anschluß hat. Peter
Naja, und aktive Schutzmaßnahmen wie Verschlüsselungen und wechselnde Authentisierungen kann man ja von den einfachen Funksteckdosen auch nicht erwarten, oder doch ? Falls doch so könnte man die Steuerung übers Internet ebenfalls sicher bekommen, mit SSL usw. Gruß Hagen
LOL Sicherheit... 1. Setze ich die Funksteckdosen nur dahin wo ich will (also kein kühlschrank ect.) 2. Weiss eh keiner welche IP ICH gerade benutze und zum anderen erst recht nicht den Port. Aber egal, ich progge mal weiter.....
So, ich habe den webserver soweit fertig. Er läuft zumindest bei mir. Ausgiebig getestet habe ich ihn noch nicht. Verbesserungsvorschläge nehme ich gerne entgegen ;-). Download wie immer bei der Adresse da oben.
Schnellllllllllllllll http://80.130.50.77/index.htm Tippt diese Adresse ein und setzt den Schalter K4 Schalter 3 Dann schaltet ihr meine Tischlampe...........
@madmax Prima, gefällt mir. Hab zwar keine Ahnung von Java, aber das check ich auch noch. Tschaui
Also der Test gestern war erfolgreich. Man glaubt gar nicht wie viele User es gibt, die einfach mal meine Lampe schalten wollten ;-). Naja, und einige wollten auch mal sehen ob es Backdoors bei meinem Programm gibt :-). Sogesehen läuft der Webserver perfekt. Man sollte aber bei jedem Explorer bzw. Browser den Cash ausschalten. Also den Aufbau der Seite bei jedem Zugriff einstellen.
Die auf dem Link von milchknilch vorgestellte Seite ist auch gut. Gibt es einfache dafür geeignete Grafkprogramme, ich meine die dann Html daraus machen, oder muß man alles in Html coden?
@madmax hat der Empfänger auch so einen Schlaumeier drin? Ich habe kein Sicherheitsbit für solche Schrauben. Aber du mußt ja so ein Teil für deine Standheizung aufgemacht haben. Läuft das mit 12Volt?
ja, im Empfänger ist nun das Gegenstück drinn (PT2270) und der Empfängerkram. Einfach die Spannung anpassen und man kann es Separat nutzen.
@madmax Ich habe das Problem, das der Avr ab und zu mal abschmiert, bzw. nicht richtig startet, kannst du, oder hast du mit watchdog gearbeitet ? Oder habe ich beim Programmieren nicht aufgepasst? :-( Sonst funktioniert das Projekt prima. Noch 'ne Frage zum Codierschalter: Normal wird glaube ich GND auf je einen Adresspin vom Schlaumeier gelegt, bekommt man andere Adressen, wenn man die Adressen nach dem BCD-Muster beschaltet, also mehr als einen Pin auf Masse. Vorrausgesetzt man macht es am Empfänger auch? Tschaui
@madmax Ich habe noch bemerkt, daß der Server, der im Webserver-Zip drin ist, ruhig gestoppt werden kann, er macht trotzdem weiter.... Tschaui
Hallo ! An dieser Stelle möchte ich auf unser Heimautomatisierungs-Projekt verweisen: http://hap.netmb.net Unsere Lösung ist zwar etwas teurer als die Baumarkt-Steckdosen, allerdings auch wesentlich leistungsfähiger. P.s: Die Seite ist noch nicht fertig. U.a. fehlt die Download-Seite. Kommt aber noch ... Über konstruktive Kritik/Anregungen würden wir uns sehr freuen... cu, ben
Hallo Ben, leider fehlt auch jegliche Kontakt eMail Adresse auf der Seite. Da das Projekt auch sehr interessant aussieht, würde es sich lohnen einen separaten Thread aufzumachen, statt diesen zu "hijacken" ;-) Wird das ein Open Source / Open Hardware Projekt? Schicke mir bitte mal eine PM. Ciao, Klaus
@Stromi ich glaube du hast dein Explorer noch nicht so eingestellt, das er bei jedem Aufruf der Seite, diese neu lädt !
@Stromi II Normal wird glaube ich GND auf je einen Adresspin vom Schlaumeier gelegt, bekommt man andere Adressen, wenn man die Adressen nach dem BCD-Muster beschaltet, also mehr als einen Pin auf Masse. Da hast du nicht aufgepasst. Normal liegen alle Adresspins (bis auf 7) offen. Also weder masse noch Vss. Deswegen nennt man dies auch Tristate. Wenn du sie alle auf Masse legst ist es ein andere Adresse. Pro Pin also 3 Zustände (Low, High und offen). Natürlich kannst du ganz neue Adressen bilden, jedoch musst du dies auch bei den Empfängern so machen.
@madmax und naturlemang @all Ich habe mal die Teile aufgemacht und ein Targetschaltplan gemacht, den ich als JPG anhänge. Das Verständniss für Tristate fehlt mir irgentwie, logisch kann ich in einem Schlaumeierprogramm nur Gnd und 5 Volt verarbeiten, d.h. entweder ich belege den Adresspin mit Low =0 Volt = Gnd oder mit High = 5 Volt. Die Tastaturmatrix ist auf dem JPG zu erkennen, die macht das auch so. Nach meinen Messungen (wer misst misst Mist) bringt der Schiebeschalter 5 Volt auf die Adresspin's, wenn der Adresspin nicht kontaktiert wird ist er auf Low = 0 Volt (ev. intern Pulldownwiderstände). Mein Versuch hat ergeben, daß ich auch 2 Adresspin's mit High = 5 Volt belegen kann. Wenn ich das beim Empfänger auch mache, dann schaltet alles wunderbar. Das würde bedeuten ich kann nicht nur 4 Kanäle sondern 16 Kanäle mit min. 3 Aktoren anwählen. Voraussetzung ist, daß das am Empänger auch so eingestellt ist. 16 x 3 = 48 Aktoren für die paar Teuronen, das ist doch was! Dabei habe ich A7 noch nicht mal beachtet, (liegt mit einem Widerstand an Gnd beim Sender, und beim Empfänger direkt auf Gnd). Übrigens habe ich den Resetpin beim AVR-Schlaumeier mit einem Widerstand an Ub gelegt, hat Vorteile :-) Tschaui Ps. Super Projekt, keine Langeweile mehr :-)
@Klaus Leidinger nee, auf der Projektseite ist oben rechts das Impressum. hier die email-Adresse daraus. E-Mail: mb@netmb.net Auch gut, nur Details müsste man wissen. Tschaui
@Stromi Besorg dir mal das Datenblatt vom PT2260... Du hast 3^8 verschiedene Adressen (6561 Adressen). Jede Adresse hat 4 Datenleitungen. Mit anderen worten, du kannst 4 verschiedene Zustände an 6561 Geräten schalten (wenn du es voll ausnutzen willst). Aber ist ja egal, für 39,- können wir genau 6 Geräte schalten. Das ist ein super Preis Leistungs Verhältniss.
@Stromi Zu der Schaltung in der Fernbedienung. Der Wiederstand an A7 hat schon seinen Sinn. Im normalfall ist er auf Low. Sollten aber D0 und D1 gemeinsamm gedrückt werden, so wird A7 auf High gesetzt. Hättest du die Schaltung komplett aufgezeichnett, hättest du die beiden anderen SMD Wiederstände an D0 und D1 gesehen, die an die beiden SMD Transistoren gehen. Somit wollte der Hersteller wohl verhindern das ein D0 + D1 Signal an ein Empfänger gelangen kann. Deswegen habe ich ja auch geschrieben das alle 3 Wiederstände ausgelötet werden sollen !!!!!!!!!!
@madmax Datenblatt habe ich mir gesaugt. Allerdings gibt es mur eine Beschreibung mit wenig Info. Was passiert z.B. wenn man die anderen Datenpins ansteuert? Hast du da mehr Info, Links und was kommt aus dem Datenausgang dann raus ? Ist aber nur informativ, die Steuerung so, reicht mir schon. Widerstände hatte ich narturlemang draußen :-)
hallo madmax, ich habe dein Projekt erfolgreich an IPsymcon Server www.ipsymcon.de angeschlossen. Nun möchte ich 2 Lampen auch dimmern können. Hast du, oder kennst du ein gleichwertiges Projekt, mit welchem ich auch dimmern kann? mfg
@madmax: Eigentlich kann jeder Webmaster, jeder der dir eine HTML-Mail schickt und jeder, mit dem du chattest ganz einfach deine IP einsehen :-) Wenn ein Forum Bilder in der Signatur zulässt sind es gleichzeitig auch alle Nutzer des Forums, welche deine IP herausfinden könnten. Nur so zur Warnung :-)*g*
@Freak5 Und was soll das bringen ? Meine IP ist doch kein Geheimniss ???? @stromi das würde auch gehen, jedoch muss die Schaltung dann auch antworten. Immerhin willst du ja wissen wie hell es gerade ist ;) Also wird dann noch ein Rückkanal implementiert in der Schaltung. Aber die regelung der Triacs muss dann ohne Funk erfolgen, da du die Eingangsspannung dann direkt über den AVR übergibst. Per Funk hättest du keine Kontrolle wie die Empfänger gerade eingestellt sind. leider sind Funksteckdosen nun mal Einwegesysteme ;). mister_crd@gmx.de
Ich bastle auch gerade an was ähnlichem: http://www.k13zoo.de/vdr/homeautomation/ Die Kommunikation erfolgt dann über eine Art Powerline-Modem, hierzu habe ich ein möglichst störunanfälligen und (einigermaßen) multimaster fähigen Protokollstack entworfen. Meine ersten Tests verliefen bis jetzt sehr erfolgreich. Wenns dann fertig ist, folgen Schaltpläne und weitere Sourcen (das Protokoll ist evtl auch für die Multimaster-Vernetzung von RS485 interessant) Gruß Roland
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.