Pular para o conteúdo principal

Grove - Light Sensor

O Grove - Light Sensor integra um fotoresistor (resistor dependente de luz) para detectar a intensidade da luz. A resistência do fotoresistor diminui quando a intensidade da luz aumenta. Um chip dual OpAmp LM358 na placa produz uma tensão correspondente à intensidade da luz (isto é, com base no valor da resistência). O sinal de saída é um valor analógico; quanto mais forte a luz, maior o valor.

Este módulo pode ser usado para construir um interruptor controlado por luz, ou seja, desligar as luzes durante o dia e ligar as luzes durante a noite.

cuidado

O valor do sensor de luz apenas reflete a tendência aproximada da intensidade da luz, ele NÃO representa o Lúmen exato.

Atualizável para Sensores Industriais

Com o controlador SenseCAP S2110 controller e o S2100 data logger, você pode facilmente transformar o Grove em um sensor LoRaWAN®. A Seeed não apenas ajuda você na prototipagem, mas também oferece a possibilidade de expandir seu projeto com a série SenseCAP de robustos sensores industriais.

Os sensores industriais da série SenseCAP S210x oferecem uma experiência pronta para uso para detecção ambiental. Consulte o Sensor Sem Fio de Intensidade de Luz S2102 com desempenho e robustez superiores para detecção de intensidade luminosa. A série inclui sensores para umidade do solo, temperatura e umidade do ar, intensidade de luz, CO2, EC e uma estação meteorológica 8 em 1. Experimente o mais recente SenseCAP S210x em seu próximo projeto industrial de sucesso.

Sensor Industrial SenseCAP
S2102 Light

Versão

Versão do ProdutoAlteraçõesData de Lançamento
Grove - Light Sensor 1.0Inicial28 Abr 2013
Grove - Light Sensor(P)Mover o conector Grove para o lado de trás15 Mai 2014
Grove - Light Sensor(P) V1.1Substituir photoresistor-5528 por LS06-S vs. Grove - Light Sensor(P)31 Dez 2015
Grove - Light Sensor 1.2Substituir photoresistor-5528 por LS06-S vs. Grove - Light Sensor 1.020 Jan 2016

Recursos

  • Saída de valor analógico

  • Alta confiabilidade e sensibilidade

  • Pequena dimensão

  • Reconhece espectro mais amplo

dica

Para mais detalhes sobre os módulos Grove, consulte o Grove System

Suporte de Plataforma

ArduinoRaspberry Pi
cuidado

As plataformas mencionadas acima como suportadas são uma indicação da compatibilidade de software ou teórica do módulo. Na maioria dos casos, fornecemos apenas biblioteca de software ou exemplos de código para a plataforma Arduino. Não é possível fornecer biblioteca de software/código de demonstração para todas as possíveis plataformas de MCU. Portanto, os usuários têm que escrever sua própria biblioteca de software.

Especificação

ItemValor
Tensão de operação3~5V
Corrente de operação0,5~3 mA
Tempo de resposta20-30 milissegundos
Comprimento de onda de pico540 nm
Peso4 g

Primeiros Passos

Brincar com Arduino

Hardware

  • Passo 1. Prepare os itens abaixo:
Seeeduino V4Base ShieldGrove - Light SensorGrove - LED Bar
Adquira agoraAdquira agoraAdquira agoraAdquira agora
  • Passo 2. Conecte o Grove-Light Sensor à porta A0 do Grove-Base Shield.
  • Passo 3. Conecte o Grove-Led Bar à porta D2 do Grove-Base Shield.
  • Passo 4. Conecte o Grove - Base Shield ao Seeeduino.
  • Passo 5. Conecte o Seeeduino ao PC por meio de um cabo USB.
nota

Se não tivermos o Grove Base Shield, também podemos conectar diretamente o Grove-Light Sensor ao Seeeduino como abaixo.

SeeeduinoGrove-Light Sensor
5VVermelho
GNDPreto
Não ConectadoBranco
A0Amarelo
SeeeduinoGrove-Led Bar
5VVermelho
GNDPreto
D3Branco
D2Amarelo

Software


#include <Grove_LED_Bar.h>

