Keyestudio ALS Kızılötesi - LED Optik - Yakınlık Algılama Modülü

155,07 TL
Marka
Stok Kodu
KS0269
16,53 TL den başlayan taksitlerle!
Aynı Gün Kargo
Ürün Paylaş :

Keyestudio ALS Kızılötesi - LED Optik - Yakınlık Algılama Modülü


thumb

Tanıtım

Ortam ışığı, yakınlık sensörü ve iki işlevi olan kızılötesi LED ile entegre üçlü bir sensördür.
Birincisi, mevcut ortam parlaklığını (ALS) tespit etmek için kullanılır. Mevcut ortam parlaklığına göre, yazılım ayarı aracılığıyla ortam ışığına uyum sağlamak için arka ışık parlaklığını otomatik olarak ayarlayabilir. Bu şekilde, görüşünüzü korumak ve enerji tasarrufu etkisini elde etmek için arka ışık parlaklığını yumuşaklaştırabilirsiniz.
Başka bir özellik için yakınlık sensörü fonksiyonu (PROX) olarak adlandırılır. Sensör entegre verici / alıcıya entegre edilmiştir ve tasarımı en aza indirmiştir, ayrıca tasarım ve kurulumda daha fazla alan kısıtlaması yoktur ve bir yapının bir kısmı nispeten basittir.

Performans Parametreleri

  • Çalışma Gerilimi: DC 3.3V
         Algılama Mesafesi : 100mm
         İletişim Yolu : IIC iletişim
         Sıcaklık Aralığı : -30 ℃ ila + 85 ℃

Bağlantı Şeması


thumb

Örnek Kod

APDS-9930'un yakınlık kesintisi yeteneklerini test eder. APDS-9930'u I2C üzerinden yapılandırır ve yüksek veya düşük yakınlık koşullarına bağlı olarak harici bir kesinti bekler. Elinizi sensörün yakınına getirin ve pim 13'teki LED'i izleyin.

Hardware Connections:
IMPORTANT: The APDS-9930 can only accept 3.3V!

Arduino Pin APDS-9930 Board Function

3.3V VCC Power
GND GND Ground
A4 SDA I2C Data
A5 SCL I2C Clock
2 INT Interrupt
13 - LED

Resources:
Include Wire.h and APDS9930.h

Development environment specifics:
Written in Arduino 1.0.5

#define DUMP_REGS

#include 
#include 

// Pins
#define APDS9930_INT    2  // Needs to be an interrupt pin
#define LED_PIN         13 // LED for showing interrupt

// Constants
#define PROX_INT_HIGH   600 // Proximity level for interrupt
#define PROX_INT_LOW    0  // No far interrupt

// Global variables
APDS9930 apds = APDS9930();
float ambient_light = 0; // can also be an unsigned long
uint16_t ch0 = 0;
uint16_t ch1 = 1;
uint16_t proximity_data = 0;
volatile bool isr_flag = false;

void setup() {

  // Set LED as output
  pinMode(LED_PIN, OUTPUT);
  pinMode(APDS9930_INT, INPUT);

  // Initialize Serial port
  Serial.begin(9600);
  Serial.println();
  Serial.println(F("------------------------------"));
  Serial.println(F("APDS-9930 - ProximityInterrupt"));
  Serial.println(F("------------------------------"));

  // Initialize interrupt service routine
  attachInterrupt(digitalPinToInterrupt(APDS9930_INT), interruptRoutine, FALLING);

  // Initialize APDS-9930 (configure I2C and initial values)
  if (apds.init()) {
    Serial.println(F("APDS-9930 initialization complete"));
  }
  else {
    Serial.println(F("Something went wrong during APDS-9930 init!"));
  }

  // Adjust the Proximity sensor gain
  if (!apds.setProximityGain(PGAIN_2X)) {
    Serial.println(F("Something went wrong trying to set PGAIN"));
  }

  // Set proximity interrupt thresholds
  if (!apds.setProximityIntLowThreshold(PROX_INT_LOW)) {
    Serial.println(F("Error writing low threshold"));
  }
  if (!apds.setProximityIntHighThreshold(PROX_INT_HIGH)) {
    Serial.println(F("Error writing high threshold"));
  }

  // Start running the APDS-9930 proximity sensor (interrupts)
  if (apds.enableProximitySensor(true)) {
    Serial.println(F("Proximity sensor is now running"));
  }
  else {
    Serial.println(F("Something went wrong during sensor init!"));
  }

  // Start running the APDS-9930 light sensor (no interrupts)
  if (apds.enableLightSensor(false)) {
    Serial.println(F("Light sensor is now running"));
  }
  else {
    Serial.println(F("Something went wrong during light sensor init!"));
  }

#ifdef DUMP_REGS
  /* Register dump */
  uint8_t reg;
  uint8_t val;

  for (reg = 0x00; reg <= 0x19; reg++) {
    if ((reg != 0x10) && \
      (reg != 0x11))
    {
      apds.wireReadDataByte(reg, val);
      Serial.print(reg, HEX);
      Serial.print(": 0x");
      Serial.println(val, HEX);
    }
  }
  apds.wireReadDataByte(0x1E, val);
  Serial.print(0x1E, HEX);
  Serial.print(": 0x");
  Serial.println(val, HEX);
#endif

}

