Programmatie met Python

Mijn bachelorproef heeft als doel de mensen met een licht verstandelijke beperking motiveren om te blijven bewegen tijdens de kiné sessie. meer bepaald tijdens het gebruik van de hometrainer. Dit gebeurd door middel van muziek. Indien men gaat trappen, zal het signaal van de hometrainer via een reed contact doorgegeven worden naar de Raspberry-Pi. Indien er gestopt wordt met trappen, zal ook de muziek automatisch stoppen. (vanaf er 5 seconden geen signaal wordt gegeven.)

Het deel in de taal Python kan muziek aansturen enz. Maar slaagt er niet in om na 5 seconden stil te vallen.
Dit werd nagebouwd met een Arduino met verschil dat er met lampen gewerkt werd in plaats van met muziek. Bij deze schakeling lukt het wel om de lichten na 5seconden uit te laten vallen. En indien er weer getrapt wordt na 5 seconden weer te laten branden.

Mijn vraag: Hoe kan dit omvormen naar de taal Python. En de lampen vervangen door afspeellijsten?

Er wordt gewerkt met het besturingssyteem Linux. En het gaat om het model Raspberry Pi 4 model B

Programmatie zonder uitleg

#!/usr/bin/env python

import signal
import buttonshim

import os
from datetime import datetime
from datetime import timedelta
import time

time.sleep(5)

import vlc

print("""
Buttom SHIM: Long Press

Demonstrates how you might handle both a
short and long press on the same button.

Press or hold the A button.

Press Ctrl+C to exit!

""")

starttime = time.time()
print(starttime)

button_was_held = False
button_was_held_B = False
button_was_held_C = False
button_was_held_D = False
button_was_held_E = False

p1 = vlc.MediaPlayer("/home/pi/muziek/2010.mp3")
p2 = vlc.MediaPlayer("/home/pi/muziek/K3.mp3")
p3 = vlc.MediaPlayer("/home/pi/muziek/NL.mp3")
p4 = vlc.MediaPlayer("/home/pi/muziek/MM.mp3")
p5 = vlc.MediaPlayer("/home/pi/muziek/STU100.mp3")

buttonshim.on_press(buttonshim.BUTTON_A)
def press_handler(button, pressed):
global button_was_held # So we change the global var defined above
button_was_held = False # Reset the button held state

buttonshim.on_press(buttonshim.BUTTON_B)
def press_handler(button, pressed):
global button_was_held_B # So we change the global var defined above
button_was_held_B = False # Reset the button held state

buttonshim.on_press(buttonshim.BUTTON_C)
def press_handler(button, pressed):
global button_was_held_C # So we change the global var defined above
button_was_held_C = False # Reset the button held state

buttonshim.on_press(buttonshim.BUTTON_D)
def press_handler(button, pressed):
global button_was_held_D # So we change the global var defined above
button_was_held_D = False # Reset the button held state

@buttonshim.on_press(buttonshim.BUTTON_E)
def press_handler(button, pressed):
global button_was_held_E # So we change the global var defined above
button_was_held_E = False # Reset the button held state

@buttonshim.on_release(buttonshim.BUTTON_A)
def release_handler(button, pressed):
if not button_was_held:
last = datetime.now()
print("Short press detected!")
p1.stop()
p2.stop()
p3.stop()
p4.stop()
p5.stop()
p1.play()

@buttonshim.on_release(buttonshim.BUTTON_B)
def release_handler(button, pressed):
if not button_was_held_B:
print("Short press detected!")
p1.stop()
p2.stop()
p3.stop()
p4.stop()
p5.stop()
p2.play()

@buttonshim.on_release(buttonshim.BUTTON_C)
def release_handler(button, pressed):
if not button_was_held_C:
print("Short press detected!")
p1.stop()
p2.stop()
p3.stop()
p4.stop()
p5.stop()
p3.play()

@buttonshim.on_release(buttonshim.BUTTON_D)
def release_handler(button, pressed):
if not button_was_held_D:
print("Short press detected!")
p1.stop()
p2.stop()
p3.stop()
p4.stop()
p5.stop()
p4.play()

@buttonshim.on_release(buttonshim.BUTTON_E)
def release_handler(button, pressed):
if not button_was_held_E:
print("Short press detected!")
global starttime
PassedTime = time.time() - starttime
print(PassedTime)
if PassedTime > 5:
p1.pause()
p2.pause()
p3.pause()
p4.pause()
p5.pause()
starttime = time.time()
else:
starttime = time.time()

@buttonshim.on_hold(buttonshim.BUTTON_A, hold_time=2)
def hold_handler(button):
global button_was_held
button_was_held = True
print("Long press detected!")
p1.stop()
p2.stop()
p3.stop()
p4.stop()
p5.stop()

signal.pause() # Stop script from immediately exiting

[Bericht gewijzigd door silke op maandag 11 mei 2020 14:50:15 (65%)

Met een .docx bestand gaat dat in elk geval nooit lukken. Daar kan de interpreter niet mee overweg.

big_fat_mama

Zie Paulinha_B

Beste @silke,
zo'n bijlage als docx is een verdienstelijke poging, maar helaas niet erg kansrijk, inderdaad.
Post de code aub letterlijk, met een "knip/plak" bewerking, idealiter tussen "code" tags (het symbooltje met de rode < en > ) .

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord