from utils.s7data import S7Client, S7data from dbutils.pooled_db import PooledDB from utils.logger import Logger from models.data_sender import Sender import pymysql # 配置S7连接 s7 = S7Client() s7.connect("192.168.0.3", 0, 3) data = S7data("conf/s7@192.168.0.3.csv") data.set_S7Client(s7) data.auto_update_group() s7_3 = S7Client() s7_3.set_connection_type(3) s7_3.connect("192.168.0.19", 0, 0) data_3 = S7data("conf/s7@192.168.0.19.csv") data_3.set_S7Client(s7_3) data_3.auto_update_group() # 配置MySQL连接池 mysql_pool = PooledDB( creator=pymysql, maxconnections=40, mincached=2, blocking=True, host='localhost', user='root', password='5538..', database='industrial_data', charset='utf8mb4' ) # 配置日志模块 logger = Logger('steel_rolling') logger.file_on_with_rotation('logs/steel_rolling.log') logger.screen_on() # 配置主模块 sender = Sender(data, mysql_pool, logger, "192.168.0.3") sender = Sender(data_3, mysql_pool, logger, "192.168.0.19") # 临时使用 s7_1 = S7Client() s7_1.connect("192.168.0.11", 0, 0) data_1 = S7data("conf/s7@192.168.0.11.csv") data_1.set_S7Client(s7_1) data_1.auto_update_group() import snap7.util, time s7_2 = S7Client() s7_2.set_connection_type(3) s7_2.connect("192.168.0.19", 0, 0) while 1: write_value = bytearray(2) snap7.util.set_word(write_value, 0, data_1.get_value("流号")) s7_2.db_write(1, 620, write_value) time.sleep(1)