diff --git a/Ev3/.idea/misc.xml b/Ev3/.idea/misc.xml
deleted file mode 100644
index 8822db8..0000000
--- a/Ev3/.idea/misc.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Ev3/.idea/modules.xml b/Ev3/.idea/modules.xml
deleted file mode 100644
index 1af4d3a..0000000
--- a/Ev3/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Ev3/.idea/serialmonitor_settings.xml b/Ev3/.idea/serialmonitor_settings.xml
deleted file mode 100644
index b45564e..0000000
--- a/Ev3/.idea/serialmonitor_settings.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/Ev3/.idea/vcs.xml b/Ev3/.idea/vcs.xml
deleted file mode 100644
index 6c0b863..0000000
--- a/Ev3/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Ev3/.idea/workspace.xml b/Ev3/.idea/workspace.xml
deleted file mode 100644
index 6c9ed69..0000000
--- a/Ev3/.idea/workspace.xml
+++ /dev/null
@@ -1,158 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1562175685444
-
-
- 1562175685444
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Ev3/CMakeLists.txt b/Ev3/CMakeLists.txt
deleted file mode 100644
index ca47590..0000000
--- a/Ev3/CMakeLists.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-cmake_minimum_required(VERSION 3.14)
-project(Ev3)
-
-set(CMAKE_CXX_STANDARD 14)
-
-add_executable(Ev3 main.cpp)
\ No newline at end of file
diff --git a/Ev3/main.cpp b/Ev3/main.cpp
deleted file mode 100644
index f253cbe..0000000
--- a/Ev3/main.cpp
+++ /dev/null
@@ -1,6 +0,0 @@
-#include
-
-int main() {
- std::cout << "Hello, World!" << std::endl;
- return 0;
-}
\ No newline at end of file
diff --git a/Ev3/main.py b/Ev3/main.py
new file mode 100644
index 0000000..289e991
--- /dev/null
+++ b/Ev3/main.py
@@ -0,0 +1,43 @@
+#!/usr/bin/env python3
+print("[INFO]: Interpreter started")
+from ev3dev.core import *
+print("[INFO]: Imported ev3dev.ev3")
+import socket
+print("[INFO]: Imported socket")
+import os
+print("[INFO]: Imported os")
+import json
+print("[INFO]: Imported json")
+
+
+HOST = '0.0.0.0'
+PORT = 3131
+mjpeg_loc = "/home/robot/mjpeg-streamer/mjpeg-streamer-experimantal/mjpeg-streamer"
+os.spawnl(os.P_DETACH, ' -i "./input_uvc.so -f 15 -r 640x480" -o "./output_http.so -w ./www"')
+power = PowerSupply()
+
+with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
+ try:
+ s.bind((HOST, PORT))
+ while True:
+ s.listen()
+ print("[INFO]: Listening...")
+ conn, addr = s.accept()
+ with conn:
+ print('[INFO]: Connected by', addr)
+ while True:
+ try:
+ data = {
+ "battery_voltage":power.measured_volts,
+ "current_drawn":power.measured_amps,
+ "lat":31,
+ "lng":39
+ }
+ conn.send((json.dumps(data, ensure_ascii=False)+"\n").encode('gbk'))
+ except BrokenPipeError:
+ print("[INFO]: Client disconnected")
+ break
+
+
+ except KeyboardInterrupt:
+ s.close()
diff --git a/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.form b/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.form
index 067edd5..9c3215e 100644
--- a/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.form
+++ b/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.form
@@ -82,15 +82,19 @@
-
-
-
+
-
-
-
+
+
+
+
+
+
+
+
+
@@ -105,10 +109,13 @@
-
-
-
-
+
+
+
+
+
+
+
@@ -121,31 +128,25 @@
-
+
-
+
-
+
-
+
+
+
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
+
@@ -188,8 +189,8 @@
-
-
+
+
@@ -198,30 +199,232 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.java b/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.java
index b2081b0..04cf3a8 100644
--- a/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.java
+++ b/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.java
@@ -13,11 +13,13 @@ import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.util.Base64;
import javax.imageio.ImageIO;
+import javax.net.ssl.HttpsURLConnection;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import javax.swing.JTabbedPane;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import net.schmizz.sshj.common.IOUtils;
import org.json.JSONObject;
/**
@@ -36,6 +38,7 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
private ServerSocket server;
private Socket client;
private Thread running = null;
+ private boolean listening = false;
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
@@ -47,13 +50,40 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
jPanel1 = new javax.swing.JPanel();
jTabbedPane1 = new javax.swing.JTabbedPane();
- jPanel5 = new javax.swing.JPanel();
- intersection_label = new javax.swing.JLabel();
- ambulance_label = new javax.swing.JLabel();
+ jPanel2 = new javax.swing.JPanel();
+ camera_full_label = new javax.swing.JLabel();
+ ambulance_button = new javax.swing.JButton();
+ camera_cut_label = new javax.swing.JLabel();
+ jPanel3 = new javax.swing.JPanel();
+ jLabel1 = new javax.swing.JLabel();
+ jLabel2 = new javax.swing.JLabel();
+ jLabel3 = new javax.swing.JLabel();
+ jLabel4 = new javax.swing.JLabel();
+ jLabel5 = new javax.swing.JLabel();
+ jLabel6 = new javax.swing.JLabel();
+ gpu_usage = new javax.swing.JLabel();
+ gpu_temp = new javax.swing.JLabel();
+ cpu_usage = new javax.swing.JLabel();
+ cpu_temp = new javax.swing.JLabel();
+ ram_usage = new javax.swing.JLabel();
+ ram_temp = new javax.swing.JLabel();
+ jLabel7 = new javax.swing.JLabel();
+ fan_rpm = new javax.swing.JLabel();
fps_label = new javax.swing.JLabel();
manage_button = new javax.swing.JButton();
jPanel4 = new javax.swing.JPanel();
+ jPanel5 = new javax.swing.JPanel();
+ intersect_1_Y = new javax.swing.JLabel();
+ intersect_1_G = new javax.swing.JLabel();
+ intersect_1_R = new javax.swing.JLabel();
+ jPanel6 = new javax.swing.JPanel();
+ intersect_2_Y = new javax.swing.JLabel();
+ intersect_2_G = new javax.swing.JLabel();
+ intersect_2_R = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
+ jLabel9 = new javax.swing.JLabel();
+ jPanel7 = new javax.swing.JPanel();
+ robot_cam_label = new javax.swing.JLabel();
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
@@ -79,43 +109,14 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
}
});
- intersection_label.setAlignmentY(0.0F);
-
- ambulance_label.setName(""); // NOI18N
-
- fps_label.setText("0 FPS");
+ camera_full_label.setText(" ");
- javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
- jPanel5.setLayout(jPanel5Layout);
- jPanel5Layout.setHorizontalGroup(
- jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel5Layout.createSequentialGroup()
- .addGap(30, 30, 30)
- .addComponent(intersection_label, javax.swing.GroupLayout.PREFERRED_SIZE, 1024, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel5Layout.createSequentialGroup()
- .addGap(185, 185, 185)
- .addComponent(ambulance_label, javax.swing.GroupLayout.PREFERRED_SIZE, 250, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(204, Short.MAX_VALUE))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(fps_label)
- .addGap(168, 168, 168))))
- );
- jPanel5Layout.setVerticalGroup(
- jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel5Layout.createSequentialGroup()
- .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel5Layout.createSequentialGroup()
- .addGap(52, 52, 52)
- .addComponent(fps_label)
- .addGap(88, 88, 88)
- .addComponent(ambulance_label, javax.swing.GroupLayout.PREFERRED_SIZE, 280, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGroup(jPanel5Layout.createSequentialGroup()
- .addGap(29, 29, 29)
- .addComponent(intersection_label, javax.swing.GroupLayout.PREFERRED_SIZE, 768, javax.swing.GroupLayout.PREFERRED_SIZE)))
- .addContainerGap(181, Short.MAX_VALUE))
- );
+ ambulance_button.setText("Start");
+ ambulance_button.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ ambulance_buttonActionPerformed(evt);
+ }
+ });
jTabbedPane1.addTab("Intersection & Ambulance", jPanel5);
@@ -146,39 +147,214 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
jTabbedPane1.addTab("Traffic Lights", jPanel6);
- javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7);
- jPanel7.setLayout(jPanel7Layout);
- jPanel7Layout.setHorizontalGroup(
- jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 1693, Short.MAX_VALUE)
+ fan_rpm.setFont(new java.awt.Font("Dialog", 1, 24)); // NOI18N
+ fan_rpm.setText("2500 RPM");
+
+ fps_label.setFont(new java.awt.Font("Dialog", 1, 18)); // NOI18N
+ fps_label.setText("60 FPS");
+
+ manage_button.setText("Management");
+ manage_button.addActionListener(new java.awt.event.ActionListener() {
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
+ manage_buttonActionPerformed(evt);
+ }
+ });
+
+ javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
+ jPanel2.setLayout(jPanel2Layout);
+ jPanel2Layout.setHorizontalGroup(
+ jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addComponent(camera_full_label, javax.swing.GroupLayout.PREFERRED_SIZE, 1280, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 31, Short.MAX_VALUE))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addGap(0, 0, Short.MAX_VALUE)
+ .addComponent(ambulance_button, javax.swing.GroupLayout.PREFERRED_SIZE, 247, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(475, 475, 475)))
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 131, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+ .addComponent(fan_rpm, javax.swing.GroupLayout.PREFERRED_SIZE, 150, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addComponent(fps_label, javax.swing.GroupLayout.PREFERRED_SIZE, 84, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(86, 86, 86)))
+ .addGap(18, 18, 18))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, 256, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(camera_cut_label, javax.swing.GroupLayout.PREFERRED_SIZE, 300, javax.swing.GroupLayout.PREFERRED_SIZE)))
+ .addContainerGap())
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+ .addComponent(manage_button, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(95, 95, 95))))
);
- jPanel7Layout.setVerticalGroup(
- jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 978, Short.MAX_VALUE)
+ jPanel2Layout.setVerticalGroup(
+ jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGap(32, 32, 32)
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addComponent(camera_full_label, javax.swing.GroupLayout.PREFERRED_SIZE, 720, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 27, Short.MAX_VALUE)
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(ambulance_button)
+ .addComponent(manage_button))
+ .addContainerGap())
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addComponent(camera_cut_label, javax.swing.GroupLayout.PREFERRED_SIZE, 300, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGap(180, 180, 180)
+ .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(jLabel7)
+ .addComponent(fan_rpm, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)))
+ .addGroup(jPanel2Layout.createSequentialGroup()
+ .addGap(18, 18, 18)
+ .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(fps_label, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(110, 110, 110))))
);
jTabbedPane1.addTab("Loads", jPanel7);
- jLabel8.setText("deneme");
+ jPanel5.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
+
+ intersect_1_Y.setBackground(new java.awt.Color(204, 204, 204));
+ intersect_1_Y.setForeground(new java.awt.Color(204, 204, 204));
+ intersect_1_Y.setOpaque(true);
+
+ intersect_1_G.setBackground(new java.awt.Color(204, 204, 204));
+ intersect_1_G.setForeground(new java.awt.Color(204, 204, 204));
+ intersect_1_G.setOpaque(true);
+
+ intersect_1_R.setBackground(new java.awt.Color(204, 204, 204));
+ intersect_1_R.setForeground(new java.awt.Color(204, 204, 204));
+ intersect_1_R.setOpaque(true);
+
+ javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
+ jPanel5.setLayout(jPanel5Layout);
+ jPanel5Layout.setHorizontalGroup(
+ jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
+ .addContainerGap(109, Short.MAX_VALUE)
+ .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(intersect_1_G, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(intersect_1_R, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(intersect_1_Y, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGap(107, 107, 107))
+ );
+ jPanel5Layout.setVerticalGroup(
+ jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
+ .addGap(54, 54, 54)
+ .addComponent(intersect_1_R, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(45, 45, 45)
+ .addComponent(intersect_1_Y, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(45, 45, 45)
+ .addComponent(intersect_1_G, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addContainerGap(49, Short.MAX_VALUE))
+ );
+
+ jPanel6.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
+
+ intersect_2_Y.setBackground(new java.awt.Color(204, 204, 204));
+ intersect_2_Y.setForeground(new java.awt.Color(204, 204, 204));
+ intersect_2_Y.setOpaque(true);
+
+ intersect_2_G.setBackground(new java.awt.Color(204, 204, 204));
+ intersect_2_G.setForeground(new java.awt.Color(204, 204, 204));
+ intersect_2_G.setOpaque(true);
+
+ intersect_2_R.setBackground(new java.awt.Color(204, 204, 204));
+ intersect_2_R.setForeground(new java.awt.Color(255, 153, 153));
+ intersect_2_R.setOpaque(true);
+
+ javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
+ jPanel6.setLayout(jPanel6Layout);
+ jPanel6Layout.setHorizontalGroup(
+ jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup()
+ .addContainerGap(159, Short.MAX_VALUE)
+ .addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(intersect_2_G, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(intersect_2_R, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addComponent(intersect_2_Y, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE))
+ .addGap(163, 163, 163))
+ );
+ jPanel6Layout.setVerticalGroup(
+ jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup()
+ .addGap(36, 36, 36)
+ .addComponent(intersect_2_R, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(53, 53, 53)
+ .addComponent(intersect_2_Y, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(intersect_2_G, javax.swing.GroupLayout.PREFERRED_SIZE, 196, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(38, 38, 38))
+ );
+
+ jLabel8.setText("Intersection 1");
+
+ jLabel9.setText("Intersection 2");
javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
jPanel4.setLayout(jPanel4Layout);
jPanel4Layout.setHorizontalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel4Layout.createSequentialGroup()
- .addGap(493, 493, 493)
+ .addGap(276, 276, 276)
.addComponent(jLabel8)
- .addContainerGap(1074, Short.MAX_VALUE))
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(jLabel9)
+ .addGap(241, 241, 241))
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
+ .addGap(125, 125, 125)
+ .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 526, Short.MAX_VALUE)
+ .addComponent(jPanel6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+ .addGap(33, 33, 33))
);
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel4Layout.createSequentialGroup()
- .addGap(115, 115, 115)
- .addComponent(jLabel8)
- .addContainerGap(686, Short.MAX_VALUE))
+ .addContainerGap()
+ .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+ .addComponent(jLabel9)
+ .addComponent(jLabel8))
+ .addGap(4, 4, 4)
+ .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addContainerGap())
+ );
+
+ jTabbedPane1.addTab("Lights", jPanel4);
+
+ javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7);
+ jPanel7.setLayout(jPanel7Layout);
+ jPanel7Layout.setHorizontalGroup(
+ jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel7Layout.createSequentialGroup()
+ .addGap(449, 449, 449)
+ .addComponent(robot_cam_label)
+ .addContainerGap(1173, Short.MAX_VALUE))
+ );
+ jPanel7Layout.setVerticalGroup(
+ jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(jPanel7Layout.createSequentialGroup()
+ .addGap(243, 243, 243)
+ .addComponent(robot_cam_label)
+ .addContainerGap(573, Short.MAX_VALUE))
);
- jTabbedPane1.addTab("tab2", jPanel4);
+ jTabbedPane1.addTab("Robot Cam", jPanel7);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
@@ -255,9 +431,42 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
}//GEN-LAST:event_jTabbedPane1MouseExited
private void jTabbedPane1MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTabbedPane1MouseEntered
-
+ if(!listening){
+ jTabbedPane1.addChangeListener(this);
+ System.out.println("Added listener");
+ listening = true;
+ }
}//GEN-LAST:event_jTabbedPane1MouseEntered
+ private void manage_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_manage_buttonActionPerformed
+ managementForm settings = new managementForm();
+ settings.setVisible(true);
+ settings.initIp();
+ }//GEN-LAST:event_manage_buttonActionPerformed
+
+ private void ambulance_buttonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ambulance_buttonActionPerformed
+ if(running!=null){
+ try{
+ server.close();
+ client.close();
+ running.stop();
+ }catch(IOException e){
+ System.out.println("IO Exception occured");
+ }catch(Exception e){
+ System.out.println(e.toString());
+ }
+ }else{
+ running = new Thread(() -> {
+ try{
+ onCreate(8485,"Ambulance");
+ }catch(Exception e){
+ System.out.println(e.toString());
+ }
+ });
+ running.start();
+ }
+ }//GEN-LAST:event_ambulance_buttonActionPerformed
+
/**
* @param args the command line arguments
*/
@@ -283,6 +492,7 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
+
new cameraForm().setVisible(true);
}});
@@ -290,31 +500,50 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
public void onCreate(int port, String name) throws Exception{
boolean run = true;
- if ("lights".equals(name)) {
- Socket clientSocket = new Socket("192.168.2.174",69);
- int c;
- InputStream in = clientSocket.getInputStream();
- String message = "";
- while((c=in.read()) != -1){
- if (c == 10 || c == 13) {
- break;
- }
- message += (char) c;
+ if (name == "robot") {
+ while (run) {
+ BufferedImage image = null;
+ URL img_url = new URL("http://10.10.26.141:8080/?action=snapshot");
+ image = ImageIO.read(img_url);
+ robot_cam_label.setIcon(new ImageIcon(image));
+
+ URL obj = new URL("http://10.10.26.164:5001/ai");
+ HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
+
+ con.setRequestMethod("POST");
+
+ byte[] imageBytes = IOUtils.toByteArray(img_url);
+ String base64 = Base64.getEncoder().encodeToString(imageBytes);
+
+ String params = "type=coco&img=" + base64;
+
+ con.setDoOutput(true);
+ DataOutputStream wr = new DataOutputStream(con.getOutputStream());
+ wr.writeBytes(params);
+ wr.flush();
+ wr.close();
+
+ BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
+ String inputLine;
+ StringBuffer response = new StringBuffer();
+
+ while ((inputLine = in.readLine()) != null) {
+ response.append(inputLine);
+ }
+ in.close();
+
+ JSONObject json = new JSONObject(response.toString());
+ Graphics2D g2d = image.createGraphics();
}
-
- this.light_1_label.setText("Light 1: " + message.charAt(0));
- this.light_2_label.setText("Light 2: " + message.charAt(2));
-
- System.out.println(message);
- return;
}
- this.intersection_label.setIcon(new ImageIcon());
- this.ambulance_label.setIcon(new ImageIcon());
+ this.camera_cut_label.setIcon(new ImageIcon());
+ this.camera_full_label.setIcon(new ImageIcon());
String fromClient = "";
String toClient;
server = new ServerSocket(port);
System.out.println("wait for connection on port " + port);
+ jTabbedPane1.addChangeListener(this);
client = server.accept();
System.out.println("got connection on port " + port);
BufferedImage image = null;
@@ -322,70 +551,99 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
int null_reps = 0;
int fps_sum = 0;
int reps = 0;
- while(run) {
- try{
- long start = System.currentTimeMillis();
- BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
-
- fromClient = in.readLine();
-
- if(fromClient != null) {
- if(fromClient.trim().equals("Bye")) {
- run = false;
- System.out.println("socket closed");
- }else{
- System.out.println("received data in size: " + fromClient.length());
- JSONObject json = new JSONObject(fromClient);
- byte[] decodedBytes = Base64.getDecoder().decode(json.getString("image_full"));
- ByteArrayInputStream bis = new ByteArrayInputStream(decodedBytes);
- image = ImageIO.read(bis);
- bis.close();
- if ("cams".equals(name)) {
- this.intersection_label.setIcon(new ImageIcon(resizeImage(image,1024, 768)));
+ if(name.equals("cams")){
+ while(run) {
+ try{
+ long start = System.currentTimeMillis();
+ BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
+
+ fromClient = in.readLine();
+
+ if(fromClient != null) {
+ if(fromClient.trim().equals("Bye")) {
+ run = false;
+ System.out.println("socket closed");
+ }else{
+ System.out.println("received data in size: " + fromClient.length());
+ JSONObject json = new JSONObject(fromClient);
+ byte[] decodedBytes = Base64.getDecoder().decode(json.getString("image_full"));
+ ByteArrayInputStream bis = new ByteArrayInputStream(decodedBytes);
+ image = ImageIO.read(bis);
+ bis.close();
JSONObject dims = json.getJSONObject("image_sizes");
- this.ambulance_label.setIcon(new ImageIcon(resizeImage(image.getSubimage(dims.getInt("x"), dims.getInt("y"), dims.getInt("width"), dims.getInt("height")),250,280)));
- } else if ("Loads".equals(name)) {
+ this.camera_full_label.setIcon(new ImageIcon(resizeImage(image,1280,720)));
+ this.camera_cut_label.setIcon(new ImageIcon(resizeImage(image.getSubimage(dims.getInt("x"), dims.getInt("y"), dims.getInt("width"), dims.getInt("height")),300,300)));
JSONObject data = json.optJSONObject("load");
- /*this.gpu_temp.setText(data.getString("gpu_temp"));
- this.gpu_usage.setText(daqqta.getString("gpu_load"));
+ this.gpu_temp.setText(data.getString("gpu_temp"));
+ this.gpu_usage.setText(data.getString("gpu_load"));
this.cpu_temp.setText(data.getString("cpu_temp"));
this.cpu_usage.setText(data.getString("cpu_load"));
this.ram_temp.setText(data.getString("mem_temp"));
this.ram_usage.setText(data.getString("mem_load"));
- this.fan_rpm.setText(data.getString("fan_speed"));*/
- }
-
- null_reps=0;
- long end = System.currentTimeMillis();
- float sec = (end - start) / 1000F;
- fps_sum += Math.round(1/sec);
- reps+=1;
- if(reps%10==0){
- this.fps_label.setText(fps_sum/10 + " FPS");
- fps_sum=0;
+ this.fan_rpm.setText(data.getString("fan_speed"));
+ null_reps=0;
+ long end = System.currentTimeMillis();
+ float sec = (end - start) / 1000F;
+ fps_sum += Math.round(1/sec);
+ reps+=1;
+ if(reps%10==0){
+ this.fps_label.setText(fps_sum/10 + " FPS");
+ fps_sum=0;
+ }
}
+ }else{
+ null_reps +=1;
}
- }else{
- null_reps +=1;
+ }
+ catch(Exception e){
+ System.out.println(fromClient);
+ System.out.println(e.toString());
+ null_reps+=1;
+ }
+ if (null_reps >= 1000000000){
+ run = false;
+ System.out.println("socket closed");
}
}
- catch(Exception e){
- System.out.println(fromClient);
- System.out.println(e.toString());
- null_reps+=1;
- }
- if (null_reps >= 1000000000){
- run = false;
- System.out.println("socket closed");
- }
+ server.close();
+ client.close();
+ this.camera_cut_label.setIcon(new ImageIcon());
+ this.camera_full_label.setIcon(new ImageIcon());
+ JOptionPane.showMessageDialog(this, name +" socket server down!");
+ running.stop();
+ }else if(name.equals("lights")){
+ int[][] colors = {{204,0,0},{204,204,0},{0,204,0}};
+ javax.swing.JLabel[][] labels = {{intersect_1_R,intersect_1_Y,intersect_1_G},{intersect_2_R,intersect_2_Y,intersect_2_G}};
+ int[] lights = {0,0};
+ while(run) {
+ BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
+
+ fromClient = in.readLine();
+
+ if(fromClient != null) {
+ if(fromClient.trim().equals("Bye")) {
+ run = false;
+ System.out.println("socket closed");
+ }else{
+ System.out.println("received data in size: " + fromClient.length());
+ System.out.println(fromClient);
+ lights[0] = Character.getNumericValue(fromClient.charAt(0));
+ lights[1] = Character.getNumericValue(fromClient.charAt(2));
+ for(int i = 0;i < 2;i++){
+ for(int j = 0;j<3;j++){
+ if(lights[i] == j){
+ labels[i][j].setBackground(new java.awt.Color(colors[j][0], colors[j][1], colors[j][2]));
+ continue;
+ }
+ labels[i][j].setBackground(new java.awt.Color(204,204,204));
+ }
+ }
+ }
+ }
+
+
+ }
}
- server.close();
- client.close();
- this.ambulance_label.setIcon(new ImageIcon());
- this.intersection_label.setIcon(new ImageIcon());
- JOptionPane.showMessageDialog(this, name +" socket server down!");
- running.stop();
-
}
public static BufferedImage resizeImage(final Image image, int width, int height) {
@@ -401,18 +659,69 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
return bufferedImage;
}
@Override
- public void stateChanged(ChangeEvent changeEvent){
- System.out.println("TEST");
- JTabbedPane sourceTabbedPane = (JTabbedPane) changeEvent.getSource();
- int index = sourceTabbedPane.getSelectedIndex();
- System.out.println("Tab changed to: " + sourceTabbedPane.getTitleAt(index));
+ public void stateChanged(ChangeEvent e){
+ System.out.println("Tab: " + jTabbedPane1.getSelectedIndex());
+ if(running!=null){
+ try{
+ server.close();
+ client.close();
+ running.stop();
+ }catch(IOException ex){
+ System.out.println("IO Exception occured");
+ }catch(Exception ex){
+ System.out.println(ex.toString());
+ }
+ }
+ switch (jTabbedPane1.getSelectedIndex()) {
+ case 0:
+ running = new Thread(() -> {
+ try{
+ onCreate(8485,"cams");
+ }catch(Exception ex){
+ System.out.println(e.toString());
+ }
+ });
+ running.start();
+ break;
+ case 1:
+ running = new Thread(() -> {
+ try{
+ onCreate(69,"lights");
+ }catch(Exception ex){
+ System.out.println(e.toString());
+ }
+ });
+ running.start();
+ break;
+ case 2:
+ running = new Thread(() -> {
+ try{
+ onCreate(0,"robot");
+ }catch(Exception ex){
+ System.out.println(e.toString());
+ }
+ });
+ running.start();
+ break;
+ }
+
}
// Variables declaration - do not modify//GEN-BEGIN:variables
- private javax.swing.JLabel ambulance_label;
+ private javax.swing.JButton ambulance_button;
+ private javax.swing.JLabel camera_cut_label;
+ private javax.swing.JLabel camera_full_label;
+ private javax.swing.JLabel cpu_temp;
+ private javax.swing.JLabel cpu_usage;
+ private javax.swing.JLabel fan_rpm;
private javax.swing.JLabel fps_label;
private javax.swing.JLabel gpu_temp;
private javax.swing.JLabel gpu_usage;
- private javax.swing.JButton intersection_button;
+ private javax.swing.JLabel intersect_1_G;
+ private javax.swing.JLabel intersect_1_R;
+ private javax.swing.JLabel intersect_1_Y;
+ private javax.swing.JLabel intersect_2_G;
+ private javax.swing.JLabel intersect_2_R;
+ private javax.swing.JLabel intersect_2_Y;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
@@ -421,13 +730,19 @@ public class cameraForm extends javax.swing.JFrame implements ChangeListener{
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
+ private javax.swing.JLabel jLabel9;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel jPanel5;
+ private javax.swing.JPanel jPanel6;
+ private javax.swing.JPanel jPanel7;
private javax.swing.JTabbedPane jTabbedPane1;
- private javax.swing.JLabel light_1_label;
- private javax.swing.JLabel light_2_label;
+ private javax.swing.JButton manage_button;
+ private javax.swing.JLabel ram_temp;
+ private javax.swing.JLabel ram_usage;
+ private javax.swing.JLabel robot_cam_label;
// End of variables declaration//GEN-END:variables
diff --git a/master_app/target/classes/.netbeans_automatic_build b/master_app/target/classes/.netbeans_automatic_build
new file mode 100644
index 0000000..e69de29
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/Main.class b/master_app/target/classes/me/yigitcolakoglu/master_app/Main.class
index fc2d4c3..da2a957 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/Main.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/Main.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$1.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$1.class
index dfee08e..387006b 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$1.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$1.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$2.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$2.class
index 8210f24..0a9372c 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$2.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$2.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$3.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$3.class
index 96a4909..825dda1 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$3.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$3.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$4.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$4.class
index ee23802..4a343a2 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$4.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$4.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$5.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$5.class
deleted file mode 100644
index 395b1e0..0000000
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$5.class and /dev/null differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$6.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$6.class
deleted file mode 100644
index e1ada3f..0000000
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm$6.class and /dev/null differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm.class b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm.class
index 4758661..b0418fd 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/cameraForm.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$1.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$1.class
index 38933eb..705bb93 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$1.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$1.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$2.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$2.class
index 8d71d4f..2452cd2 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$2.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$2.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$3.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$3.class
index 9dafc0a..6a132c3 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$3.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$3.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$4.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$4.class
index db958ae..3cec647 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$4.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$4.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$5.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$5.class
index 0ff578d..40fbb42 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$5.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$5.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$6.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$6.class
index 776bb4d..e4526cc 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$6.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$6.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$7.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$7.class
index cc00cae..f83176b 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$7.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$7.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$8.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$8.class
index 809de12..b8d355f 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$8.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm$8.class differ
diff --git a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm.class b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm.class
index a543216..792ad30 100644
Binary files a/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm.class and b/master_app/target/classes/me/yigitcolakoglu/master_app/managementForm.class differ
diff --git a/master_app/target/master_app-1.0-SNAPSHOT.jar b/master_app/target/master_app-1.0-SNAPSHOT.jar
index a2f1840..457235e 100644
Binary files a/master_app/target/master_app-1.0-SNAPSHOT.jar and b/master_app/target/master_app-1.0-SNAPSHOT.jar differ
diff --git a/master_app/target/maven-archiver/pom.properties b/master_app/target/maven-archiver/pom.properties
index 3e8e045..15fdcf1 100644
--- a/master_app/target/maven-archiver/pom.properties
+++ b/master_app/target/maven-archiver/pom.properties
@@ -1,5 +1,5 @@
#Generated by Maven
-#Fri May 24 18:58:10 EET 2019
+#Mon Jul 08 11:26:41 EET 2019
groupId=me.yigitcolakoglu
artifactId=master_app
version=1.0-SNAPSHOT
diff --git a/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
index bd2a493..bf5cbfb 100644
--- a/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
+++ b/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -2,14 +2,13 @@ me/yigitcolakoglu/master_app/managementForm$4.class
me/yigitcolakoglu/master_app/cameraForm$3.class
me/yigitcolakoglu/master_app/cameraForm$2.class
me/yigitcolakoglu/master_app/managementForm$3.class
-me/yigitcolakoglu/master_app/cameraForm$5.class
me/yigitcolakoglu/master_app/Main.class
-me/yigitcolakoglu/master_app/managementForm$7.class
me/yigitcolakoglu/master_app/cameraForm$1.class
+me/yigitcolakoglu/master_app/managementForm$7.class
me/yigitcolakoglu/master_app/managementForm.class
me/yigitcolakoglu/master_app/managementForm$1.class
-me/yigitcolakoglu/master_app/managementForm$2.class
me/yigitcolakoglu/master_app/managementForm$8.class
+me/yigitcolakoglu/master_app/managementForm$2.class
me/yigitcolakoglu/master_app/managementForm$6.class
me/yigitcolakoglu/master_app/managementForm$9.class
me/yigitcolakoglu/master_app/cameraForm$4.class
diff --git a/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
index ba9dad0..5252ff8 100644
--- a/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
+++ b/master_app/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -1,3 +1,3 @@
-/home/yigit/projects/MyCity/traffic_analyzer/master_app/src/main/java/me/yigitcolakoglu/master_app/managementForm.java
-/home/yigit/projects/MyCity/traffic_analyzer/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.java
-/home/yigit/projects/MyCity/traffic_analyzer/master_app/src/main/java/me/yigitcolakoglu/master_app/Main.java
+/home/yigit/projects/MyCity/master_app/src/main/java/me/yigitcolakoglu/master_app/Main.java
+/home/yigit/projects/MyCity/master_app/src/main/java/me/yigitcolakoglu/master_app/managementForm.java
+/home/yigit/projects/MyCity/master_app/src/main/java/me/yigitcolakoglu/master_app/cameraForm.java
diff --git a/master_app/target/test-classes/.netbeans_automatic_build b/master_app/target/test-classes/.netbeans_automatic_build
new file mode 100644
index 0000000..e69de29