1

theoretisch gezien hoort al het hardware behalve het schuifregister te werken

This commit is contained in:
Ventilaar 2021-01-18 20:17:37 +01:00
parent 56051b886d
commit 696ecc02ca
2 changed files with 34 additions and 8 deletions

19
run.py
View File

@ -5,11 +5,11 @@ import stats
import steam_api
RPI = True # ZET NAAR TRUE ALS JE OP EEN RPI DRAAIT MET DE JUISTE LIBRARIES, ZODAT DE HARDWARE TAB WERKT
RPI = False # ZET NAAR TRUE ALS JE OP EEN RPI DRAAIT MET DE JUISTE LIBRARIES, ZODAT DE HARDWARE TAB WERKT
# if RPI:
# import hardware
if RPI:
import hardware
app = Flask(__name__) # flask app initialiseren
@ -145,9 +145,20 @@ def api_servo():
"""
if not RPI:
return Response('Hardware kan niet aangestuurt worden omdat het niet op een RPI draait!', status=418)
global state_servo
if request.method == 'POST':
pass
desired_state = request.form['setstate']
try:
hardware.set_servo(desired_state)
except:
return {'request': 'False'}
print(f'Set value for servo {desired_state}')
state_servo = desired_state
return {'request': 'True'}
else:
return {'state': state_servo}

View File

@ -18,7 +18,7 @@
</div>
<div class="col">
<h1>Push buttons</h1>
<h2>Button0 is <span class="badge badge-danger" id="button-badge">Niet ingedrukt</span></h2>
<h2>Button0 is <span class="badge badge-danger" id="button-badge">Nog niet opgevraagd</span></h2>
</div>
</div>
<br>
@ -34,7 +34,9 @@
</div>
<div class="col">
<h1>Servo</h1>
fhdghfdghdfgh
<p>Stel waarde in tussen 0 en 180 graden</p>
<input id="servo-range" type="range" min="0" max="180" step="10" value="90" oninput="this.nextElementSibling.value = this.value" onchange="set_servo(this.value)">
<output id="servo-span">90</output>
</div>
</div>
</div>
@ -78,7 +80,7 @@
});
};
<!-- {% if RPI == False %}// {% endif %}setInterval(function(){ button_poll(); }, 1000);-->
{% if RPI == False %}// {% endif %}setInterval(function(){ button_poll(); }, 500);
</script>
<script>
// dit script blok geldt alleen voor de afstandsensor
@ -95,7 +97,20 @@
});
};
<!-- {% if RPI == False %}// {% endif %}setInterval(function(){ afstand_poll(); }, 1500);-->
{% if RPI == False %}// {% endif %}setInterval(function(){ afstand_poll(); }, 1500);
</script>
<script>
// dit script blok geldt alleen voor de servo
$(document).ready(function() {
$.getJSON('/api/servo', function(data) {
document.getElementById('servo-range').value = data.state
document.getElementById('servo-span').value = data.state
});
});
function set_servo(deg) {
$.post("/api/servo", {setstate:deg})
};
</script>
</body>
</html>