Commit 09f7e49d authored by leon.huang's avatar leon.huang

Modify feedback detection and all pool mappings

parent b925a8ff
......@@ -66,19 +66,19 @@ namespace ModbusDemo.Common
}
sAgainAlarmJson += JsonConvert.SerializeObject(hMqtttAlarmMap);
}
public static async Task vPublishAlarmPackageJson(IMqttClient mqttClient)
{
if (mqttClient.IsConnected == true)
{
var message = new MqttApplicationMessageBuilder()
.WithTopic(Form1.sAlarmTopic)
.WithPayload(sAlarmJson)
.WithAtMostOnceQoS()
.WithRetainFlag(false)
.Build();
await mqttClient.PublishAsync(message);
}
}
//public static async Task vPublishAlarmPackageJson(IMqttClient mqttClient)
//{
// if (mqttClient.IsConnected == true)
// {
// var message = new MqttApplicationMessageBuilder()
// .WithTopic(Form1.sAlarmTopic)
// .WithPayload(sAlarmJson)
// .WithAtMostOnceQoS()
// .WithRetainFlag(false)
// .Build();
// await mqttClient.PublishAsync(message);
// }
//}
public static void vSet_Modual_Alarm(byte byModbusID,ushort usAlarmCodde,bool bSetAlarm,byte byCommFailTimes,params string[] strChannalList)
{
for (int i = 0; i < ModualPoll.byX14pNumber;i++)
......
......@@ -50,7 +50,7 @@ namespace ModbusDemo.MessageFormat
if (exception.Source.Equals("System"))
{
Console.WriteLine(DateTime.Now.ToString() + " " + exception.Message);
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + "Modbus_ReadHoldingRegistersTask");
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + " "+slaveAddress.ToString()+ " "+startAddress.ToString() + " "+ numberOfPoints.ToString() +" "+"Modbus_ReadHoldingRegistersTask");
OutputValue = new ushort[numberOfPoints];
ModbusErrorCode = eModbusErrorCode.MB_ETIMEDOUT;
usCommunFailTimes++;
......@@ -135,7 +135,7 @@ namespace ModbusDemo.MessageFormat
if (exception.Source.Equals("System"))
{
Console.WriteLine(DateTime.Now.ToString() + " " + exception.Message);
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + "Modbus_ReadCoilsTask");
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + " "+slaveAddress.ToString()+ " "+startAddress.ToString() + " "+ numberOfPoints.ToString() +" "+"Modbus_ReadCoilsTask");
OutputValue = new bool[numberOfPoints];
ModbusErrorCode = eModbusErrorCode.MB_ETIMEDOUT;
usCommunFailTimes++;
......@@ -220,7 +220,7 @@ namespace ModbusDemo.MessageFormat
if (exception.Source.Equals("System"))
{
Console.WriteLine(DateTime.Now.ToString() + " " + exception.Message);
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + "Modbus_WriteSingleCoil");
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + " "+slaveAddress.ToString()+ " "+startAddress.ToString() + " "+" "+"Modbus_WriteSingleCoil");
ModbusErrorCode = eModbusErrorCode.MB_ETIMEDOUT;
usCommunFailTimes++;
Console.WriteLine(slaveAddress.ToString());
......@@ -303,7 +303,7 @@ namespace ModbusDemo.MessageFormat
if (exception.Source.Equals("System"))
{
Console.WriteLine(DateTime.Now.ToString() + " " + exception.Message);
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + "Modbus_WriteMultipleCoils");
Form1.totxt.Log(DateTime.Now.ToString() + " " + exception.Message + " "+slaveAddress.ToString()+ " "+startAddress.ToString() + " "+ "Modbus_WriteMultipleCoils");
ModbusErrorCode = eModbusErrorCode.MB_ETIMEDOUT;
usCommunFailTimes++;
Console.WriteLine(slaveAddress.ToString());
......
This diff is collapsed.
......@@ -43,7 +43,7 @@
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>TRACE;DEBUG;DEBUG_TEST</DefineConstants>
<DefineConstants>TRACE;DEBUG;DEBUG_TEST1</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -92,6 +92,8 @@ namespace ModbusDemo.application
public bool bHadRefControl;
public byte byResModbusID;
public string strResChannelNumber;
public int iRefAlarmCnt = 0;
public int MaxAlarmfeedback = 2;
}
public class pcMachine : pcOperation
{
......@@ -115,6 +117,10 @@ namespace ModbusDemo.application
{
bool[] bControlBit = new bool[bControldata.Count()];
bool bStatus;
for (int i = 0; i < bControldata.Count();i++)
{
bControlBit[i] = false;
}
for (int i = 0; i < bControldata.Count(); i++)
{
string str= "d"+i.ToString();
......@@ -137,6 +143,10 @@ namespace ModbusDemo.application
{
bool[] bControlBit = new bool[bControldata.Count()];
bool bStatus;
for (int i = 0; i < bControldata.Count();i++)
{
bControlBit[i] = false;
}
for (int i = 0; i < bControldata.Count(); i++)
{
string str = "d" + i.ToString();
......@@ -203,6 +213,10 @@ namespace ModbusDemo.application
bool bStatus;
bool bHadOpenButton;
bool[] bControlBit = new bool[bControldata.Count()];
for (int i = 0; i < bControldata.Count();i++)
{
bControlBit[i] = false;
}
for (int i = 0; i < bControldata.Count(); i++)
{
string str = "d" + i.ToString();
......
......@@ -26,7 +26,7 @@ namespace ModbusDemo
{
public partial class Form1 : Form
{
const bool LOCALDEBUG = true;
const bool LOCALDEBUG = false;
private bool bStart = false;
AutoResetEvent exitEvent;
private int waitTime;
......@@ -80,8 +80,7 @@ namespace ModbusDemo
int mqttPort;
string mqttUsername;
string mqttPwd;
public const string mqttSn = "66666666";
public const string mqttSn = "20193261";
public const string mqttSubscribeControlTopic = "Witium/WTDS78X/" + mqttSn + "/Ctrl";
public const string mqttBackTopic = "Witium/WTDS78X/" + mqttSn + "/Back";
public const string mqttCfgTopic = "Witium/WTDS78X/" + mqttSn + "/Config";
......@@ -96,15 +95,15 @@ namespace ModbusDemo
{
if (LOCALDEBUG == false)
{
mqttIp = "47.101.50.24";
mqttIp = "120.27.235.39";
mqttClientId = GetTimeStamp() + "sxz";
mqttPort = 1883;
mqttUsername = "root";
mqttPwd = "public";
mqttUsername = "pasture";
mqttPwd = "Pasture37774020";
}
else
{
mqttIp = "172.16.1.24";//"120.27.235.39"
mqttIp = "172.16.1.24";//""
mqttClientId = GetTimeStamp() + "sxz";
mqttPort = 1883;
mqttUsername = "pasture";
......@@ -156,6 +155,7 @@ namespace ModbusDemo
if (strJsonPackage != null)
{
await mqttClient.PublishAsync(message);
totxt.Log(strJsonPackage);
}
}
}
......@@ -169,7 +169,12 @@ namespace ModbusDemo
.WithAtLeastOnceQoS()
.WithRetainFlag(false)
.Build();
mqttClient.PublishAsync(message);
if (strJsonPackage != null)
{
mqttClient.PublishAsync(message);
totxt.Log(strJsonPackage);
}
}
}
......@@ -425,11 +430,9 @@ namespace ModbusDemo
bSetDataIsRunning = true;
await Task.Run(() =>
{
totxt.Log("开始执行");
ModualPoll.vAllNodePoll();
mqttData = ModualPoll.vRemove_Nodes_Data_String(ModualPoll.stAll_Poll_Package());
ModualPoll.vCheckAlarm_And_Send(mqttClient);
totxt.Log("执行结束");
});
bSetDataIsRunning = false;
}
......@@ -1146,7 +1149,7 @@ namespace ModbusDemo
MqttReceiveThread.Start();
MqttReceiveThread.Priority = ThreadPriority.AboveNormal;
Task task1 = Task.Factory.StartNew(async() => {await ModualControl.vControl_Res_Poll();});
Task task1 = Task.Factory.StartNew(async () => { await ModualControl.vControl_Res_Poll(); });
t_AutoControl = new Thread(AtuoControl_run)
{
IsBackground = true
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment