MakeConfig.can
Fixed bug in SysVars/Modbus.vsysvar
This commit is contained in:
		
							parent
							
								
									3e3b2340b5
								
							
						
					
					
						commit
						0c4ea8c13f
					
				
					 2 changed files with 96 additions and 98 deletions
				
			
		| 
						 | 
					@ -293,32 +293,31 @@ void GenSysvars()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	PutString("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
 | 
						PutString("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
 | 
				
			||||||
	PutString("<systemvariables version=\"4\">\n");
 | 
						PutString("<systemvariables version=\"4\">\n");
 | 
				
			||||||
	PutString("  <namespace name=\"\" comment=\"\">\n");
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	PutString("    <namespace name=\"Config\" comment=\"\">\n");
 | 
						PutString("  <namespace name=\"Config\" comment=\"\">\n");
 | 
				
			||||||
	PutString("      <namespace name=\"Modbus\" comment=\"\">\n");
 | 
						PutString("    <namespace name=\"Modbus\" comment=\"\">\n");
 | 
				
			||||||
	PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"ms\" name=\"RequestTimeout\" comment=\"The maximum duration for a Modbus-UDP/-TCP request in milliseconds. After timeout a retransmission may be started (see MaxRetransmissionCount).    Use `ping` to get the maximum latency to a device, double it and add 2-3 ms for processing.\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
						PutString("      <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"ms\" name=\"RequestTimeout\" comment=\"The maximum duration for a Modbus-UDP/-TCP request in milliseconds. After timeout a retransmission may be started (see MaxRetransmissionCount).    Use `ping` to get the maximum latency to a device, double it and add 2-3 ms for processing.\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
			PutString((word)@sysvar::Config::Modbus::RequestTimeout);
 | 
								PutString((word)@sysvar::Config::Modbus::RequestTimeout);
 | 
				
			||||||
			PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"1000\" maxValuePhys=\"1000\" />\n");
 | 
								PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"1000\" maxValuePhys=\"1000\" />\n");
 | 
				
			||||||
	PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"Port\" comment=\"\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
						PutString("      <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"Port\" comment=\"\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
			PutString((word)@sysvar::Config::Modbus::Port);
 | 
								PutString((word)@sysvar::Config::Modbus::Port);
 | 
				
			||||||
			PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"65535\" maxValuePhys=\"65535\" />\n");
 | 
								PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"65535\" maxValuePhys=\"65535\" />\n");
 | 
				
			||||||
	PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"times\" name=\"MaxTransmissionCount\" comment=\"How often a retransmission of a request will be sent until it gets discarded and an error is thrown.\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
						PutString("      <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"times\" name=\"MaxTransmissionCount\" comment=\"How often a retransmission of a request will be sent until it gets discarded and an error is thrown.\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
			PutString((byte)@sysvar::Config::Modbus::MaxTransmissionCount);
 | 
								PutString((byte)@sysvar::Config::Modbus::MaxTransmissionCount);
 | 
				
			||||||
			PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"10\" maxValuePhys=\"10\" />\n");
 | 
								PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"10\" maxValuePhys=\"10\" />\n");
 | 
				
			||||||
	PutString("      </namespace>\n");
 | 
					 | 
				
			||||||
	PutString("      <namespace name=\"TcpIp\" comment=\"\">\n");
 | 
					 | 
				
			||||||
	PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"AdapterIndex\" comment=\"Index of network interface to use\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"2\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"20\" maxValuePhys=\"20\" />\n");
 | 
					 | 
				
			||||||
	PutString("      </namespace>\n");
 | 
					 | 
				
			||||||
	PutString("    </namespace>\n");
 | 
						PutString("    </namespace>\n");
 | 
				
			||||||
 | 
						PutString("    <namespace name=\"TcpIp\" comment=\"\">\n");
 | 
				
			||||||
 | 
						PutString("      <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"AdapterIndex\" comment=\"Index of network interface to use\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"2\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"20\" maxValuePhys=\"20\" />\n");
 | 
				
			||||||
 | 
						PutString("    </namespace>\n");
 | 
				
			||||||
 | 
						PutString("  </namespace>\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	PutString("    <namespace name=\"Modbus\" comment=\"\">\n");
 | 
						PutString("  <namespace name=\"Modbus\" comment=\"\">\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (long ipN : gIpsSorted)
 | 
						for (long ipN : gIpsSorted)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		DeviceInit(gIpsSorted[ipN].Vendor);
 | 
							DeviceInit(gIpsSorted[ipN].Vendor);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		PutString("      <namespace name=\"Client_");
 | 
							PutString("    <namespace name=\"Client_");
 | 
				
			||||||
				switch (NodeNameStyle)						// Add the IP bytes depending on the style. Don't break anywhere.
 | 
									switch (NodeNameStyle)						// Add the IP bytes depending on the style. Don't break anywhere.
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
					case WholeIp:
 | 
										case WholeIp:
 | 
				
			||||||
| 
						 | 
					@ -343,40 +342,40 @@ void GenSysvars()
 | 
				
			||||||
				PutString("'\">\n");
 | 
									PutString("'\">\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// Namespace Config
 | 
							// Namespace Config
 | 
				
			||||||
		PutString("        <namespace name=\"Config\" comment=\"Configuration section for this server\">\n");
 | 
							PutString("      <namespace name=\"Config\" comment=\"Configuration section for this server\">\n");
 | 
				
			||||||
		// IP
 | 
							// IP
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"IP\" comment=\"The IP address of this server\" bitcount=\"8\" isSigned=\"true\" encoding=\"65001\" type=\"string\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"IP\" comment=\"The IP address of this server\" bitcount=\"8\" isSigned=\"true\" encoding=\"65001\" type=\"string\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].Ip);
 | 
									PutString(gIpsSorted[ipN].Ip);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// Intveral
 | 
							// Intveral
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"ms\" name=\"Interval\" comment=\"The interval with which the device will be queried\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"100\" minValue=\"10\" minValuePhys=\"10\" maxValue=\"10000\" maxValuePhys=\"10000\" />\n");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"ms\" name=\"Interval\" comment=\"The interval with which the device will be queried\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"100\" minValue=\"10\" minValuePhys=\"10\" maxValue=\"10000\" maxValuePhys=\"10000\" />\n");
 | 
				
			||||||
		PutString("        </namespace>\n");
 | 
							PutString("      </namespace>\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		//Namespace Info
 | 
							//Namespace Info
 | 
				
			||||||
		PutString("        <namespace name=\"Info\" comment=\"Some information about the device\">\n");
 | 
							PutString("      <namespace name=\"Info\" comment=\"Some information about the device\">\n");
 | 
				
			||||||
		// Vendor
 | 
							// Vendor
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"Vendor\" comment=\"The vendor of the device\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"Vendor\" comment=\"The vendor of the device\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString((byte)gIpsSorted[ipN].Vendor);
 | 
									PutString((byte)gIpsSorted[ipN].Vendor);
 | 
				
			||||||
				PutString("\">\n");
 | 
									PutString("\">\n");
 | 
				
			||||||
				PutString("            <valuetable definesMinMax=\"true\">\n");
 | 
									PutString("          <valuetable definesMinMax=\"true\">\n");
 | 
				
			||||||
				PutString("              <valuetableentry value=\"2\" description=\"BuR\" />\n");
 | 
									PutString("            <valuetableentry value=\"2\" description=\"BuR\" />\n");
 | 
				
			||||||
				PutString("              <valuetableentry value=\"23\" description=\"Wago\" />\n");
 | 
									PutString("            <valuetableentry value=\"23\" description=\"Wago\" />\n");
 | 
				
			||||||
				PutString("            </valuetable>\n");
 | 
									PutString("          </valuetable>\n");
 | 
				
			||||||
				PutString("          </variable>\n");
 | 
									PutString("        </variable>\n");
 | 
				
			||||||
		// SerialCode
 | 
							// SerialCode
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"SerialCode\" comment=\"The serial code of the server\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"SerialCode\" comment=\"The serial code of the server\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].SerialCode);
 | 
									PutString(gIpsSorted[ipN].SerialCode);
 | 
				
			||||||
				PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"10000\" maxValuePhys=\"10000\" />\n");
 | 
									PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"10000\" maxValuePhys=\"10000\" />\n");
 | 
				
			||||||
		// DeviceCode
 | 
							// DeviceCode
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"DeviceCode\" comment=\"The device code of the server\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"DeviceCode\" comment=\"The device code of the server\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceCode);
 | 
									PutString(gIpsSorted[ipN].DeviceCode);
 | 
				
			||||||
				PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"10000\" maxValuePhys=\"10000\" />\n");
 | 
									PutString("\" minValue=\"1\" minValuePhys=\"1\" maxValue=\"10000\" maxValuePhys=\"10000\" />\n");
 | 
				
			||||||
		// Modules
 | 
							// Modules
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"Modules\" comment=\"The type and number of inputs of modules that are connected to the server\" bitcount=\"8\" isSigned=\"true\" encoding=\"65001\" type=\"string\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"Modules\" comment=\"The type and number of inputs of modules that are connected to the server\" bitcount=\"8\" isSigned=\"true\" encoding=\"65001\" type=\"string\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.Modules);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.Modules);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// InputRegisters
 | 
							// InputRegisters
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"InputRegisters\" comment=\"Number of input registers\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"InputRegisters\" comment=\"Number of input registers\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.InputRegisters);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.InputRegisters);
 | 
				
			||||||
				PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
									PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
				
			||||||
				PutString((word)thisDev.MaxRegisterCount);
 | 
									PutString((word)thisDev.MaxRegisterCount);
 | 
				
			||||||
