Beiträge von Gnom

    Bei Wechselspannung kannst du dir die Gleichrichter-Dioden sparen, wenn du einen AC-Optokoppler verwendest (z. B. Typ 814).

    Sollte dein Klingel-Trafo/Netzteil wider Erwarten Gleichspannung liefern, tut es auch ein "normaler" Optokoppler. Mit einem AC-Optokoppler geht beides.

    Bei 12 V sollte der Widerstand ca. 3600 Ohm sein (3 mA Strom - das genügt dem Optokoppler normalerweise - du kannst aber auch einen Widerstand bis runter auf 600 Ohm nehmen - irgendwas dazwischen ist ok).

    Evtl. ist es sinnvoll einen Kondensator einzubauen, der die Spannung glättet - sonst bekommst du wegen der Wechselspannung 100 Klingelsignale pro Sekunde, so lange jemand den Finger auf dem Klingelknopf hat... Du kannst das aber auch softwareseitig abfangen.

    Wenn du einen internen Pullup oder Pulldown verwendest, fungiert der als R3. Über die Größe der internen Widerstände gibt es unterschiedliche Angaben in der Größenordnung von 50-80 KOhm. R1 ist der Wasserwiderstand, der ist eh da. Fehlt also nur R2. Der würde den Pi bei falscher Programmierung vor einem Kurzschluss schützen. Ist in deinem Fall nur in Ausnahmefällen relevant, die eher nicht gegeben sein dürften (nämlich, wenn deine Sensorkabel kurzgeschlossen sind UND der GPIO auf Output programmiert ist UND dann noch der Output-Level ein anderer ist als der, auf den das Kabel kurzgeschlossen ist).

    Wenns funktioniert, kannst du es so lassen. Sicherer ist trotzdem, wenn du den zusätzlichen R2 einbaust. Die Funktion dürfte dadurch nicht beeinträchtigt werden.

    Mit 24 Volt kann der Pi nichts anfangen. Die Eingänge würden zerstört werden und die Ausgänge können solche Spannung nicht liefern.


    Der Ansatz mit Optokopplern ist völlig ok.


    Du kannst Ausgänge der SPS mit einem Widerstand von ca. 8 KOhm (5-10 KOhm sollten gehen) an den Optokoppler schalten und mit dem Ausgang des OK den Pi schalten. (Vor den GPIO-Eingang immer zur Sicherheit einen 1000 Ohm-Schutzwiderstand.)

    Ebenso kannst du die Ausgänge des Pi mit 800-1000 Ohm an den Optokoppler schalten und mit dem Ausgang des Optokopplers Eingänge der SPS schalten.


    Optokoppler kosten nicht viel und falls du wirklich mal einen zerschießt, ist das Drama überschaubar. Die SPS oder den Pi zu grätschen, wäre schlimmer.

    Zu den Schaltschwellen des Pi gibt es unterschiedliche Angaben - die gehen bis 2,3 Volt für high. Da würde ich mich auf nichts verlassen. Deshalb die Empfehlung, der Pulldown sollte hier 10 mal so groß sein, wie der Widerstand am Sensor. Damit hast du 3,0 V - das genügt.

    Die Lösung mit dem Optokoppler ist eher nicht wirklich praktikabel. Lass es, wie es ist und nimm einen hinreichend großen Pulldown-Widerstand.

    Die Länge des Kabels hat kaum Einfluss.

    Den Sensor kannst du auch mit den Tricks hübsch machen. Steck die beiden Drähte mit dem "gesalzenen" Küchenpapier in ein kleines Röhrchen. Das sieht gut aus und wenn Wasser in das Röhrchen kommt, saugt sich das Papier voll, das Salz löst sich und du bekommst ein sauberes Signal.


    Google sagt, Leitungswasser läge bei 0,0005 S/m, also 2000 Ohm m - ich hab grad mal nachgemessen, das kann nicht hinkommen. Ich hab bei Leitungswasser in einer Tasse schon bei wenigen Zentimetern Abstand und Nutzung von zwei Löffeln als "Elektroden" einen Widerstand von 2000 KOhm (2 MOhm). Mit einer guten priese Salz drin, geht es auf 300 KOhm runter. Das klingt mir nicht sehr verlässlich.

    Also, mit 10 K kann es meiner Meinung nach nicht funktionieren und mit 100 K eigentlich auch nicht.

    R1 und R3 bilden (wenn Wasser da ist) einen Spannungsteiler.
    Bei 10 K ist die Spannung am GPIO ca. 10/45 * 3,3 = 0,7 V - das gibt kein HIGH-Signal.

    Bei 100 K ist die Spannung am GPIO ca. 100/135 * 3,3 = 2,4 V - besser als nichts, aber es sollten eigentlich besser mehr sein.

    Die 35 KOhm sind nur ein Schätzwert für den Widerstand des Wassers. Das hängt davon ab, wie leitfähig das Wasser durch Bestandteile aus der Umwelt wird. Ist es Schmutzwasser mit gelösten Stoffen oder ist der Boden ein poröser Betonboden, aus dem sich Mineralien lösen, wird der Widerstand geringer. Du kannst auch tricksen. Z. B. die beiden Kabelenden, die das Wasser detektieren sollen, mit Küchenpapier verbinden, das du vorher in Salzwasser getränkt und getrocknet hast. Oder einfach die beiden Drähte zusammen (ohne dass sie sich berühren) in das Küchenpapier wickeln und etwas Salz zwischen die Papierlagen streuen, das sich dann im Wasser löst und es leitfähiger macht... Auch der Abstand der Drähte spielt einer Rolle - je geringer, desto besser der Kontakt.
    Jedenfalls sollte R3 mindestens 10 mal so groß sein wie R1.



    Vorschlag für eine alternative Schaltung:
    Nimm einen 0815-Optokoppler (z.B. Typ 817) und baue den Sensor damit wie folgt: 5V vom Pi - Optokoppler - 200 Ohm Widerstand - langes Kabel zum Wassermesspunkt - langes Kabel zurück zum Pi - an GND.

    Den Ausgang des OK benutzt zum Schalten des GPIO. Du kannst den internen Pullup benutzen. Vor den GPIO sollte zur Sicherheit noch ein 1KOhm Widerstand.
    Allerdings brauchst du auch hier eine ausreichende Leitfähigkeit des Wassers. Insofern machts keinen nennenswerten Unterschied. Lediglich Fehlsignale wegen des langen Kabels sind hier ausgeschlossen.



    Hallo!


    Die einzelnen Paletten sollen also von oben mit Lichttastern erfasst werden? Du schriebst "kein Reflex" - aber die Dinger heißen Reflexions-Lichttaster und messen das von der Palette reflektierte Licht. Du wolltest sicher ausdrücken, dass du keine Reflektoren irgendwo hinkleben musst.

    Du wirst aber vermutlich mehr GPIOs brauchen, als der Pi bereitstellt, musst also Porterweiterungen nutzen. Es gibt fertige Hats (z. B. von Prindopia) oder du bastelst dir selbst was.


    Der Pi könnte als Webserver für das Tablet programmiert werden und die Daten auf diese Weise anzeigen.


    Du wirst allerdings recht lange Kabel haben, die allerhand Störsignale auffangen. Deine Abfrage der Lichtschranken sollte deshalb besser nicht mit Interrupts arbeiten (wird bei den Porterweiterungen eh schwierig), sondern einfach zyklisch die Zustände abfragen und erst dann einen Zustand ändern, wenn mehrere Abfragen hintereinander das gleiche Ergebnis geliefert haben.


    Technisch dürfte das alles kein Problem sein.

    Warum soll das untauglich sein, die Auflösung des Displays hat doch nichts mit der Auflösung des Bildes zu tun.

    Ah, hab ich falsch gesehen - ich dachte, es geht um eine Kamera... Fürs Display reicht das natürlich. Aber wegen der Boot-Zeit und Komplexität des Pi wäre eine Lösung mit µC doch netter. Aber auch schwieriger umzusetzen.

    Für den Pi gibt es ja reichlich Anleitungen für "Fotoboxen" - die im Grunde nichts anderes machen... Daran müsste man sich doch gut orientieren können...

    TA, wenn ich 320x480 Pixel lese, geht es dir offenbar nicht ums Fotografieren mit dem Ding, sondern nur um die Anschauung, oder?

    Wenn du "richtige" Fotos machen willst, ist sowas untauglich.

    Willst du denn eine alte Kamera umbauen oder willst du was nachbauen, was nur so ähnlich aussieht?


    Zum Aufnehmen eines Fotos reicht wohl auch ein Arduino (oder besser ein leistungsfähigerer Controller wie ESP8266 oder ESP32 mit mehr RAM und höherem Takt) - Kameras dafür gibt es.

    Ein Arduino kann sogar sehr eingeschränkt Videos abspielen - also müsste es doch auch möglich sein, Kamera und Display zu kombinieren (mit einem ESP allemale).
    Möglicherweise auch mit zwei Kameras (und zwei Controllern) - eine kleine für das Display-Bild und eine besser auflösende für die Aufnahme. (Diese alten Kameras hatten doch sowieso meist zwei Linsen - eine für den Sucher und eine für die Filmbelichtung. Das würde sich dann ja genau entsprechen...

    Da bietet sich für jedes Fenster (oder wenn die nah beieinander liegen auch für zwei Fenster zusammen) ein Mikrocontroller an - am einfachsten wohl ein Arduino Nano. Dazu entsprechend ein zwei- oder vierkanal Motortreiber und pro Laden ein Motor.

    Natürlich noch Netzteile für die Motoren, von denen du jeweils auch Strom für den Arduino abzweigen kannst. Der Arduino braucht 5V, die Motoren eher mehr - deshalb noch einen Spannungswandler von der Netzteil-/Motorspannung (z. B. 12 V) auf 5V. Hast du denn Strom in der Nähe der Fenster? Sonst musst du noch alles aufstemmen und Kabel legen...

    Diese Klappladen-Öffner arbeiten offenbar mit Schneckengetrieben - also ohne Schlupf. Damit lässt sich die Rolladenposition über Schrittmotoren anfahren. Alternativ mit Drehgeber die Umdrehungen zählen. Endschalter würde schwierig werden, weil die außen liegen müssten.

    Jeder Arduino braucht einen Funkempfänger (am besten 868 MHz - weniger Störungen als 433 MHz).

    Die Steuerung kannst du dann über einen zentralen Pi machen, der die Befehle an die Arduinos schickt. Oder auch über Funkschalter an den Türen.

    Natürlich gehts auch ganz ohne Funk und Zentralsteuerung mit einem Taster an jedem Arduino.


    Klingt vielleicht sehr kompliziert, aber wenn man sich schrittweise rantastet, ist es machbar. Als Anfänger wirst du aber einige Zeit investieren müssen.


    ( K_! : Node MCU / ESP8266 ist in der Tat auch ne gute Lösung - Verbindugn über WLAN ist ggf. einfacher zu machen, als ein eigenes Funknetz auf SRD-Frequenzen.)

    Sieht irgendwie aus, als gäbe es kein hartes Kriterium dafür, wann das Licht an oder aus sein soll...

    Das ganze ist eine Mischung aus Wahrnehmungen - Bewegung, Größe des Objekts, Aussehen, ggf. Temperatur, Geräusche.

    Ein still sitzender Mensch soll das Licht eingeschaltet lassen... ein sich bewegender Dobermann soll es aber nicht einschalten. Ein Menschlicher Körper mit Wärmeabstrahlung heißt "Licht an" - eine Kanne heißen Tees auf dem Tisch oder der Heizkorper an der Wand sollen das Licht aber nicht aktivieren. Ein durchs Zimmer laufender Mensch heißt "Licht an", ein flimmernder Fernseher oder ein Schwingendes Uhrpendel aber nicht...


    Das ruft nach KI. Wie wäre es mit mehreren Sensoren und einem lernfähigen neuronalen Netz. Nach einiger Zeit müsste das System gelernt haben, welche Signale das Licht einschalten sollen...


    Das wäre sicher mal eine Herausforderung... Tensorflow installieren, Bewegungssensoren, Micro und (IR-)Kamera dran und dann... naja, einfach wird das sicher nicht.

    ... tja, vorausgesetzt man kann die Art des Signals nachbilden und ggf. die Codierung knacken... Da müsste man erst mal wissen, mit was man es genau zu tun hat.
    Einfacher ist da die Brückung des Tasters der Fernbedienung im Zweifel schon. Zumal, wenn man "Anfänger" ist. Die Fragestellung deutet ebenso wie der Nick-Zusatz nicht auf einen Profi hin.
    Statt Realis würde ich aber eher mal Optokoppler nehmen, das vereinfacht die Sache ungemein.


    Viel interessanter finde ich die Frage, was denn eigentlich die Rolle des Pi dabei ist... soll er eine Art Zeitsteuerung übernehmen? Licht an/Licht aus nach vorgegebenen Zeiten - zur Einbrecherabschreckung oder so? Der Hintergrund wäre schon interessant. Vielleicht gibt es bessere Lösungen als einen Pi mit Relais.

    Also, wenn du ein bisschen damit rumspielen willst, geht das sicher... aber für einen ernsthaften Onlineshop würd ich die Finger vom Pi lassen. Das macht dir mehr Arbeit, als die Sache wert ist. Installation, Systempflege, Zertifikate, Ausfallsicherheit, Datensicherung, Performance, ...

    Einen einfachen Onlineshop bei einem Hoster gibts für 15-20 € im Monat - und dafür hast du den ganzen Kram von der Backe. Wenn du Verkäufe mit "mittleren Zugriffsraten" generierst, wirst du dir das hoffentlich leisten können.