From a9bc7819f4f7e66159a93e955944728c25ba3e53 Mon Sep 17 00:00:00 2001
From: C3204 <zhengyabo@lanpucloud.cn>
Date: 星期三, 07 一月 2026 14:10:11 +0800
Subject: [PATCH] 优化相机管理和界面布局 - 在 `CreateCameraForm.cs` 中添加对 `LBCameras` 的引用,并修复相机创建逻辑。 - 调整 `VisionForm.Designer.cs` 和 `2DCameraForm.Designer.cs` 中多个控件的大小和位置,改善界面布局。 - 在 `VisionForm.cs` 中添加对 `LBCameras` 的引用以支持新相机类型。 - 注释掉 `PHM6000Sensor.cs` 和 `PHM6000Profiler.cs` 中与相机信息获取相关的 P/Invoke 方法。 - 重构 `LBCamera.cs`,添加新的相机初始化和参数设置逻辑,确保与 PHM6000 SDK 的兼容性。 - 移除 `PHM6000Camera.cs` 中与 `PHM6000Camera` 相关的代码,简化相机管理逻辑。 Merge branch 'master' of http://lanpucloud.cn:1111/r/~zhengyabo/LB_TyreAppearanceInspectionSoftware
---
LB_VisionProcesses/Communicators/SiemensS7/SiemensLBS7.cs | 81 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 79 insertions(+), 2 deletions(-)
diff --git a/LB_VisionProcesses/Communicators/SiemensS7/SiemensLBS7.cs b/LB_VisionProcesses/Communicators/SiemensS7/SiemensLBS7.cs
index f9fac67..b82d523 100644
--- a/LB_VisionProcesses/Communicators/SiemensS7/SiemensLBS7.cs
+++ b/LB_VisionProcesses/Communicators/SiemensS7/SiemensLBS7.cs
@@ -1,4 +1,6 @@
-锘縰sing System;
+锘縰sing LB_SmartVisionCommon;
+using S7.Net;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -6,7 +8,82 @@
namespace LB_VisionProcesses.Communicators.SiemensS7
{
- internal class SiemensLBS7
+ public class SiemensLBS7 : BaseCommunicator
{
+ private Plc plc;
+ public string variable = string.Empty;
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="name"></param>
+ public SiemensLBS7(string name = "瑗块棬瀛怱7")
+ {
+ CommunicatorConnections.Add("鍦板潃", "127.0.0.1");
+ CommunicatorConnections.Add("绔彛", "1");
+ CommunicatorConnections.Add("鍨嬪彿", S7.Net.CpuType.S71500);
+ CommunicatorBrand = CommunicatorBrand.SiemensS7;
+ CommunicatorName = name;
+ }
+ public override bool Connect()
+ {
+ try
+ {
+ string IP = CommunicatorConnections["鍦板潃"].ToString();
+ short slot;
+ short.TryParse(CommunicatorConnections["绔彛"].ToString(), out slot);
+ S7.Net.CpuType cpuType = (CpuType)CommunicatorConnections["鍨嬪彿"];
+ plc = new Plc(cpuType, IP, 0, slot);
+ plc.Open();
+ return true;
+
+ }
+ catch
+ {
+ return false;
+ }
+ }
+
+ public override bool Disconnect()
+ {
+ try
+ {
+ plc?.Close();
+ return true;
+ }
+ catch
+ {
+ return false;
+ }
+ }
+
+ public override bool SendMessage(string message)
+ {
+ try
+ {
+ plc.Write(variable, message);
+ return true;
+ }
+ catch
+ {
+ return false;
+ }
+ }
+
+ public override void Dispose()
+ {
+ try
+ {
+ AsyncLogHelper.Info($"Device:[{CommunicatorName}],Dispose()");
+
+ plc = null;
+
+ // Suppress finalization.
+ GC.SuppressFinalize(this);
+ }
+ catch (Exception ex)
+ {
+ AsyncLogHelper.Error($"Device:[{CommunicatorName}],Dispose(),Error" + ex);
+ }
+ }
}
}
--
Gitblit v1.9.3