void loop() {

  // If interrupt occurs, print out the proximity level
  if (isr_flag) {

    // Read proximity level and print it out
    if (!apds.readProximity(proximity_data)) {
      Serial.println("Error reading proximity value");
    }
    else {
      Serial.print("Proximity detected! Level: ");
      Serial.print(proximity_data);
      Serial.print("   ");
    }
    apds.readAmbientLightLux(ambient_light);
    // Read the light levels (ambient, red, green, blue)
    if (!apds.readAmbientLightLux(ambient_light) ||
      !apds.readCh0Light(ch0) ||
      !apds.readCh1Light(ch1)) {
      Serial.println(F("Error reading light values"));
    }
    else {
      Serial.print(F("Ambient: "));
      Serial.print(ambient_light);
      Serial.print(F("  Ch0: "));
      Serial.print(ch0);
      Serial.print(F("  Ch1: "));
      Serial.println(ch1);
    }

    // Turn on LED for a half a second
    digitalWrite(LED_PIN, HIGH);
    delay(300);
    digitalWrite(LED_PIN, LOW);

    // Reset flag and clear APDS-9930 interrupt (IMPORTANT!)
    isr_flag = false;
    if (!apds.clearProximityInt()) {
      Serial.println("Error clearing interrupt");
    }

  }
}

void interruptRoutine() {
  isr_flag = true;
}

APDS9930 Kitaplıklarını İndirme [1]

Test Sonucu

Arduino-1.8.2 sürüm yazılımı ile test edilmiş, ardından seri monitörü açınız, aşağıdaki şekilde gösterilen verileri görebilirsiniz.


thumb

Kaynaklar

PDF:
https://drive.google.com/open?id=15rrcJA4ItpT-1ZbkbYSmGQtkQsDJS0eM

Libraries Download of APDS9930:
https://drive.google.com/open?id=1k4ECumz-SpHCR7YF-XpmHRalPyq-Iu_u

Libraries Download of Wire:
https://drive.google.com/open?id=16_MHMo4KRG5SaE_EV92ypJwMwXhlwWcl

Video:

Bu ürüne ilk yorumu siz yapın!
Bu ürünün fiyat bilgisi, resim, ürün açıklamalarında ve diğer konularda yetersiz gördüğünüz noktaları öneri formunu kullanarak tarafımıza iletebilirsiniz.
Görüş ve önerileriniz için teşekkür ederiz.
Keyestudio ALS Kızılötesi - LED Optik - Yakınlık Algılama Modülü Uygun fiyatlar ile Keyestudio ALS Kızılötesi - LED Optik - Yakınlık Algılama Modülü Robot Elektronik'te. Kampanyalı satışlarımız hakkında bilgi almak için tıklayın! KS0269
Keyestudio ALS Kızılötesi - LED Optik - Yakınlık Algılama Modülü

Tavsiye Et

*
*
*
IdeaSoft® | E-Ticaret paketleri ile hazırlanmıştır.