kostenloser Webspace werbefrei: lima-city


Raspberry Pi An-/Austaster

lima-cityForumSonstigesTechnik und Elektronik

  1. Autor dieses Themas

    thwbm

    thwbm hat kostenlosen Webspace.

    Hallo,

    ich suche nach einer Lösung meinen Raspberry Pi über einen einzigen Taster bei der
    1. Betätigung mit Strom zu versorgen und ihn somit hochzufahren und bei der
    2. Betätigung sauber herunterzufahren und vom Netz zu trennen, sodass er keinen Strom mehr braucht.

    Gibt es dafür eine elegante Lösung?

    Leider habe ich bisher keine praktikabele Lösung gefunden. Mein Ansatz:
    1. Betätigung: Der Taster löst zum Hochfahren einen Eltako aus, der den Raspberry Pi mit Strom versorgt.
    2. Betätigung: Der Taster verbindet zwei GPIO-Pins, sodass über ein Skript der Befehl
    sudo shutdown now -h
    ausgeführt wird. Gleichzeitig wird das Signal über ein Zeitrelais verzögert, sodass der Raspberry Pi 60 Skunden nach beätigen des Tasters vom Strom getrennt wird.

    Dieser Ansatz ist so nicht ausgereift und viel zu umständlich. Hat jemand eine Lösung oder auch einen Lösungsansatz, der keine elektrische Schaltung, die größer und teurer als der Raspberry Pi selber ist, benötigt?

    Ich bedange mich im Voraus für alle Antworten und Anregungen.
    MFG THWBM
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo,

    zum Hochfahren genügt ja ein einfaches Relais oder ein Transistor, ein Eltako ist da nicht erforderlich wenn man es richtig schaltet, oder man verwendet einen kleinen Mikrocontroler der das Relais / den Transistor ansteuert wenn man unbedingt EIN und AUS über EINEN Taster erledigen möchte...

    Zum Herunterfahren finde ich die Lösung mit den GPIO pins eigentlich gar nicht schlecht, wenn man zu eben genannter Mikrocontrolervariante zurück kommt dann kann man damit auch die Zeitverzögerung realisieren.

    Ganz spannend wäre es, wenn sich ein IO-Pin finden würde der sofort bei Powerup ein Potential führt und bei Power Down logischerweise nicht mehr...dann wüsste man wann der shutdown beendet ist und man ausschalten darf...die Lösung mit der Verzögerung ist nämlich nicht so toll, weil nicht definiert ist wenn das Runterfahren mal länger duaert bspw. weil erst irgendwelche Fehlermeldungen kommen...

  4. Autor dieses Themas

    thwbm

    thwbm hat kostenlosen Webspace.

    Hallo,
    danke für die Antwort.
    fatfox schrieb:
    zum Hochfahren genügt ja ein einfaches Relais oder ein Transistor, ein Eltako ist da nicht erforderlich wenn man es richtig schaltet[...]

    Wie meinst du das? Wenn ich eine Relais mit einem Taster ansteue, springt es doch sofort wieder zurück wenn ich losgelassen habe. Müsste ich dafür dann nicht einen Schalter nehmen?

    fatfox schrieb:
    [...] oder man verwendet einen kleinen Mikrocontroler der das Relais / den Transistor ansteuert [...]

    Mit Microcontrolern kenne ich mich leider überhaupt nicht aus. Alles was ich bis jetzt dazu gefunden habe sieht nach einer sehr komplizierten Schaltung aus (In diesem Artikel wird dieser Schaltplan verwendet.). Ich denke, dass eine solche Schaltung üertrieben kompliziert ist.

    fatfox schrieb:
    [...]Ganz spannend wäre es, wenn sich ein IO-Pin finden würde der sofort bei Powerup ein Potential führt und bei Power Down logischerweise nicht mehr...dann wüsste man wann der shutdown beendet ist und man ausschalten darf [...]

    Das ist auf jeden Fall eine gute Idee, macht die Sache aber nicht unbedingt einfacher.
    Wenn ich den zweiten Beitrag dieses Themas richtig verstanden habe, springt GPIO 14 nach dem herunterfahren auf 0V. Damit wüsste man ab wann der Raspberry Pi fertig heruntergefahren ist.

    Wie setze ich das aber am besten um? Ist die Lösung mit einem Microcontroler wirklich die Beste? Mir wäre eine weniger komplizierte, mehr programmorientierte Möglichkeit lieber.
    Hat irgendjemand vielleicht noch ein paar weitere Schlagworte, nach denen ich mich erkundigen kann?

    MFG THWBM
  5. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    thwbm schrieb:
    fatfox schrieb:
    zum Hochfahren genügt ja ein einfaches Relais oder ein Transistor, ein Eltako ist da nicht erforderlich wenn man es richtig schaltet[...]

    Wie meinst du das? Wenn ich eine Relais mit einem Taster ansteue, springt es doch sofort wieder zurück wenn ich losgelassen habe. Müsste ich dafür dann nicht einen Schalter nehmen?
    Ich weiß zwar nicht wie der Fux das gemeint hat, aber mit Relais ist auch eine Selbsthaltung möglich, soll heißen: schaltest du das an bleibt es an, bis du extra wo den Stromkreis unterbrichst.

    thwbm schrieb:
    Mit Microcontrolern kenne ich mich leider überhaupt nicht aus. Alles was ich bis jetzt dazu gefunden habe sieht nach einer sehr komplizierten Schaltung aus (In diesem Artikel wird dieser Schaltplan verwendet.). Ich denke, dass eine solche Schaltung üertrieben kompliziert ist.
    So wie es aussieht ist dieser Microcontroller allerdings für diese Anwendung deutlich zu komplex, da gäbe es deutlich einfachere. Aber: könnte es nicht auch sein, dass du bereits mit einer einfachen digitalen Schaltung genau das erreichen kannst, was du brauchst? Ich denke da jedenfalls gerade an ein einfaches FlipFlop, das du per Taster »anschaltest« und das sich dann beim GPIO-Pin wieder »ausschaltet« … das ginge dann ganz ohne Microcontroller. Und mit einem RC-Glied o.ä. wäre auch die Zeitverzögerung machbar, vorausgesetzt du weißt wie lange du verzögern magst … aber ob das günstiger ist als ein Microcontroller?
  6. Autor dieses Themas

    thwbm

    thwbm hat kostenlosen Webspace.

    hackyourlife schrieb:
    thwbm schrieb:
    fatfox schrieb:
    zum Hochfahren genügt ja ein einfaches Relais oder ein Transistor, ein Eltako ist da nicht erforderlich wenn man es richtig schaltet[...]

    Wie meinst du das? Wenn ich eine Relais mit einem Taster ansteue, springt es doch sofort wieder zurück wenn ich losgelassen habe. Müsste ich dafür dann nicht einen Schalter nehmen?
    Ich weiß zwar nicht wie der Fux das gemeint hat, aber mit Relais ist auch eine Selbsthaltung möglich, soll heißen: schaltest du das an bleibt es an, bis du extra wo den Stromkreis unterbrichst.

    Also ein Relais, das sich selbs ansteuert und somit ein Endlossignal erzeugt?

    hackyourlife schrieb:
    könnte es nicht auch sein, dass du bereits mit einer einfachen digitalen Schaltung genau das erreichen kannst, was du brauchst? Ich denke da jedenfalls gerade an ein einfaches FlipFlop, das du per Taster »anschaltest« und das sich dann beim GPIO-Pin wieder »ausschaltet« ?


    Die Idee gefällt mir. Ich habe jetzt mal überprüft, wie es mit den GPIO-Pins aussieht, wenn ich den Raspberry Pi herunterfahre. Beim hochfahren ist Pin 8 (mein Beispielpin) auf 0V. Wenn der Raspberry Pi fertig hochgefahren ist, kann ich ihn auf 3,3V schalten. Wenn ich jetzt den Befehl
    sudo shutdown now -h
    ausführe bleibt die Spannung von 3,3V noch kurz bestehen und springt dann auf etwa 0,5V. Ich bin mir nicht Sicher, ob das erst passiert, wenn der Raspberry Pi vollständig heruntergefahren ist oder schon auf halber strecke.

    Ich habe einen äußerst professionellen Schaltplan erstellt, der aber mehr oder weniger funktionieren sollte:
    ,,/---\,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    ,(,(T),)-----+,,,,,,,,,,,,,,,,,,,,,,
    ,,\---/,,,,,,|,,,,,,,,,,,,,,,,,,,,,,
    ,,,,|,,,,,,,,|,,,,,,,,,,,,,,,,,,,,,,
    ,,,,|,,,,,,,,+---------------------+
    ,,,,|,,,,,,,,|,,,,,,,,,,,,,,,,,,,,,|
    ,,,,|,,,,+---+--+,,,,,,,,,,,,,,,,,,|
    +---+----+RELAIS+-----+,,,,,,,,,,,,|
    |,,,,,,,,+------+,,,,,|,,,,,,,,,,,,|
    |,,,,,,,,,,,,,,,,,,+--+--++-----+,,|
    |,,,,,,,,,,,,,,,,,,|,RPi,||GPIO8+--+
    |,,,,,5V,,,,,,,,,,,+--+--++-----+,,,
    |,,,,,|,,,,,,,,,,,,,,,|,,,,,,,,,,,,,
    +-----||--------------+,,,,,,,,,,,,,
    ,,,,,,|,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

    Zur erklärung:
    Das "T" ganz oben stellt den Taster dar. Er stellt die Steuerspannung des Relais dar, genauso wie GPIO 8.
    Wenn ich richtig liege müsste man bei dieser Schaltung den Taster gedrückt lassen, bis der Raspberry Pi hochgefahren ist und GPIO 8 auf 3,3V gesetzt wurde. Beim herunterfahren würde GPIO 8 dann auf 0,5V fallen, was beim richtigen Relais dazu führen würde, dass die Stromversorgung unterbrochen wird.

    Ich hoffe man kann einigermaßen erkennen, wie ich mir die Schaltung vorstelle. Wahrscheinlich sind da noch viele, grobe Fehler eingebaut.
    Funktioniert die Schaltung so ansatzweise oder bin ich auf dem Holzweg?
    Wie bekomme ich es hin, dass ich den Taster nicht festhalten muss, bis der RPi vollständig hochgefahren ist?

    MFG THWBM
  7. michaelkoepke

    michaelkoepke hat kostenlosen Webspace.

    Hey, guter ansatz, aber warum ein relais? Finde ich zu kompliziert :)

    Das beste wäre doch du nutzt Transistoren und baust dir einen "bistabilen Multivibrator" (nix schweinisches :biggrin:)

    Diese besteht aus zwei Transistoren, und einige wenige Wiederstände ... (Plan kann ich dir auch liefern)

    Du betätigst einen Taster (kurz) der Multivibrator springt um und dein Raspberry startet ... Wird er herunter gefahren schaltet der Pin von 3,3 auf ca. 0 V und schaltet somit den zweiten Transistor wieder ab. Nun kannst wieder auf den Taster drücken, oder es sein lassen ...

    hier einige nützliche infos dazu ...http://www.dieelektronikerseite.de/Lections/Bistabiler%20Multivibrator%20-%20Es%20kann%20nur%20Einen%20geben.htm

    MFG Micha
  8. Autor dieses Themas

    thwbm

    thwbm hat kostenlosen Webspace.

    Danke für die Antwort.
    michaelkoepke schrieb:
    Das beste wäre doch du nutzt Transistoren und baust dir einen "bistabilen Multivibrator" [...] hier einige nützliche infos dazu ...http://www.dieelektronikerseite.de/Lections/Bistabiler%20Multivibrator%20-%20Es%20kann%20nur%20Einen%20geben.htm

    Das sieht interessant aus.
    michaelkoepke schrieb:
    Du betätigst einen Taster (kurz) der Multivibrator springt um und dein Raspberry startet ... Wird er herunter gefahren schaltet der Pin von 3,3 auf ca. 0 V und schaltet somit den zweiten Transistor wieder ab.

    Wenn ich die Schaltung richtig verstanden habe, dürfte das so nicht funktionieren. In den Schaltungen gibt es zwei Taster: S1 und S2. S1 ist mein Antaster. S2 ersetze ich durch einen weiteren Transistor, den ich mit einem GPIO Pin ansteure.
    Wenn jetzt der RPi hochgefaren ist und ich den GPIO-Pin auf 3,3V stelle, müsste doch sofort die Stromzufuhr unterbrochen werden. Sie soll aber erst unterbrochen werden, wenn der GPIO-Pin auf etwa 0V zurückspringt.
    Habe ich das falsch verstanden?

    MFG THWBM
  9. michaelkoepke

    michaelkoepke hat kostenlosen Webspace.

    thwbm schrieb:
    Wenn ich die Schaltung richtig verstanden habe, dürfte das so nicht funktionieren. In den Schaltungen gibt es zwei Taster: S1 und S2. S1 ist mein Antaster. S2 ersetze ich durch einen weiteren Transistor, den ich mit einem GPIO Pin ansteure.
    Wenn jetzt der RPi hochgefaren ist und ich den GPIO-Pin auf 3,3V stelle, müsste doch sofort die Stromzufuhr unterbrochen werden. Sie soll aber erst unterbrochen werden, wenn der GPIO-Pin auf etwa 0V zurückspringt.
    Habe ich das falsch verstanden?

    MFG THWBM


    Im Prinzip würde es funktionieren, die Schaltung wird durch 0V zurückgesetzt (S1 sowie S2 schalten gegen 0V!) Sprich ein Sprung von 3,3 auf ca. 0V (mit Widerstand beeinflussbar) Wird die Schaltung zurückgesetzt und dein Raspberry bekommt kein Strom mehr ... Natürlich fehlen in dieser Schaltung noch ein Kondensator um sicherzustellen, das immer der Selbe Zustamd beim Einschalten (Stromzufuhr) eintritt ...

    Eine Frage ist noch zu klären ... Der Pin wird auf 3,3V gesetzt sobald an, oder sobald dein Programm sagt, der Pi ist hochgefahren? Wenn das so ist, muss da auch noch ein Kondensator rein, um die Basis auf über 1-2V zu halten, bis der Pin auf 3,3V umschaltet.

    Wenn dir das zu kompliziert scheint, kannst du auch einen IC mit dem Namen 7400 nehmen und eine Logikschaltung bauen (RS-Flipflop - im prinzip wie oben, nur alles was du braucht schon im einem IC verbaut ...)
    hier mal ein Datenblatt dazu http://www.nxp.com/documents/data_sheet/74HC_HCT00.pdf
  10. Autor dieses Themas

    thwbm

    thwbm hat kostenlosen Webspace.

    michaelkoepke schrieb:
    Im Prinzip würde es funktionieren, die Schaltung wird durch 0V zurückgesetzt (S1 sowie S2 schalten gegen 0V!) Sprich ein Sprung von 3,3 auf ca. 0V (mit Widerstand beeinflussbar) Wird die Schaltung zurückgesetzt und dein Raspberry bekommt kein Strom mehr ...

    Bist du dir da sicher? Ich kenne mich zwar leider nicht sehr gur mit Schaltplänen aus, aber für mich sieht dieser Schaltplan so aus, als würde sich die Leuchtende LED wechseln, wenn ich den Taster drücke und nicht, wenn ich ihn loslasse. Kann mir das vielleicht mal jemand genauer und Stück für Stück erklären?
    michaelkoepke schrieb:
    Eine Frage ist noch zu klären ... Der Pin wird auf 3,3V gesetzt sobald an, oder sobald dein Programm sagt, der Pi ist hochgefahren? Wenn das so ist, muss da auch noch ein Kondensator rein, um die Basis auf über 1-2V zu halten, bis der Pin auf 3,3V umschaltet.

    Der Pin springt erst auf 3,3V, wenn der Raspberry Pi nach etwa 20 bis 30 Sekunden hochgefahren ist und das Skript gestartet wurde. Wo genau müsste der Kondensator denn dann hin?
    michaelkoepke schrieb:
    Wenn dir das zu kompliziert scheint, kannst du auch einen IC mit dem Namen 7400 nehmen und eine Logikschaltung bauen (RS-Flipflop - im prinzip wie oben, nur alles was du braucht schon im einem IC verbaut ...)
    hier mal ein Datenblatt dazu http://www.nxp.com/documents/data_sheet/74HC_HCT00.pdf

    Das sieht interessant aus. Bei Conrad finde ich dazu das hier. In deinem Datenblatt hat das Teil 14 Kontake, bei Conrad 16. Warum ist das so? Kann dieses kleine Bauteil das gleiche wie die umfangreichere Schaltung? Wenn ja, wo müsste ich was anschließen, wenn ich mit zwei Tastern zwei LEDs steuern wollte?
    Danke für die Hilfreichen Antworten.
    MFG THWBM
  11. michaelkoepke

    michaelkoepke hat kostenlosen Webspace.

    thwbm schrieb:
    Kann mir das vielleicht mal jemand genauer und Stück für Stück erklären?
    [...]
    Wo genau müsste der Kondensator denn dann hin?
    [...]
    Bei Conrad finde ich dazu das hier.
    In deinem Datenblatt hat das Teil 14 Kontake, bei Conrad 16. Warum ist das so?
    Kann dieses kleine Bauteil das gleiche wie die umfangreichere Schaltung? Wenn ja, wo müsste ich was anschließen, wenn ich mit zwei Tastern zwei LEDs steuern wollte?
    Danke für die Hilfreichen Antworten.
    MFG THWBM


    Hallo,

    es erfreut mich immer, wenn sich jemand intensiv mit seinem eigenem Thema befasst, sich nicht alles vor seine Nase legen lässt und mitdenkt, dafür bekommst du erstmal einen :thumb:

    Also zu deiner ersten Frage:

    Schau dir mal auf sieser Seite das erste Bild an. Schau dir die Stromquelle genauer an. Der lange Strich zeigt, dass oben der Pluspol und der kurze Strich, unten der Minuspol ist. Nun lenke deinen Blick auf die Schalter, beide sind mit dem Minuspol verbunden und schalten somit gegen 0V, nichts anderes machen Microcontroller und dein Raspberry, die Transostoren in diesen Microcontroller machen das selbe wie diese Schalter, und schalten deinen Pin gegen Plus bzw. Minus. Schau dier das Datenblatt von der Conradseite an auf der ersten Seite unten links mit der Überschrifft "INPUT AND OUTPUT EQUIVALENT CIRCUIT" findest du ein Beispiel wie ein Microcontroller oder IC ausgänge über Transistoren, Thyristoren schaltet, vieleicht hilft das mein oben genannten Schriebs zu verstehen.

    Zur 2ten Frage:

    Der Kondensator müsste einmal an die Basis des 2ten Transistors um zu verhindern, dass bei Spannungszuschaltung der Raspberry gleich startet.

    Zur 3ten Frage:

    Lass dich bitte nicht von den Augen und von Bildern täuschen und lies etwas weiter unten :wink: da steht SO-14 Gehäuse (sprich 14 Pins, wie bei mir) Aber Achtung, das Teil was du gefunden hast, ist ein SMD Bauteil und passt auf keine normale Lochrasterplatine ... Das Teil heißt anders, macht aber das slbe

    Ich kann dir sehr gern eine fertige Schaltung mit Materialliste fertigen ...

    MFG Micha
  12. Autor dieses Themas

    thwbm

    thwbm hat kostenlosen Webspace.

    Danke für die ausführliche Antwort. Du bist mir wirklich eine sehr große Hilfe.
    michaelkoepke schrieb:
    Nun lenke deinen Blick auf die Schalter, beide sind mit dem Minuspol verbunden und schalten somit gegen 0V,

    Heißt das, dass wenn ich die Stromversorgung umpolen würde und dementsprechend auch die LEDs, der Schaltkreis auf Loslassen der Taster reagieren würde? Ich weiß nicht, ob ich jetzt total daneben Liege, aber theoretisch sollte die Polung der Schaltung doch nur für die Dioden interessant sein. Wenn man dafür Glühlampen einsetzen würde, müsste es doch absolut egal sein. Wo ist mein Verständnisfehler?
    michaelkoepke schrieb:
    Schau dier das Datenblatt von der Conradseite an auf der ersten Seite unten links mit der Überschrifft "INPUT AND OUTPUT EQUIVALENT CIRCUIT" findest du ein Beispiel wie ein Microcontroller oder IC ausgänge über Transistoren, Thyristoren schaltet, vieleicht hilft das mein oben genannten Schriebs zu verstehen.

    Leider verstehe ich die Zeichnung nicht. Die Zeichnung zeigt insgesammt 6 beschriftete Kontakte. Sollten das nicht 14 sein? Oder stellt die Zeichnung nur einen Teil des ICs dar? Die Zeichnung Rechts daneben ("PIN CONNECTIONS") zeigt oben eine Schematische Zeichnung des ICs. Muss ich mir diese vier gleich aufgebauten "Teile" (ich habe grade kein besseres Wort dafür) wie Transistoren vorstellen? Ist der IC so eine Art Transistorsammlung, sodass alle vier einzeln und unabhängig voneinander arbeiten? Wenn ja, wofür sind dann VCC und GND?
    michaelkoepke schrieb:
    Lass dich bitte nicht von den Augen und von Bildern täuschen und lies etwas weiter unten :wink:[...] Aber Achtung, das Teil was du gefunden hast, ist ein SMD Bauteil und passt auf keine normale Lochrasterplatine ... Das Teil heißt anders, macht aber das slbe

    Danke für die Hinweise. Endlich mal Dinge, die ich auf Anhieb verstehe :wink:.
    michaelkoepke schrieb:
    Ich kann dir sehr gern eine fertige Schaltung mit Materialliste fertigen ...

    Das fände ich sehr Nett. Der Schaltplan würde mit Sicherheit beim Verstehen helfen. Und falls ich es dann noch nicht verstehe, sollte ich es verstehen, wenn ich es (nach-)baue. Die Hauptsache ist, dass ich am Schluss eine Schaltung habe, die funktioniert und bei der ich weiß, warum sie funktioniert :wink:.
    MFG THWBM
  13. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!