Question: from m 5 stack import * from m 5 ui import * from uiflow import * import espnow import wifiCfg import time import unit #

from m5stack import *
from m5ui import *
from uiflow import *
import espnow
import wifiCfg
import time
import unit
# Initialize screen and components
setScreenColor(0x222222)
tof_2= unit.get(unit.TOF, unit.PORTA)
wifiCfg.wlan_ap.active(True)
wifiCfg.wlan_sta.active(True)
espnow.init()
# Initialize UI components....
# Define UI elements for the progress bar.....
def send_cb(flag):
global Data_send
Data_send = flag
label1.setText('Yes')
# Set callback function for ESP-NOW sending
espnow.send_cb(send_cb)
espnow.add_peer('98:f4:ab:6b:a3:fd', id=1)
label0.setText(str(Data_send))
while True:
raw_distance = tof_2.distance
waterlevel = min(int(raw_distance /10),35)
label4.setText(str(waterlevel))
percentage = int(((35- waterlevel)/35)*100)
percentage = max(percentage,0)
if waterlevel <=5:
percentage =100
bar_width =200
elif waterlevel >=35:
percentage =0
bar_width =0
else:
bar_width = int((percentage /100)*200)
label7.setText("Percentage: {}%".format(percentage))
percentageBar.setSize(bar_width, 20)
data_to_send ={
'message': '',
'percentage': percentage,
'bar_width': bar_width
}
if waterlevel >=15 and waterlevel <=20:
Data_send = 'medium level, {}'.format(percentage)
label0.setText(str(Data_send))
espnow.send(id=1, data=str('medium level, {}'.format(percentage)))
rgb.setColorAll(0xff6600)
wait(1)
elif waterlevel <=5:
Data_send = 'tank is full, {}'.format(percentage)
label0.setText(str(Data_send))
espnow.send(id=1, data=str('tank is full, {}'.format(percentage)))
rgb.setColorAll(0xff0000)
wait(1)
elif waterlevel >=35:
Data_send = 'tank empty, {}'.format(percentage)
label0.setText(str(Data_send))
espnow.send(id=1, data=str('tank empty, {}'.format(percentage)))
rgb.setColorAll(0x33cc00)
wait(1)
else:
Data_send = 'filling water, {}'.format(percentage)
label0.setText(str(Data_send))
espnow.send(id=1, data=str('filling water, {}'.format(percentage)))
rgb.setColorAll(0x000000)
wait(1)
wait_ms(2)
i got a bottle is 15cm height,6cm diameter,how to edit waterlevel(TOF sensor distance) data so the sensor detect the water percentage correctly

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!