aboutsummaryrefslogtreecommitdiffstats
path: root/Web/Server
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--Web/Server/Results/PLACEHOLDER0
-rw-r--r--Web/Server/Results/results.csv2
-rw-r--r--Web/Server/Server.py83
-rw-r--r--Web/Server/static/Server.css64
-rw-r--r--Web/Server/static/Server.js19
-rw-r--r--Web/Server/templates/base.html48
-rw-r--r--Web/Server/templates/index.html26
-rw-r--r--Web/Server/templates/results.html13
8 files changed, 0 insertions, 255 deletions
diff --git a/Web/Server/Results/PLACEHOLDER b/Web/Server/Results/PLACEHOLDER
deleted file mode 100644
index e69de29..0000000
--- a/Web/Server/Results/PLACEHOLDER
+++ /dev/null
diff --git a/Web/Server/Results/results.csv b/Web/Server/Results/results.csv
deleted file mode 100644
index 82b0137..0000000
--- a/Web/Server/Results/results.csv
+++ /dev/null
@@ -1,2 +0,0 @@
-THIS IS RESULTS TEXT
-Current Time = 10:55:30 \ No newline at end of file
diff --git a/Web/Server/Server.py b/Web/Server/Server.py
deleted file mode 100644
index 6070406..0000000
--- a/Web/Server/Server.py
+++ /dev/null
@@ -1,83 +0,0 @@
-import os
-try: #python3
- from urllib.request import urlopen
-except: #python2
- from urllib2 import urlopen
-from flask import Flask, flash, request, redirect, render_template, Response
-from werkzeug.utils import secure_filename
-import requests
-import json
-
-app = Flask(__name__)
-app.secret_key = "ski u mah"
-app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024
-
-ALLOWED_EXTENSIONS = set(['py'])
-
-PI_URL = 'http://localhost:8000'
-
-# UNCOMMENT IF RUNNING PI.PY ON PI
-#PI_URL = 'http://192.168.1.10:8000'
-
-RESULTS_DESTINATION = "Results/results.csv"
-
-def allowed_file(filename):
- return '.' in filename and filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS
-
-@app.route('/')
-def home():
- return render_template('index.html')
-
-@app.route('/upload', methods=['POST'])
-def upload_file():
- if request.method == 'POST':
- # Check if the post request has the file part
- if 'file' not in request.files:
- print("hi")
- return render_template('index.html', error = 'No file part')
-
- # Grab the file
- file = request.files['file']
- if file.filename == '':
- print("hi")
- return render_template('index.html', error = 'No file selected for uploading')
-
- # Send the file content as a post to the PI
- if file and allowed_file(file.filename):
-
- dictToSend = {'filename':file.filename, 'file_content':file.read()}
- file.close()
- print('Running test')
- response = requests.post(PI_URL + '/tests/endpoint', json=dictToSend)
-
- results_filename = json.loads(response.text)[u'results_filename']
- results_content = json.loads(response.text)[u'results_content']
- flash('Results file:' + results_filename)
- flash('Response from server:' + results_content)
-
- results = open(RESULTS_DESTINATION, "w")
- results.write(results_content)
- results.close()
-
- return render_template('results.html')
- else:
- print("hi")
- return render_template('index.html', error = 'Allowed file types are .py')
- return render_template('index.html', error = 'No file selected')
-
-@app.route('/results', methods=['GET'])
-def download():
- # Grab content from results file
- with open(RESULTS_DESTINATION, 'r') as results:
- results_content = results.read()
- results.close()
-
- # Put content as a download file
- return Response(
- results_content,
- mimetype="text/csv",
- headers={"Content-disposition":
- "attachment; filename=results.csv"})
-
-if __name__ == "__main__":
- app.run(host="localhost", port=5000) \ No newline at end of file
diff --git a/Web/Server/static/Server.css b/Web/Server/static/Server.css
deleted file mode 100644
index 10d8b23..0000000
--- a/Web/Server/static/Server.css
+++ /dev/null
@@ -1,64 +0,0 @@
-.container{
- color: white;
- background-color: maroon;
- border-style: solid;
- border: 1px solid #d5d6d2;
- text-align: center;
- margin:5px;
-}
-
-.button {
- background-color: gold;
- border: solid;
- border-color:#d5d6d2;
- color: black;
- padding: 15px 32px;
- text-align: center;
- text-decoration: none;
- display: inline-block;
- font-size: 16px;
-}
-
-.button:hover{
- background-color: white;
- cursor: pointer;
-}
-
-a{
- color:white;
- text-decoration:none;
-}
-a:hover{
- text-decoration:underline
-}
-
-#main{
- color: black;
- background-color: #d5d6d2;
- border-style: solid;
- border: 1px solid #d5d6d2;
- text-align: center;
- margin:5px;
-}
-
-#about{
- display: none;
-}
-
-#title{
- font-size: xx-large;
-}
-
-#subtitle{
- font-size: large;
-}
-
-#choose_file{
- border: none;
- text-decoration: none;
- display: inline-block;
-}
-
-#submit{
-
-} \ No newline at end of file
diff --git a/Web/Server/static/Server.js b/Web/Server/static/Server.js
deleted file mode 100644
index 6c2be18..0000000
--- a/Web/Server/static/Server.js
+++ /dev/null
@@ -1,19 +0,0 @@
-function showLoad(){
- var paragraph = document.getElementById("running");
- var text = document.createTextNode("Running Test, Please wait for Results");
- paragraph.appendChild(text);
-
- var div = document.getElementById("upload");
- if (div.style.display !== 'none') {
- div.style.display = 'none';
- }
-}
-
-function toggleAbout(){
- var x = document.getElementById("about");
- if (x.style.display === "none") {
- x.style.display = "block";
- } else {
- x.style.display = "none";
- }
-} \ No newline at end of file
diff --git a/Web/Server/templates/base.html b/Web/Server/templates/base.html
deleted file mode 100644
index a1bc09b..0000000
--- a/Web/Server/templates/base.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html>
- <head>
- <link rel="stylesheet" href="/static/Server.css">
- <script type="text/javascript" src="/static/Server.js"></script>
- </head>
- <body>
- <title>ANDI'S PIE</title>
- <nav class = "container">
- <h1 id="title">Remotely Accessible Inverted Pendulum</h1>
-
- <button class="button" onclick="toggleAbout()">About</button>
-
- <div id="about">
- <h2 id="subtitle">
- By Alin Butoi, Paul D’Amico, Dat Nguyen, Ross Olson, Rachel Schow <br>
- Advisor: Professor Andrew Lamperski <br>
- Sponsored by the University of Minnesota - Twin Cities <br>
- </h2>
- <h1>Team ANDI'S PIE</h1>
- <div>
- Andy’s Nifty Dynamic Inverted Swinging Pendulum in Equilibrium
- </div>
-
- <h1>Background</h1>
- <p>
- Our team developed an inverted pendulum system that could be accessed over a computer network for use by students. The inverted pendulum is a common controls problem used in academia. This problem teaches students concepts of control loops, data filtering, and machine learning.
- </p>
-
- <h1> What is an Inverted Pendulum? </h1>
- <p>
- A vertical pendulum that is balanced via the base moving. <br>
- Controlled movements are determined by measuring the position and speed of the pendulum and base.
- </p>
-
- <a href="https://github.umn.edu/damic014/ee4950-inverted-pendulum"> Link to Github</a>
- </div>
-
- <br>
- <br>
- </nav>
-
- <div id="main">
- {% block content %}
- default content
- {% endblock %}
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/Web/Server/templates/index.html b/Web/Server/templates/index.html
deleted file mode 100644
index 6f7e738..0000000
--- a/Web/Server/templates/index.html
+++ /dev/null
@@ -1,26 +0,0 @@
-{% extends "base.html" %}
-
-{% block content %}
- <div id="upload">
- <h2>Upload a python file onto the inverted pendulum</h2>
- <p>
- {% if error %}
- <h2>{{ error }}</h2>
- {% endif %}
- </p>
-
- <form method="post" action="/upload" enctype="multipart/form-data">
- <dl>
- <p>
- <input id="choose_file" type="file" name="file" autocomplete="off" required>
- </p>
- </dl>
- <p>
- <input id="submit" type="submit" value="Submit"> <!-- onclick="showLoad()"> -->
- </p>
- </form>
- </div>
-
- <div id="running"></div>
-
-{% endblock %}
diff --git a/Web/Server/templates/results.html b/Web/Server/templates/results.html
deleted file mode 100644
index dd32d87..0000000
--- a/Web/Server/templates/results.html
+++ /dev/null
@@ -1,13 +0,0 @@
-{% extends "base.html" %}
-
-{% block content %}
- <br>
- <br>
- <form method="get" action="/results">
- <button type="submit">Download Results File</button>
- </form>
-
- <form method="get" action="/">
- <button type="submit">Upload another file</button>
- </form>
-{% endblock %} \ No newline at end of file