Skillnad mellan versioner av "Grove - Light Sensor"

Från Karlskrona Makerspace Wiki
Hoppa till: navigering, sök
 
(3 mellanliggande versioner av samma användare visas inte)
Rad 1: Rad 1:
 +
[[Fil:Grove-light sensor.jpg|200px|thumb|right|Grove - Light Sensor]]
 +
Ljussensorn integrerar ett fotomotstånd (ljusberoende motstånd) för att detektera ljusets intensitet. Bildmotståndets motstånd minskar när ljusintensiteten ökar. Utsignalen är analogt värde, ju ljusare ljuset är desto större är värdet. Den här modulen kan exempelvis användas för att bygga en ljusstyrd strömbrytare, dvs. stäng av lampor under dagtid och slå på lampor under natten.
  
 
== Kompatibilitet ==
 
== Kompatibilitet ==
Rad 79: Rad 81:
  
 
[[Category:Grove]]
 
[[Category:Grove]]
 +
[[Category:Grove-Sensor]]
 +
 +
[[Category:Kna-Wiki]]

Nuvarande version från 4 februari 2021 kl. 07.28

Grove - Light Sensor

Ljussensorn integrerar ett fotomotstånd (ljusberoende motstånd) för att detektera ljusets intensitet. Bildmotståndets motstånd minskar när ljusintensiteten ökar. Utsignalen är analogt värde, ju ljusare ljuset är desto större är värdet. Den här modulen kan exempelvis användas för att bygga en ljusstyrd strömbrytare, dvs. stäng av lampor under dagtid och slå på lampor under natten.

Kompatibilitet

  • Arduino
  • Raspberry Pi

Port

  • Analog

Exempelkod

Arduino

const int pinLight = A0;
const int pinLed   = 7;

int thresholdvalue=400;                 //the threshold to turn on or off the LED

void setup()
{
    pinMode(pinLed, OUTPUT);             //set the LED on Digital 12 as an OUTPUT
}

void loop()
{
    int sensorValue = analogRead(pinLight);    //the light sensor is attached to analog 0
    if(sensorValue<thresholdvalue)
    {
        digitalWrite(pinLed, HIGH);
    }
    else
    {
        digitalWrite(pinLed, LOW);
    }
}

Raspberry Pi

import time
import grovepi

# Connect the Grove Light Sensor to analog port A0
# SIG,NC,VCC,GND
light_sensor = 0

# Connect the LED to digital port D4
# SIG,NC,VCC,GND
led = 4

# Turn on LED once sensor exceeds threshold resistance
threshold = 10

grovepi.pinMode(light_sensor,"INPUT")
grovepi.pinMode(led,"OUTPUT")

while True:
    try:
        # Get sensor value
        sensor_value = grovepi.analogRead(light_sensor)

        # Calculate resistance of sensor in K
        resistance = (float)(1023 - sensor_value) * 10 / sensor_value

        if resistance > threshold:
            # Send HIGH to switch on LED
            grovepi.digitalWrite(led,1)
        else:
            # Send LOW to switch off LED
            grovepi.digitalWrite(led,0)

        print("sensor_value = %d resistance = %.2f" %(sensor_value,  resistance))
        time.sleep(.5)

    except IOError:
        print ("Error")

Mer information

http://wiki.seeedstudio.com/Grove-Light_Sensor/