DSatishchandra commited on
Commit
0096d71
Β·
verified Β·
1 Parent(s): 2d55fac

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +32 -0
app.py ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ from modules.simulator import simulate_data
3
+ from modules.filters import apply_filters
4
+ from modules.visuals import display_dashboard, display_fault_alert
5
+
6
+ st.set_page_config(page_title="Vedavathi Smart Pole Monitoring", layout="wide")
7
+ st.title("πŸ“‘ Vedavathi Smart Pole Monitoring - PoC Simulator")
8
+
9
+ st.sidebar.header("πŸ› οΈ Simulation Controls")
10
+ num_poles = st.sidebar.slider("Number of Poles", min_value=5, max_value=50, value=10)
11
+ simulate_faults = st.sidebar.checkbox("Simulate Random Faults", value=True)
12
+
13
+ df = simulate_data(num_poles, simulate_faults)
14
+
15
+ # Filter Controls
16
+ st.sidebar.header("πŸ“‚ Filter Data")
17
+ alert_filter = st.sidebar.multiselect("Alert Level", ["Green", "Yellow", "Red"], default=["Green", "Yellow", "Red"])
18
+ cam_filter = st.sidebar.selectbox("Camera Status", ["All", "Online", "Offline"], index=0)
19
+
20
+ filtered_df = apply_filters(df, alert_filter, cam_filter)
21
+
22
+ # Display Dashboard and Fault Alerts
23
+ display_dashboard(df)
24
+
25
+ st.subheader("πŸ“‹ Pole Monitoring Table")
26
+ st.dataframe(filtered_df, use_container_width=True)
27
+
28
+ # Display fault alerts if needed
29
+ fault_x, fault_y = np.random.randint(0, 10), np.random.randint(0, 10) # Simulate random fault position
30
+ if "Red" in alert_filter:
31
+ display_fault_alert(fault_x, fault_y)
32
+