Färg läsare tala Robot (3 / 3 steg)
Steg 3: Programvara del:
Sesli Renk Okuyan Robot Projesi Robimek 2015
Yazılım lisans av Robimek
#include "Wire.h"
#include "Adafruit_TCS34725.h"
#include < Wtv020sd16p.h >
wtv020 pinleri
int resetPin = 13.
int clockPin = 11;
int dataPin = 12;
int busyPin = 10;
wtv020 pin yükleme
Wtv020sd16p wtv020sd16p(resetPin,clockPin,dataPin,busyPin);
Adafruit_TCS34725 tcs = Adafruit_TCS34725 (TCS34725_INTEGRATIONTIME_50MS, TCS34725_GAIN_1X);
void setup() {Serial.begin(9600);
wtv020sd16p.Reset();
wtv020sd16p.playVoice(2);
wtv020sd16p.playVoice(5);
Delay(5000);
om (tcs.begin()) {+-Serial.println ("Sensör upptäcktes");}
annat {Serial.println ("TCS34725 Sensör bulunamadı!");
samtidigt (1). Dur! } delay(1000); }
void loop() {uint16_t clearcol, röd, grön, blå, flyta genomsnittet, r, g, b;
tcs.getRawData (& röd, grön, blå, & clearcol);
genomsnittliga = (röd + grön + blå) / 3; r = röd/genomsnittet. g = grön/genomsnittet.
b = blå/genomsnittet. Serial.Print("\tTEMİZ:"); Serial.Print(clearcol);
Serial.Print("\tKIRMIZI:"); Serial.Print(r); Serial.Print("\tYEŞİL:");
Serial.Print(g); Serial.Print("\tMAVİ:"); Serial.Print(b);
om ((r > 1.4) & & (g < 0,9) & & (b < 0,9))
{/ / kırmızı algılama Serial.print("\tKIRMIZI");
wtv020sd16p.playVoice(2); Kırmızı söyle delay(2000); }
annars om ((r < 0.95) & & (g > 1,4) & & (b < 0,9)) {/ / yeşil algılama Serial.print("\tYEŞİL");
Yeşil söyle wtv020sd16p.playVoice(7); Delay(2000); } else om ((r < 0.8) & & (g < 1.2) & & (b > 1.2))
{/ / mavi algılama Serial.print("\tMAVİ"); / / mavi söyle wtv020sd16p.playVoice(3);
Delay(2000); } else om ((r > 1.15) & & (g > 1.15) & & (b < 0,7)) {/ / sarı algılama Serial.print("\tSARI");
sarı söyle wtv020sd16p.playVoice(6); Delay(2000); }
annars om ((r > 1.4) & & (g < 1.0) & & (b < 0,7)) {/ / turuncu algılama Serial.print("\tTURUNCU");
turuncu söyle wtv020sd16p.playVoice(5); Delay(2000); }
annat {Serial.print ("\tRENK ALGILANMADI");} Serial.println(""); Delay(2000); }
Mer İnformation: färg talande Robot