12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- using EZSockets;
- using RequestServer.HttpServer;
- using ResponseServer.HttpServer;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Net.NetworkInformation;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- namespace HttpServer.mitsubishi
- {
- class MitsubishiServer
- {
- private static string ON_LINE_STATE = "在线";
- public static Dictionary<string, MitCom> deviceList { get; set; } = new Dictionary<string, MitCom>();
-
- public static ResponseBody requestHttpServer(RequestBody requestBody)
- {
- string ip = requestBody.serverUrl;
- string port = requestBody.port;
- string fun = requestBody.type;
-
- ResponseBody responseBody = new ResponseBody();
- //先ping
- Ping pingSender = new Ping();
- PingReply reply = pingSender.Send(requestBody.serverUrl);
- if (reply.Status != IPStatus.Success)
- {
- //responseBody.result = true;
- responseBody.msg = "调用失败";
- }
- else
- {
- try
- {
- MitCom mitCom = new MitCom(requestBody.serverUrl);
- mitCom.GetSimConnect("M700M", "1", "10", ip);
- responseBody.deviceState = ON_LINE_STATE;
- if (fun == ActionTypeEnum.Collect.ToString())
- {
- int pdata;
- string loadstr;
- double pdspeed, pdspeedFM, pdspeedFS, pdspeedFE, pdspeedFE1;
-
- mitCom.GetSpindleInfo(2, 1, out pdata, out loadstr);//主轴转速
-
- // mitCom.GetSpindleInfo(3, 1, out pdata, out loadstr);//主轴负载
- //mitCom.GetSpindleInfo(4, 1, out pdata, out loadstr);//转速
- if(pdata != 0)
- {
- responseBody.actSpindle = (pdata + 300).ToString();
- responseBody.spindleMagnification = ((pdata+300) * 100 / 2000).ToString();
- }
- else
- {
- responseBody.actSpindle = "0";
- responseBody.spindleMagnification = "0";
- }
-
- mitCom.GetFeedSpeed(0, out pdspeed, "GetFeedSpeedFA"); //获取指令进给速度
- mitCom.GetFeedSpeed(3, out pdspeedFE, "GetFeedSpeedFE");//攻丝(FE);
- mitCom.GetFeedSpeed(4, out pdspeedFE1, "GetFeedSpeedFE1");//攻丝(FE);
- responseBody.actFeed = pdspeedFE.ToString();
- responseBody.feedRateOvr= ((Convert.ToInt32(pdspeedFE) / pdspeed ) * 100).ToString();
- string programNumber;
- mitCom.GetProgramNumber(out programNumber);
- responseBody.mainProg = programNumber;
- // int pvValue;
- // mitCom.GetParaValue(30, 8002, 1, 1, out pvValue);
- //mitCom.GetPLCPar(210, out pvValue);
- int runTime;
- mitCom.GetRunTime(out runTime);
- mitCom.SimClose();
- responseBody.powerOnTime = (runTime/60).ToString();
- }
- }
- catch (Exception e)
- {
- responseBody.msg = "调用失败";
- YG.Log.Instance.WriteLogAdd($"三菱连接结果-ex-->> " + e.Message);
- //deviceList.Remove(requestBody.serverUrl);
- }
-
- }
-
- return responseBody;
- }
- }
- }
|