This commit is contained in:
GukSang.Jin
2026-01-29 16:40:05 +08:00
parent 51715b90ad
commit 71a0b7ae76

View File

@@ -222,7 +222,8 @@ namespace COFTester.Services
} }
/// <summary> /// <summary>
/// 零點標定,向 M1300 寫入命令 1 /// 零點標定,向 M1300 寫入脉冲信号(复归型按钮)
/// 实现方式:写入 true → 延迟 100ms → 写入 false → 延迟 100ms
/// </summary> /// </summary>
public virtual async void ZeroCalibration() public virtual async void ZeroCalibration()
{ {
@@ -230,8 +231,23 @@ namespace COFTester.Services
{ {
if (_modbusMaster != null && _isConnected) if (_modbusMaster != null && _isConnected)
{ {
System.Diagnostics.Debug.WriteLine("[Modbus] 發送零點標定命令 (1) 到 M1300"); System.Diagnostics.Debug.WriteLine("[Modbus] 發送零點標定脉冲命令到 M1300");
await WriteCalibrationRegisterAsync((ushort)ModbusCalibrationCommand.ZeroCalibration);
// 写入 true触发
await _modbusMaster.WriteSingleCoilAsync(1, 1300, true);
System.Diagnostics.Debug.WriteLine("[Modbus] M1300 = true");
// 延迟 100ms
await Task.Delay(100);
// 写入 false复位
await _modbusMaster.WriteSingleCoilAsync(1, 1300, false);
System.Diagnostics.Debug.WriteLine("[Modbus] M1300 = false");
// 延迟 100ms 确保 PLC 处理完成
await Task.Delay(100);
System.Diagnostics.Debug.WriteLine("[Modbus] 零點標定脉冲命令发送完成");
} }
} }
catch (Exception ex) catch (Exception ex)