chunic
Volkstod-Fan
- Registriert
- 14 Juli 2013
- Beiträge
- 68
Hallo ihr Räuber,
folgendes:
Ich versuche derzeit eine Temperaturabhängige Lüftersteuerung für meinen Raspberry Pi (Homeserver, übertaktet) zu gestalten. Diese Steuerung soll auch die Möglichkeit haben den Lüfter manuell für eine bestimmte Zeit zu starten.
Ich weiß, dass das genau genommen unsinnig ist, da passive Kühlung reicht, aber es geht eben auch darum ein wenig python zu lernen(kann ich nämlich noch gar nicht) und zu basteln. Im Vordergrund steht also der Spass am basteln, nicht die absolute Sinnhaftigkeit des Projekts.
Zum Üben und Testen habe ich ein Berryclipboard auf meinem Raspberry Pi und orientiere mich an den Scripts von diesem.
Nun wollte ich, so als Einstieg, dass mir der Pi beim Druck auf einen kleinen Taster die derzeitige Temperatur meines Pis anzeigt. Aber selbst da scheitere ich schon.
Anbei mal das Script (ich sortiere das mal in Segmenten, im Script ist es eine Datei)
Definitionen:
Ich weiß, dass die Verwendung von "7" statt "switch" unsinnig erscheint, das ist ein Relikt davon, herauszufinden, wo der Fehler liegt.
Funktionen:
Bzgl. "7" statt "switch": s.o.
Ich habe, um Fehler zu vermeiden erstmal versucht eine LED einzuschalten, statt die Temperatur anzuzeigen. Wenn ich nun aber das script via "sudo python temp.py" starte, dann zeigt er mir auch an
Drücke ich dann den Taster kommt:
Wenn ich die Fehlermeldung google oder ducke finde ich nur die Entwicklung der GPIO Schnittstelle, in der der Fehler drin ist.
Anbei das Script im Ganzen
Anhang anzeigen temp.py.txt
grüße chunic
ps.: ich finde den "spoiler button" nicht
folgendes:
Ich versuche derzeit eine Temperaturabhängige Lüftersteuerung für meinen Raspberry Pi (Homeserver, übertaktet) zu gestalten. Diese Steuerung soll auch die Möglichkeit haben den Lüfter manuell für eine bestimmte Zeit zu starten.
Ich weiß, dass das genau genommen unsinnig ist, da passive Kühlung reicht, aber es geht eben auch darum ein wenig python zu lernen(kann ich nämlich noch gar nicht) und zu basteln. Im Vordergrund steht also der Spass am basteln, nicht die absolute Sinnhaftigkeit des Projekts.
Zum Üben und Testen habe ich ein Berryclipboard auf meinem Raspberry Pi und orientiere mich an den Scripts von diesem.
Nun wollte ich, so als Einstieg, dass mir der Pi beim Druck auf einen kleinen Taster die derzeitige Temperatur meines Pis anzeigt. Aber selbst da scheitere ich schon.
Anbei mal das Script (ich sortiere das mal in Segmenten, im Script ist es eine Datei)
Definitionen:
Code:
#import libs
import RPi.GPIO as GPIO
import time
#GPIO refs
GPIO.setmode(GPIO.BCM)
#setting numbers to colors
ledred = 4
ledyellow = 22
ledgreen = 9
switch = 7
#set gpio pin to output and false
GPIO.setup(ledgreen, GPIO.OUT)
GPIO.output(ledgreen, False)
GPIO.setup(ledyellow, GPIO.OUT)
GPIO.output(ledyellow, False)
GPIO.setup(ledred, GPIO.OUT)
GPIO.output(ledred, False)
#buzzer
GPIO.setup(8, GPIO.OUT)
#switch
print "Setup switch"
GPIO.setup(7, GPIO.IN)
Funktionen:
Code:
print "press the button to check temp"
while True:
temp = open("/sys/class/thermal/thermal_zone0/temp", "r")
output =float(temp.read())
temp.close()
if GPIO.input(7)==1:
GPIO.output(ledgreen, True)
# print "button pressed"
# print "(output * 0.001)"
GPIO.cleanup()
Ich habe, um Fehler zu vermeiden erstmal versucht eine LED einzuschalten, statt die Temperatur anzuzeigen. Wenn ich nun aber das script via "sudo python temp.py" starte, dann zeigt er mir auch an
Setup switch
press the button to check temp
Drücke ich dann den Taster kommt:
Traceback (most recent call last):
File "temp.py", line 37, in <module>
if GPIO.input(7)==1:
RPi.GPIOWrongDirectionException: GPIO Channel has not been set up
Wenn ich die Fehlermeldung google oder ducke finde ich nur die Entwicklung der GPIO Schnittstelle, in der der Fehler drin ist.
Anbei das Script im Ganzen
Anhang anzeigen temp.py.txt
grüße chunic
ps.: ich finde den "spoiler button" nicht