mirror of
https://github.com/janishutz/BiogasControllerApp.git
synced 2025-11-25 13:54:24 +00:00
612 lines
17 KiB
Plaintext
612 lines
17 KiB
Plaintext
RootScreen:
|
|
HomeScreen:
|
|
ReadoutScreen:
|
|
ReadData:
|
|
ProgramTemp:
|
|
Program:
|
|
Credits:
|
|
|
|
<QuitPU>:
|
|
title: "BiogasControllerApp"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Are you sure you want to leave?"
|
|
font_size: 20
|
|
GridLayout:
|
|
cols:2
|
|
Button:
|
|
text: "Yes"
|
|
font_size: 15
|
|
on_release:
|
|
root.quitapp()
|
|
app.stop()
|
|
Button:
|
|
text: "No"
|
|
font_size: 15
|
|
on_press:
|
|
root.dismiss()
|
|
|
|
<NoConnection>:
|
|
title: "WARNING!"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Unable to open Serial Port"
|
|
font_size: 20
|
|
GridLayout:
|
|
cols:2
|
|
Button:
|
|
text: "Details"
|
|
on_release:
|
|
root.details()
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<ConnectionFail>:
|
|
title: "WARNING!"
|
|
font_size: 50
|
|
size_hint: 0.7, 0.6
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Unable to communicate"
|
|
font_size: 20
|
|
Label:
|
|
text: "Possible ways to resolve this problem:\n- Try again\n- Restart the PIC16F877 or reset the program\n- Check the cable / connect one"
|
|
font_size: 14
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<DetailInfo>:
|
|
on_open: self.update_details = root.infos()
|
|
title: "DETAILS"
|
|
font_size: 50
|
|
size_hint: 1, 0.7
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Unable to open Serial Port"
|
|
font_size: 20
|
|
Label:
|
|
id: errormessage
|
|
text: root.infos()
|
|
font_size: 13
|
|
Label:
|
|
text: root.error_tips()
|
|
font_size: 13
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<Modeswitch>:
|
|
title: "NOTICE!"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Mode Switched!"
|
|
font_size: 30
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<SaveConf>:
|
|
title: "NOTICE!"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "SAVED!"
|
|
font_size: 30
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<Connecting_PU>:
|
|
title: "NOTICE!"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Establishing connection with PIC16F877"
|
|
font_size: 18
|
|
Label:
|
|
text: "This Process may take a while..."
|
|
font_size: 15
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<MissingFieldsError>:
|
|
title: "WARNING!"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Missing Information!"
|
|
font_size: 18
|
|
Label:
|
|
text: "Check your entry"
|
|
font_size: 15
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
<Disconnecting_PU>:
|
|
title: "NOTICE!"
|
|
font_size: 50
|
|
size_hint: 0.5, 0.4
|
|
auto_dismiss: False
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "Connection with PIC16F877 terminated"
|
|
font_size: 18
|
|
Label:
|
|
text: "The connection to the Microcontroller\nhas been terminated successfully"
|
|
font_size: 15
|
|
Button:
|
|
text:"Ok"
|
|
on_release:
|
|
root.dismiss()
|
|
|
|
######################################
|
|
# SCREENS
|
|
######################################
|
|
|
|
<HomeScreen>:
|
|
name: "Home"
|
|
canvas.before:
|
|
Color:
|
|
rgba: (50,50,50,0.2)
|
|
Rectangle:
|
|
size: self.size
|
|
pos: self.pos
|
|
GridLayout:
|
|
cols:1
|
|
Label:
|
|
text: "BiogasanlageControllerApp"
|
|
font_size: 50
|
|
color: (0, 113, 0, 1)
|
|
bold:True
|
|
italic:True
|
|
FloatLayout:
|
|
GridLayout:
|
|
cols: 2
|
|
size_hint: 0.8, 0.8
|
|
pos_hint: {"x": 0.1, "y": 0.1}
|
|
Button:
|
|
text: "Start"
|
|
background_color: (255, 0, 0, 0.6)
|
|
font_size: 30
|
|
on_release:
|
|
root.tryconnection()
|
|
Button:
|
|
text: "Quit"
|
|
background_color: (255, 0, 0, 0.6)
|
|
font_size: 30
|
|
on_release:
|
|
root.exitapp()
|
|
Label:
|
|
text: "You are currently running Version 2.1.0 - If you encounter a bug, please report it!"
|
|
font_size: 13
|
|
pos_hint: {"y": -0.45, "x":0.05}
|
|
Button:
|
|
text: "credits"
|
|
font_size: 13
|
|
size_hint: 0.07, 0.06
|
|
pos_hint: {"x":0.01, "y":0.01}
|
|
background_color: (50, 0, 0, 0.2)
|
|
on_release:
|
|
app.root.current = "Credits"
|
|
root.manager.transition.direction = "left"
|
|
|
|
<ReadoutScreen>:
|
|
on_pre_enter: self.reset_screen = root.resscreen()
|
|
name: "Readout"
|
|
canvas.before:
|
|
Color:
|
|
rgba: (50,50,50,0.2)
|
|
Rectangle:
|
|
size: self.size
|
|
pos: self.pos
|
|
GridLayout:
|
|
FloatLayout:
|
|
Label:
|
|
pos_hint: {"y":0.4}
|
|
text: "READOUT"
|
|
font_size: 40
|
|
color: (0, 113, 0, 1)
|
|
bold: True
|
|
GridLayout:
|
|
cols:4
|
|
size_hint: 0.8, 0.3
|
|
pos_hint: {"x":0.1, "y":0.4}
|
|
Label:
|
|
text: "SONDE 1: "
|
|
font_size: 20
|
|
Label:
|
|
id: sonde1
|
|
text: ""
|
|
Label:
|
|
text: "SONDE 2: "
|
|
font_size: 20
|
|
Label:
|
|
id: sonde2
|
|
text: ""
|
|
Label:
|
|
text: "SONDE 3: "
|
|
font_size: 20
|
|
Label:
|
|
id: sonde3
|
|
text: ""
|
|
Label:
|
|
text: "SONDE 4: "
|
|
font_size: 20
|
|
Label:
|
|
id: sonde4
|
|
text: ""
|
|
Button:
|
|
text: "Start communication"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x": 0.5, "y": 0.05}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.start_com()
|
|
Button:
|
|
text: "End communication"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x": 0.7, "y": 0.05}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.end_com()
|
|
Button:
|
|
text: "Back"
|
|
size_hint: 0.3, 0.1
|
|
pos_hint: {"x":0.05, "y":0.05}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.leave_screen()
|
|
app.root.current = "Home"
|
|
root.manager.transition.direction = "left"
|
|
ToggleButton:
|
|
id: mode_sel
|
|
size_hint: 0.15, 0.1
|
|
pos_hint: {"x":0.1, "y":0.2}
|
|
text: "Normal Mode" if self.state == "normal" else "Fast Mode"
|
|
on_text: root.switch_mode(mode_sel.text)
|
|
background_color: (255,0,0,0.6) if self.state == "normal" else (0,0,255,0.6)
|
|
Button:
|
|
text: "Read Data"
|
|
size_hint: 0.15, 0.1
|
|
pos_hint: {"x":0.3, "y":0.2}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.leave_screen()
|
|
app.root.current = "RD"
|
|
root.manager.transition.direction = "down"
|
|
Button:
|
|
text: "Temperature"
|
|
size_hint: 0.15, 0.1
|
|
pos_hint: {"x":0.5, "y":0.2}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.leave_screen()
|
|
app.root.current = "PT"
|
|
root.manager.transition.direction = "down"
|
|
Button:
|
|
text: "Change all Data"
|
|
size_hint: 0.15, 0.1
|
|
pos_hint: {"x":0.7, "y":0.2}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.leave_screen()
|
|
app.root.current = "PR"
|
|
root.manager.transition.direction = "down"
|
|
Label:
|
|
id: frequency
|
|
text: "Frequency will appear here"
|
|
font_size: 10
|
|
pos_hint: {"x":0.4, "y": 0.3}
|
|
|
|
<ReadData>:
|
|
name: "RD"
|
|
canvas.before:
|
|
Color:
|
|
rgba: (50,50,50,0.2)
|
|
Rectangle:
|
|
size: self.size
|
|
pos: self.pos
|
|
GridLayout:
|
|
FloatLayout:
|
|
Label:
|
|
text: "Read Data"
|
|
font_size: 40
|
|
color: (0, 113, 0, 1)
|
|
bold: True
|
|
pos_hint: {"y":0.4}
|
|
Button:
|
|
text: "Start Readout"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x":0.4, "y":0.1}
|
|
on_release:
|
|
root.read_data()
|
|
Button:
|
|
text: "Back"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x":0.1, "y":0.1}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
app.root.current = "Readout"
|
|
root.manager.transition.direction = "up"
|
|
GridLayout:
|
|
cols:4
|
|
size_hint: 0.8, 0.4
|
|
pos_hint: {"x":0.1, "y":0.3}
|
|
Label:
|
|
text: "Sonde 1"
|
|
font_size: 20
|
|
Label:
|
|
id: inf_sonde1
|
|
text: ""
|
|
Label:
|
|
text: "Sonde 2"
|
|
font_size: 20
|
|
Label:
|
|
id: inf_sonde2
|
|
text: ""
|
|
Label:
|
|
text: "Sonde 3"
|
|
font_size: 20
|
|
Label:
|
|
id: inf_sonde3
|
|
text: ""
|
|
Label:
|
|
text: "Sonde 4"
|
|
font_size: 20
|
|
Label:
|
|
id: inf_sonde4
|
|
text: ""
|
|
|
|
<ProgramTemp>:
|
|
name: "PT"
|
|
canvas.before:
|
|
Color:
|
|
rgba: (50,50,50,0.2)
|
|
Rectangle:
|
|
size: self.size
|
|
pos: self.pos
|
|
GridLayout:
|
|
FloatLayout:
|
|
Label:
|
|
text: "Change Temperature"
|
|
pos_hint: {"y":0.4}
|
|
font_size: 40
|
|
color: (0, 113, 0, 1)
|
|
bold: True
|
|
GridLayout:
|
|
size_hint: 0.8, 0.4
|
|
pos_hint: {"x": 0.1, "y":0.3}
|
|
cols:2
|
|
Label:
|
|
text: "Temperatur Sonde 1: "
|
|
TextInput:
|
|
id: temp_s1
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Temperatur Sonde 2: "
|
|
TextInput:
|
|
id: temp_s2
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Temperatur Sonde 3: "
|
|
TextInput:
|
|
id: temp_s3
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Temperatur Sonde 4: "
|
|
TextInput:
|
|
id: temp_s4
|
|
multiline: False
|
|
input_filter: "float"
|
|
Button:
|
|
text: "Back"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x":0.1, "y":0.1}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
app.root.current = "Readout"
|
|
root.manager.transition.direction = "up"
|
|
Button:
|
|
text: "Save"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x":0.6, "y":0.1}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.send_data()
|
|
|
|
<Program>:
|
|
name: "PR"
|
|
canvas.before:
|
|
Color:
|
|
rgba: (50,50,50,0.2)
|
|
Rectangle:
|
|
size: self.size
|
|
pos: self.pos
|
|
FloatLayout:
|
|
Label:
|
|
text: "Change all Data"
|
|
font_size: 40
|
|
color: (0, 113, 0, 1)
|
|
bold: True
|
|
pos_hint: {"y":0.4}
|
|
GridLayout:
|
|
size_hint: 0.8, 0.5
|
|
pos_hint: {"x":0.1, "y":0.2}
|
|
cols: 4
|
|
Label:
|
|
text: "Sonde 1, a:"
|
|
TextInput:
|
|
id: s1_a
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 1, b:"
|
|
TextInput:
|
|
id: s1_b
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 1, c:"
|
|
TextInput:
|
|
id: s1_c
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 1, Temp:"
|
|
TextInput:
|
|
id: s1_t
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 2, a:"
|
|
TextInput:
|
|
id: s2_a
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 2, b:"
|
|
TextInput:
|
|
id: s2_b
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 2, c:"
|
|
TextInput:
|
|
id: s2_c
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 2, Temp:"
|
|
TextInput:
|
|
id: s2_t
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 3, a:"
|
|
TextInput:
|
|
id: s3_a
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 3, b:"
|
|
TextInput:
|
|
id: s3_b
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 3, c:"
|
|
TextInput:
|
|
id: s3_c
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 3, Temp:"
|
|
TextInput:
|
|
id: s3_t
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 4, a:"
|
|
TextInput:
|
|
id: s4_a
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 4, b:"
|
|
TextInput:
|
|
id: s4_b
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 4, c:"
|
|
TextInput:
|
|
id: s4_c
|
|
multiline: False
|
|
input_filter: "float"
|
|
Label:
|
|
text: "Sonde 4, Temp:"
|
|
TextInput:
|
|
id: s4_t
|
|
multiline: False
|
|
input_filter: "float"
|
|
Button:
|
|
text: "Back"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x":0.1, "y":0.1}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
app.root.current = "Readout"
|
|
root.manager.transition.direction = "up"
|
|
Button:
|
|
text: "Save"
|
|
size_hint: 0.2, 0.1
|
|
pos_hint: {"x":0.6, "y":0.1}
|
|
background_color: (255, 0, 0, 0.6)
|
|
on_release:
|
|
root.send_data()
|
|
|
|
<Credits>:
|
|
name: "Credits"
|
|
canvas.before:
|
|
Color:
|
|
rgba: (50,50,50,0.2)
|
|
Rectangle:
|
|
size: self.size
|
|
pos: self.pos
|
|
FloatLayout:
|
|
Button:
|
|
text: "back"
|
|
size_hint: 0.4, 0.2
|
|
pos_hint: {"x":0.3, "y":0.1}
|
|
on_release:
|
|
app.root.current = "Home"
|
|
root.manager.transition.direction = "right"
|
|
GridLayout:
|
|
cols:1
|
|
pos_hint:{"x":0.05, "y":0.35}
|
|
size_hint: 0.9, 0.5
|
|
Label:
|
|
text: "This is a rework of the BiogasControllerApp V1, that was originally programmed by S. Reichmuth."
|
|
Label:
|
|
text: "Written by: Janis Hutz\nDesigned by: Janis Hutz\nDesign language: Kivy"
|