コード例 #1
0
ファイル: guidriver.py プロジェクト: brinpy/visualization
 def _function():
     checkalarm(bed_str=howto[0],
                fardate=howto[1],
                closedate=howto[2],
                connection=howto[3],
                period=howto[4],
                graph=howto[5],
                alarm=howto[6],
                typeid=howto[7])
コード例 #2
0
ファイル: dbcheck.py プロジェクト: brinpy/visualization
def generateReport(startd, endd, cxn, period, allowGraph, alarmtype,
                   filterlevel, tid):

    report_table = {}
    report_table_avg = {}
    gettables = "SELECT name FROM sqlite_master where type='table'"
    cur = cxn.cursor()
    cur.execute(gettables)
    table_list = cur.fetchall()
    #print(type(table_list))
    #print(table_list)
    #print(table_list[0][0])
    for tble in table_list:
        #this grabs mf_lat only as checkalarm is only configured to give motor faults
        report_table[tble[0]], report_table_avg[tble[0]] = checkalarm(
            bed_str=tble[0],
            fardate=startd,
            closedate=endd,
            connection=cxn,
            period=1,
            graph=False,
            alarm=alarmtype,
            typeid=tid)
    lines = []
    #print(report_table)
    for key in report_table:
        if report_table[key] != 0.0 and (report_table_avg[key] >
                                         float(filterlevel)):
            lines.append(key + ":  " + str(report_table[key]))

    for i in range(len(lines)):
        lines[i] = lines[i].split("  ")
        lines[i][1] = float(lines[i][1])
    sortedList = Sort2(lines)
    #print(sortedList)

    if allowGraph:
        for i in sortedList:
            print(i[0] + "  " + str(i[1]))
        sortedList.reverse()
        for i in sortedList:
            checkalarm(bed_str=i[0].split(":")[0],
                       fardate=startd,
                       closedate=endd,
                       connection=cxn,
                       period=1,
                       graph=True,
                       alarm=alarmtype)
    else:
        sortedList.reverse()
        return sortedList
コード例 #3
0
ファイル: guidriver.py プロジェクト: brinpy/visualization
def individual():
    boxinput = lookupbox.get()
    vars.alarm_type = variable.get()
    vars.id = variable2.get()
    checkalarm(bed_str=boxinput,
               fardate=datetime.datetime.strptime(startentry.get(),
                                                  '%Y-%m-%d %H:%M:%S'),
               closedate=datetime.datetime.strptime(endentry.get(),
                                                    '%Y-%m-%d %H:%M:%S'),
               connection=connection,
               period=1,
               alarm=vars.alarm_type,
               graph=True,
               typeid=vars.id)
コード例 #4
0
def individual():
    global spacelist #uh oh
    boxinput = lookupbox.get()
    vars.alarm_type = variable.get()
    vars.id = variable2.get()
    pltobj, rows = checkalarm(bed_str = boxinput, fardate = datetime.datetime.strptime(startentry.get(), '%Y-%m-%d %H:%M:%S'), closedate = datetime.datetime.strptime(endentry.get(), '%Y-%m-%d %H:%M:%S'), connection = connection, period = 1, alarm = vars.alarm_type, graph = True, typeid = vars.id)
    rows.reverse()
    timeW = 0
    descW = 0
    durW = 0
    areaW = 0
    typeW = 0
    mylabels = [[],[],[],[],[]]
    listslaves = tablelistFrame.grid_slaves()
    for l in listslaves:
        l.destroy()
    tk.Label(tablelistFrame, anchor = "center", text = "Time").grid(column = 4, row = 1)
    tk.Label(tablelistFrame, anchor = "center", text = "\u0394T").grid(column = 5, row = 1)
    tk.Label(tablelistFrame, anchor = "center", text = "Description").grid(column = 6, row = 1)
    tk.Label(tablelistFrame, anchor = "center", text = "Alarm Type").grid(column = 7, row = 1)
    tk.Label(tablelistFrame, anchor = "center", text = "Area").grid(column = 8, row = 1)
    for i in rows:
        timeW = len(str(convertTime_naive(i[0], 0))) if timeW < len(str(convertTime_naive(i[0], 0))) else timeW
        descW = len(i[4]) if descW < len(i[4]) else descW
        durW = len(str(i[1] / 1000)) if durW < len(str(i[1] / 1000)) else durW
        areaW = len(i[3]) if areaW < len(i[3]) else areaW
        typeW = len(i[2]) if typeW < len(i[2]) else typeW
        if rows.index(i) > rowsLimit:
            break
    for i in rows:
        mylabels[0].append(tk.Label(tablelistFrame,relief = "ridge", text = str(convertTime_naive(i[0], 0)), width = timeW + 1))
        mylabels[1].append(tk.Label(tablelistFrame,relief = "ridge", text = str(i[1]/1000) + 's', width = durW + 1))
        mylabels[2].append(tk.Label(tablelistFrame,relief = "ridge", text = i[4], width = descW + 1))
        mylabels[3].append(tk.Label(tablelistFrame,relief = "ridge", text = i[2], width = typeW + 1))
        mylabels[4].append(tk.Label(tablelistFrame,relief = "ridge", text = i[3], width = areaW + 1))
        if rows.index(i) > rowsLimit:
            break
    for i in range(len(mylabels)):
        for j in range(len(mylabels[0])):
            mylabels[i][j].grid(column = i + 4, row = j + 2)
    for widget in spacelist:
        widget.destroy()
    spacelist = []
    if len(rows) > 7:
        for i in range(6, len(rows) - 3): ###make sure to copy this to the make function
            spacelist.append(tk.Label(root, text = ''))
            spacelist[-1].grid(column = 2, row = i)
            if i > rowsLimit:
                break
        copylabel.grid(column = 2, row = len(rows))
    pltobj.show()