Grove_LED_Bar bar(3, 2, 0); // Clock pin, Data pin, Orientation

void setup()
{
// nothing to initialize
bar.begin();
bar.setGreenToRed(true);
}

void loop()
{

int value = analogRead(A0);
value = map(value, 0, 800, 0, 10);

bar.setLevel(value);
delay(100);
}
  • Passo 2. A barra de LED mudará com base na luz.

Brincar com Codecraft

Hardware

Passo 1. Conecte um Grove - Light Sensor à porta A0 de um Base Shield.

Passo 2. Conecte o Base Shield ao seu Seeeduino/Arduino.

Passo 3. Conecte o Seeeduino/Arduino ao seu PC por meio de um cabo USB.

Software

Passo 1. Abra o Codecraft, adicione o suporte a Arduino e arraste um procedimento principal para a área de trabalho.

nota

Se esta for a sua primeira vez usando o Codecraft, veja também o Guide for Codecraft using Arduino.

Passo 2. Arraste os blocos como na figura abaixo ou abra o arquivo cdc que pode ser baixado no final desta página.

Envie o programa para o seu Arduino/Seeeduino.

dica

Quando o código terminar de ser enviado, você verá o valor de brilho exibido no Monitor Serial.

Brincar com Raspberry Pi (com Grove Base Hat para Raspberry Pi)

Hardware

  • Passo 1. Itens usados neste projeto:
Raspberry piGrove Base Hat for RasPiGrove - Light Sensor
Adquira AGORAAdquira AGORAAdquira AGORA
  • Passo 2. Conecte o Grove Base Hat ao Raspberry.
  • Passo 3. Conecte o sensor de luz à porta A0 do Base Hat.
  • Passo 4. Conecte o Raspberry Pi ao PC através de um cabo USB.
nota

No passo 3 você pode conectar o sensor de luz a qualquer porta Analógica, mas certifique-se de alterar o comando com o número da porta correspondente.

Software

cuidado

Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.

  • Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
  • Passo 2. Baixe o arquivo fonte clonando a biblioteca grove.py.
cd ~
git clone https://github.com/Seeed-Studio/grove.py

  • Passo 3. Execute os comandos abaixo para rodar o código.
cd grove.py/grove
python3 grove_light_sensor_v1_2.py 0

A seguir está o código grove_light_sensor_v1_2.py.


import math
import sys
import time
from grove.adc import ADC


class GroveLightSensor:

def __init__(self, channel):
self.channel = channel
self.adc = ADC()

@property
def light(self):
value = self.adc.read(self.channel)
return value

Grove = GroveLightSensor


def main():
if len(sys.argv) < 2:
print('Usage: {} adc_channel'.format(sys.argv[0]))
sys.exit(1)

sensor = GroveLightSensor(int(sys.argv[1]))

print('Detecting light...')
while True:
print('Light value: {0}'.format(sensor.light))
time.sleep(1)

if __name__ == '__main__':
main()

dica

Se tudo correr bem, você conseguirá ver o seguinte resultado correspondente à luz ambiente


pi@raspberrypi:~/grove.py/grove $ python3 grove_light_sensor_v1_2.py 0
Detecting light...
Light value: 600
Light value: 448
Light value: 267
Light value: 311
Light value: 102
Light value: 82
Light value: 63
Light value: 54
Light value: 49
Light value: 45
Light value: 545
^CTraceback (most recent call last):
File "grove_light_sensor_v1_2.py", line 67, in <module>
main()
File "grove_light_sensor_v1_2.py", line 64, in main
time.sleep(1)
KeyboardInterrupt

Você pode sair deste programa simplesmente pressionando ++ctrl+c++.

nota

Você pode ter notado que, para a porta analógica, a numeração serigrafada do pino é algo como A1, A0, porém no comando usamos os parâmetros 0 e 1, exatamente como na porta digital. Portanto, certifique-se de conectar o módulo à porta correta, caso contrário pode haver conflitos de pinos.

Brincar com Raspberry Pi (com GrovePi_Plus)

Hardware

  • Passo 1. Prepare os itens abaixo:
