Étape 3: Partie de logiciel :
Sesli Renk Okuyan Robot Projesi Robimek 2015
Lisans Yazılım par 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 goupille yükleme
Wtv020sd16p wtv020sd16p(resetPin,clockPin,dataPin,busyPin) ;
Tcs Adafruit_TCS34725 = Adafruit_TCS34725 (TCS34725_INTEGRATIONTIME_50MS, TCS34725_GAIN_1X) ;
void setup() {Serial.begin(9600) ;
wtv020sd16p.Reset() ;
wtv020sd16p.playVoice(2) ;
wtv020sd16p.playVoice(5) ;
Delay(5000) ;
Si (tcs.begin()) {+-Serial.println ("Sensör bulundu");}
else {Serial.println ("TCS34725 Sensör bulunamadı!") ;
while (1) ; Dur ! } delay(1000) ; }
void loop() {uint16_t clearcol, rouge, vert, bleu ; float moyenne, r, g, b ;
tcs.getRawData (rouge, vert & bleu & clearcol) ;
moyenne = (rouge + vert + bleu) / 3 ; r = rouge/moyenne ; g = vert/moyenne ;
b = bleu/moyenne ; 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) ;
Si ((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) ; }
sinon si ((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) ; } ElseIf ((r < 0.8) & & (g < 1.2) & & (b > 1,2))
{/ / mavi algılama Serial.print("\tMAVİ"); / / mavi söyle wtv020sd16p.playVoice(3) ;
Delay(2000) ; } ElseIf ((r > 1.15) & & (g > 1.15) & & (b < 0,7)) {/ / sarı algılama Serial.print("\tSARI") ;
Sindibad söyle wtv020sd16p.playVoice(6) ; Delay(2000) ; }
sinon si ((r > 1.4) & & (g < 1,0) & & (b < 0,7)) {/ / turuncu algılama Serial.print("\tTURUNCU") ;
Turuncu söyle wtv020sd16p.playVoice(5) ; Delay(2000) ; }
else {Serial.print ("\tRENK ALGILANMADI");} Serial.println("") ; Delay(2000) ; }
İnformation plus : couleur parlant Robot