Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "FastLED.h"
- #include "NewPing.h"
- int pos = 0;
- int i = 0;
- int c = 0;
- int a;
- int p;
- int TRIGGER_PIN = 30;
- int ECHO_PIN = 31;
- int TRIGGER_PIN_2 = 46;
- int ECHO_PIN_2 = 47;
- int MAX_DISTANCE = 400;
- int motor1 = 3;
- int motor2 = 4;
- int motor3 = 5;
- int motor4 = 6;
- NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
- NewPing sonar2(TRIGGER_PIN_2, ECHO_PIN_2, MAX_DISTANCE);
- float distance;
- float distance2;
- #define NUM_LEDS 56
- ;CRGB leds[NUM_LEDS];
- #define DATA_PIN 7
- void setup() {
- FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS);
- pinMode(A0,INPUT);
- Serial.begin(9600);
- pinMode(A1,INPUT);
- pinMode(12, OUTPUT);
- pinMode(13, OUTPUT);
- pinMode(motor1, OUTPUT);
- pinMode(motor2, OUTPUT);
- pinMode(motor3, OUTPUT);
- pinMode(motor4, OUTPUT);
- }
- void right() {
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, HIGH);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- }
- void rvr() {
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- }
- void fwrd() {
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, HIGH);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, HIGH);
- }
- void left() {
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, HIGH);
- }
- void ledstop(){
- for(a=0; a < NUM_LEDS; a++){
- leds[a] = CRGB::Black;
- FastLED.show();
- }
- }
- void smile() {
- leds[0] = CRGB::Black;
- leds[3] = CRGB::Black;
- leds[4] = CRGB::Black;
- leds[7] = CRGB::Black;
- leds[8] = CRGB::Black;
- leds[11] = CRGB::Black;
- leds[12] = CRGB::Black;
- leds[15] = CRGB::Black;
- leds[16] = CRGB::Black;
- leds[19] = CRGB::Black;
- leds[20] = CRGB::Black;
- leds[23] = CRGB::Black;
- leds[24] = CRGB::Black;
- leds[27] = CRGB::Black;
- leds[28] = CRGB::Black;
- leds[31] = CRGB::Black;
- leds[40] = CRGB::Black;
- leds[47] = CRGB::Black;
- leds[48] = CRGB::Black;
- leds[49] = CRGB::Black;
- leds[54] = CRGB::Black;
- leds[55] = CRGB::Black;
- leds[32] = CRGB::Green;
- leds[33] = CRGB::Green;
- leds[34] = CRGB::Green;
- leds[35] = CRGB::Green;
- leds[36] = CRGB::Green;
- leds[37] = CRGB::Green;
- leds[38] = CRGB::Green;
- leds[39] = CRGB::Green;
- leds[41] = CRGB::Green;
- leds[42] = CRGB::Green;
- leds[43] = CRGB::Green;
- leds[44] = CRGB::Green;
- leds[45] = CRGB::Green;
- leds[46] = CRGB::Green;
- leds[50] = CRGB::Green;
- leds[51] = CRGB::Green;
- leds[52] = CRGB::Green;
- leds[53] = CRGB::Green;
- FastLED.show();
- leds[1] = CRGB::Green;
- leds[2] = CRGB::Green;
- leds[5] = CRGB::Green;
- leds[6] = CRGB::Green;
- leds[9] = CRGB::Green;
- leds[10] = CRGB::Green;
- leds[13] = CRGB::Green;
- leds[14] = CRGB::Green;
- leds[17] = CRGB::Green;
- leds[18] = CRGB::Green;
- leds[21] = CRGB::Green;
- leds[22] = CRGB::Green;
- leds[25] = CRGB::Green;
- leds[26] = CRGB::Green;
- leds[29] = CRGB::Green;
- leds[30] = CRGB::Green;
- FastLED.show();
- }
- void blnk(){
- delay(2000);
- leds[1] = CRGB::Black;
- leds[2] = CRGB::Black;
- leds[5] = CRGB::Black;
- leds[6] = CRGB::Black;
- leds[9] = CRGB::Green;
- leds[10] = CRGB::Green;
- leds[13] = CRGB::Green;
- leds[14] = CRGB::Green;
- leds[17] = CRGB::Green;
- leds[18] = CRGB::Green;
- leds[21] = CRGB::Green;
- leds[22] = CRGB::Green;
- leds[25] = CRGB::Black;
- leds[26] = CRGB::Black;
- leds[29] = CRGB::Black;
- leds[30] = CRGB::Black;
- FastLED.show();
- delay(200);
- }
- void sad() {
- leds[0] = CRGB::Black;
- leds[1] = CRGB::Black;
- leds[2] = CRGB::Black;
- leds[3] = CRGB::Black;
- leds[4] = CRGB::Black;
- leds[5] = CRGB::Black;
- leds[6] = CRGB::Black;
- leds[7] = CRGB::Black;
- leds[8] = CRGB::Black;
- leds[9] = CRGB::Black;
- leds[10] = CRGB::Black;
- leds[11] = CRGB::Black;
- leds[12] = CRGB::Black;
- leds[13] = CRGB::Black;
- leds[14] = CRGB::Black;
- leds[15] = CRGB::Black;
- leds[16] = CRGB::Black;
- leds[19] = CRGB::Black;
- leds[20] = CRGB::Black;
- leds[23] = CRGB::Black;
- leds[27] = CRGB::Black;
- leds[28] = CRGB::Black;
- leds[32] = CRGB::Black;
- leds[33] = CRGB::Black;
- leds[38] = CRGB::Black;
- leds[39] = CRGB::Black;
- leds[40] = CRGB::Black;
- leds[41] = CRGB::Black;
- leds[17] = CRGB::Blue;
- leds[18] = CRGB::Blue;
- leds[21] = CRGB::Blue;
- leds[22] = CRGB::Blue;
- leds[24] = CRGB::Blue;
- leds[25] = CRGB::Blue;
- leds[26] = CRGB::Blue;
- leds[29] = CRGB::Blue;
- leds[30] = CRGB::Blue;
- leds[31] = CRGB::Blue;
- leds[34] = CRGB::Blue;
- leds[35] = CRGB::Blue;
- leds[36] = CRGB::Blue;
- leds[37] = CRGB::Blue;
- leds[41] = CRGB::Blue;
- leds[42] = CRGB::Blue;
- leds[43] = CRGB::Blue;
- leds[44] = CRGB::Blue;
- leds[45] = CRGB::Blue;
- leds[46] = CRGB::Blue;
- leds[48] = CRGB::Blue;
- leds[49] = CRGB::Blue;
- leds[50] = CRGB::Blue;
- leds[51] = CRGB::Blue;
- leds[52] = CRGB::Blue;
- leds[53] = CRGB::Blue;
- leds[54] = CRGB::Blue;
- leds[55] = CRGB::Blue;
- FastLED.show();
- }
- void scared() {
- leds[0] = CRGB::Black;
- leds[1] = CRGB::Black;
- leds[3] = CRGB::Black;
- leds[4] = CRGB::Black;
- leds[6] = CRGB::Black;
- leds[7] = CRGB::Black;
- leds[8] = CRGB::Black;
- leds[10] = CRGB::Black;
- leds[11] = CRGB::Black;
- leds[12] = CRGB::Black;
- leds[13] = CRGB::Black;
- leds[15] = CRGB::Black;
- leds[19] = CRGB::Black;
- leds[20] = CRGB::Black;
- leds[24] = CRGB::Black;
- leds[27] = CRGB::Black;
- leds[28] = CRGB::Black;
- leds[31] = CRGB::Black;
- leds[32] = CRGB::Black;
- leds[33] = CRGB::Black;
- leds[34] = CRGB::Black;
- leds[35] = CRGB::Black;
- leds[36] = CRGB::Black;
- leds[37] = CRGB::Black;
- leds[38] = CRGB::Black;
- leds[39] = CRGB::Black;
- leds[40] = CRGB::Black;
- leds[41] = CRGB::Black;
- leds[42] = CRGB::Black;
- leds[43] = CRGB::Black;
- leds[44] = CRGB::Black;
- leds[45] = CRGB::Black;
- leds[46] = CRGB::Black;
- leds[47] = CRGB::Black;
- leds[48] = CRGB::Black;
- leds[49] = CRGB::Black;
- leds[54] = CRGB::Black;
- leds[55] = CRGB::Black;
- leds[2] = CRGB::Purple;
- leds[5] = CRGB::Purple;
- leds[9] = CRGB::Purple;
- leds[14] = CRGB::Purple;
- leds[16] = CRGB::Purple;
- leds[23] = CRGB::Purple;
- leds[17] = CRGB::Purple;
- leds[18] = CRGB::Purple;
- leds[21] = CRGB::Purple;
- leds[22] = CRGB::Purple;
- leds[25] = CRGB::Purple;
- leds[26] = CRGB::Purple;
- leds[29] = CRGB::Purple;
- leds[30] = CRGB::Purple;
- leds[50] = CRGB::Purple;
- leds[51] = CRGB::Purple;
- leds[52] = CRGB::Purple;
- leds[53] = CRGB::Purple;
- FastLED.show();
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, HIGH);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- delay(300);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, HIGH);
- digitalWrite(motor4, LOW);
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- }
- void angry(){
- leds[0] = CRGB::Black;
- leds[2] = CRGB::Black;
- leds[3] = CRGB::Black;
- leds[4] = CRGB::Black;
- leds[5] = CRGB::Black;
- leds[7] = CRGB::Black;
- leds[8] = CRGB::Black;
- leds[9] = CRGB::Black;
- leds[11] = CRGB::Black;
- leds[12] = CRGB::Black;
- leds[14] = CRGB::Black;
- leds[15] = CRGB::Black;
- leds[16] = CRGB::Black;
- leds[23] = CRGB::Black;
- leds[24] = CRGB::Black;
- leds[27] = CRGB::Black;
- leds[28] = CRGB::Black;
- leds[31] = CRGB::Black;
- leds[32] = CRGB::Black;
- leds[33] = CRGB::Black;
- leds[38] = CRGB::Black;
- leds[39] = CRGB::Black;
- leds[40] = CRGB::Black;
- leds[42] = CRGB::Black;
- leds[43] = CRGB::Black;
- leds[44] = CRGB::Black;
- leds[45] = CRGB::Black;
- leds[47] = CRGB::Black;
- leds[49] = CRGB::Black;
- leds[50] = CRGB::Black;
- leds[51] = CRGB::Black;
- leds[52] = CRGB::Black;
- leds[53] = CRGB::Black;
- leds[54] = CRGB::Black;
- leds[1] = CRGB::Red;
- leds[6] = CRGB::Red;
- leds[10] = CRGB::Red;
- leds[13] = CRGB::Red;
- leds[17] = CRGB::Red;
- leds[18] = CRGB::Red;
- leds[19] = CRGB::Red;
- leds[20] = CRGB::Red;
- leds[21] = CRGB::Red;
- leds[22] = CRGB::Red;
- leds[25] = CRGB::Red;
- leds[26] = CRGB::Red;
- leds[29] = CRGB::Red;
- leds[30] = CRGB::Red;
- FastLED.show();
- leds[34] = CRGB::Red;
- leds[35] = CRGB::Red;
- leds[36] = CRGB::Red;
- leds[37] = CRGB::Red;
- leds[41] = CRGB::Red;
- leds[46] = CRGB::Red;
- leds[48] = CRGB::Red;
- leds[55] = CRGB::Red;
- FastLED.show();
- }
- void roam() {
- if(distance < 30){
- rvr();
- delay(1500);
- right();
- delay(1500);
- }
- else if(distance2 < 30){
- rvr();
- delay(1500);
- left();
- delay(1500);
- }
- else{
- fwrd();
- }
- }
- void loop () {
- Serial.println(analogRead(A1));
- int lightsensor = analogRead(A0);
- int soundsensor = analogRead(A1);
- int tiltsensor = digitalRead(10);
- distance = sonar.ping_cm();
- distance2 = sonar2.ping_cm();
- Serial.print(distance);
- Serial.println("cm");
- if(lightsensor > 950){
- sad();
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, LOW);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, LOW);
- }
- else if(soundsensor > 300 ){
- scared();
- delay(1000);
- }
- else if(tiltsensor == 1){
- angry();
- digitalWrite(motor1, LOW);
- digitalWrite(motor2, HIGH);
- digitalWrite(motor3, LOW);
- digitalWrite(motor4, HIGH);
- delay(5000);
- }
- else{
- smile();
- roam();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement