Advertisement
Guest User

program

a guest
Mar 18th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <Arduino.h>
  2. #include <Brain.h>
  3. #define USE_ARDUINO_INTERRUPTS true
  4. #include <PulseSensorPlayground.h>
  5. // ----- GSR -----
  6. int GSR = 0;
  7. int prevGSR = 0;
  8. bool GSRs;
  9. // ------ brain ------
  10. unsigned long Theta;
  11. unsigned long HighAlpha;
  12. unsigned long prevTheta;
  13. unsigned long prevAlpha;
  14. bool brainS;
  15. Brain brain(Serial1);
  16. //------ pulse sensor ------
  17. const int PulseWire = 0;
  18. const int LED13 = 13;
  19. int Threshold = 550;
  20. PulseSensorPlayground pulseSensor;
  21. int BPM = 0;
  22. int prevBPM = 0;
  23. bool BPMs;
  24.  
  25. void setup() {
  26.   pinMode(A1,INPUT); // set pin mode for GSR;
  27.   Serial.begin(9600); // monitor port
  28.   Serial1.begin(9600); // Brain sensor port
  29.   //------ set the pulse sensor -------
  30.   pulseSensor.analogInput(PulseWire);
  31.   pulseSensor.blinkOnPulse(LED13);
  32.   pulseSensor.setThreshold(Threshold);
  33.   pulseSensor.begin();
  34. // ---- first brain read ------
  35.   if(brain.update())
  36.    {
  37.      Theta = brain.readTheta();
  38.      HighAlpha = brain.readHighAlpha();
  39.      Serial.print("Theta: ");
  40.      Serial.println(Theta);
  41.      Serial.print("High Alpha: ");
  42.      Serial.println(HighAlpha);
  43.      prevAlpha = HighAlpha;
  44.      prevTheta = Theta;
  45.    }
  46.    GSR = analogRead(A1);
  47.    Serial.print("GSR: ");
  48.    Serial.println(GSR);
  49.    prevGSR = GSR;
  50.    //----- first BPM test -----
  51.    BPM = pulseSensor.getBeatsPerMinute();
  52.    if(pulseSensor.sawStartOfBeat())
  53.    {
  54.      Serial.print("BPM:");
  55.      Serial.println(BPM);
  56.      prevBPM = BPM;
  57.    }
  58.  }
  59. void loop() {
  60.   // ----- brain ------
  61.   if(brain.update())
  62.    {
  63.      Theta = brain.readTheta();
  64.      HighAlpha = brain.readHighAlpha();
  65.      Serial.print("Theta: ");
  66.      Serial.println(Theta);
  67.      Serial.print("High Alpha: ");
  68.      Serial.println(HighAlpha);
  69.      if((prevAlpha < HighAlpha) & (prevTheta < Theta))
  70.       {
  71.       brainS = true;
  72.       }
  73.       else
  74.       {
  75.       brainS = false;
  76.       }
  77.       prevAlpha = HighAlpha;
  78.       prevTheta = Theta;
  79.     }
  80.     // ------ GSR ------
  81.     GSR = analogRead(A1);
  82.     Serial.print("GSR: ");
  83.     Serial.println(GSR);
  84.     if(prevGSR > GSR)
  85.     {
  86.       GSRs = true;
  87.     }
  88.     else
  89.     {
  90.       GSRs = false;
  91.     }
  92.     prevGSR = GSR;
  93.     // ---- pulse sensor ----
  94.     BPM = pulseSensor.getBeatsPerMinute();
  95.     if(pulseSensor.sawStartOfBeat())
  96.     {
  97.       Serial.print("BPM:");
  98.       Serial.println(BPM);
  99.       if(prevBPM > BPM)
  100.       {
  101.         BPMs = true;
  102.       }
  103.       else
  104.       {
  105.         BPMs = false;
  106.       }
  107.     }
  108.     if(brainS & GSRs & BPMs)
  109.     {
  110.       Serial.println("panic attack");
  111.     }
  112.     else
  113.     {
  114.       Serial.println("normal");
  115.     }
  116.    }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement