LK-FlameSENsor: Unterschied zwischen den Versionen

Aus Linkerkit.de

Wechseln zu: Navigation, Suche
(Codebeispiel Arduino)
(Codebeispiel Raspberry)
 
Zeile 30: Zeile 30:
  
 
==Codebeispiel Raspberry==
 
==Codebeispiel Raspberry==
 
 
<pre class="brush:py">import RPi. GPIO as GPIO
 
<pre class="brush:py">import RPi. GPIO as GPIO
 
import spidev
 
import spidev
Zeile 48: Zeile 47:
 
def readadc(adcnum):
 
def readadc(adcnum):
 
r = spi.xfer2([1,8+adcnum << 4,0])
 
r = spi.xfer2([1,8+adcnum << 4,0])
adcout = ((r[1] & 3) <<8)+r[2]
+
adcout = ((r[1] & 3) <<8)+r[2] return adcout
return adcout
+
  
 
while True:
 
while True:
 
value = readadc(flame)
 
value = readadc(flame)
print("Current Value: " + str(value))
+
print("Current Value: " + str(value))<br />
 +
        #LED wird aktiviert, sobald der Sensor über einen Wert steigt.
 +
        #Sensitivität mit "(value > 200)" verändern.
 
if(value > 200):
 
if(value > 200):
 
GPIO.output(led, True)
 
GPIO.output(led, True)

Aktuelle Version vom 16. November 2016, 16:37 Uhr

Bild

LK-FlameSen.jpg

Technische Daten / Kurzbeschreibung

Linker Kit Flammen Sensor. Reagiert auf Infrarot und Ultraviolette Strahlung wie z.B. von Flammen erzeugt wird.
Diese Platine hat drei nützliche Pins: Sensor Ausgangs Signal, Power, Ground.
Das Ausgangssignal ist ein Analoges Signal.

In Innenräumen liegt das Ausgangssignal bei 0V.
Wenn es Flammen oder andere Infrarot Quellen gibt wird sich das Ausgangssignal erhöhen.
Sollte die Intensität des Lichts hoch sein, kann sich das Ausgangssignal bis auf 3V erhöhen.

Codebeispiel Arduino

void setup() {
  Serial.begin(9600);
  pinMode(6, OUTPUT);
  }

void loop() {
  int sensor = analogRead(A0);
  Serial.print("Flame: ");
  Serial.println(sensor, DEC);
  /*LED wird aktiviert, sobald der Sensor einen Wert überschreitet.
   * Sensitivität mit "sensor > 200" verändern.
   */
  if(sensor > 200){
    digitalWrite(6, HIGH);
  }
  else{
    digitalWrite(6, LOW);
  }
  delay(200);
}

Codebeispiel Raspberry

import RPi. GPIO as GPIO
import spidev
from time import sleep

#Initialisiere Sensor auf A0 & LED auf D4
flame = 0
led = 4

spi = spidev.SpiDev()
spi.open(0,0)
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(led, GPIO.OUT)
GPIO.output(led, False)

def readadc(adcnum):
	r = spi.xfer2([1,8+adcnum << 4,0])
	adcout = ((r[1] & 3) <<8)+r[2]	return adcout

while True:
	value = readadc(flame)
	print("Current Value: " + str(value))<br />
        #LED wird aktiviert, sobald der Sensor über einen Wert steigt.
        #Sensitivität mit "(value > 200)" verändern.
	if(value > 200):
		GPIO.output(led, True)
	else:
		GPIO.output(led, False)
	sleep(0.5)