#include "FastLED.h" #define NUM_STRIPS 9 //hoeveelheid strips #define NUM_LEDS_PER_STRIP 6 //hoeveelheid LEDS in een strip CRGB leds[NUM_STRIPS][NUM_LEDS_PER_STRIP]; boolean touch2 = false; //status voor de verschillende touch sensoren. boolean touch4 = false; boolean touch5 = false; boolean touch6 = false; boolean touch8 = false; void setup() { Serial.begin(9600); //touchsensoren: pinMode(A0, INPUT); pinMode(A1, INPUT); pinMode(A2, INPUT); pinMode(A3, INPUT); pinMode(A4, INPUT); FastLED.addLeds(leds[0], NUM_LEDS_PER_STRIP); //blok 1 FastLED.addLeds(leds[1], NUM_LEDS_PER_STRIP); //blok 2 FastLED.addLeds(leds[2], NUM_LEDS_PER_STRIP); //blok 3 FastLED.addLeds(leds[3], NUM_LEDS_PER_STRIP); //blok 4 FastLED.addLeds(leds[4], NUM_LEDS_PER_STRIP); //blok 5 FastLED.addLeds(leds[5], NUM_LEDS_PER_STRIP); //blok 6 FastLED.addLeds(leds[6], NUM_LEDS_PER_STRIP); //blok 7 FastLED.addLeds(leds[7], NUM_LEDS_PER_STRIP); //blok 8 FastLED.addLeds(leds[8], NUM_LEDS_PER_STRIP); //blok 9 } void loop() { int sensorState2 = digitalRead(A0); //sensor op blok 2 int sensorState4 = digitalRead(A1); //sensor op blok 4 int sensorState5 = digitalRead(A2); //sensor op blok 5 int sensorState6 = digitalRead(A3); //sensor op blok 6 int sensorState8 = digitalRead(A4); //sensor op blok 8 //checken of er een sensor wordt aangeraakt: if(sensorState2==1){ Serial.println("touch2"); touch2=true; delay(100); } else if(sensorState4==1){ Serial.println("touch4"); touch4=true; delay(100); } else if(sensorState5==1){ Serial.println("touch5"); touch5=true; delay(100); } else if(sensorState6==1){ Serial.println("touch6"); touch6=true; delay(100); } else if(sensorState8==1){ Serial.println("touch8"); touch8=true; delay(100); } Serial.println(); if(touch2==true){ //-----------------------------------------------------------------------------------animatie vanaf touchpad op blok 2 Serial.println("animatie2"); leds[1][0] = CRGB(0,255,0); //stage 1 leds[1][1] = CRGB(0,255,0); leds[1][2] = CRGB(0,255,0); leds[1][3] = CRGB(0,255,0); leds[1][4] = CRGB(0,255,0); leds[1][5] = CRGB(0,255,0); FastLED.show(); delay(100); leds[0][0] = CRGB(0,125,125); //stage 2 leds[0][1] = CRGB(0,125,125); leds[0][2] = CRGB(0,125,125); leds[0][3] = CRGB(0,125,125); leds[0][4] = CRGB(0,125,125); leds[0][5] = CRGB(0,125,125); leds[2][0] = CRGB(0,125,125); leds[2][1] = CRGB(0,125,125); leds[2][2] = CRGB(0,125,125); leds[2][3] = CRGB(0,125,125); leds[2][4] = CRGB(0,125,125); leds[2][5] = CRGB(0,125,125); leds[4][0] = CRGB(0,125,125); leds[4][1] = CRGB(0,125,125); leds[4][2] = CRGB(0,125,125); leds[4][3] = CRGB(0,125,125); leds[4][4] = CRGB(0,125,125); leds[4][5] = CRGB(0,125,125); FastLED.show(); leds[1][0] = CRGB(0); //end stage 1 leds[1][1] = CRGB(0); leds[1][2] = CRGB(0); leds[1][3] = CRGB(0); leds[1][4] = CRGB(0); leds[1][5] = CRGB(0); delay(100); leds[3][0] = CRGB(0,0,255); //stage 3 leds[3][2] = CRGB(0,0,255); leds[3][3] = CRGB(0,0,255); leds[3][5] = CRGB(0,0,255); leds[5][0] = CRGB(0,0,255); leds[5][2] = CRGB(0,0,255); leds[5][3] = CRGB(0,0,255); leds[5][5] = CRGB(0,0,255); leds[7][0] = CRGB(0,0,255); leds[7][2] = CRGB(0,0,255); leds[7][3] = CRGB(0,0,255); leds[7][5] = CRGB(0,0,255); FastLED.show(); leds[0][0] = CRGB(0); //end stage 2 leds[0][1] = CRGB(0); leds[0][2] = CRGB(0); leds[0][3] = CRGB(0); leds[0][4] = CRGB(0); leds[0][5] = CRGB(0); leds[2][0] = CRGB(0); leds[2][1] = CRGB(0); leds[2][2] = CRGB(0); leds[2][3] = CRGB(0); leds[2][4] = CRGB(0); leds[2][5] = CRGB(0); leds[4][0] = CRGB(0); leds[4][1] = CRGB(0); leds[4][2] = CRGB(0); leds[4][3] = CRGB(0); leds[4][4] = CRGB(0); leds[4][5] = CRGB(0); delay(100); leds[6][1] = CRGB(0,0,255); //stage 4 leds[6][4] = CRGB(0,0,255); leds[8][1] = CRGB(0,0,255); leds[8][4] = CRGB(0,0,255); FastLED.show(); leds[3][0] = CRGB(0); //end stage 3 leds[3][2] = CRGB(0); leds[3][3] = CRGB(0); leds[3][5] = CRGB(0); leds[5][0] = CRGB(0); leds[5][2] = CRGB(0); leds[5][3] = CRGB(0); leds[5][5] = CRGB(0); leds[7][0] = CRGB(0); leds[7][2] = CRGB(0); leds[7][3] = CRGB(0); leds[7][5] = CRGB(0); delay(100); FastLED.show(); leds[6][1] = CRGB(0); //end stage 4 leds[6][4] = CRGB(0); leds[8][1] = CRGB(0); leds[8][4] = CRGB(0); delay(100); FastLED.show();//------------------------------------------------------------------------------------einde animatie } if(touch4==true){ //-----------------------------------------------------------------------------------animatie vanaf touchpad op blok 4 Serial.println("animatie4"); leds[3][0] = CRGB(0,255,0); //stage 1 leds[3][1] = CRGB(0,255,0); leds[3][2] = CRGB(0,255,0); leds[3][3] = CRGB(0,255,0); leds[3][4] = CRGB(0,255,0); leds[3][5] = CRGB(0,255,0); FastLED.show(); delay(100); leds[0][0] = CRGB(0,125,125); //stage 2 leds[0][1] = CRGB(0,125,125); leds[0][2] = CRGB(0,125,125); leds[0][3] = CRGB(0,125,125); leds[0][4] = CRGB(0,125,125); leds[0][5] = CRGB(0,125,125); leds[6][0] = CRGB(0,125,125); leds[6][1] = CRGB(0,125,125); leds[6][2] = CRGB(0,125,125); leds[6][3] = CRGB(0,125,125); leds[6][4] = CRGB(0,125,125); leds[6][5] = CRGB(0,125,125); leds[4][0] = CRGB(0,125,125); leds[4][1] = CRGB(0,125,125); leds[4][2] = CRGB(0,125,125); leds[4][3] = CRGB(0,125,125); leds[4][4] = CRGB(0,125,125); leds[4][5] = CRGB(0,125,125); FastLED.show(); leds[3][0] = CRGB(0); //end stage 1 leds[3][1] = CRGB(0); leds[3][2] = CRGB(0); leds[3][3] = CRGB(0); leds[3][4] = CRGB(0); leds[3][5] = CRGB(0); delay(100); leds[1][0] = CRGB(0,0,255); //stage 3 leds[1][2] = CRGB(0,0,255); leds[1][3] = CRGB(0,0,255); leds[1][5] = CRGB(0,0,255); leds[5][0] = CRGB(0,0,255); leds[5][2] = CRGB(0,0,255); leds[5][3] = CRGB(0,0,255); leds[5][5] = CRGB(0,0,255); leds[7][0] = CRGB(0,0,255); leds[7][2] = CRGB(0,0,255); leds[7][3] = CRGB(0,0,255); leds[7][5] = CRGB(0,0,255); FastLED.show(); leds[0][0] = CRGB(0); //end stage 2 leds[0][1] = CRGB(0); leds[0][2] = CRGB(0); leds[0][3] = CRGB(0); leds[0][4] = CRGB(0); leds[0][5] = CRGB(0); leds[6][0] = CRGB(0); leds[6][1] = CRGB(0); leds[6][2] = CRGB(0); leds[6][3] = CRGB(0); leds[6][4] = CRGB(0); leds[6][5] = CRGB(0); leds[4][0] = CRGB(0); leds[4][1] = CRGB(0); leds[4][2] = CRGB(0); leds[4][3] = CRGB(0); leds[4][4] = CRGB(0); leds[4][5] = CRGB(0); delay(100); leds[2][1] = CRGB(0,0,255); //stage 4 leds[2][4] = CRGB(0,0,255); leds[8][1] = CRGB(0,0,255); leds[8][4] = CRGB(0,0,255); FastLED.show(); leds[1][0] = CRGB(0); //end stage 3 leds[1][2] = CRGB(0); leds[1][3] = CRGB(0); leds[1][5] = CRGB(0); leds[5][0] = CRGB(0); leds[5][2] = CRGB(0); leds[5][3] = CRGB(0); leds[5][5] = CRGB(0); leds[7][0] = CRGB(0); leds[7][2] = CRGB(0); leds[7][3] = CRGB(0); leds[7][5] = CRGB(0); delay(100); FastLED.show(); leds[2][1] = CRGB(0); //end stage 4 leds[2][4] = CRGB(0); leds[8][1] = CRGB(0); leds[8][4] = CRGB(0); delay(100); FastLED.show();//------------------------------------------------------------------------------------einde animatie } if(touch5==true){ //-----------------------------------------------------------------------------------animatie vanaf touchpad op blok 5 Serial.println("animatie5"); leds[4][0] = CRGB(0,255,0); //stage 1 leds[4][1] = CRGB(0,255,0); leds[4][2] = CRGB(0,255,0); leds[4][3] = CRGB(0,255,0); leds[4][4] = CRGB(0,255,0); leds[4][5] = CRGB(0,255,0); FastLED.show(); delay(100); leds[1][0] = CRGB(0,125,125); //stage 2 leds[1][1] = CRGB(0,125,125); leds[1][2] = CRGB(0,125,125); leds[1][3] = CRGB(0,125,125); leds[1][4] = CRGB(0,125,125); leds[1][5] = CRGB(0,125,125); leds[3][0] = CRGB(0,125,125); leds[3][1] = CRGB(0,125,125); leds[3][2] = CRGB(0,125,125); leds[3][3] = CRGB(0,125,125); leds[3][4] = CRGB(0,125,125); leds[3][5] = CRGB(0,125,125); leds[5][0] = CRGB(0,125,125); leds[5][1] = CRGB(0,125,125); leds[5][2] = CRGB(0,125,125); leds[5][3] = CRGB(0,125,125); leds[5][4] = CRGB(0,125,125); leds[5][5] = CRGB(0,125,125); leds[7][0] = CRGB(0,125,125); leds[7][1] = CRGB(0,125,125); leds[7][2] = CRGB(0,125,125); leds[7][3] = CRGB(0,125,125); leds[7][4] = CRGB(0,125,125); leds[7][5] = CRGB(0,125,125); FastLED.show(); leds[4][0] = CRGB(0); //end stage 1 leds[4][1] = CRGB(0); leds[4][2] = CRGB(0); leds[4][3] = CRGB(0); leds[4][4] = CRGB(0); leds[4][5] = CRGB(0); delay(100); leds[0][0] = CRGB(0,0,255); //stage 3 leds[0][2] = CRGB(0,0,255); leds[0][3] = CRGB(0,0,255); leds[0][5] = CRGB(0,0,255); leds[2][0] = CRGB(0,0,255); leds[2][2] = CRGB(0,0,255); leds[2][3] = CRGB(0,0,255); leds[2][5] = CRGB(0,0,255); leds[6][0] = CRGB(0,0,255); leds[6][2] = CRGB(0,0,255); leds[6][3] = CRGB(0,0,255); leds[6][5] = CRGB(0,0,255); leds[8][0] = CRGB(0,0,255); leds[8][2] = CRGB(0,0,255); leds[8][3] = CRGB(0,0,255); leds[8][5] = CRGB(0,0,255); FastLED.show(); leds[1][0] = CRGB(0); //end stage 2 leds[1][1] = CRGB(0); leds[1][2] = CRGB(0); leds[1][3] = CRGB(0); leds[1][4] = CRGB(0); leds[1][5] = CRGB(0); leds[3][0] = CRGB(0); leds[3][1] = CRGB(0); leds[3][2] = CRGB(0); leds[3][3] = CRGB(0); leds[3][4] = CRGB(0); leds[3][5] = CRGB(0); leds[5][0] = CRGB(0); leds[5][1] = CRGB(0); leds[5][2] = CRGB(0); leds[5][3] = CRGB(0); leds[5][4] = CRGB(0); leds[5][5] = CRGB(0); leds[7][0] = CRGB(0); leds[7][1] = CRGB(0); leds[7][2] = CRGB(0); leds[7][3] = CRGB(0); leds[7][4] = CRGB(0); leds[7][5] = CRGB(0); delay(100); FastLED.show(); leds[0][0] = CRGB(0); //end stage 3 leds[0][1] = CRGB(0); leds[0][2] = CRGB(0); leds[0][3] = CRGB(0); leds[0][4] = CRGB(0); leds[0][5] = CRGB(0); leds[2][0] = CRGB(0); leds[2][1] = CRGB(0); leds[2][2] = CRGB(0); leds[2][3] = CRGB(0); leds[2][4] = CRGB(0); leds[2][5] = CRGB(0); leds[6][0] = CRGB(0); leds[6][1] = CRGB(0); leds[6][2] = CRGB(0); leds[6][3] = CRGB(0); leds[6][4] = CRGB(0); leds[6][5] = CRGB(0); leds[8][0] = CRGB(0); leds[8][1] = CRGB(0); leds[8][2] = CRGB(0); leds[8][3] = CRGB(0); leds[8][4] = CRGB(0); leds[8][5] = CRGB(0); delay(100); FastLED.show();//----------------------------------------------------------------------------------------einde animatie } if(touch6==true){ //-----------------------------------------------------------------------------------animatie vanaf touchpad op blok 6 Serial.println("animatie6"); leds[5][0] = CRGB(0,255,0); //stage 1 leds[5][1] = CRGB(0,255,0); leds[5][2] = CRGB(0,255,0); leds[5][3] = CRGB(0,255,0); leds[5][4] = CRGB(0,255,0); leds[5][5] = CRGB(0,255,0); FastLED.show(); delay(100); leds[8][0] = CRGB(0,125,125); //stage 2 leds[8][1] = CRGB(0,125,125); leds[8][2] = CRGB(0,125,125); leds[8][3] = CRGB(0,125,125); leds[8][4] = CRGB(0,125,125); leds[8][5] = CRGB(0,125,125); leds[2][0] = CRGB(0,125,125); leds[2][1] = CRGB(0,125,125); leds[2][2] = CRGB(0,125,125); leds[2][3] = CRGB(0,125,125); leds[2][4] = CRGB(0,125,125); leds[2][5] = CRGB(0,125,125); leds[4][0] = CRGB(0,125,125); leds[4][1] = CRGB(0,125,125); leds[4][2] = CRGB(0,125,125); leds[4][3] = CRGB(0,125,125); leds[4][4] = CRGB(0,125,125); leds[4][5] = CRGB(0,125,125); FastLED.show(); leds[5][0] = CRGB(0); //end stage 1 leds[5][1] = CRGB(0); leds[5][2] = CRGB(0); leds[5][3] = CRGB(0); leds[5][4] = CRGB(0); leds[5][5] = CRGB(0); delay(100); leds[3][0] = CRGB(0,0,255); //stage 3 leds[3][2] = CRGB(0,0,255); leds[3][3] = CRGB(0,0,255); leds[3][5] = CRGB(0,0,255); leds[1][0] = CRGB(0,0,255); leds[1][2] = CRGB(0,0,255); leds[1][3] = CRGB(0,0,255); leds[1][5] = CRGB(0,0,255); leds[8][0] = CRGB(0,0,255); leds[8][2] = CRGB(0,0,255); leds[8][3] = CRGB(0,0,255); leds[8][5] = CRGB(0,0,255); FastLED.show(); leds[8][0] = CRGB(0); //end stage 2 leds[8][1] = CRGB(0); leds[8][2] = CRGB(0); leds[8][3] = CRGB(0); leds[8][4] = CRGB(0); leds[8][5] = CRGB(0); leds[2][0] = CRGB(0); leds[2][1] = CRGB(0); leds[2][2] = CRGB(0); leds[2][3] = CRGB(0); leds[2][4] = CRGB(0); leds[2][5] = CRGB(0); leds[4][0] = CRGB(0); leds[4][1] = CRGB(0); leds[4][2] = CRGB(0); leds[4][3] = CRGB(0); leds[4][4] = CRGB(0); leds[4][5] = CRGB(0); delay(100); leds[6][1] = CRGB(0,0,255); //stage 4 leds[6][4] = CRGB(0,0,255); leds[0][1] = CRGB(0,0,255); leds[0][4] = CRGB(0,0,255); FastLED.show(); leds[3][0] = CRGB(0); //end stage 3 leds[3][2] = CRGB(0); leds[3][3] = CRGB(0); leds[3][5] = CRGB(0); leds[1][0] = CRGB(0); leds[1][2] = CRGB(0); leds[1][3] = CRGB(0); leds[1][5] = CRGB(0); leds[8][0] = CRGB(0); leds[8][2] = CRGB(0); leds[8][3] = CRGB(0); leds[8][5] = CRGB(0); delay(100); FastLED.show(); leds[6][1] = CRGB(0); //end stage 4 leds[6][4] = CRGB(0); leds[0][1] = CRGB(0); leds[0][4] = CRGB(0); delay(100); FastLED.show();//------------------------------------------------------------------------------------einde animatie } if(touch8==true){ //-----------------------------------------------------------------------------------animatie vanaf touchpad op blok 8 Serial.println("animatie8"); leds[7][0] = CRGB(0,255,0); //stage 1 leds[7][1] = CRGB(0,255,0); leds[7][2] = CRGB(0,255,0); leds[7][3] = CRGB(0,255,0); leds[7][4] = CRGB(0,255,0); leds[7][5] = CRGB(0,255,0); FastLED.show(); delay(100); leds[6][0] = CRGB(0,125,125); //stage 2 leds[6][1] = CRGB(0,125,125); leds[6][2] = CRGB(0,125,125); leds[6][3] = CRGB(0,125,125); leds[6][4] = CRGB(0,125,125); leds[6][5] = CRGB(0,125,125); leds[8][0] = CRGB(0,125,125); leds[8][1] = CRGB(0,125,125); leds[8][2] = CRGB(0,125,125); leds[8][3] = CRGB(0,125,125); leds[8][4] = CRGB(0,125,125); leds[8][5] = CRGB(0,125,125); leds[4][0] = CRGB(0,125,125); leds[4][1] = CRGB(0,125,125); leds[4][2] = CRGB(0,125,125); leds[4][3] = CRGB(0,125,125); leds[4][4] = CRGB(0,125,125); leds[4][5] = CRGB(0,125,125); FastLED.show(); leds[7][0] = CRGB(0); //end stage 1 leds[7][1] = CRGB(0); leds[7][2] = CRGB(0); leds[7][3] = CRGB(0); leds[7][4] = CRGB(0); leds[7][5] = CRGB(0); delay(100); leds[3][0] = CRGB(0,0,255); //stage 3 leds[3][2] = CRGB(0,0,255); leds[3][3] = CRGB(0,0,255); leds[3][5] = CRGB(0,0,255); leds[5][0] = CRGB(0,0,255); leds[5][2] = CRGB(0,0,255); leds[5][3] = CRGB(0,0,255); leds[5][5] = CRGB(0,0,255); leds[1][0] = CRGB(0,0,255); leds[1][2] = CRGB(0,0,255); leds[1][3] = CRGB(0,0,255); leds[1][5] = CRGB(0,0,255); FastLED.show(); leds[6][0] = CRGB(0); //end stage 2 leds[6][1] = CRGB(0); leds[6][2] = CRGB(0); leds[6][3] = CRGB(0); leds[6][4] = CRGB(0); leds[6][5] = CRGB(0); leds[8][0] = CRGB(0); leds[8][1] = CRGB(0); leds[8][2] = CRGB(0); leds[8][3] = CRGB(0); leds[8][4] = CRGB(0); leds[8][5] = CRGB(0); leds[4][0] = CRGB(0); leds[4][1] = CRGB(0); leds[4][2] = CRGB(0); leds[4][3] = CRGB(0); leds[4][4] = CRGB(0); leds[4][5] = CRGB(0); delay(100); leds[0][1] = CRGB(0,0,255); //stage 4 leds[0][4] = CRGB(0,0,255); leds[2][1] = CRGB(0,0,255); leds[2][4] = CRGB(0,0,255); FastLED.show(); leds[3][0] = CRGB(0); //end stage 3 leds[3][2] = CRGB(0); leds[3][3] = CRGB(0); leds[3][5] = CRGB(0); leds[5][0] = CRGB(0); leds[5][2] = CRGB(0); leds[5][3] = CRGB(0); leds[5][5] = CRGB(0); leds[1][0] = CRGB(0); leds[1][2] = CRGB(0); leds[1][3] = CRGB(0); leds[1][5] = CRGB(0); delay(100); FastLED.show(); leds[0][1] = CRGB(0); //end stage 4 leds[0][4] = CRGB(0); leds[2][1] = CRGB(0); leds[2][4] = CRGB(0); delay(100); FastLED.show();//------------------------------------------------------------------------------------einde animatie } //nu de animaties resetten, zodat ze opnieuw getriggered kunnen worden: touch2=false; touch4=false; touch5=false; touch6=false; touch8=false; }