コード例 #5
0
 def _function():
     pltobj, rows = checkalarm(bed_str=howto[0],fardate=howto[1],closedate=howto[2],connection=howto[3],period=howto[4],graph=howto[5], alarm=howto[6], typeid = howto[7])
     rows.reverse()
     global spacelist
     timeW = 0
     descW = 0
     durW = 0
     areaW = 0
     typeW = 0
     mylabels = [[],[],[],[],[]]
     listslaves = tablelistFrame.grid_slaves()
     for l in listslaves:
         l.destroy()
     tk.Label(tablelistFrame, anchor = "center", text = "Time").grid(column = 4, row = 1)
     tk.Label(tablelistFrame, anchor = "center", text = "\u0394T").grid(column = 5, row = 1)
     tk.Label(tablelistFrame, anchor = "center", text = "Description").grid(column = 6, row = 1)
     tk.Label(tablelistFrame, anchor = "center", text = "Alarm Type").grid(column = 7, row = 1)
     tk.Label(tablelistFrame, anchor = "center", text = "Area").grid(column = 8, row = 1)
     for i in rows:
         timeW = len(str(convertTime_naive(i[0], 0))) if timeW < len(str(convertTime_naive(i[0], 0))) else timeW
         descW = len(i[4]) if descW < len(i[4]) else descW
         durW = len(str(i[1] / 1000)) if durW < len(str(i[1] / 1000)) else durW
         areaW = len(i[3]) if areaW < len(i[3]) else areaW
         typeW = len(i[2]) if typeW < len(i[2]) else typeW
         if rows.index(i) > rowsLimit:
             break
     for i in rows:
         mylabels[0].append(tk.Label(tablelistFrame,relief = "ridge", text = str(convertTime_naive(i[0], 0)), width = timeW + 1))
         mylabels[1].append(tk.Label(tablelistFrame,relief = "ridge", text = str(i[1]/1000) + 's', width = durW + 1))
         mylabels[2].append(tk.Label(tablelistFrame,relief = "ridge", text = i[4], width = descW + 1))
         mylabels[3].append(tk.Label(tablelistFrame,relief = "ridge", text = i[2], width = typeW + 1))
         mylabels[4].append(tk.Label(tablelistFrame,relief = "ridge", text = i[3], width = areaW + 1))
         if rows.index(i) > rowsLimit:
             break
     for i in range(len(mylabels)):
         for j in range(len(mylabels[0])):
             mylabels[i][j].grid(column = i + 4, row = j + 2)
     for widget in spacelist:
         widget.destroy()
     spacelist = []
     if len(rows) > 7:
         for i in range(6, len(rows) - 3): ###make sure to copy this to the make function
             spacelist.append(tk.Label(root, text = ''))
             spacelist[-1].grid(column = 2, row = i)
             if i > rowsLimit:
                 break
     if len(rows) > 7:
         copylabel.grid(column = 2, row = len(rows))
     else:
         copylabel.grid(column = 2, row = 7)
     pltobj.show()
コード例 #6
0
import datetime
from sql_func import create_connection, dbpath
from checker import checkalarm

start = datetime.datetime(2020, 3, 1, 0, 0, 0)
end = datetime.datetime(2020, 3, 28, 22, 59, 59)
checkalarm(bed_str='U' + '580140',fardate=start,closedate=end,connection=create_connection(dbpath),period=1,graph=True, alarm='MF')