GPIO Eingang per Skript setzen

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hi Gemeinde,
    hab schon viel dr. Google befragt, aber nichts gefunden.

    Kann ich einen als Eingang definierten GPIO, welcher von einen Skript periodisch abgefragt wird, auch per Skript "Schalten" und nicht blos per angeschlossenem Schalter?

    Danke

  • Hi,
    ich verstehe Dein Anliegen ehrlch gesagt nicht :s

    Klar kann man einerseits GPIOs per Software abfragen. Und klar kann man GPIOs auch per Software steuern. Das sind aber -> absolute Grundlagen <- ...
    Wozu aber eine Kombination aus den beiden Möglichkeiten sinnvoll ist, da beide Programme/scripte dazu auf demselben RPi laufen müssen, erschliesst sich mir nicht :-/

    cu,
    -ds-

  • Hallo GeoSchaf,

    mit den GPIOs kannst Du so ziemlich alles veranstalten, was ein genialer Kopf sich nur auszudenken in der Lage ist.

    Du solltest aber immer wissen, was Du tust, und insbesondere wissen, welche Spannung wo anliegen können (der Raspberry Pi mag Spannungen oberhalb 3,3 V gar nicht). Ebenso musst Du Vorsorge treffen, wenn irgendeine Schaltung etwas stromhungriger ist, als so ein kleiner GPIO-Pin abgeben kann. Hierfür siehe bitte die entsprechenden Grundlagen-Beiträge.

    So kannst Du (um Deiner Frage näherzukommen):
    - einen GPIO als Eingang definieren
    - den GPIO von Skripten, Programmen abfragen (HIGH, LOW, Pegeländerung, ...)
    - den GPIO von außen mit anderen Informationen füttern. So kann eine elektronische Schaltung ein bestimmtes Signal an den GPIO anlegen, der dieses Signal dann gern verrät - der Taster ist das einfachste Bauteil, nach "oben" hin sind aber keine Grenzen gesetzt.

    So habe ich z.B. mal versucht, die Auflade- und Entladekurve eines Kondensators zu messen. Der eine GPIO-Eingang hat mir Pegelwechsel von High zu LOW oder von LOW zu HIGH signalisiert. Dies führte zunächst zu MEsswerten zwischen LOW-Obergrenze (0,8 V) und HIGH-Untergrenze (1,3 V), was relativ unbefriedigend war, wenn ich die "gesamte" Kurve von 0 bis 3,3 V sehen wollte.
    Ein A/D-Wandler hat in einer späteren Version die exakte Spannung gemessen, was zu lehrbuchmäßigen Messkurven geführt hat.

    Also, letztlich kannst Du alles mit den GPIOs machen, alle möglichen Sensoren damit betreiben, auslesen. In Abhängigkeit der Daten an den Eingängen irgendwelche Aktuatoren schalten, ..., ...


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Also Grundsätzlich musst du immer ein "Script" für GPIO verwenden.
    Du kannst nicht einfach ein Taster/Schalter an ein GPIO anschließen, diesen betätigen und dann passiert irgend etwas... Das wird nichts ;) Woher soll der GPIO wissen was der angeschlossene Taster/Schalter bewirken soll? -> Das legst du im Script fest. Ob Script oder Programm ist btw irrelevant.

    Leg dich auf eine Sprache fest - zum Beispiel Python oder bash. Die meisten RaspberryPi Projekte basieren auf Python, du kannst aber auch bash nutzen - das wäre der Konsole gleichkommend.
    (eine Bitte an Wissende: keine Diskussion über die Konsole und dash o.ä. das ist nicht Zielführend)

  • Hi,

    zur Erklärung:

    ich hab ne funktionierende Alarmanlage gebastelt. Mehrere Eingänge für die Kontakte der Fenster etc., 2 Schalter(Taster) für Anlage an und Alarm Quittieren.
    Funktioniert so problemlos.

    Was ich nicht hinbekomme ist:

    Per Skript (PHP,Python...) den Eingang des Schalters für "Alarmanlage an" zu setzen, damit ich das ganze dann z.B. auch per Web An und Ausschalten kann, und nicht nur über den Schalter.
    Vlt sehe ich auch den Wald vor lauter Bäumen nicht :helpnew:


    Danke

    Einmal editiert, zuletzt von GeoSchaf (9. Dezember 2015 um 19:18)

Jetzt mitmachen!

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