آموزش راه اندازی سنسور رنگ TCS34725 با آردوینو

فهرست مطالب

ویژگی های سنسور سنجش نور TCS34725

ماژول سنسور رنگ RGB TCS3472، یکی از بهترین ماژول‌هایی است که به وسیله آن می‌توانید رنگ های متفاوت و خیره کننده را ببینید. این ماژول بهترین سنسور رنگ موجود در بازار است که دارای المان‌های سنجش نور RGB و Clear است.

این ماژول دارای فیلتر IR است که المان های طیف IR را فیلتر می‌کند و در نتیجه طیف رنگی بسیار زیادی با دقت بالا قابل مشاهده است. این عمل باعث می‌شود شما رنگ واقعی تری را ببینید و استفاده کنید. همچنین رنج این ماژول 3800000:1 می‌باشد. بنابراین برای استفاده در پشت شیشه تیره مناسب است.

معرفی پایه ها (Pinout) سنسور رنگ TCS34725

سنسور TCS34725 دارای 7 پایه به شرح زیر است:

  •  VCC: تغذیه ماژول – 5 ولت
  •  3.3: تغذیه ماژول – 3.3 ولت
  •  GND: زمین
  •  SLC: همزمان سازی برای پروتکل I2C
  •  SDA: اطلاعات برای پروتکل I2C
  •  INT: تنظیم آدرس پروتکل I2C
  •  LED: خاموش کردن LED – Active Low

پین اوت (Pinout) این ماژول را می توانید در تصویر زیر مشاهده کنید.

جهت دریافت دیتاشیت سنسور سنجش نور TCS34725 اینجا کلیک کنید.

لوازمی که به آن احتیاج دارید

با توجه به نیاز خود از یکی از میکروکنترلر های STM32 یا Arduino استفاده کنید.

قطعات مورد نیاز

Arduino Nano* × 1
STM32F103* × 1
ماژول سنسور رنگ RGB TCS34725 × 1
سیم جامپر مادگی به مادگی × 1
* با توجه به نیاز خود یکی از میکرو کنترلر های STM32 یا Arduino را تهیه کنید.

نرم افزارهای موردنیاز

آردوینو IDE

راه اندازی ماژول سنجش نور TCS34725 با آردوینو

گام اول: سیم بندی

مطابق مدار زیر، ماژول را به آردوینو یا STM32 وصل کنید.

گام دوم: کد

ابتدا کتابخانه زیر را  بر آردوینو خود نصب کنید.

https://github.com/adafruit/Adafruit_TCS34725.git

توجه

اگر نیاز به راهنمایی بیشتر برای نصب کتابخانه بر روی آردوینو دارید، می توانید به آموزش نصب کتابخانه بر آردوینو مراجعه کنید.

کد زیر را روی برد آردوینوی یا STM32 خود آپلود کنید.

#include <Wire.h>
#include "Adafruit_TCS34725.h"

/* Example code for the Adafruit TCS34725 breakout library */

/* Connect SCL    to analog 5
   Connect SDA    to analog 4
   Connect VDD    to 3.3V DC
   Connect GROUND to common ground */

/* Initialise with default values (int time = 2.4ms, gain = 1x) */
// Adafruit_TCS34725 tcs = Adafruit_TCS34725();

/* Initialise with specific int time and gain values */
Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_700MS, TCS34725_GAIN_1X);

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

  if (tcs.begin()) {
    Serial.println("Found sensor");
  } else {
    Serial.println("No TCS34725 found ... check your connections");
    while (1);
  }

  // Now we're ready to get readings!
}

void loop(void) {
  uint16_t r, g, b, c, colorTemp, lux;

  tcs.getRawData(&r, &g, &b, &c);
  // colorTemp = tcs.calculateColorTemperature(r, g, b);
  colorTemp = tcs.calculateColorTemperature_dn40(r, g, b, c);
  lux = tcs.calculateLux(r, g, b);

  Serial.print("Color Temp: "); Serial.print(colorTemp, DEC); Serial.print(" K - ");
  Serial.print("Lux: "); Serial.print(lux, DEC); Serial.print(" - ");
  Serial.print("R: "); Serial.print(r, DEC); Serial.print(" ");
  Serial.print("G: "); Serial.print(g, DEC); Serial.print(" ");
  Serial.print("B: "); Serial.print(b, DEC); Serial.print(" ");
  Serial.print("C: "); Serial.print(c, DEC); Serial.print(" ");
  Serial.println(" ");
delay(100); delay(100);   delay(100);  Serialrial  }
پس از اجرای کد تصویر زیر را در خروجی سریال مشاهده میکنید.

آموزش های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.