Raspberry piGrovePi_PlusGrove - Light SensorGrove - Red LED
Adquira AgoraAdquira AgoraAdquira AgoraAdquira Agora
  • Passo 2. Conecte o GrovePi_Plus ao Raspberry.
  • Passo 3. Conecte o Grove-light sensor à porta A0 do GrovePi_Plus.
  • Passo 4. Conecte o Grove-Red Led à porta D4 do GrovePi_Plus.
  • Passo 5. Conecte o Raspberry ao PC através de um cabo USB.

Software

cuidado

Se você estiver usando Raspberry Pi com Raspberrypi OS >= Bullseye, você deve usar esta linha de comando apenas com Python3.

  • Passo 1. Siga Setting Software para configurar o ambiente de desenvolvimento.
  • Passo 2. Dê um git clone no repositório do Github.
cd ~
git clone https://github.com/DexterInd/GrovePi.git

  • Passo 3. Execute os comandos abaixo.
cd ~/GrovePi/Software/Python
python3 grove_light_sensor.py

Aqui está o código grove_light_sensor.py.

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")
  • Passo 4. O LED acenderá quando o sensor de luz for coberto.
pi@raspberrypi:~/GrovePi/Software/Python $ python3 grove_light_sensor.py
sensor_value = 754 resistance = 3.57
sensor_value = 754 resistance = 3.57
sensor_value = 752 resistance = 3.60
sensor_value = 752 resistance = 3.60
sensor_value = 752 resistance = 3.60
sensor_value = 313 resistance = 22.68
sensor_value = 155 resistance = 56.00
sensor_value = 753 resistance = 3.59

Arquivo Eagle para Grove - Light Sensor V1.0

Arquivo Eagle para Grove - Light Sensor(P) V1.0

Arquivo Eagle para Grove - Light Sensor(P) V1.1

Recursos

Aqui mostraremos um projeto feito com Grove - Light Sensor - Secret Box. Primeiro você precisa de uma caixa: caixa de papelão, caixa de madeira, qualquer caixa serve. Coloque algo dentro da caixa; como a chamamos de caixa secreta, isso significa que não queremos que ninguém a abra, caso contrário haverá um alarme para avisá-lo.

Aqui usamos o LinkIt ONE como controlador, que é uma placa compatível com Arduino e consiste em funções ricas. E você precisa dos itens abaixo:

  • LinkIt ONE
  • Grove - Light Sensor
  • Grove - Base Shield
  • Um cartão SIM

Vamos conectar o Grove - Light Sensor à A0 do Base Shield e abrir a Arduino IDE, copiar o código abaixo e enviar o exemplo para o LinkIt ONE. Então, quando alguém abrir a caixa, a luz irá detectá-la e enviar um SMS para você.

// demo of Grove Starter kit for LinkIt ONE
// Secret box

#include <LGSM.h>

char num[20] = "13425171053"; // your number write here
char text[100] = "Warning: Your box had been opened!!"; // what do you want to send


const int pinLight = A0; // light sensor connect to A0

bool isLightInBox()
{
return (analogRead(pinLight)<50); // when get data less than 50, means light sensor was in box
}

void setup()
{
Serial.begin(115200);

while(!isLightInBox()); // until put in box
delay(2000);
}


void loop()
{
if(!isLightInBox()) // box is open
{
Serial.println("box had been opened");

while(!LSMS.ready())
{
delay(1000);
}

Serial.println("SIM ready for work!");
LSMS.beginSMS(num);
LSMS.print(text);

if(LSMS.endSMS())
{
Serial.println("SMS is sent");
}
else
{
Serial.println("SMS send fail");
}

while(!isLightInBox()); // until put in box
delay(2000);
}

delay(10);
}

Divirta-se.

Projetos

Grove - Introdução a um Sensor de Luz:

The Environment Cube! Know the Land Beneath You using Sigfox: Um cubo com todos os sensores necessários, adequado para uma ampla gama de aplicações como agricultura, monitoramento, etc.

Módulo Grove de sensor de luz:

Suporte Técnico e Discussão de Produtos

Obrigado por escolher nossos produtos! Estamos aqui para lhe fornecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...