ソースを参照

plc报警数据采集

oyq28 6 ヶ月 前
コミット
9a4c69da2b

+ 13 - 1
IMCS_CCS/Controllers/JobTasksController.cs

@@ -1,7 +1,8 @@
 using IMCS.CCS.Entitys;
 using IMCS.CCS.Service;
 using IMCS.CCS.Services; 
-using Microsoft.AspNetCore.Mvc;  
+using Microsoft.AspNetCore.Mvc;
+using System.Collections.Generic;
 using System.Linq;
 using System.Threading.Tasks;
 
@@ -149,5 +150,16 @@ namespace IMCS.CCS.Controllers
         {
             return await _taskJobService.MonitorEquipmentStatusJob2();
         }
+
+
+        /// <summary>
+        /// 采集数据S7报警数据
+        /// </summary> 
+        /// <returns></returns>
+        [HttpPost("DataCollectS7JobWarn")]
+        public async Task<List<string>> DataCollectS7JobWarn()
+        {
+            return await _taskJobService.DataCollectS7JobWarn();
+        }
     }
 }

+ 7 - 0
IMCS_CCS/Service/ITaskJobService.cs

@@ -79,5 +79,12 @@ namespace IMCS.CCS.Service
         /// </summary>
         /// <returns></returns>
         Task<string> MonitorEquipmentStatusJob2();
+
+
+        /// <summary>
+        /// S7采集报警数据
+        /// </summary>
+        /// <returns></returns>
+        Task<List<string>> DataCollectS7JobWarn();
     }
 }

+ 42 - 0
IMCS_CCS/Service/Impl/TaskJobService.cs

@@ -25,6 +25,7 @@ using System.Text;
 using IMCS.CCS.Entitys.Dto;
 using System.IO.Pipelines;
 using Microsoft.IdentityModel.Tokens;
+using StackExchange.Redis;
 
 namespace IMCS.CCS.Service.Impl
 {
@@ -83,6 +84,7 @@ namespace IMCS.CCS.Service.Impl
 
         private string imcs_redis_key = "IMCS_CCS:";
 
+
         private string RFID = "RFID:";
 
         private string LOG_RESOURCE_STATE = "设备状态";
@@ -1669,8 +1671,10 @@ namespace IMCS.CCS.Service.Impl
             }catch (Exception ex)
             {
                 Log.Instance.WriteLogAdd("心跳写入异常" + ex.Message, LOG_HEART_PLC);
+                Console.WriteLine("心跳写入异常");
                 return "心跳写入异常" + ex.Message;
             }
+            Console.WriteLine("心跳写入成功");
             return "心跳写入成功";
         }
 
@@ -1773,5 +1777,43 @@ namespace IMCS.CCS.Service.Impl
                 return "MonitorEquipmentStatusJob : " + ex.Message;
             }
         }
+
+
+
+
+        /// <summary>
+        /// 采集数据S7报警数据
+        /// </summary> 
+        /// <returns></returns>
+        public async Task<List<string>> DataCollectS7JobWarn()
+        {
+            
+            var data = await _redisService.Database.StringGetAsync("PLC_COSTOM_ADDRESS");
+            List<string> returnList=new List<string>();
+            List<string> dataList = data.ToString().Split(',').ToList();
+            /*SiemensS7Net s7 = DevicePlcS7.SiemensS7("10.161.30.248");
+            OperateResult ConnectionResult = s7.ConnectServer();
+            if (!ConnectionResult.IsSuccess)
+            {
+                    
+                s7.ConnectClose();
+                Log.Instance.WriteLogAdd("S7采集异常,plc连不上==>10.161.30.248"  , LOG_TITLE_S7);
+                return null;
+            }
+            else
+            { 
+                foreach(string st in dataList)
+                {
+                    string operateResult = s7.ReadBool(st).Content.ToString();
+                    returnList.Add(operateResult);
+                }
+
+            }
+            s7.ConnectClose();*/
+            returnList.Add("True");
+            return returnList;
+
+
+        }
     }
 }