Мониторинг данных ПЛК в реальном времени с помощью Python - PullRequest
1 голос
/ 03 июля 2019

Я хочу контролировать значения ПЛК каждую секунду как аналоговые, так и цифровые значения.Мой текущий код способен читать значения, но он не обновляется.Я думаю, что мне нужно использовать концепцию потоков в этом.

from Tkinter import *
import Tkinter as tk
from PIL import ImageTk, Image
from cpppo.server.enip import client
import thread

root = tk.Tk()
root.geometry("1920x1080")

def AIn(Cfg_Tag,parent,Xaxis,Yaxis,Unit):
    tag = Label(parent,text = Cfg_Tag, relief = RAISED, height = 1, width =15)
    tag.pack()
    tag.place(x=Xaxis,y=Yaxis)

    unit = Label(parent,text = Unit, relief = RAISED ,height =1, width = 5)
    unit.pack()
    unit.place(x=Xaxis+70,y=Yaxis+22)
    HOST = "10.191.175.229"
    TAGS = [Cfg_Tag]
    with client.connector(host=HOST) as conn:
           for index, descr, op, reply, status, value in conn.synchronous(
               operations=client.parse_operations(TAGS)):
               #print(": %20s: %s" % (descr, value))
               Value= value
               value1 = Label(parent,text = Value, relief = RAISED, height = 1, width = 9)
               value1.pack(side = "right")
               value1.place(x=Xaxis,y=Yaxis+22)

    #Value = value
    AIn("add",root,100,100,"DegC")
    #AIn("0096_PIT_1121",root,100,100,"65356", "DegC")
    #root.after(2000, AIn)
    root.mainloop()

Выходной дисплей должен постоянно обновлять значения.

...