| 
						 | 
					@ -384,7 +383,7 @@ void GenSysvars()
 | 
				
			||||||
				PutString((word)thisDev.MaxRegisterCount);
 | 
									PutString((word)thisDev.MaxRegisterCount);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// InputBits
 | 
							// InputBits
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"InputBits\" comment=\"Number of input bits\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"InputBits\" comment=\"Number of input bits\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.InputBits);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.InputBits);
 | 
				
			||||||
				PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
									PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
				
			||||||
				PutString((word)thisDev.MaxBitCount);
 | 
									PutString((word)thisDev.MaxBitCount);
 | 
				
			||||||
| 
						 | 
					@ -392,7 +391,7 @@ void GenSysvars()
 | 
				
			||||||
				PutString((word)thisDev.MaxBitCount);
 | 
									PutString((word)thisDev.MaxBitCount);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// OutputRegisters
 | 
							// OutputRegisters
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"OutputRegisters\" comment=\"Number of output registers\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"OutputRegisters\" comment=\"Number of output registers\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.OutputRegisters);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.OutputRegisters);
 | 
				
			||||||
				PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
									PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
				
			||||||
				PutString((word)thisDev.MaxRegisterCount);
 | 
									PutString((word)thisDev.MaxRegisterCount);
 | 
				
			||||||
