Цветной датчик с сервоприводом (при условии)

Я пытаюсь заставить этот код работать. Моя главная цель - после того, как датчик цвета обнаружит томатный цвет, красный сервопривод предположит, чтобы перейти от тех степеней, которые я дал.

Пожалуйста, помогите мне.

Вот мой код:

#include 
#include "Wire.h"
#include "Adafruit_TCS34725.h"


#define redpin 3
#define greenpin 5
#define bluepin 6

Servo topServo;
Servo bottomServo;
int pos = 0;
int color = 0;
int red = 180;
int halfred = 360;

// set to false if using a common cathode LED
#define commonAnode true

// our RGB -> eye-recognized gamma color
byte gammatable[256];

Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_50MS, TCS34725_GAIN_4X);


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

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

  topServo.attach(9);
  bottomServo.attach(8);

 //use these three pins to drive an LED
  pinMode(redpin, OUTPUT);
  pinMode(greenpin, OUTPUT);
  pinMode(bluepin, OUTPUT);  

 //thanks PhilB for this gamma table!
 //it helps convert RGB colors to what humans see
  for (int i=0; i<256; i++) {
    float x = i;
    x /= 255;
    x = pow(x, 2.5);
    x *= 255;

    if (commonAnode) {
      gammatable[i] = 255 - x;
    } else {
      gammatable[i] = x;      
    }
  }
}

void loop() {
  for(pos = 120; pos > 55; pos--) {
    bottomServo.write(pos);
    delay(5);
  }
  delay(500);

 uint16_t clear, red, green, blue;

  tcs.setInterrupt(false);     //turn on LED

  delay(60); //takes 50ms to read 

  tcs.getRawData(&red, &green, &blue, &clear);

  tcs.setInterrupt(true); //turn off LED

  Serial.print("C:\t"); Serial.print(clear);
  Serial.print("\tR:\t"); Serial.print(red);
  Serial.print("\tG:\t"); Serial.print(green);
  Serial.print("\tB:\t"); Serial.print(blue);

 //Figure out some basic hex code for visualization
  uint32_t sum = clear;
  float r, g, b;
  r = red; r /= sum;
  g = green; g /= sum;
  b = blue; b /= sum;
  r *= 256; g *= 256; b *= 256;
  Serial.print("\t");
  Serial.print((int)r, HEX); Serial.print((int)g, HEX); Serial.print((int)b, HEX);
  Serial.println();

  //Serial.print((int)r ); Serial.print(" "); Serial.print((int)g);Serial.print(" ");  Serial.println((int)b );

  analogWrite(redpin, gammatable[(int)r]);
  analogWrite(greenpin, gammatable[(int)g]);
  analogWrite(bluepin, gammatable[(int)b]); 

/*switch(color){
  case 1:
  topServo.write(halfred);
  case 2:
  Serial.print("RED");
  topServo.write(red);
} */


//while (r=0) {
  if(g<600){
  //for(r=701; r >= 701; r--) {
      Serial.print("Green");
      topServo.write(halfred);
      //color = 1;
      delay(2);
    //}
  }

  delay(200);
  if(r>701){
  //for(r=0; r < 701; r++) {
      topServo.write(red);
      //color = 2;
      delay(2);
  //}
  }
//}


 /*if(g < 500) {
  //for(pos = 55; pos > 20; pos--) {
    topServo.write(red);
    color = 1;
 // delay(2);
//  } 
 }
  delay(200);
  if(r < 600) {
    Serial.print("KUPS");
  for(pos = 20; pos < 120; pos++) {
    bottomServo.write(pos);
    color = 2;
    delay(2);
  }
  } */


}

Here the current circuit

1
de
какой у Вас вопрос? .... все, что вы сделали, это описать, что вы хотите делать ... вы ничего не сказали о том, что происходит, когда вы запускаете код, и вы ничего не сказали о каких-либо тестах, которые вы выполняли
добавлено автор jsotola, источник
Извините, я не знаю, как его редактировать.
добавлено автор Nir, источник

Ответов нет

0
Анархическая электроника
Анархическая электроника
1 510 участник(ов)

[около] электронные темы. без переходов на личности, стен стикеров, политики, непрошенной рекламы и всякого такого Основной чат у нас в @ru_electronics Общий информационный канал @ru_electronics_feed

Про электронику
Про электронику
1 461 участник(ов)

QA чат для решения вопросов, связанных с электроникой. без стикеров, непрошенной рекламы и игр в русский форум оформляйте вопрос в одно сообщение вопросы со словом «кто» игнорируются don't ask for ask Правила http://telegra.ph/ru-electronics-rulz-11-11

Embedded Group
Embedded Group
873 участник(ов)

Все про Embedded и электронику. Осторожно, бывают нотификейшены. #вопросподелу - Для поиска вопросов и ответов #devtools - фотки рабочих железок Работа: @rabotaembedded http://embedded.group http://vk.com/embedded_space

Hardware & Radio
Hardware & Radio
155 участник(ов)

Разговоры об электронике, микроконтроллерах, низкоуровневом программировании, реверс-инжиниринге, FPGA, квадрокоптерах, 3D-печати, Software Defined Radio, любительском радио, и всяком таком.

ARDUINO [RU]
ARDUINO [RU]
60 участник(ов)

Обсуждение Электронного конструктора Arduino. Проблемы и их решения. Ссылки на интересные статьи и проекты. ВК: https://vk.com/arduino_esp Realtek: http://vk.com/rtl8711 Чаты: IOT https://t.me/ProIOT esp8266 https://t.me/Proesp8266