将读取文件添加PLC的名字

This commit is contained in:
您çšpengqi
2025-09-29 14:41:04 +08:00
parent 262e76c5db
commit 9fa100070e
4 changed files with 17 additions and 10 deletions

View File

@ -15,7 +15,7 @@ from snap7.util import get_real, get_int, get_bool, get_word, get_dint # 导入
class PLCDataReaderThread(threading.Thread):
def __init__(self, plc_client, area_config, update_interval=0.03, output_file_prefix="plc_area_"):
def __init__(self, plc_client, plc_name, area_config, update_interval=0.03, output_file_prefix="area_"):
"""
初始化PLC数据读取线程配置驱动支持多区域
参数:
@ -26,11 +26,12 @@ class PLCDataReaderThread(threading.Thread):
output_file_prefix: 输出文件前缀,最终文件名为“前缀+区域名.log”
"""
# 线程名包含区域名,便于日志区分(如"PLCDataReader_DB100_Read"
thread_name = f"PLCDataReader_{area_config['name']}"
thread_name = f"{plc_name}_Reader_{area_config['name']}"
super().__init__(name=thread_name, daemon=True)
# 1. 核心依赖PLC客户端+区域配置)
self.plc_client = plc_client
self.plc_name = plc_name
self.area_config = area_config # 动态区域配置不再硬编码DB100
self.area_name = area_config["name"]
self.db_number = area_config["db_number"]
@ -40,7 +41,7 @@ class PLCDataReaderThread(threading.Thread):
# 2. 线程与输出配置
self.update_interval = update_interval
self.output_file = f"{output_file_prefix}DB{self.db_number}.log" # 每个区域独立文件
self.output_file = f"{self.plc_name}_{output_file_prefix}{self.area_name}.log" # 输出文件名}{output_file_prefix}DB{self.db_number}.log" # 每个区域独立文件
# 3. 数据缓存(新增结构化数据存储)
self.running = False