| 
						 | 
					@ -400,36 +399,36 @@ void GenSysvars()
 | 
				
			||||||
				PutString((word)thisDev.MaxRegisterCount);
 | 
									PutString((word)thisDev.MaxRegisterCount);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// OutputBits
 | 
							// OutputBits
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"OutputBits\" comment=\"Number of output bits\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"true\" valueSequence=\"false\" unit=\"\" name=\"OutputBits\" comment=\"Number of output bits\" bitcount=\"32\" isSigned=\"true\" encoding=\"65001\" type=\"int\" startValue=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.OutputBits);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.OutputBits);
 | 
				
			||||||
				PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
									PutString("\" minValue=\"0\" minValuePhys=\"0\" maxValue=\"");
 | 
				
			||||||
				PutString((word)thisDev.MaxBitCount);
 | 
									PutString((word)thisDev.MaxBitCount);
 | 
				
			||||||
				PutString("\" maxValuePhys=\"");
 | 
									PutString("\" maxValuePhys=\"");
 | 
				
			||||||
				PutString((word)thisDev.MaxBitCount);
 | 
									PutString((word)thisDev.MaxBitCount);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		PutString("        </namespace>\n");
 | 
							PutString("      </namespace>\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// Namespace Data
 | 
							// Namespace Data
 | 
				
			||||||
		PutString("        <namespace name=\"Data\" comment=\"The actual process image\">\n");
 | 
							PutString("      <namespace name=\"Data\" comment=\"The actual process image\">\n");
 | 
				
			||||||
		// InputRegisters
 | 
							// InputRegisters
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"InputRegisters\" comment=\"The values of the input registers\" bitcount=\"17\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"InputRegisters\" comment=\"The values of the input registers\" bitcount=\"17\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.InputRegisters);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.InputRegisters);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// InputBits
 | 
							// InputBits
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"InputBits\" comment=\"The state of the input bits\" bitcount=\"2\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"InputBits\" comment=\"The state of the input bits\" bitcount=\"2\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.InputBits);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.InputBits);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// OutputRegisters
 | 
							// OutputRegisters
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"OutputRegisters\" comment=\"The values of the output registers. Write here and the values will be sent to the device\" bitcount=\"17\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"OutputRegisters\" comment=\"The values of the output registers. Write here and the values will be sent to the device\" bitcount=\"17\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.OutputRegisters);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.OutputRegisters);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
		// OutputBits
 | 
							// OutputBits
 | 
				
			||||||
		PutString("          <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"OutputBits\" comment=\"The state of the output bits. Write here and the values will be sent to the device\" bitcount=\"2\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
							PutString("        <variable anlyzLocal=\"2\" readOnly=\"false\" valueSequence=\"false\" unit=\"\" name=\"OutputBits\" comment=\"The state of the output bits. Write here and the values will be sent to the device\" bitcount=\"2\" isSigned=\"true\" encoding=\"65001\" type=\"intarray\" arrayLength=\"");
 | 
				
			||||||
				PutString(gIpsSorted[ipN].DeviceIOs.OutputBits);
 | 
									PutString(gIpsSorted[ipN].DeviceIOs.OutputBits);
 | 
				
			||||||
				PutString("\" />\n");
 | 
									PutString("\" />\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		PutString("        </namespace>\n");
 | 
					 | 
				
			||||||
		PutString("      </namespace>\n");
 | 
							PutString("      </namespace>\n");
 | 
				
			||||||
 | 
							PutString("    </namespace>\n");
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	PutString("  </namespace>\n");
 | 
						PutString("  </namespace>\n");
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,70 +1,69 @@
 | 
				
			||||||
<?xml version="1.0" encoding="utf-8"?>
 | 
					<?xml version="1.0" encoding="utf-8"?>
 | 
				
			||||||
<systemvariables version="4">
 | 
					<systemvariables version="4">
 | 
				
			||||||
  <namespace name="" comment="">
 | 
					  <namespace name="Config" comment="">
 | 
				
			||||||
    <namespace name="Config" comment="">
 | 
					    <namespace name="Modbus" comment="">
 | 
				
			||||||
      <namespace name="Modbus" comment="">
 | 
					      <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="ms" name="RequestTimeout" comment="The maximum duration for a Modbus-UDP/-TCP request in milliseconds. After timeout a retransmission may be started (see MaxRetransmissionCount).    Use `ping` to get the maximum latency to a device, double it and add 2-3 ms for processing." bitcount="32" isSigned="true" encoding="65001" type="int" startValue="10" minValue="1" minValuePhys="1" maxValue="1000" maxValuePhys="1000" />
 | 
				
			||||||
        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="ms" name="RequestTimeout" comment="The maximum duration for a Modbus-UDP/-TCP request in milliseconds. After timeout a retransmission may be started (see MaxRetransmissionCount).    Use `ping` to get the maximum latency to a device, double it and add 2-3 ms for processing." bitcount="32" isSigned="true" encoding="65001" type="int" startValue="10" minValue="1" minValuePhys="1" maxValue="1000" maxValuePhys="1000" />
 | 
					      <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="Port" comment="" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="502" minValue="1" minValuePhys="1" maxValue="65535" maxValuePhys="65535" />
 | 
				
			||||||
        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="Port" comment="" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="502" minValue="1" minValuePhys="1" maxValue="65535" maxValuePhys="65535" />
 | 
					      <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="times" name="MaxTransmissionCount" comment="How often a retransmission of a request will be sent until it gets discarded and an error is thrown." bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="1" minValuePhys="1" maxValue="10" maxValuePhys="10" />
 | 
				
			||||||
        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="times" name="MaxTransmissionCount" comment="How often a retransmission of a request will be sent until it gets discarded and an error is thrown." bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="1" minValuePhys="1" maxValue="10" maxValuePhys="10" />
 | 
					    </namespace>
 | 
				
			||||||
 | 
					    <namespace name="TcpIp" comment="">
 | 
				
			||||||
 | 
					      <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="AdapterIndex" comment="Index of network interface to use" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="1" minValuePhys="1" maxValue="20" maxValuePhys="20" />
 | 
				
			||||||
 | 
					    </namespace>
 | 
				
			||||||
 | 
					  </namespace>
 | 
				
			||||||
 | 
					  <namespace name="Modbus" comment="">
 | 
				
			||||||
 | 
					    <namespace name="Client_2" comment="Server with ip address '192.168.1.2'">
 | 
				
			||||||
 | 
					      <namespace name="Config" comment="Configuration section for this server">
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="IP" comment="The IP address of this server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="192.168.1.2" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="ms" name="Interval" comment="The interval with which the device will be queried" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="100" minValue="10" minValuePhys="10" maxValue="10000" maxValuePhys="10000" />
 | 
				
			||||||
      </namespace>
 | 
					      </namespace>
 | 
				
			||||||
      <namespace name="TcpIp" comment="">
 | 
					      <namespace name="Info" comment="Some information about the device">
 | 
				
			||||||
        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="AdapterIndex" comment="Index of network interface to use" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="1" minValuePhys="1" maxValue="20" maxValuePhys="20" />
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Vendor" comment="The vendor of the device" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="23">
 | 
				
			||||||
 | 
					          <valuetable definesMinMax="true">
 | 
				
			||||||
 | 
					            <valuetableentry value="2" description="BuR" />
 | 
				
			||||||
 | 
					            <valuetableentry value="23" description="Wago" />
 | 
				
			||||||
 | 
					          </valuetable>
 | 
				
			||||||
 | 
					        </variable>
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="SerialCode" comment="The serial code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="750" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="DeviceCode" comment="The device code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="881" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Modules" comment="The type and number of inputs of modules that are connected to the server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="DI2,AI2,DO16" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputRegisters" comment="Number of input registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="0" minValuePhys="0" maxValue="256" maxValuePhys="256" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputBits" comment="Number of input bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="0" minValuePhys="0" maxValue="512" maxValuePhys="512" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputRegisters" comment="Number of output registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="0" minValuePhys="0" maxValue="256" maxValuePhys="256" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputBits" comment="Number of output bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="16" minValue="0" minValuePhys="0" maxValue="512" maxValuePhys="512" />
 | 
				
			||||||
 | 
					      </namespace>
 | 
				
			||||||
 | 
					      <namespace name="Data" comment="The actual process image">
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputRegisters" comment="The values of the input registers" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="2" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputBits" comment="The state of the input bits" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="2" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputRegisters" comment="The values of the output registers. Write here and the values will be sent to the device" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="0" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputBits" comment="The state of the output bits. Write here and the values will be sent to the device" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="16" />
 | 
				
			||||||
      </namespace>
 | 
					      </namespace>
 | 
				
			||||||
    </namespace>
 | 
					    </namespace>
 | 
				
			||||||
    <namespace name="Modbus" comment="">
 | 
					    <namespace name="Client_3" comment="Server with ip address '192.168.1.3'">
 | 
				
			||||||
      <namespace name="Client_2" comment="Server with ip address '192.168.1.2'">
 | 
					      <namespace name="Config" comment="Configuration section for this server">
 | 
				
			||||||
        <namespace name="Config" comment="Configuration section for this server">
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="IP" comment="The IP address of this server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="192.168.1.3" />
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="IP" comment="The IP address of this server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="192.168.1.2" />
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="ms" name="Interval" comment="The interval with which the device will be queried" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="100" minValue="10" minValuePhys="10" maxValue="10000" maxValuePhys="10000" />
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="ms" name="Interval" comment="The interval with which the device will be queried" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="100" minValue="10" minValuePhys="10" maxValue="10000" maxValuePhys="10000" />
 | 
					 | 
				
			||||||
        </namespace>
 | 
					 | 
				
			||||||
        <namespace name="Info" comment="Some information about the device">
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Vendor" comment="The vendor of the device" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="23">
 | 
					 | 
				
			||||||
            <valuetable definesMinMax="true">
 | 
					 | 
				
			||||||
              <valuetableentry value="2" description="BuR" />
 | 
					 | 
				
			||||||
              <valuetableentry value="23" description="Wago" />
 | 
					 | 
				
			||||||
            </valuetable>
 | 
					 | 
				
			||||||
          </variable>
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="SerialCode" comment="The serial code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="750" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="DeviceCode" comment="The device code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="881" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Modules" comment="The type and number of inputs of modules that are connected to the server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="DI2,AI2,DO16" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputRegisters" comment="Number of input registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="0" minValuePhys="0" maxValue="256" maxValuePhys="256" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputBits" comment="Number of input bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2" minValue="0" minValuePhys="0" maxValue="512" maxValuePhys="512" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputRegisters" comment="Number of output registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="0" minValuePhys="0" maxValue="256" maxValuePhys="256" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputBits" comment="Number of output bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="16" minValue="0" minValuePhys="0" maxValue="512" maxValuePhys="512" />
 | 
					 | 
				
			||||||
        </namespace>
 | 
					 | 
				
			||||||
        <namespace name="Data" comment="The actual process image">
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputRegisters" comment="The values of the input registers" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="2" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputBits" comment="The state of the input bits" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="2" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputRegisters" comment="The values of the output registers. Write here and the values will be sent to the device" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="0" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputBits" comment="The state of the output bits. Write here and the values will be sent to the device" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="16" />
 | 
					 | 
				
			||||||
        </namespace>
 | 
					 | 
				
			||||||
      </namespace>
 | 
					      </namespace>
 | 
				
			||||||
      <namespace name="Client_3" comment="Server with ip address '192.168.1.3'">
 | 
					      <namespace name="Info" comment="Some information about the device">
 | 
				
			||||||
        <namespace name="Config" comment="Configuration section for this server">
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Vendor" comment="The vendor of the device" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2">
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="IP" comment="The IP address of this server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="192.168.1.3" />
 | 
					          <valuetable definesMinMax="true">
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="ms" name="Interval" comment="The interval with which the device will be queried" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="100" minValue="10" minValuePhys="10" maxValue="10000" maxValuePhys="10000" />
 | 
					            <valuetableentry value="2" description="BuR" />
 | 
				
			||||||
        </namespace>
 | 
					            <valuetableentry value="23" description="Wago" />
 | 
				
			||||||
        <namespace name="Info" comment="Some information about the device">
 | 
					          </valuetable>
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Vendor" comment="The vendor of the device" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="2">
 | 
					        </variable>
 | 
				
			||||||
            <valuetable definesMinMax="true">
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="SerialCode" comment="The serial code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="8828" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
				
			||||||
              <valuetableentry value="2" description="BuR" />
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="DeviceCode" comment="The device code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
				
			||||||
              <valuetableentry value="23" description="Wago" />
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Modules" comment="The type and number of inputs of modules that are connected to the server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="" />
 | 
				
			||||||
            </valuetable>
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputRegisters" comment="Number of input registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="7" minValue="0" minValuePhys="0" maxValue="2048" maxValuePhys="2048" />
 | 
				
			||||||
          </variable>
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputBits" comment="Number of input bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="64" minValue="0" minValuePhys="0" maxValue="16384" maxValuePhys="16384" />
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="SerialCode" comment="The serial code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="8828" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputRegisters" comment="Number of output registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="0" minValuePhys="0" maxValue="2048" maxValuePhys="2048" />
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="DeviceCode" comment="The device code of the server" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="1" minValuePhys="1" maxValue="10000" maxValuePhys="10000" />
 | 
					        <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputBits" comment="Number of output bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="0" minValuePhys="0" maxValue="16384" maxValuePhys="16384" />
 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="Modules" comment="The type and number of inputs of modules that are connected to the server" bitcount="8" isSigned="true" encoding="65001" type="string" startValue="" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputRegisters" comment="Number of input registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="7" minValue="0" minValuePhys="0" maxValue="2048" maxValuePhys="2048" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="InputBits" comment="Number of input bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="64" minValue="0" minValuePhys="0" maxValue="16384" maxValuePhys="16384" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputRegisters" comment="Number of output registers" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="0" minValuePhys="0" maxValue="2048" maxValuePhys="2048" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="true" valueSequence="false" unit="" name="OutputBits" comment="Number of output bits" bitcount="32" isSigned="true" encoding="65001" type="int" startValue="0" minValue="0" minValuePhys="0" maxValue="16384" maxValuePhys="16384" />
 | 
					 | 
				
			||||||
        </namespace>
 | 
					 | 
				
			||||||
        <namespace name="Data" comment="The actual process image">
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputRegisters" comment="The values of the input registers" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="7" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputBits" comment="The state of the input bits" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="64" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputRegisters" comment="The values of the output registers. Write here and the values will be sent to the device" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="0" />
 | 
					 | 
				
			||||||
          <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputBits" comment="The state of the output bits. Write here and the values will be sent to the device" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="0" />
 | 
					 | 
				
			||||||
        </namespace>
 | 
					 | 
				
			||||||
      </namespace>
 | 
					      </namespace>
 | 
				
			||||||
 | 
					      <namespace name="Data" comment="The actual process image">
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputRegisters" comment="The values of the input registers" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="7" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="InputBits" comment="The state of the input bits" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="64" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputRegisters" comment="The values of the output registers. Write here and the values will be sent to the device" bitcount="17" isSigned="true" encoding="65001" type="intarray" arrayLength="0" />
 | 
				
			||||||
 | 
					        <variable anlyzLocal="2" readOnly="false" valueSequence="false" unit="" name="OutputBits" comment="The state of the output bits. Write here and the values will be sent to the device" bitcount="2" isSigned="true" encoding="65001" type="intarray" arrayLength="0" />
 | 
				
			||||||
 | 
					      </namespace>
 | 
				
			||||||
 | 
					    </namespace>
 | 
				
			||||||
  </namespace>
 | 
					  </namespace>
 | 
				
			||||||
</systemvariables>
 | 
					</systemvariables>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue