Advertisement
Guest User

Untitled

a guest
Jul 21st, 2018
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import gifAnimation.*;
  2. import processing.serial.*;
  3.  
  4. int lf = 10;    // Linefeed in ASCII
  5. String myString = null;
  6. Serial myPort;  // The serial port
  7. PImage imgGreen;
  8. PImage imgRed;
  9. PImage wallpaper;
  10.  
  11. boolean LimitSwitchVerticalAxisReached = false;
  12. boolean LimitSwitchHorizontalAxisReached = false;
  13. boolean LimitSwitchRotaryAxisReached = false;
  14. boolean jsonFlag = false;
  15.  
  16. void setup() {
  17.   fullScreen();
  18.   myPort = new Serial(this, Serial.list()[0], 9600);
  19.   myPort.clear();
  20.   imgGreen = loadImage("greenEggSmall.png");
  21.   imgRed = loadImage("redEggSmall.png");
  22.   wallpaper = loadImage("Wallpaper4.jpg");
  23.  
  24.   void draw() {
  25.     background(wallpaper);
  26.  
  27.     // Grey Background for "Home Position Finished"
  28.     fill(229, 229, 229, 100);
  29.     stroke(0, 0, 0, 100);
  30.     rect(90, 955, 520, 70, 20);
  31.  
  32.     // Grey Background for "Limit Switch Horizontal Axis"
  33.     fill(229, 229, 229, 100);
  34.     stroke(0, 0, 0, 100);
  35.     rect(90, 855, 520, 70, 20);
  36.  
  37.     // Grey Background for "Limit Switch Rotary Axis"
  38.     fill(229, 229, 229, 100);
  39.     stroke(0, 0, 0, 100);
  40.     rect(90, 755, 520, 70, 20);
  41.  
  42.     // Grey Background for "Limit Switch Vertical Axis"
  43.     fill(229, 229, 229, 100);
  44.     stroke(0, 0, 0, 100);
  45.     rect(90, 655, 520, 70, 20);
  46.  
  47.     // Grey Background for "Motor-X Running"
  48.     fill(229, 229, 229, 100);
  49.     stroke(0, 0, 0, 100);
  50.     rect(700, 655, 390, 70, 20);
  51.  
  52.     // Grey Background for "Motor-Y Running"
  53.     fill(229, 229, 229, 100);
  54.     stroke(0, 0, 0, 100);
  55.     rect(700, 755, 390, 70, 20);
  56.  
  57.     // Grey Background for "Motor-Z Running"
  58.     fill(229, 229, 229, 100);
  59.     stroke(0, 0, 0, 100);
  60.     rect(700, 855, 390, 70, 20);
  61.  
  62.     while (myPort.available() > 0) {
  63.       String myString = myPort.readStringUntil('}');
  64.  
  65.       if (myString != null) {
  66.         println(myString);
  67.         String subString = null;
  68.  
  69.         if (myString.length() > 8) {
  70.           subString = myString.substring(4, 8);
  71.         } else {
  72.           subString = "defaultString";
  73.         }
  74.  
  75.         if (subString.equals("ArdC") == true) {
  76.           jsonFlag = true;
  77.         } else {
  78.           jsonFlag = false;
  79.         }
  80.  
  81.         if (jsonFlag == true) {
  82.           try {
  83.             JSONObject json = JSONObject.parse(myString);
  84.             String vArduinoConnected = json.getString("ArdC");
  85.             String btnXForward = json.getString("XF");
  86.             String btnXDownward= json.getString("XD");
  87.             String btnYLeft= json.getString("YL");
  88.             String btnYRight= json.getString("YR");
  89.             String btnZUp= json.getString("ZU");
  90.             String btnZDown= json.getString("ZD");
  91.             String btnInitialise= json.getString("Init");
  92.             String LimitSwitchRotary = json.getString("LimR");
  93.             String LimitSwitchHorizontal = json.getString("LimH");
  94.             String LimitSwitchVertical = json.getString("LimV");
  95.             println(btnXForward);
  96.  
  97.             if (LimitSwitchHorizontal.equals("1") == true) {
  98.               image(imgGreen, 550, 865);
  99.               LimitSwitchHorizontalAxisReached = true;
  100.             } else {
  101.               image(imgRed, 550, 865);
  102.               LimitSwitchHorizontalAxisReached = false;
  103.             }
  104.              
  105.             if (LimitSwitchRotary.equals("1") == true) {
  106.               image(imgGreen, 550, 765);
  107.               LimitSwitchRotaryAxisReached = true;
  108.             } else {
  109.               image(imgRed, 550, 765);
  110.               LimitSwitchRotaryAxisReached = false;
  111.             }
  112.              
  113.             if (LimitSwitchVertical.equals("1") == true) {
  114.               image(imgGreen, 550, 665);
  115.               LimitSwitchVerticalAxisReached = true;
  116.             } else {
  117.               image(imgRed, 550, 665);
  118.               LimitSwitchVerticalAxisReached = false;
  119.             }
  120.              
  121.             if (btnXForward.equals("1") == true || btnXDownward.equals("1") == true) {
  122.               image(imgGreen, 1030, 665);
  123.             } else {
  124.               image(imgRed, 1030, 665);
  125.             }
  126.              
  127.             if (btnYLeft.equals("1") == true || btnYRight.equals("1")  == true) {
  128.               image(imgGreen, 1030, 765);
  129.             } else {
  130.               image(imgRed, 1030, 765);
  131.             }
  132.              
  133.             if (btnZUp.equals("1") == true || btnZDown.equals("1")  == true) {
  134.               image(imgGreen, 1030, 865);
  135.             } else {
  136.               image(imgRed, 1030, 865);
  137.             }
  138.              
  139.             if (LimitSwitchHorizontalAxisReached && LimitSwitchRotaryAxisReached && LimitSwitchVerticalAxisReached) {
  140.               image(imgGreen, 550, 965);
  141.             } else {
  142.               image(imgRed, 550, 965);
  143.             }
  144.           }
  145.  
  146.           catch (Exception e) {
  147.             println("An error occured, while trying to parse the jSon object.");
  148.           }
  149.         }
  150.  
  151.         textSize(30);
  152.         fill(255, 255, 255);
  153.         text("Home Position Finished", 110, 1000);
  154.  
  155.         fill(255, 255, 255);
  156.         text("Limit Switch Horizontal Axis", 110, 900);
  157.  
  158.         fill(255, 255, 255);
  159.         text("Limit Switch Rotary Axis", 110, 800);
  160.  
  161.         fill(255, 255, 255);
  162.         text("Limit Switch Vertical Axis", 110, 700);
  163.  
  164.         fill(255, 255, 255);
  165.         text("Motor-X Running", 720, 700);
  166.  
  167.         fill(255, 255, 255);
  168.         text("Motor-Y Running", 720, 800);
  169.  
  170.         fill(255, 255, 255);
  171.         text("Motor-Z Running", 720, 900);
  172.  
  173.         textSize(40);
  174.         fill(255, 255, 255);
  175.         text("Motor Direction", 1200, 600);
  176.       }
  177.     }
  178.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement