浏览代码

iot开发

WIN-GH9CEESPLTB\Administrator 2 月之前
父节点
当前提交
adee239e9f
共有 2 个文件被更改,包括 85 次插入2 次删除
  1. 13 1
      MainForm/ClassFile/ProjectClass/GlobalContext.cs
  2. 72 1
      MainForm/FaForm/Form_Home.cs

+ 13 - 1
MainForm/ClassFile/ProjectClass/GlobalContext.cs

@@ -75,6 +75,14 @@ namespace MainForm
         public static string S5_work_station;   // [S5] ⼯站
         public static string S5_device_code;    // [S5] 装备编码
         public static string S5_station;        // [S5] ⼯位Id
+        public static string S6_device_code;    // [S5] 装备编码
+        public static string S6_station;        // [S5] ⼯位Id
+        public static string S7_device_code;    // [S5] 装备编码
+        public static string S7_station;        // [S5] ⼯位Id
+        public static string S8_device_code;    // [S5] 装备编码
+        public static string S8_station;        // [S5] ⼯位Id
+        public static string S9_device_code;    // [S5] 装备编码
+        public static string S9_station;        // [S5] ⼯位Id
 
         // 设备
         //public static string PCAddress="192.168.1.244";
@@ -154,6 +162,8 @@ namespace MainForm
         public static bool IsMqttOperateLog;         // 上传操作记录
         public static bool IsMqttEquiConfig;         // 上传装备配置
         public static bool IsMqttProcConfig;         // 上传⼯艺配置
+        public static string MQTTAppId;            // IOT应用ID
+        public static string MQTTAppPwd;           // IOT登录密码
 
         // IOT-AGV
         public static bool IsUseAGV;  // 是否 启用AGV
@@ -379,7 +389,7 @@ namespace MainForm
                 IsUseMESRoute = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsUseMESRoute", ConstIsSend));
 
                 // MQTT
-                IsUseIot = bool.Parse(IniFile.INIGetStringValue(FilePath, "MES", "IsUseIot", "false"));
+                IsUseIot = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsUseIot", "false"));
                 MQTTServerHost = IniFile.INIGetStringValue(FilePath, "MQTT", "MQTTServerHost", "127.0.0.1");
                 MQTTServerPort = int.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "MQTTServerPort", "80"));
                 IsMqttSendProcessData = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttSendProcessData", ConstIsSend));
@@ -390,6 +400,8 @@ namespace MainForm
                 IsMqttOperateLog = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttOperateLog", ConstIsSend));
                 IsMqttEquiConfig = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttEquiConfig", ConstIsSend));
                 IsMqttProcConfig = bool.Parse(IniFile.INIGetStringValue(FilePath, "MQTT", "IsMqttProcConfig", ConstIsSend));
+                MQTTAppId = IniFile.INIGetStringValue(FilePath, "MQTT", "MQTTAppId", "AKPKTSQAS46NKE4NHY");
+                MQTTAppPwd = IniFile.INIGetStringValue(FilePath, "MQTT", "MQTTAppPwd", "pwd");
 
                 // AGV配置
                 IsUseAGV = bool.Parse(IniFile.INIGetStringValue(FilePath, "AGV", "IsUseAGV", "false"));  // 是否 启用AGV

+ 72 - 1
MainForm/FaForm/Form_Home.cs

@@ -281,14 +281,85 @@ namespace MainForm
                     {
                         string addr = GlobalContext.MQTTServerHost;
                         int port = GlobalContext.MQTTServerPort;
-                        int qmttResult = XiaomiMqttClient_Extend.OpenWithMqttServer(addr, port, GlobalContext.MqttServerPath, GlobalContext.MqttServerName);
+                        //生产环境需要修改
+                        int qmttResult = XiaomiMqttClient_Extend.OpenWithMqttServer("127.0.0.1", 6666, GlobalContext.MqttServerPath, GlobalContext.MqttServerName);
                         XiaomiMqttResponse_ErrCode response_ErrCode = (XiaomiMqttResponse_ErrCode)qmttResult;
                         if (response_ErrCode == XiaomiMqttResponse_ErrCode.OK)
                         {
                             picIot.Image = imageListState.Images[1];
                             AddMessage(LogType.Info, "小米IOT MQTT初始连接成功!");
 
+                            // 设置回调函数
                             XiaomiMqttClient_Extend.SetCallbackWithDataId(CallbackWithDataId);
+                            // 配置参数
+                            XiaomiMqttLoginFunAndParam param = new XiaomiMqttLoginFunAndParam();
+                            // fds
+                            param.parameter.fds.address = "http://file-cm.be.mi.com/file/x5/file/upload/mqtt";
+                            param.parameter.fds.appId = "Auto-Soft";
+                            param.parameter.fds.appKey = "d11ec2b9-0e7a-4086-a80c-a1ec716e0896";
+                            // mes
+                            param.parameter.mes.address = GlobalContext.ServerIp;
+                            param.parameter.mes.appId = GlobalContext.MESAppId;
+                            param.parameter.mes.appKey = GlobalContext.MESAppKey;
+                            // mqtt
+                            param.parameter.mqtt.address = GlobalContext.MQTTServerHost;
+                            param.parameter.mqtt.port = GlobalContext.MQTTServerPort;
+                            param.parameter.mqtt.username = GlobalContext.MQTTAppId;
+                            param.parameter.mqtt.password = GlobalContext.MQTTAppPwd;
+                            // 设备配置
+                            param.parameter.equipment.factoryCode = GlobalContext.Factory_Code;
+                            if (GlobalContext.IsUsePLC1)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S1_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S1_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC2)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S2_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S2_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC3)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S3_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S3_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC4)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S4_1_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S4_1_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC5)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S5_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S5_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC6)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S6_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S6_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC7)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S7_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S7_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC8)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S8_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S8_station;     // ⼯位Id
+                            }
+                            if (GlobalContext.IsUsePLC9)
+                            {
+                                param.parameter.equipment.deviceCode = GlobalContext.S9_device_code;  // 装备编码
+                                param.parameter.equipment.stationCode = GlobalContext.S9_station;     // ⼯位Id
+                            }
+
+                            param.parameter.equipment.project = GlobalContext.Project_Code;
+                            param.parameter.equipment.productMode = "debug";
+                            // 
+                            param.parameter.other.logLevel = 0;
+                            param.parameter.other.LogPath = "D:\\Test";
+                            XiaomiMqttClient_Extend.ParameterConfig(param);
                         }
                         else
                         {