| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- <%@ WebHandler Language="C#" Class="test" %>
- using System;
- using System.Web;
- using Curtain.Net.Sockets.PLC;
- using DK.XuWei.WebMes;
- using Curtain.Net.Sockets.PLC.Model.Siemens;
- using Newtonsoft.Json.Linq;
- public class test : IHttpHandler
- {
- public void ProcessRequest(HttpContext context)
- {
- context.Response.ContentType = "text/plain";
- //context.Response.Write(plcData(context.Request["ip"].ToString(), context.Request["db"].ToString()));
- dryData data = new dryData();
- data = plcDataDry("172.18.40.54");
- context.Response.Write("运行:" + data.d1 + " 就绪:" + data.d2 + " 待机:" + data.d3 + " 故障:" + data.d0);
- }
- public string plcData(string ip,string db)
- {
- PLCResult<Int16> result = SiemensS7.PlcRead<Int16>(ip, db);
- return result.Data.ToString();
- }
- //只用于烘干房 M0.0=1 运行 M0.4=1 就绪 M0.1=1 停止 Q1.0=1 故障
- public dryData plcDataDry(string ip)
- {
- SocketClient<SiemensS7_200SmartModel> plc = null;
- plc = new SocketClient<SiemensS7_200SmartModel>();
- plc.Connect(ip, 102);
- dryData data = new dryData();
- //读取运行码
- PLCResult<Int16> resultRead1 = plc.Read<Int16>("M", "0.0");
- data.d1 = resultRead1.Data.ToString();
- if (data.d1 != "0") data.d = data.d1;
- //读取就绪码
- PLCResult<Int16> resultRead2 = plc.Read<Int16>("M", "0.4");
- data.d2 = resultRead2.Data.ToString();
- if (data.d2 != "0") data.d = data.d2;
- //读取待机码
- PLCResult<Int16> resultRead3 = plc.Read<Int16>("M", "0.1");
- data.d3 = resultRead3.Data.ToString();
- if (data.d3 != "0") data.d = data.d3;
- //读取故障码
- PLCResult<Int16> resultRead0 = plc.Read<Int16>("Q", "1.0");
- data.d0 = resultRead0.Data.ToString();
- if (data.d0 != "0") data.d = data.d0;
- plc.Close();
- plc.Dispose();
- return data;
- }
- public class dryData
- {
- public string d = "0";
- public string d1 = "0";
- public string d2 = "0";
- public string d3 = "0";
- public string d0 = "0";
- }
- public bool IsReusable
- {
- get
- {
- return false;
- }
- }
- }
|