diff --git a/.vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 b/.vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 index 115715d..c93a172 100644 Binary files a/.vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 and b/.vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 differ diff --git a/.vs/IoTGateway/FileContentIndex/67034209-72e2-48a7-8d44-a57dc4ca3289.vsidx b/.vs/IoTGateway/FileContentIndex/67034209-72e2-48a7-8d44-a57dc4ca3289.vsidx new file mode 100644 index 0000000..fc3b20b Binary files /dev/null and b/.vs/IoTGateway/FileContentIndex/67034209-72e2-48a7-8d44-a57dc4ca3289.vsidx differ diff --git a/.vs/IoTGateway/FileContentIndex/7390658a-3ccb-47c8-8b9e-0545a71148ea.vsidx b/.vs/IoTGateway/FileContentIndex/7390658a-3ccb-47c8-8b9e-0545a71148ea.vsidx new file mode 100644 index 0000000..4874670 Binary files /dev/null and b/.vs/IoTGateway/FileContentIndex/7390658a-3ccb-47c8-8b9e-0545a71148ea.vsidx differ diff --git a/.vs/IoTGateway/FileContentIndex/c5f0783d-4c53-4bf1-87cc-2fa5e948d42a.vsidx b/.vs/IoTGateway/FileContentIndex/c5f0783d-4c53-4bf1-87cc-2fa5e948d42a.vsidx new file mode 100644 index 0000000..babcc99 Binary files /dev/null and b/.vs/IoTGateway/FileContentIndex/c5f0783d-4c53-4bf1-87cc-2fa5e948d42a.vsidx differ diff --git a/.vs/IoTGateway/FileContentIndex/fdd8818f-7df8-4b70-9b1b-7813ef583fe3.vsidx b/.vs/IoTGateway/FileContentIndex/fdd8818f-7df8-4b70-9b1b-7813ef583fe3.vsidx new file mode 100644 index 0000000..c42e72d Binary files /dev/null and b/.vs/IoTGateway/FileContentIndex/fdd8818f-7df8-4b70-9b1b-7813ef583fe3.vsidx differ diff --git a/.vs/IoTGateway/FileContentIndex/read.lock b/.vs/IoTGateway/FileContentIndex/read.lock new file mode 100644 index 0000000..e69de29 diff --git a/.vs/IoTGateway/v17/.futdcache.v1 b/.vs/IoTGateway/v17/.futdcache.v1 index 87e8746..0d07c6a 100644 Binary files a/.vs/IoTGateway/v17/.futdcache.v1 and b/.vs/IoTGateway/v17/.futdcache.v1 differ diff --git a/.vs/IoTGateway/v17/.suo b/.vs/IoTGateway/v17/.suo index 2ff88bb..b74ca65 100644 Binary files a/.vs/IoTGateway/v17/.suo and b/.vs/IoTGateway/v17/.suo differ diff --git a/.vs/IoTGateway/v17/fileList.bin b/.vs/IoTGateway/v17/fileList.bin index eedc452..a1cc34b 100644 Binary files a/.vs/IoTGateway/v17/fileList.bin and b/.vs/IoTGateway/v17/fileList.bin differ diff --git a/.vs/ProjectEvaluation/iotgateway.metadata.v2 b/.vs/ProjectEvaluation/iotgateway.metadata.v2 new file mode 100644 index 0000000..ce11152 Binary files /dev/null and b/.vs/ProjectEvaluation/iotgateway.metadata.v2 differ diff --git a/.vs/ProjectEvaluation/iotgateway.projects.v2 b/.vs/ProjectEvaluation/iotgateway.projects.v2 new file mode 100644 index 0000000..90e040f Binary files /dev/null and b/.vs/ProjectEvaluation/iotgateway.projects.v2 differ diff --git a/IoTGateway.sln b/IoTGateway.sln index 3d23c18..5f17919 100644 --- a/IoTGateway.sln +++ b/IoTGateway.sln @@ -41,6 +41,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DriverSiemensS7", "Plugins\ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DriverOmronFins", "Plugins\Drivers\DriverOmronFins\DriverOmronFins.csproj", "{FE2BFDBD-E021-45EA-B327-C56F6114D7A1}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DriverFanuc", "Plugins\Drivers\DriverFanuc\DriverFanuc.csproj", "{EA652A3B-5F4A-47FE-A5DA-98A0EFC4F842}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -111,6 +113,10 @@ Global {FE2BFDBD-E021-45EA-B327-C56F6114D7A1}.Debug|Any CPU.Build.0 = Debug|Any CPU {FE2BFDBD-E021-45EA-B327-C56F6114D7A1}.Release|Any CPU.ActiveCfg = Release|Any CPU {FE2BFDBD-E021-45EA-B327-C56F6114D7A1}.Release|Any CPU.Build.0 = Release|Any CPU + {EA652A3B-5F4A-47FE-A5DA-98A0EFC4F842}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EA652A3B-5F4A-47FE-A5DA-98A0EFC4F842}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EA652A3B-5F4A-47FE-A5DA-98A0EFC4F842}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EA652A3B-5F4A-47FE-A5DA-98A0EFC4F842}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -129,6 +135,7 @@ Global {AAC81E6C-C62E-4F52-85B5-1EA8D54AE9F6} = {D05CFF72-D58C-418A-8F52-B06848DAC4F1} {28FEF3AF-4CAA-4B5C-B16F-E74BAD70BCE2} = {D05CFF72-D58C-418A-8F52-B06848DAC4F1} {FE2BFDBD-E021-45EA-B327-C56F6114D7A1} = {D05CFF72-D58C-418A-8F52-B06848DAC4F1} + {EA652A3B-5F4A-47FE-A5DA-98A0EFC4F842} = {D05CFF72-D58C-418A-8F52-B06848DAC4F1} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {1F219808-E6E8-4C1D-B846-41F2F7CF20FA} diff --git a/IoTGateway/iotgateway.db b/IoTGateway/iotgateway.db index 5900ba8..d386b05 100644 Binary files a/IoTGateway/iotgateway.db and b/IoTGateway/iotgateway.db differ diff --git a/Plugins/Drivers/DriverFanuc/.vs/DriverFanuc/v17/.futdcache.v1 b/Plugins/Drivers/DriverFanuc/.vs/DriverFanuc/v17/.futdcache.v1 new file mode 100644 index 0000000..b20853d Binary files /dev/null and b/Plugins/Drivers/DriverFanuc/.vs/DriverFanuc/v17/.futdcache.v1 differ diff --git a/Plugins/Drivers/DriverFanuc/.vs/DriverFanuc/v17/.suo b/Plugins/Drivers/DriverFanuc/.vs/DriverFanuc/v17/.suo new file mode 100644 index 0000000..3ba2ad8 Binary files /dev/null and b/Plugins/Drivers/DriverFanuc/.vs/DriverFanuc/v17/.suo differ diff --git a/Plugins/Drivers/DriverFanuc/.vs/ProjectEvaluation/driverfanuc.metadata.v2 b/Plugins/Drivers/DriverFanuc/.vs/ProjectEvaluation/driverfanuc.metadata.v2 new file mode 100644 index 0000000..6bc2ec3 Binary files /dev/null and b/Plugins/Drivers/DriverFanuc/.vs/ProjectEvaluation/driverfanuc.metadata.v2 differ diff --git a/Plugins/Drivers/DriverFanuc/.vs/ProjectEvaluation/driverfanuc.projects.v2 b/Plugins/Drivers/DriverFanuc/.vs/ProjectEvaluation/driverfanuc.projects.v2 new file mode 100644 index 0000000..7f714f8 Binary files /dev/null and b/Plugins/Drivers/DriverFanuc/.vs/ProjectEvaluation/driverfanuc.projects.v2 differ diff --git a/Plugins/Drivers/DriverFanuc/DriverFanuc.csproj b/Plugins/Drivers/DriverFanuc/DriverFanuc.csproj new file mode 100644 index 0000000..7a751d1 --- /dev/null +++ b/Plugins/Drivers/DriverFanuc/DriverFanuc.csproj @@ -0,0 +1,30 @@ + + + net6.0 + ../../../IoTGateway/bin/Debug/net6.0/drivers + true + enable + enable + + + + + + + + + + + + + + + + + + + + HslCommunication.dll + + + diff --git a/Plugins/Drivers/DriverFanuc/Fanuc.cs b/Plugins/Drivers/DriverFanuc/Fanuc.cs new file mode 100644 index 0000000..dd3740c --- /dev/null +++ b/Plugins/Drivers/DriverFanuc/Fanuc.cs @@ -0,0 +1,863 @@ + +using PluginInterface; +using System; +using System.Text; +using HslCommunication.CNC.Fanuc; +using HslCommunication; + +namespace DriverFanuc +{ + [DriverSupported("Fanuc-0i")] + [DriverInfoAttribute("Fanuc-0i", "V11.0.0", "Copyright HSL ")] + public class Fanuc : IDriver + { + private FanucSeries0i fanuc; + #region 配置参数 + + [ConfigParameter("设备Id")] + public Guid DeviceId { get; set; } + + [ConfigParameter("IP地址")] + public string IpAddress { get; set; } = "127.0.0.1"; + + [ConfigParameter("端口号")] + public int Port { get; set; } = 8193; + + [ConfigParameter("超时时间ms")] + public int Timeout { get; set; } = 3000; + + [ConfigParameter("最小通讯周期ms")] + public uint MinPeriod { get; set; } = 3000; + + #endregion + + public Fanuc(Guid deviceId) + { + // 授权示例 Authorization example + if (!Authorization.SetAuthorizationCode("输入你的授权号")) + { + //return; // 激活失败应该退出系统 + } + + DeviceId = deviceId; + } + + + public bool IsConnected + { + get + { + if (fanuc == null) + return false; + else + { + OperateResult read = fanuc.ReadProgramList(); + if (read.IsSuccess) + { + return true; + } + else + { + return false; + } + } + + } + } + + public bool Connect() + { + try + { + fanuc?.ConnectClose(); + fanuc = new FanucSeries0i(IpAddress, Port); + return fanuc.ConnectServer().IsSuccess; + + } + catch (Exception) + { + return false; + } + return IsConnected; + } + + public bool Close() + { + try + { + fanuc.ConnectClose(); + return !IsConnected; + } + catch (Exception) + { + + return false; + } + } + + public void Dispose() + { + + } + + [Method("Fanuc", description: "读系统状态")] + public DriverReturnValueModel ReadSysStatusInfo(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadSysStatusInfo(); + if (read.IsSuccess) + ret.Value = Newtonsoft.Json.JsonConvert.SerializeObject(read.Content); + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "读报警信息")] + public DriverReturnValueModel ReadSystemAlarm(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadSystemAlarm(); + if (read.IsSuccess) + ret.Value = Newtonsoft.Json.JsonConvert.SerializeObject(read.Content); + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "坐标数据")] + public DriverReturnValueModel ReadSysAllCoors(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadSysAllCoors(); + if (read.IsSuccess) + ret.Value = Newtonsoft.Json.JsonConvert.SerializeObject(read.Content); + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "程序列表")] + public DriverReturnValueModel ReadProgramList(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadProgramList(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "当前程序名")] + public DriverReturnValueModel ReadSystemProgramCurrent(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadSystemProgramCurrent(); + if (read.IsSuccess) + ret.Value = Newtonsoft.Json.JsonConvert.SerializeObject( + new Dictionary() { { "ProgramName", read.Content1 }, { "ProgramNo", read.Content2 } } + ); + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "主轴转进速")] + public DriverReturnValueModel ReadSpindleSpeedAndFeedRate(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadSpindleSpeedAndFeedRate(); + if (read.IsSuccess) + ret.Value = Newtonsoft.Json.JsonConvert.SerializeObject( + new Dictionary() { { "SpindleSpeed", read.Content1 }, { "FeedRate", read.Content2 } } + ); + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + + + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "伺服负载")] + public DriverReturnValueModel ReadFanucAxisLoad(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadFanucAxisLoad(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "道具补偿")] + public DriverReturnValueModel ReadCutterInfos(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadCutterInfos(); + if (read.IsSuccess) + ret.Value = Newtonsoft.Json.JsonConvert.SerializeObject(read.Content); + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "程序路径")] + public DriverReturnValueModel ReadCurrentForegroundDir(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadCurrentForegroundDir(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "工件尺寸")] + public DriverReturnValueModel ReadDeviceWorkPiecesSize(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadDeviceWorkPiecesSize(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "报警代号")] + public DriverReturnValueModel ReadAlarmStatus(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadAlarmStatus(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "机床时间")] + public DriverReturnValueModel ReadCurrentDateTime(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadCurrentDateTime(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "已加工数量")] + public DriverReturnValueModel ReadCurrentProduceCount(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadCurrentProduceCount(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "总加工数量")] + public DriverReturnValueModel ReadExpectProduceCount(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadExpectProduceCount(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "系统语言")] + public DriverReturnValueModel ReadLanguage(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadLanguage(); + if (read.IsSuccess) + ret.Value = (LanguageType)read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "当前程序")] + public DriverReturnValueModel ReadCurrentProgram(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadCurrentProgram(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "开机时间")] + public DriverReturnValueModel ReadOnLineTime(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadTimeData(0); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "运行时间")] + public DriverReturnValueModel ReadRunTime(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadTimeData(1); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "切割时间")] + public DriverReturnValueModel ReadCuttingTime(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadTimeData(2); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "空闲时间")] + public DriverReturnValueModel ReadIdleTime(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadTimeData(3); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "当前道具号")] + public DriverReturnValueModel ReadCutterNumber(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + OperateResult read = fanuc.ReadCutterNumber(); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "读宏变量")] + public DriverReturnValueModel ReadSystemMacroValue(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + if (!int.TryParse(Ioarg.Address, out int address)) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"宏变量地址错误"; + } + else + { + OperateResult read = fanuc.ReadSystemMacroValue(address); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + [Method("Fanuc", description: "读取程序")] + public DriverReturnValueModel ReadProgramAsync(DriverAddressIoArgModel Ioarg) + { + var ret = new DriverReturnValueModel { StatusType = VaribaleStatusTypeEnum.Good }; + if (IsConnected) + { + try + { + if (!int.TryParse(Ioarg.Address, out int address)) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"程序号错误"; + } + else + { + OperateResult read = fanuc.ReadProgram(address); + if (read.IsSuccess) + ret.Value = read.Content; + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败"; + } + } + } + catch (Exception ex) + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = $"读取失败,{ex.Message}"; + } + } + else + { + ret.StatusType = VaribaleStatusTypeEnum.Bad; + ret.Message = "连接失败"; + } + return ret; + } + + + public async Task WriteAsync(string RequestId, string Method, DriverAddressIoArgModel Ioarg) + { + RpcResponse rpcResponse = new() { IsSuccess = false, Description = "设备驱动内未实现写入功能" }; + return rpcResponse; + } + + public DriverReturnValueModel Read(DriverAddressIoArgModel Ioarg) + { + throw new NotImplementedException(); + } + + private enum LanguageType + { + 英语 = 0, + 日语 = 1, + 德语 = 2, + 法语 = 3, + 中文简繁体 = 4, + 韩语 = 6, + 中文简体 = 15, + 俄语 = 16, + 土耳其语 = 17 + } + } +} \ No newline at end of file diff --git a/drivers/net6.0/DriverAllenBradley.dll b/drivers/net6.0/DriverAllenBradley.dll index ae1590d..c1ee995 100644 Binary files a/drivers/net6.0/DriverAllenBradley.dll and b/drivers/net6.0/DriverAllenBradley.dll differ diff --git a/drivers/net6.0/DriverAllenBradley.pdb b/drivers/net6.0/DriverAllenBradley.pdb index 5079483..24e48c2 100644 Binary files a/drivers/net6.0/DriverAllenBradley.pdb and b/drivers/net6.0/DriverAllenBradley.pdb differ diff --git a/drivers/net6.0/DriverFanuc.deps.json b/drivers/net6.0/DriverFanuc.deps.json new file mode 100644 index 0000000..97dce15 --- /dev/null +++ b/drivers/net6.0/DriverFanuc.deps.json @@ -0,0 +1,235 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v6.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v6.0": { + "DriverFanuc/1.0.0": { + "dependencies": { + "HslCommunication": "11.0.0", + "Newtonsoft.Json": "13.0.1", + "PluginInterface": "1.0.0" + }, + "runtime": { + "DriverFanuc.dll": {} + } + }, + "HslCommunication/11.0.0": { + "dependencies": { + "Newtonsoft.Json": "13.0.1", + "System.IO.Ports": "4.7.0" + }, + "runtime": { + "lib/netstandard2.1/HslCommunication.dll": { + "assemblyVersion": "11.0.0.0", + "fileVersion": "11.0.0.0" + } + } + }, + "Microsoft.NETCore.Platforms/3.1.0": {}, + "Microsoft.Win32.Registry/4.7.0": { + "dependencies": { + "System.Security.AccessControl": "4.7.0", + "System.Security.Principal.Windows": "4.7.0" + } + }, + "Newtonsoft.Json/13.0.1": { + "runtime": { + "lib/netstandard2.0/Newtonsoft.Json.dll": { + "assemblyVersion": "13.0.0.0", + "fileVersion": "13.0.1.25517" + } + } + }, + "runtime.linux-arm.runtime.native.System.IO.Ports/4.7.0": { + "runtimeTargets": { + "runtimes/linux-arm/native/System.IO.Ports.Native.so": { + "rid": "linux-arm", + "assetType": "native", + "fileVersion": "0.0.0.0" + } + } + }, + "runtime.linux-arm64.runtime.native.System.IO.Ports/4.7.0": { + "runtimeTargets": { + "runtimes/linux-arm64/native/System.IO.Ports.Native.so": { + "rid": "linux-arm64", + "assetType": "native", + "fileVersion": "0.0.0.0" + } + } + }, + "runtime.linux-x64.runtime.native.System.IO.Ports/4.7.0": { + "runtimeTargets": { + "runtimes/linux-x64/native/System.IO.Ports.Native.so": { + "rid": "linux-x64", + "assetType": "native", + "fileVersion": "0.0.0.0" + } + } + }, + "runtime.native.System.IO.Ports/4.7.0": { + "dependencies": { + "runtime.linux-arm.runtime.native.System.IO.Ports": "4.7.0", + "runtime.linux-arm64.runtime.native.System.IO.Ports": "4.7.0", + "runtime.linux-x64.runtime.native.System.IO.Ports": "4.7.0", + "runtime.osx-x64.runtime.native.System.IO.Ports": "4.7.0" + } + }, + "runtime.osx-x64.runtime.native.System.IO.Ports/4.7.0": { + "runtimeTargets": { + "runtimes/osx-x64/native/System.IO.Ports.Native.dylib": { + "rid": "osx-x64", + "assetType": "native", + "fileVersion": "0.0.0.0" + } + } + }, + "System.IO.Ports/4.7.0": { + "dependencies": { + "Microsoft.Win32.Registry": "4.7.0", + "runtime.native.System.IO.Ports": "4.7.0" + }, + "runtime": { + "lib/netstandard2.0/System.IO.Ports.dll": { + "assemblyVersion": "4.0.3.0", + "fileVersion": "4.700.19.56404" + } + }, + "runtimeTargets": { + "runtimes/linux/lib/netstandard2.0/System.IO.Ports.dll": { + "rid": "linux", + "assetType": "runtime", + "assemblyVersion": "4.0.3.0", + "fileVersion": "4.700.19.56404" + }, + "runtimes/osx/lib/netstandard2.0/System.IO.Ports.dll": { + "rid": "osx", + "assetType": "runtime", + "assemblyVersion": "4.0.3.0", + "fileVersion": "4.700.19.56404" + }, + "runtimes/win/lib/netstandard2.0/System.IO.Ports.dll": { + "rid": "win", + "assetType": "runtime", + "assemblyVersion": "4.0.3.0", + "fileVersion": "4.700.19.56404" + } + } + }, + "System.Security.AccessControl/4.7.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "3.1.0", + "System.Security.Principal.Windows": "4.7.0" + } + }, + "System.Security.Principal.Windows/4.7.0": {}, + "PluginInterface/1.0.0": { + "dependencies": { + "Newtonsoft.Json": "13.0.1" + }, + "runtime": { + "PluginInterface.dll": {} + } + } + } + }, + "libraries": { + "DriverFanuc/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "HslCommunication/11.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-9JcbMka4dQ8251DCXIP9JExrIqmnt6b6/pX1ZFsdQ7/GQsPtfGMshvQDFUuSx8xf9+gADw3sFu5CDcpbFSQpZg==", + "path": "hslcommunication/11.0.0", + "hashPath": "hslcommunication.11.0.0.nupkg.sha512" + }, + "Microsoft.NETCore.Platforms/3.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-z7aeg8oHln2CuNulfhiLYxCVMPEwBl3rzicjvIX+4sUuCwvXw5oXQEtbiU2c0z4qYL5L3Kmx0mMA/+t/SbY67w==", + "path": "microsoft.netcore.platforms/3.1.0", + "hashPath": "microsoft.netcore.platforms.3.1.0.nupkg.sha512" + }, + "Microsoft.Win32.Registry/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KSrRMb5vNi0CWSGG1++id2ZOs/1QhRqROt+qgbEAdQuGjGrFcl4AOl4/exGPUYz2wUnU42nvJqon1T3U0kPXLA==", + "path": "microsoft.win32.registry/4.7.0", + "hashPath": "microsoft.win32.registry.4.7.0.nupkg.sha512" + }, + "Newtonsoft.Json/13.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==", + "path": "newtonsoft.json/13.0.1", + "hashPath": "newtonsoft.json.13.0.1.nupkg.sha512" + }, + "runtime.linux-arm.runtime.native.System.IO.Ports/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pCaX07mRrO11GfUb+whjn2AJgCofx26slw0sI3XC9v0pEZO8101iK6q4ymZOiI2M4a9sQxLr2LawAEDvF4RNXg==", + "path": "runtime.linux-arm.runtime.native.system.io.ports/4.7.0", + "hashPath": "runtime.linux-arm.runtime.native.system.io.ports.4.7.0.nupkg.sha512" + }, + "runtime.linux-arm64.runtime.native.System.IO.Ports/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/J6A4bexUUJciGUwrhtzrFW4tIHqoJYlCsz5RudRmqUaqvuG2tjrbn6bEopOFs7CU4gZqAKWcU9pkp180c3DkQ==", + "path": "runtime.linux-arm64.runtime.native.system.io.ports/4.7.0", + "hashPath": "runtime.linux-arm64.runtime.native.system.io.ports.4.7.0.nupkg.sha512" + }, + "runtime.linux-x64.runtime.native.System.IO.Ports/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-aaaiH4ttfkLizo0OKf++5kPN0yxKbgzcyAD3w52Y3YP96aB/M79fm0r06SedXJGv86Iou6ipj3wUQBMFaL8LnQ==", + "path": "runtime.linux-x64.runtime.native.system.io.ports/4.7.0", + "hashPath": "runtime.linux-x64.runtime.native.system.io.ports.4.7.0.nupkg.sha512" + }, + "runtime.native.System.IO.Ports/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yidiZEGEIOyGnRkZvoV6XbeqzEBg9L47PyZNBymLIsu9HHseF98wiOxR6RnHmMqQMTBlc/EONfw4NT3pw0S6YQ==", + "path": "runtime.native.system.io.ports/4.7.0", + "hashPath": "runtime.native.system.io.ports.4.7.0.nupkg.sha512" + }, + "runtime.osx-x64.runtime.native.System.IO.Ports/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-c1h87v6gopjfeAu3WhVGguUhzCdpZFqX8oXrevO1ciuH4g/mFrxnzlo5POlp+TtZdQ1i8yu0ZzBMKbmX2bJJ0g==", + "path": "runtime.osx-x64.runtime.native.system.io.ports/4.7.0", + "hashPath": "runtime.osx-x64.runtime.native.system.io.ports.4.7.0.nupkg.sha512" + }, + "System.IO.Ports/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-tNHiZcdskfRpxU7LBBlA69YYgBqWMBE/JDdmrEIDa4iw944VK1u4+B0FeSls1FUm+Pm4X/Fl0fSGqi8MDhb8/Q==", + "path": "system.io.ports/4.7.0", + "hashPath": "system.io.ports.4.7.0.nupkg.sha512" + }, + "System.Security.AccessControl/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-JECvTt5aFF3WT3gHpfofL2MNNP6v84sxtXxpqhLBCcDRzqsPBmHhQ6shv4DwwN2tRlzsUxtb3G9M3763rbXKDg==", + "path": "system.security.accesscontrol/4.7.0", + "hashPath": "system.security.accesscontrol.4.7.0.nupkg.sha512" + }, + "System.Security.Principal.Windows/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ojD0PX0XhneCsUbAZVKdb7h/70vyYMDYs85lwEI+LngEONe/17A0cFaRFqZU+sOEidcVswYWikYOQ9PPfjlbtQ==", + "path": "system.security.principal.windows/4.7.0", + "hashPath": "system.security.principal.windows.4.7.0.nupkg.sha512" + }, + "PluginInterface/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/drivers/net6.0/DriverFanuc.dll b/drivers/net6.0/DriverFanuc.dll new file mode 100644 index 0000000..2c5c7fe Binary files /dev/null and b/drivers/net6.0/DriverFanuc.dll differ diff --git a/drivers/net6.0/DriverFanuc.pdb b/drivers/net6.0/DriverFanuc.pdb new file mode 100644 index 0000000..8f9aab1 Binary files /dev/null and b/drivers/net6.0/DriverFanuc.pdb differ diff --git a/drivers/net6.0/DriverMTConnect.dll b/drivers/net6.0/DriverMTConnect.dll index c33b838..9894811 100644 Binary files a/drivers/net6.0/DriverMTConnect.dll and b/drivers/net6.0/DriverMTConnect.dll differ diff --git a/drivers/net6.0/DriverMTConnect.pdb b/drivers/net6.0/DriverMTConnect.pdb index 304772f..79a2efa 100644 Binary files a/drivers/net6.0/DriverMTConnect.pdb and b/drivers/net6.0/DriverMTConnect.pdb differ diff --git a/drivers/net6.0/DriverMitsubishi.dll b/drivers/net6.0/DriverMitsubishi.dll index dd771e9..946cebb 100644 Binary files a/drivers/net6.0/DriverMitsubishi.dll and b/drivers/net6.0/DriverMitsubishi.dll differ diff --git a/drivers/net6.0/DriverMitsubishi.pdb b/drivers/net6.0/DriverMitsubishi.pdb index b59fdc3..d687f3d 100644 Binary files a/drivers/net6.0/DriverMitsubishi.pdb and b/drivers/net6.0/DriverMitsubishi.pdb differ diff --git a/drivers/net6.0/DriverModbusMaster.dll b/drivers/net6.0/DriverModbusMaster.dll index d584d62..92486c3 100644 Binary files a/drivers/net6.0/DriverModbusMaster.dll and b/drivers/net6.0/DriverModbusMaster.dll differ diff --git a/drivers/net6.0/DriverModbusMaster.pdb b/drivers/net6.0/DriverModbusMaster.pdb index a243577..cb19470 100644 Binary files a/drivers/net6.0/DriverModbusMaster.pdb and b/drivers/net6.0/DriverModbusMaster.pdb differ diff --git a/drivers/net6.0/DriverOPCUaClient.dll b/drivers/net6.0/DriverOPCUaClient.dll index 233f26a..3c3ca70 100644 Binary files a/drivers/net6.0/DriverOPCUaClient.dll and b/drivers/net6.0/DriverOPCUaClient.dll differ diff --git a/drivers/net6.0/DriverOPCUaClient.pdb b/drivers/net6.0/DriverOPCUaClient.pdb index 04d4323..731c99b 100644 Binary files a/drivers/net6.0/DriverOPCUaClient.pdb and b/drivers/net6.0/DriverOPCUaClient.pdb differ diff --git a/drivers/net6.0/DriverOmronFins.dll b/drivers/net6.0/DriverOmronFins.dll index c14ee42..4899e26 100644 Binary files a/drivers/net6.0/DriverOmronFins.dll and b/drivers/net6.0/DriverOmronFins.dll differ diff --git a/drivers/net6.0/DriverOmronFins.pdb b/drivers/net6.0/DriverOmronFins.pdb index 75d217f..130cc61 100644 Binary files a/drivers/net6.0/DriverOmronFins.pdb and b/drivers/net6.0/DriverOmronFins.pdb differ diff --git a/drivers/net6.0/DriverSiemensS7.dll b/drivers/net6.0/DriverSiemensS7.dll index 1edfbdd..b2df2e4 100644 Binary files a/drivers/net6.0/DriverSiemensS7.dll and b/drivers/net6.0/DriverSiemensS7.dll differ diff --git a/drivers/net6.0/DriverSiemensS7.pdb b/drivers/net6.0/DriverSiemensS7.pdb index f608049..ed7fab1 100644 Binary files a/drivers/net6.0/DriverSiemensS7.pdb and b/drivers/net6.0/DriverSiemensS7.pdb differ diff --git a/drivers/net6.0/HslCommunication.dll b/drivers/net6.0/HslCommunication.dll new file mode 100644 index 0000000..aff2607 Binary files /dev/null and b/drivers/net6.0/HslCommunication.dll differ diff --git a/drivers/net6.0/PluginInterface.dll b/drivers/net6.0/PluginInterface.dll index f41725c..a7d1681 100644 Binary files a/drivers/net6.0/PluginInterface.dll and b/drivers/net6.0/PluginInterface.dll differ diff --git a/drivers/net6.0/PluginInterface.pdb b/drivers/net6.0/PluginInterface.pdb index e337eb5..0e8ba44 100644 Binary files a/drivers/net6.0/PluginInterface.pdb and b/drivers/net6.0/PluginInterface.pdb differ diff --git a/drivers/net6.0/System.IO.Ports.dll b/drivers/net6.0/System.IO.Ports.dll index e2af6d1..6e8d9a7 100644 Binary files a/drivers/net6.0/System.IO.Ports.dll and b/drivers/net6.0/System.IO.Ports.dll differ diff --git a/drivers/net6.0/runtimes/linux-arm/native/System.IO.Ports.Native.so b/drivers/net6.0/runtimes/linux-arm/native/System.IO.Ports.Native.so index ebe7e5c..926a0af 100644 Binary files a/drivers/net6.0/runtimes/linux-arm/native/System.IO.Ports.Native.so and b/drivers/net6.0/runtimes/linux-arm/native/System.IO.Ports.Native.so differ diff --git a/drivers/net6.0/runtimes/linux-arm64/native/System.IO.Ports.Native.so b/drivers/net6.0/runtimes/linux-arm64/native/System.IO.Ports.Native.so index 266e5d2..5b6888d 100644 Binary files a/drivers/net6.0/runtimes/linux-arm64/native/System.IO.Ports.Native.so and b/drivers/net6.0/runtimes/linux-arm64/native/System.IO.Ports.Native.so differ diff --git a/drivers/net6.0/runtimes/linux-x64/native/System.IO.Ports.Native.so b/drivers/net6.0/runtimes/linux-x64/native/System.IO.Ports.Native.so index 8af62f2..b609400 100644 Binary files a/drivers/net6.0/runtimes/linux-x64/native/System.IO.Ports.Native.so and b/drivers/net6.0/runtimes/linux-x64/native/System.IO.Ports.Native.so differ diff --git a/drivers/net6.0/runtimes/linux/lib/netstandard2.0/System.IO.Ports.dll b/drivers/net6.0/runtimes/linux/lib/netstandard2.0/System.IO.Ports.dll index 69712b6..1cf099b 100644 Binary files a/drivers/net6.0/runtimes/linux/lib/netstandard2.0/System.IO.Ports.dll and b/drivers/net6.0/runtimes/linux/lib/netstandard2.0/System.IO.Ports.dll differ diff --git a/drivers/net6.0/runtimes/osx-x64/native/System.IO.Ports.Native.dylib b/drivers/net6.0/runtimes/osx-x64/native/System.IO.Ports.Native.dylib index b4500b6..b7adfd5 100644 Binary files a/drivers/net6.0/runtimes/osx-x64/native/System.IO.Ports.Native.dylib and b/drivers/net6.0/runtimes/osx-x64/native/System.IO.Ports.Native.dylib differ diff --git a/drivers/net6.0/runtimes/osx/lib/netstandard2.0/System.IO.Ports.dll b/drivers/net6.0/runtimes/osx/lib/netstandard2.0/System.IO.Ports.dll index 20cf4c4..f2c4a5c 100644 Binary files a/drivers/net6.0/runtimes/osx/lib/netstandard2.0/System.IO.Ports.dll and b/drivers/net6.0/runtimes/osx/lib/netstandard2.0/System.IO.Ports.dll differ diff --git a/drivers/net6.0/runtimes/win/lib/netstandard2.0/System.IO.Ports.dll b/drivers/net6.0/runtimes/win/lib/netstandard2.0/System.IO.Ports.dll index 3e1d69b..6f162e2 100644 Binary files a/drivers/net6.0/runtimes/win/lib/netstandard2.0/System.IO.Ports.dll and b/drivers/net6.0/runtimes/win/lib/netstandard2.0/System.IO.Ports.dll differ diff --git a/iotgateway.db b/iotgateway.db index 5900ba8..d386b05 100644 Binary files a/iotgateway.db and b/iotgateway.db differ