Initialize piNail project with modern piNail2 web controller
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
import matplotlib.pyplot as plt
|
||||
import matplotlib.animation as animation
|
||||
import time
|
||||
|
||||
fig = plt.figure()
|
||||
ax1 = fig.add_subplot(1, 1, 1)
|
||||
plt.gca().set_prop_cycle(color = ['red', 'blue', 'green', 'lightblue'])
|
||||
plt.subplots_adjust(left = .05, right = .99, top =1, bottom =.05)
|
||||
log_directory = './log_piNail.txt'
|
||||
plt.xscale('linear')
|
||||
|
||||
def animate(i):
|
||||
pullData = open(log_directory, 'r')
|
||||
dataArray = pullData.readlines()
|
||||
temp_y = [ ]
|
||||
setpoint_y = [ ]
|
||||
output_y = [ ]
|
||||
relay_y = [ ]
|
||||
xar = [ ]
|
||||
c_del_index = 0
|
||||
|
||||
##print(len(dataArray))
|
||||
if len(dataArray) > 300: #only keep x lines in the log file
|
||||
f = open(log_directory, 'w+') #Create a new log file, overwritting the previous one
|
||||
f.close()
|
||||
|
||||
for eachLine in dataArray[len(dataArray)-500: ]: #Only read the last x lines
|
||||
if len(eachLine) > 1:
|
||||
c_temp_y, c_setpoint_y, c_output_y, c_relay_y, c_xar= eachLine.split(', ')
|
||||
temp_y.append(float(c_temp_y))
|
||||
setpoint_y.append(float(c_setpoint_y))
|
||||
output_y.append(float(c_output_y))
|
||||
relay_y.append(int(c_relay_y))
|
||||
xar.append(float(c_xar))
|
||||
ax1.set_xlim([float(c_xar) - 500000 ,float(c_xar) + 2000])
|
||||
|
||||
ax1.plot(xar, temp_y, linewidth = .2)
|
||||
ax1.plot(xar, setpoint_y, linewidth = .2)
|
||||
ax1.plot(xar, output_y, linewidth = .2)
|
||||
ax1.plot(xar, relay_y)
|
||||
|
||||
ani = animation.FuncAnimation(fig, animate, interval = 500)
|
||||
plt.show()
|
||||
|
||||
Reference in New Issue
Block a user