Haus / Wohnungssteuerung (Webserver, Automatische ausführung)

  • Guten Abend,

    ich habe vor ein Projekt mit meinem neuen RPi zu starten und zwar.

    Ich ziehe bald um und in meiner neuen Wohnung sind Fußleisten mit Steckdosen drin, was bedeutet man kann sie so umrüsten das man sie über ein SSR regeln kann.


    Ich möchte gerne den RPi als Webservereinrichten mit MySQL und PHP, ich will eine Weboberfläche gestalten bei der ich für jeden Raum die Temperatur ausgeben kann und eine Soll Temperatur vorgegeben werden kann und diese dann die Heizung dann ein /ausschaltet, eine indirekte RGB beleuchtung / normale LED Lichtsteuerung (PWM), eine Rollladensteuerung, Alarmanlage und noch ein Paar andere Dinge.

    Ich bin ausgebildeter Systemelektroniker und nebenbei selbstständig in der Webentwicklung.


    Meine Idee zu diesem Projekt sieht wie folgend aus:

    Ich möchte über den RPi einen µC (8051) ansteuern über eine Serielle Schnittstelle, dieser "Master" steuert dann die ganzen Slaves an (Seriell + CS) und übermittelt dann die Daten für Licht, Rollo und Steckdose.

    Die eingegebenen Daten werden in der MySQL gespeichert, so das einem Stromausfall keine Daten verloren gehen und der Stand von davor wiederhergestellt werden kann.

    Zudem soll ein Display mit Touch im Flur neben der Haustüre angebracht werden über das ich Einstellungen vornehmen kann, wie Alarm an/aus, alle Lichter und Steckdosen aus/an und weitere Dinge die ich vorgeben kann als Standards.

    Zudem möchte ich in der MySQl Datenbank eine Art Intervall-Tabelle Anlegen in der ich z.B. sagen kann jeden Morgen um 7Uhr der Rollladen hoch und Licht im Schlafzimmer an, Steckdose für Kaffeemaschine an usw.

    Oder wenn ich im Urlaub bin oder aus beruflichen Gründen


    Ich selbst habe eine feste IP für meinen Internetzugang da ich eine Cloud besitze über die meine Daten von Handy und Tablet abrufen kann und mit meinem RPi habe ich schon den erfolgreichen Versuch gestartet meinen RPi über die IP zu erreichen.

    Der Sinn für das erreichen des RPi über das WWW ist der folgende, wenn ich jetzt mal einige Tage aus beruflichen Gründen unterwegs bin, das ich wenn ich weiß ich komme in 2 Stunden nach Hause, dann soll im Winter die Heizung angehen und die Wohnung auf die vorgegebene Temperatur heizen.


    Warum ich das ganze mit PHP und MySQL machen möchte, ganz einfach hab 10 Jahre Erfahrung damit.


    Ich stehe nur vor der Frage, wie realisiere ich das am Besten mit der Kommunikation zwischen RPi und dem µC?
    Ich verwende da ich sehr gut mit ihm Umgehen kann den AT89S8253.

    Serielle Schnittstelle des µC und RPi habe ich noch nie verwendet.

    Habe auch schon eine Lichtsteuerung entworfen und einige Spielereien.


    Ich weiß von PHP wie ich die GPIO vom RPi ansteuern kann, aber nicht wie ich das Seriell mache...


    Ich möchte gerne eine Art Programm erstellen das aus der MySQL bei jeder vollen Minute die Daten abfragt die in der Intervall-Tabelle eingetragen sind überprüft und bei bedarf ausführt.

    Ein weiteres Programm das nach gewissen Intervallen die Temperatur von allen Slaves abfragt und in der MySQL speichert (alte Werte überschreibt).

    Bei der Betätigung / Änderung die im Webinterface getätigt wird, soll ein weiteres Programm ausgeführt werden das die Daten dann automatisch übermittelt.


    Ich hoffe ihr könnt mir Helfen =)


    Ich beherrsche folgende Sprachen:

    - 8051 Assembler

    - HTML (CSS)
    - Javascript (AJAX)
    - PHP mit verwendung von MySQL

    Und C hatte ich mal angefangen.


    Ich wünsche euch einen schönen Abend.


    Mit freundlichem Gruß ausem Schwarzwald
    Phylus D. Able

    Einmal editiert, zuletzt von PhylusDAble (5. Februar 2013 um 22:32)

  • Haus / Wohnungssteuerung (Webserver, Automatische ausführung)? Schau mal ob du hier fündig wirst!

  • Zur Kommunikation zwischen Pi und Atmel würde ich den I2C-Bus nehmen. Falls es schneller gehen muß SPI. Passende Libraries gibt es fertig.
    Das Problem bei solchen Steuerungen ist immer, wer soll wen steuern? Gibt es mehrere gleichberechtigte Master? SPI und I2C haben eine Master-Slave Struktur, mit der seriellen könntest Du eine gleichberechtigte Verbindung aufbauen, dann mußt Du aber per Software eindeutige Prioritäten festlegen. Was passiert wenn die Heizung angehen soll weil Du gleich nachhause kommst und ausgehen soll weil es zu warm ist?

    Php halte ich für ein solches Projekt für ungünstig, dafür ist es nicht gedacht. Das sollte in einer Sprache wie Python oder C besser klappen. Bei Python dürfte Dir der Umstieg leichter fallen, C ist deutlich effizienter.

    Wie steuerst Du die Sensoren/Aktoren an?

  • Zitat von orb pid=5226 dateline=1360133769


    Zur Kommunikation zwischen Pi und Atmel würde ich den I2C-Bus nehmen. Falls es schneller gehen muß SPI. Passende Libraries gibt es fertig.

    Ich glaube SPI wäre in diesem Fall besser / schneller.


    Zitat von orb pid=5226 dateline=1360133769


    Das Problem bei solchen Steuerungen ist immer, wer soll wen steuern? Gibt es mehrere gleichberechtigte Master? SPI und I2C haben eine Master-Slave Struktur, mit der seriellen könntest Du eine gleichberechtigte Verbindung aufbauen, dann mußt Du aber per Software eindeutige Prioritäten festlegen.

    Also ich habe das so gedacht, der RPi sendet den an den Master µC Welcher Slave, welche Funktion und Parameter, z.B.

    - Slave 1; Steckdose 2; An
    - Slave 3; Rolladen 1; 50% (50% == einer Int Zahl)

    usw...

    Der Master µC soll die Daten vom RPi auswerten und den Passenden Slave Wählen und daten Seriell übertragen.

    Meinetwegen kann man auch den RPi als Master verwenden, was einfacher in der Umsetzung ist.

    Adresszuweisung der Slaves über ein "Mäuseklavier" mit 8bit.


    Zitat von orb pid=5226 dateline=1360133769


    Was passiert wenn die Heizung angehen soll weil Du gleich nachhause kommst und ausgehen soll weil es zu warm ist?

    Ein Temperatursensor soll in jeden Raum kommen und einer nach draußen.

    Es wir für Zimmer 1 der Sollwert 25°C gesetzt, dann den Istwert überprüft und wenn Istwert kleiner als Sollwert ist, dann soll die Heizung aufgedreht werden und nach einiger Zeit überprüfen ob Istwert gleich oder größer ist wie der Sollwert und wenn das der Fall ist, die Heizung abschalten.

    Also eine Steuerstrecke die Konstant die gegebene Temperatur hält.


    Zitat von orb pid=5226 dateline=1360133769


    Php halte ich für ein solches Projekt für ungünstig, dafür ist es nicht gedacht. Das sollte in einer Sprache wie Python oder C besser klappen. Bei Python dürfte Dir der Umstieg leichter fallen, C ist deutlich effizienter.

    Ja das wäre dann ja noch ne Weitere Sprache, aber eine die ich nicht kann ;)
    Meine Idee wäre gewesen auf dem RPi nen Apatche2 Server mit MySQL aufzuspielen und das als Webinterface zu verwenden, also zwischen RPi und Handy / Tablet / PC.

    Z.B. wenn ich Über Tablet sage Steckdose an, dann über den Befehl system() oder exec() ein Python Programm ausführen das dann an den Master µC die Daten übermittelt.

    Oder da so weit ich das weiß Python auch auf MySQL DB zugreifen kann eine Tabelle anlegen in der nach einer Art Warteschlange die Daten Hinterlegt werden und ein Phytolscript das dann abarbeitet!?

    http://zetcode.com/db/mysqlpython/


    Zitat von orb pid=5226 dateline=1360133769


    Wie steuerst Du die Sensoren/Aktoren an?

    Sensotren wie Temperaturfühler über einen 8bit Parallel AD Wandler, hab davon noch einige rumliegen.

    - Steckdose über eine SSR
    - LEDs über Fet /Transitoren
    - Rollo muss ich schauen wie die angesteuert werden, die sind ja elektronisch
    - Heizung muss ich auch schauen gibt ja so spezielle Drehknöpfe oder auch welche die Digital funktionieren (Mit Schnittstelle)

    Einmal editiert, zuletzt von PhylusDAble (6. Februar 2013 um 18:06)

  • ein sehr spannendes Thema. Bis ich dazu komme mal einen Mikrocontroller zusätzlich anzusprechen, werden wahrscheinlich noch etliche Monde vergehen.
    Spannend alleine finde ich die Thematik der entfernten Steuerung.
    Ich mein, Temperatursensoren kann man einfach so auslesen, Relais kann man auch so schalten. Was mich interessiert ist, wie man das mal eben so von der Ferne machen will ohne die komplette Wohnung an den Rechner anzuschließen. Verschlüsselt über Funk? Immerhin sind ja mehrere Zimmer betroffen. Ok, ich habe in der Wohnung Asbach Heizkörper, womit die Steuerung hier ausscheidet. Rollos sind zu Vernachlässigen. Wären wohl nur noch Die Steckdosen im Rennen. Solche soll man angeblich via 433MHz-Sender schalten können (noch nicht mit befasst).
    Wenn ich dahintersteige, wie man das mit den Sendern (und entsprechenden Funkstedosen) macht, bin ich schonmal happy. Damit hätte ich aber - gemäß den Fall ich will nicht etliche Sachen schalten - einen Mikrocontroller umgangen (jaja, am Thema vorbei).
    Den Pi vom Netz erreichbar zu machen und in eine Alarmanlage zu verwandeln ist dabei weniger die Herausforderung. An dieser Stelle stellt sich nur immer die Frage, was man unter Alarmanlage versteht oder, wie viele Szenarien abgedeckt werden sollen.
    Vielleicht denke ich da auch zu engstirnig. Ich lese mal mit Spannung weiter, was da so noch kommt und lerne :)

  • Ich denke, für eine Haussteuerung reicht I2C, so schnell müssen die Daten da normal nicht rüber und das Ansprechen ist einfacher.
    Die Heizung sollte nur ein Beispiel für die Probleme sein, die entschieden werden müssen. Sowas kann dazu führen, daß eine Regelung hängen bleibt.
    Mit der Ansteuerung meinte ich die Verbindung zwischen den einzelnen Slaves, was benutzt Du da, RS485, Can ...?

  • Zitat von beyondx pid=5278 dateline=1360173614


    Wären wohl nur noch Die Steckdosen im Rennen. Solche soll man angeblich via 433MHz-Sender schalten können (noch nicht mit befasst).

    Ich hab damals für 15Teuro so Funksteckdosen gekauft und die Fernbedienung zerlegt an nen µC angeschlossen, also über ein Interface und konnte dann mit dem µC die Steckdosen an / aus schalten ;)


    Zitat von beyondx pid=5278 dateline=1360173614


    Spannend alleine finde ich die Thematik der entfernten Steuerung.
    Ich mein, Temperatursensoren kann man einfach so auslesen, Relais kann man auch so schalten. Was mich interessiert ist, wie man das mal eben so von der Ferne machen will ohne die komplette Wohnung an den Rechner anzuschließen. Verschlüsselt über Funk? Immerhin sind ja mehrere Zimmer betroffen.

    Jedes Gerät das am WWW hängt hat eine IP (max. 24h die gleiche, auser man mietet sich eine feste) und wenn man die richtigen Ports freigegeben hat und so was, dann kann ich von meinem Handy (oder was auch immer) über das Internet von der ganzen Welt aus auf diese IP zugreifen und dann z.B. eine Webseite online stellen.

    Es gibt in diesem Fall die Hauptzentrale (RPi) bei dem die Befehle verarbeitet werden und diese werden dann an die Folgenden Stellen weitergeleitet.


    Zitat von orb pid=5282 dateline=1360175237


    Ich denke, für eine Haussteuerung reicht I2C, so schnell müssen die Daten da normal nicht rüber und das Ansprechen ist einfacher.

    Wenn du das Sagst =D
    Ich hab mit Bus-Übertragung noch nichts gemacht...


    Zitat von orb pid=5282 dateline=1360175237


    Die Heizung sollte nur ein Beispiel für die Probleme sein, die entschieden werden müssen. Sowas kann dazu führen, daß eine Regelung hängen bleibt.
    Mit der Ansteuerung meinte ich die Verbindung zwischen den einzelnen Slaves, was benutzt Du da, RS485, Can ...?

    ( Heizungsgeschichte muss ich so oder so schauen wie ich das Realisiere ;D )

    Bei I2C werden die Daten ja über SDA und SCL übertragen und an diesen Datenbus kann man ja einen Master und mehrere Slaves anschließen oder hab ich damals in meiner Ausbildung da gepennt? =D

    Is das nicht beim AT89S8253 Timer 0 und 1?
    Also Pin P3.4 und P3.5?


    Wenn ich SPI verwenden würde, kann ich ja auch eine Verbindung mit Master und Slaves über die Pins
    - MISO
    - MOSI
    - SCK
    herstellen?!

    Wenn ich Daten seriell übertrage, z.B. SPI oder I2C, wenden dann die Daten parallel zum eigentlichen Programm ausgeführt oder muss ich dann in eine Interruptroutine springen in der die Daten dann empfangen / gesendet werden??


    Edit:

    Ich kann ja auch einen kleinen µC mit an den Seriellen Datenbus anschließen, also eine Art "Master" der an einen Ausgewählten Slave z.B. Steckdos an/aus und sowas machen kann oder?

    Einmal editiert, zuletzt von PhylusDAble (6. Februar 2013 um 20:34)

  • Ich ziehe meinen Vorschlag zurück, die AT89S... haben keinen Hardware-I2C-Bus (Atmel nennt den TWI). Ich hab immer nur mit At90, Tiny und Mega gearbeitet. SPI kann er aber.
    Zum SPI gehört dann nich das Chipselectsignal (SS), davon brauchst Du für jeden Slave ein eigenes, der PI hat 2 rausgeführt.

  • Zitat von PhylusDAble pid=5286 dateline=1360177796


    Jedes Gerät das am WWW hängt hat eine IP (max. 24h die gleiche, auser man mietet sich eine feste) und wenn man die richtigen Ports freigegeben hat und so was, dann kann ich von meinem Handy (oder was auch immer) über das Internet von der ganzen Welt aus auf diese IP zugreifen und dann z.B. eine Webseite online stellen.

    Es gibt in diesem Fall die Hauptzentrale (RPi) bei dem die Befehle verarbeitet werden und diese werden dann an die Folgenden Stellen weitergeleitet.


    Öhm..das mit der IP ist mir schon klar (meine wechselt alle paar Wochen..das ist nicht immer überall ein 24 Stunden Rhythmus...obgleich ich natürlich einen dynDNS-Dienst hab). Ich steuere meinen PI ebenfalls vom Internet aus.

    Mir geht´s um die Kommunikation zwischen deinen Komponenten, die von deinem PI aus gesteuert werden.
    Nehmen wir mal an, du hast im Wohnzimmer einen Temperatursensor, den du auslesen willst. Dein PI steht in der Diele. Wie kommt der PI an die Daten ran?

    Du sprichst hier und da von Schnittstellen, die du auslesen oder füttern willst. Mich interessiert die physikalische Verbindung. Oder hast du vor alles komplett zu verdrahten? Deswegen kam meine Anspielung auf die Funksteckdosen, die man ja Steuern können soll (auf welchem Weg auch immer). Da ist der Weg klar eben der Sender mit dem ich eben die Dosen steuere. Bei den Sensoren stelle ich mir das aber nicht so einfach vor. Oder ist es das doch? Hmm...es gibt Wetterstationen die auch z.B. mit 433Mhz Arbeiten....vielleicht ist es ja doch so einfach *am Kopf kratz*.

  • Zitat von orb pid=5292 dateline=1360180562


    Ich ziehe meinen Vorschlag zurück, die AT89S... haben keinen Hardware-I2C-Bus (Atmel nennt den TWI). Ich hab immer nur mit At90, Tiny und Mega gearbeitet. SPI kann er aber.
    Zum SPI gehört dann nich das Chipselectsignal (SS), davon brauchst Du für jeden Slave ein eigenes, der PI hat 2 rausgeführt.

    Beim RPi nennen die sich CE0 (GPIO8) und CE1 (GPIO7), wenn ich das Richtig sehe.

    Okey, dachte schon ich hab damals gepennt, da mir vom I2C Bus beim AT89S... nichts bekannt war =)


    Okey, dann habe ich da aber noch eine weitere Frage was SPI betrifft, wenn ich den RPi als Master verwende und dann mehrere AT89S8253 als Slaves anschließe, würde das ohne große Probleme so Funktionieren?

    Oder den RPi über RxD und TxD mit einem µC verbinden und dann den µC der als Master der alle Daten verwalten wird und die Slaves ansteuert?


    Wenn ich das wie auf dem Bild mache, kann ich dann auch Daten von einem Slave an den Master übertragen?

    Sorry für die Fragen, ich bin mir da nur nen bissel unsicher, da ich mich damit bis jetz noch nie beschäftigt habe =)


    Und was meinst du zu der Sache mit dem Python und MySQL verbinden und mit PHP Python Script aufrufen und das dann so zu verbinden?

    Zitat von beyondx pid=5297 dateline=1360183065


    Du sprichst hier und da von Schnittstellen, die du auslesen oder füttern willst. Mich interessiert die physikalische Verbindung. Oder hast du vor alles komplett zu verdrahten? Deswegen kam meine Anspielung auf die Funksteckdosen, die man ja Steuern können soll (auf welchem Weg auch immer). Da ist der Weg klar eben der Sender mit dem ich eben die Dosen steuere. Bei den Sensoren stelle ich mir das aber nicht so einfach vor. Oder ist es das doch? Hmm...es gibt Wetterstationen die auch z.B. mit 433Mhz Arbeiten....vielleicht ist es ja doch so einfach *am Kopf kratz*.


    Achso, ja Sorry, dann habe ich das falsch verstanden...

    Gibt glaub auch fertige Funkmodule für AVRs, hat mir ein Lehrer mal gesagt =D


    Ich verdrahte eventuell, da alle Räume miteinander über diese Fußleisten verbunden sind (Löcher in den Wänden hinter den Leisten).

    Ist eine ganze Etage die damals von einer Firma war, ist Renoviert und Saniert.


    Mit der Spannungsversorgung bin ich auch am Überlegen ob ich ein PC Netzteil verwende.

    Nur hab ich das Problem das wenn nur in einem Zimmer 12V gebraucht wird, das det Netzteil nicht an den Minimum Verbrauch drankommt, aber mal schauen wie ich das mache.

    Einmal editiert, zuletzt von PhylusDAble (6. Februar 2013 um 21:46)

  • Deine SPI Daisychain ist unüblich und schwierig zu gestallten. Dadurch, daß Du alle Daten dirch die einzelnen Slaves durchschleifst müssen die die !SS-Leitung steuern können und selbst zum Master werden.
    SPI ist eigendlich ein Bussystem mit zusätzlichen Steuerleitungen:

    spi1.png

    Um Leitungen zu sparen kann man auch die !SS Leitung durchschleifen

    spi2.png

    Dann muß man aber eine Softwareadressierung machen. Die Portbausteine MCP23S17 arbeiten so.

    Der Master fragt bei den Slaves regelmäßig nach, ob sie Daten für ihn haben. So steuert nur nur einer den Bus an und es kann nie passieren, daß zwei Teilnehmer gleichzeitig den Bus belegen.

    Die Steuerung würde ich so gestalten, daß ein Programm im Hintergrund läuft, die Daten aus der Datenbank auswertet und an den Atmel-Buscontroller und anderen direkt verbundenen Slaves weiterleitet. Gefüttert wird die Datenbank dann von Ihm, von Deinen PHP-Seiten, von wo immer Du willst. Damit hast Du einen Steuerprozess und nur einen, der entscheidet.

    Als zentrale Stromversorgung nutze ich ein 24Volt/10A Netzteil. Jeder Busteilnehmer bekommt einen kleinen Schaltregler zur Erzeugung der 5Volt für den Prozessor, Steuerrelais, Lampen, etc bekommen die 24V direkt.
    Als Datenverbindung hab ich mich für RS485 entschieden. Einfach auf dem Atmel umzusetzen und für lange Strecken tauglich. Nur am Busprotokoll bastel ich noch.

    Einmal editiert, zuletzt von orb (7. Februar 2013 um 08:55)

  • Zitat von orb pid=5340 dateline=1360222709


    Der Master fragt bei den Slaves regelmäßig nach, ob sie Daten für ihn haben. So steuert nur nur einer den Bus an und es kann nie passieren, daß zwei Teilnehmer gleichzeitig den Bus belegen.

    Gibt es dafür eine Spezielle Art dieser Abfrage?
    Oder einfach jeden Slave abklappen?


    Zitat von orb pid=5340 dateline=1360222709


    Die Steuerung würde ich so gestalten, daß ein Programm im Hintergrund läuft, die Daten aus der Datenbank auswertet und an den Atmel-Buscontroller und anderen direkt verbundenen Slaves weiterleitet. Gefüttert wird die Datenbank dann von Ihm, von Deinen PHP-Seiten, von wo immer Du willst. Damit hast Du einen Steuerprozess und nur einen, der entscheidet.

    Kann ich die !SS die vom Master an die Slaves gehen auf belibige Pins des Masters setzen, da der AT89S8253 ja nur einen !SS Ausgang hat?


    Zitat von orb pid=5340 dateline=1360222709


    Als zentrale Stromversorgung nutze ich ein 24Volt/10A Netzteil. Jeder Busteilnehmer bekommt einen kleinen Schaltregler zur Erzeugung der 5Volt für den Prozessor, Steuerrelais, Lampen, etc bekommen die 24V direkt.
    Als Datenverbindung hab ich mich für RS485 entschieden. Einfach auf dem Atmel umzusetzen und für lange Strecken tauglich. Nur am Busprotokoll bastel ich noch.

    Ich muss mal schauen wie ich das mit der Spannung mache =)
    Aber Danke.

    Geht SPI auch über strecken von bis zu 7m?
    Oder ist das zu weit?

    Gibt es PWM-bausteine?
    Sowas wie den "D8253C" oder kann der sogar PWM?
    Hab leider nichts gefunden.

  • Die Atmels haben einen SS mit dem sie automatisch Master und Slave umschalten können und als Slave nutzen. Als Master kannst Du noch beliebige andere Pins als SS nutzen.
    Das SPI bis 10Mhz Takt läuft ist die Reichweite eher 7cm als 7m, ok 30cm ist machbar.
    PWM-Bausteine findest Du für LED-Anwendungen viele die Du für alles mögliche 'mißbrauchen' kannst, z.b. den TLC5940 http://www.ti.com/product/tlc5940. Allerdings mehr für I2C als für SPI.

  • Zitat von orb pid=5391 dateline=1360267130


    Die Atmels haben einen SS mit dem sie automatisch Master und Slave umschalten können und als Slave nutzen. Als Master kannst Du noch beliebige andere Pins als SS nutzen.

    Also kann ich das so machen wie in diesem von dir gepostetm Bild?

    spi1.png

    Zitat von orb pid=5391 dateline=1360267130


    Das SPI bis 10Mhz Takt läuft ist die Reichweite eher 7cm als 7m, ok 30cm ist machbar.

    Okey, ja ich habe mir eh überlegt ob ich eine Busplatine mache.

    Ich mache dann nun auch einen Slave der z.B. nur Steckdosen steuert, einen der Rollo steuert usw.

    Möchte das ganze per Porterweiterung ist jeder Slave erweiterbar.


    Zitat von orb pid=5391 dateline=1360267130


    PWM-Bausteine findest Du für LED-Anwendungen viele die Du für alles mögliche 'mißbrauchen' kannst, z.b. den TLC5940 http://www.ti.com/product/tlc5940. Allerdings mehr für I2C als für SPI.

    Ich möchte den PWM-Baustein nicht via SPI einbinden, sondern Parallel oder so etwas.
    Habe hier noch so alte Parallel Porterweiterungen glaub über 100 Stück oder so... (Mal geschenkt bekommen)

    Und ja ich weiß das man solche Lichtsteuerungen auch per Software PWM lösen kann nur hat das auch Nachteile ;)

  • Hallo

    also ich habe so etwas ähnliches vor, auch mit Webserver und Mysql, das man sowas im Grunde hübsch mit seinem Handy bedienen kann.
    Als I/O Modul nutze ich eine WAGO Steuerung die ich mittels TCP/UDP Modbus ansteuere bzw auslese. Mich würde mal interessieren welche Hardware du/ihr nutzt, da ich diese Wago noch nicht einsetzen kann (Glaube mein Vermieter findet das nicht so dolle, wenn ich hier mal ordentlich Schlitze kloppe).

    Gibt es sowas auch per Funk und was brauche ich da?
    Kann man sowas mittels Python / Php machen?

    Gruß Simon

  • Ich bastel mir die Hardware die ich dafür nutze selbst und zum Glück wohne ich im eigenen Haus, wenn ich da Schlitze kloppe gibt es nur Ärger mit der SWMBO wenn ich den Dreck nicht weg mache. Außerdem hab ich beim Renovieren alle Abzweigdosen in den Keller und auf den Dachboden verlegt, da kommt man gut ran.

    Über Funk machen das viele Systeme, bei ELV findest Du zu FHEM/FS20 einige Informationen
    Oder Du bastelst selbt, da hab ich mit den RFM12-Modulen von Hoppe (bekommst Du günstig bei Pollin) gute Erfahrungen gemacht.

    Mit einer Kombination aus Python/Php geht das. Python für die Steuerung/Abfragen und php zum Anzeigen und Auslösen von Funktionen.

  • Zitat von orb pid=5408 dateline=1360305877


    Du kannst Dir auch einen eigenen I2C-Bus programmieren.

    Okey, ob ich das so einfach hin bekomme ist ne andere Frage ^^

    Aber ich habe da ich demletzt nen Programm für den AT89S8253 nen Programm geschrieben hab im Datenblatt gesehen das man den Vorteiler rausnehmen kann und er dann doppelt so schnell läuft, eventuell baue ich mir einen eigenen Baustein der über Software die PWMs erzeugt.


    Zitat von Bizkit83 pid=5776 dateline=1360781459


    Hallo

    also ich habe so etwas ähnliches vor, auch mit Webserver und Mysql, das man sowas im Grunde hübsch mit seinem Handy bedienen kann.
    Als I/O Modul nutze ich eine WAGO Steuerung die ich mittels TCP/UDP Modbus ansteuere bzw auslese. Mich würde mal interessieren welche Hardware du/ihr nutzt, da ich diese Wago noch nicht einsetzen kann (Glaube mein Vermieter findet das nicht so dolle, wenn ich hier mal ordentlich Schlitze kloppe).

    Gibt es sowas auch per Funk und was brauche ich da?
    Kann man sowas mittels Python / Php machen?

    Gruß Simon

    Ich habe mir damals für nen Paar euro im Bauhaus son 3er Funkstecker Set gekauft,
    der hatte 4 Gruppen und pro Gruppe 3 Steckdosen, was 12 Steckdosen macht.

    Habe die Fernbedinung zerlegt und habe mir einen kleinen 8051er su programmiert das er die Gruppen und die Steckdosen auswählen kann.

    Der µC hatte über einen Dekadenzähler die Gruppe ausgewählt und über einen weiteren welche Steckdose AN bzw. AUS geschaltet werden soll, dann wurde über einen Pin ein kurzes High ausgegeben, eine Art Enable für die Freigabe.

    Der Vorteil dieser Art ist, das man das fertig kaufen kann, man die Stecker einfach einsteckt ohne irgendwie neue Kabel zu legen oder andere Art der Manipulation.
    Zudem ist eine Steuerplatine die man irgendwo verstecken kann.

    Zu dem Zeitpunkt hatte ich einen Radiowecker mit angeschlossen gehabt und wenn der Alarm ausgelöst wird, dann hat es Wasserkocher und Licht angemacht und solche Dinge und ein IR-Empfänger hat mir die Möglichkeit gegeben meine Fernbedienung darauf mit anzuwenden =)

    In deinem Fall kannst du auch den RPi dranhängen und damit über die Manipulierte Funk-Fernbedienung die Funk-Steckdosen AN und AUS schalten =)


    Wie ORB schon erwähnt hatte Phyton wäre das beste, aber man kann aber auch mit PHP über folgende Befehle system() oder exec() die GPIOs auslesen und ansteuern.

    Code
    $variable = trim(@shell_exec("/usr/local/bin/gpio -g read 23"));

    oder

    Code
    $variable = trim(@shell_exec("/usr/local/bin/gpio -g write 23 1"));

    Ob ich das richtig geschrieben hab is ne andere Frage ^^
    So hab ich das mal getestet und es ging =D

    Hab das mal in Google gesucht und so ne Seite gefunden weiß leider garad net welche das war.


    Musst hat bei Verbindung zwischen RPi und nem µC auf die Pegel achten, da der µC mit 5V arbeitet und der RPi mit 3,3V.

    !!!Du kannst den RPi zerstören wenn du an die GPIOs 5V anlegst!!!

  • Danke für die Hinweise in diesem Thread. Ich stehe gerade vor einem ähnlichen Problem und weiß noch nicht genau wie ich es lösen soll, aber es geht eben auch um eine neue Wohnung und dessen Versteuerung. Ich tu mir da leider etwas schwer das zu durchschauen. Mal sehen ob ich mit den Tipps hier weiter komme :)

    Einmal editiert, zuletzt von Pauly (27. Februar 2013 um 16:53)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!