Modifica conf SAET Forno

This commit is contained in:
Samuele E. Locatelli
2019-11-05 14:39:06 +01:00
parent f9be10d8d1
commit e58b60afcf
7 changed files with 94 additions and 69 deletions
+20 -17
View File
@@ -9,7 +9,7 @@ VENDOR=SAET
MODEL=Preriscaldo_105B08
[CNC]
IP=192.168.214.24
IP=192.168.220.24
CPUTYPE=S71500
RACK=0
SLOT=0
@@ -57,22 +57,25 @@ PZCOUNT_MODE=STD.DB1275.DBDW4
DISABLE_PZCOUNT=TRUE
ENABLE_DYN_DATA=TRUE
FORCE_DYN_DATA=TRUE
TSVC_Power_01=MAX:5
TSVC_Power_02=MAX:5
TSVC_Power_03=MAX:5
TSVC_Power_04=MAX:5
TSVC_TempPirom_01=MAX:5
TSVC_TempPirom_02=MAX:5
TSVC_TempPirom_03=MAX:5
TSVC_TempPirom_04=MAX:5
TSVC_TempCool_01=MAX:5
TSVC_TempCool_02=MAX:5
TSVC_TempCool_03=MAX:5
TSVC_TempCool_04=MAX:5
TSVC_PartStatus_01=MAX:5
TSVC_PartStatus_02=MAX:5
TSVC_PartStatus_03=MAX:5
TSVC_PartStatus_04=MAX:5
NEW_DYN_DATA=TRUE
; conf parametri memoria READ/WRITE
PARAM_CONF=VL24.json
;TSVC_Power_01=MAX:5
;TSVC_Power_02=MAX:5
;TSVC_Power_03=MAX:5
;TSVC_Power_04=MAX:5
;TSVC_TempPirom_01=MAX:5
;TSVC_TempPirom_02=MAX:5
;TSVC_TempPirom_03=MAX:5
;TSVC_TempPirom_04=MAX:5
;TSVC_TempCool_01=MAX:5
;TSVC_TempCool_02=MAX:5
;TSVC_TempCool_03=MAX:5
;TSVC_TempCool_04=MAX:5
;TSVC_PartStatus_01=MAX:5
;TSVC_PartStatus_02=MAX:5
;TSVC_PartStatus_03=MAX:5
;TSVC_PartStatus_04=MAX:5
[BRANCH]
NAME=master
+14 -38
View File
@@ -1,46 +1,22 @@
{
"mMapWrite": {
"kgParz": {
"name": "kgParz",
"tipoMem": "Int",
"index": 66,
"size": 2
"setArt": {
"name": "setArt",
"tipoMem": "String",
"index": 4,
"size": 32
},
"set_th": {
"name": "set_th",
"tipoMem": "Int",
"index": 72,
"size": 2
"setComm": {
"name": "setComm",
"tipoMem": "String",
"index": 38,
"size": 12
},
"set_c": {
"name": "set_c",
"tipoMem": "Real",
"index": 74,
"setPzComm": {
"name": "setPzComm",
"tipoMem": "Int",
"index": 52,
"size": 4
},
"aria_1": {
"name": "aria_1",
"tipoMem": "Int",
"index": 78,
"size": 2
},
"aria_2": {
"name": "aria_2",
"tipoMem": "Int",
"index": 80,
"size": 2
},
"setMmH20": {
"name": "setMmH20",
"tipoMem": "Real",
"index": 82,
"size": 4
},
"rpmci": {
"name": "rpmci",
"tipoMem": "Int",
"index": 86,
"size": 2
}
},
"mMapRead": {
+3
View File
@@ -234,6 +234,9 @@
<None Include="DATA\CONF\3015.ini">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="DATA\CONF\VL24.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="DATA\CONF\SIMUL_04.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
+34 -7
View File
@@ -76,7 +76,7 @@ namespace IOB_WIN
if (writePre)
{
// MAX LUN
stringPar[1] = 20;
stringPar[1] = (byte)totLen;
// LUNGH STRING
stringPar[0] = (byte)byteLen;
Buffer.BlockCopy(stringPar, 0, MemBlock, startPos, shiftStrByte);
@@ -110,19 +110,19 @@ namespace IOB_WIN
}
}
/// <summary>
/// Salvo in memblock il valore stringa indicato con formattazione siemens
/// Salvo in memblock il valore Int indicato con formattazione siemens
/// </summary>
/// <param name="MemBlock">Blocco memoria come byte[] dove scrivere</param>
/// <param name="stringValue">Valore scrivere</param>
/// <param name="currValue">Valore da scrivere</param>
/// <param name="startPos">Posizione inizio scrittura</param>
public void saveIntOnMemBlock(ref byte[] MemBlock, string stringValue, int startPos)
public void saveIntOnMemBlock(ref byte[] MemBlock, string currValue, int startPos)
{
if (currProdData.ContainsKey(stringValue))
if (currProdData.ContainsKey(currValue))
{
try
{
byte[] stringPar = new byte[2];
string valore = currProdData[stringValue];
string valore = currProdData[currValue];
short valInt = 0;
short.TryParse(valore, out valInt);
byte[] strByte = S7.Net.Types.Int.ToByteArray(valInt);
@@ -132,7 +132,34 @@ namespace IOB_WIN
}
catch (Exception exc)
{
lgError($"Errore in gestione scrittura {stringValue}{Environment.NewLine}{exc}");
lgError($"Errore in gestione scrittura {currValue}{Environment.NewLine}{exc}");
}
}
}
/// <summary>
/// Salvo in memblock il valore DInt indicato con formattazione siemens
/// </summary>
/// <param name="MemBlock">Blocco memoria come byte[] dove scrivere</param>
/// <param name="currValue">Valore da scrivere</param>
/// <param name="startPos">Posizione inizio scrittura</param>
public void saveDIntOnMemBlock(ref byte[] MemBlock, string currValue, int startPos)
{
if (currProdData.ContainsKey(currValue))
{
try
{
byte[] stringPar = new byte[4];
string valore = currProdData[currValue];
int valInt = 0;
int.TryParse(valore, out valInt);
byte[] strByte = S7.Net.Types.DInt.ToByteArray(valInt);
int byteLen = 4;
Buffer.BlockCopy(strByte, 0, MemBlock, startPos, byteLen);
var verifica = S7.Net.Types.String.FromByteArray(MemBlock);
}
catch (Exception exc)
{
lgError($"Errore in gestione scrittura {currValue}{Environment.NewLine}{exc}");
}
}
}
+1 -2
View File
@@ -97,8 +97,7 @@ namespace IOB_WIN
case taskType.setParameter:
// deserializzo il valore del parametro in primis
var paramData = JsonConvert.DeserializeObject<dataConf>(item.Value);
// !!!FIXME!!! fare!!!
break;
case taskType.sendWatchDogMes2Plc:
//// compogo in byte... primo bit è setup/run, ultimo è watchdog
+21 -4
View File
@@ -1,4 +1,5 @@
using IOB_UT;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -146,8 +147,8 @@ namespace IOB_WIN
Dictionary<string, string> taskDone = new Dictionary<string, string>();
bool taskOk = false;
string taskVal = "";
// inizio con 1 byte VUOTO
byte[] MemBlock = new byte[2];
// inizio VUOTO
byte[] MemBlock = new byte[parametri.memSizeWrite];
// cerco task specifici: se ho startSetup --> imposto bit DBB701.DBB0.4
foreach (var item in task2exe)
@@ -164,13 +165,22 @@ namespace IOB_WIN
case taskType.fixStopSetup:
case taskType.forceResetPzCount:
case taskType.forceSetPzCount:
case taskType.setArt:
case taskType.setComm:
case taskType.setProg:
case taskType.startSetup:
case taskType.stopSetup:
taskVal = $"taskReq: {tName} | key: {item.Key} | val: {item.Value} | SKIPPED | NO EXEC";
break;
case taskType.setArt:
case taskType.setComm:
case taskType.setPzComm:
// imposto i valori...
taskVal = item.Value;
break;
case taskType.setParameter:
// deserializzo il valore del parametro in primis
var paramData = JsonConvert.DeserializeObject<dataConf>(item.Value);
// !!!FIXME!!! fare!!!
break;
case taskType.sendWatchDogMes2Plc:
MemBlock[1] = (byte)counterMes2Plc;
MemBlock[0] = (byte)(counterMes2Plc >> 8);
@@ -183,6 +193,13 @@ namespace IOB_WIN
// aggiungo task!
taskDone.Add(item.Key, taskVal);
}
// controllo SE HO da scrivere articolo/commessa/programma
saveStringOnMemBlock(ref MemBlock, "setArt", 4, 32, true);
saveStringOnMemBlock(ref MemBlock, "setComm", 38, 12, true);
saveDIntOnMemBlock(ref MemBlock, "setPzComm", 52);
// scrivo comunque!
taskOk = S7WriteBB(ref MemBlock);
Vendored
+1 -1
View File
@@ -16,7 +16,7 @@ pipeline {
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
script {
withEnv(['NEXT_BUILD_NUMBER=492']) {
withEnv(['NEXT_BUILD_NUMBER=493']) {
// env.versionNumber = VersionNumber(versionNumberString : '2.3.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true)
env.versionNumber = VersionNumber(versionNumberString : '2.3.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
env.APP_NAME = 'MAPO-IOB-WIN'