Merge remote-tracking branch 'origin/Thermocamera' into develop
This commit is contained in:
@@ -8,9 +8,10 @@
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>Client.Chromium</RootNamespace>
|
||||
<AssemblyName>Client.Chromium</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
|
||||
@@ -128,7 +128,8 @@
|
||||
<HintPath>..\packages\Microsoft.WindowsAPICodePack-Shell.1.1.0.0\lib\Microsoft.WindowsAPICodePack.ShellExtensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
|
||||
@@ -172,6 +172,7 @@ namespace Active_Client
|
||||
e.CommandLine.AppendSwitch("--enable-usermedia-screen-capture");
|
||||
e.CommandLine.AppendSwitch("--no-proxy-server");
|
||||
e.CommandLine.AppendSwitch("--ignore-certificate-errors-spki-list");
|
||||
e.CommandLine.AppendSwitch("--ignore-certificate-errors");
|
||||
e.CommandLine.AppendSwitch("--ignore-ssl-errors");
|
||||
}
|
||||
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
<package id="MetroModernUI" version="1.4.0.0" targetFramework="net462" />
|
||||
<package id="Microsoft.WindowsAPICodePack-Core" version="1.1.0.2" targetFramework="net462" />
|
||||
<package id="Microsoft.WindowsAPICodePack-Shell" version="1.1.0.0" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.1" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
</packages>
|
||||
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("THermo.Active.Thermocamera")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("THermo.Active.Thermocamera")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2020")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("8d8ec91a-3a15-4a1d-951b-a35e7068debd")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
@@ -0,0 +1,49 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>THermo.Active.Thermocamera</RootNamespace>
|
||||
<AssemblyName>THermo.Active.Thermocamera</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="WindowsBase" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="ThermocameraComunicator.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
@@ -0,0 +1,181 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Globalization;
|
||||
using System.IO.MemoryMappedFiles;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
|
||||
namespace Thermo.Active.Thermocamera
|
||||
{
|
||||
|
||||
public class ThermocameraComunicator
|
||||
{
|
||||
const string MMF_REQ = "CMS_MMF_REQ";
|
||||
const string MMF_RES = "CMS_MMF_RES";
|
||||
const int NUM_CHAR_MSG = 5000;
|
||||
const int REQ = 1;
|
||||
const int RES = 2;
|
||||
const int DIM_MMF = NUM_CHAR_MSG * 2 + 2;
|
||||
|
||||
MemoryMappedFile mmf;
|
||||
MemoryMappedFile mmfRes;
|
||||
MemoryMappedViewAccessor accessor;
|
||||
MemoryMappedViewAccessor accessorResp;
|
||||
|
||||
private static ThermocameraComunicator _instance;
|
||||
|
||||
public static ThermocameraComunicator getInstance()
|
||||
{
|
||||
if (_instance == null)
|
||||
_instance = new ThermocameraComunicator();
|
||||
return _instance;
|
||||
}
|
||||
|
||||
private ThermocameraComunicator()
|
||||
{
|
||||
mmf = MemoryMappedFile.CreateOrOpen(MMF_REQ, DIM_MMF);
|
||||
mmfRes = MemoryMappedFile.CreateOrOpen(MMF_RES, DIM_MMF);
|
||||
accessor = mmf.CreateViewAccessor();
|
||||
accessorResp = mmfRes.CreateViewAccessor();
|
||||
}
|
||||
|
||||
public bool takePicture(int timeoutMS)
|
||||
{
|
||||
const string tempCommand = "SetParameter_Integer";
|
||||
string response;
|
||||
|
||||
if (!writeCommand(accessor, tempCommand + ";TAKE_IMAGE;"))
|
||||
return false;
|
||||
if (!readCommand(accessorResp, tempCommand, timeoutMS, out response))
|
||||
return false;
|
||||
if (response != "True;")
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
public bool showWindow(int x, int y, int dimX, int dimY, int timeoutMS)
|
||||
{
|
||||
const string tempCommand = "ShowWindow";
|
||||
string response;
|
||||
if (!writeCommand(accessor, tempCommand + ";" + x + ";" + y + ";" + dimX + ";" + dimY + ";"))
|
||||
return false;
|
||||
if (!readCommand(accessorResp, tempCommand, timeoutMS, out response))
|
||||
return false;
|
||||
if (response != "1;")
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
public bool readTemperature(int x, int y, int timeoutMS, out float temp)
|
||||
{
|
||||
temp = 0f;
|
||||
const string tempCommand = "GetTemperature";
|
||||
string response;
|
||||
|
||||
if (!writeCommand(accessor, tempCommand + ";" + x + ";" + y + ";"))
|
||||
return false;
|
||||
if (!readCommand(accessorResp, tempCommand, timeoutMS, out response))
|
||||
return false;
|
||||
response = response.TrimEnd(';');
|
||||
if (!float.TryParse(response, NumberStyles.Float, CultureInfo.InvariantCulture, out temp))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
public bool readMultiTemperatures(IEnumerable<Point> points, int timeoutMS, out List<float> temp)
|
||||
{
|
||||
temp = new List<float>();
|
||||
const string tempCommand = "GetTemperature";
|
||||
string response;
|
||||
|
||||
string cmdRead = "";
|
||||
foreach (Point point in points)
|
||||
{
|
||||
cmdRead += point.X + ";" + point.Y + ";";
|
||||
}
|
||||
|
||||
if (!writeCommand(accessor, tempCommand + ";" + cmdRead))
|
||||
return false;
|
||||
if (!readCommand(accessorResp, tempCommand, timeoutMS, out response))
|
||||
return false;
|
||||
|
||||
string[] respSplitted = response.Split(';');
|
||||
foreach (string str in respSplitted)
|
||||
{
|
||||
float tmp;
|
||||
if (str.Trim() != "")
|
||||
{
|
||||
if (float.TryParse(str.Trim(), NumberStyles.Float, CultureInfo.InvariantCulture, out tmp))
|
||||
temp.Add(tmp);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
private bool writeCommand(MemoryMappedViewAccessor accessor, string command)
|
||||
{
|
||||
char[] bufferToClean = Enumerable.Repeat('\0', NUM_CHAR_MSG).ToArray();
|
||||
accessor.WriteArray(0, bufferToClean, 0, bufferToClean.Length);
|
||||
|
||||
char[] bufferToWrite = command.ToCharArray();
|
||||
|
||||
//Write Pre-Command
|
||||
accessor.Write(0, REQ);
|
||||
|
||||
//Write Command
|
||||
accessor.WriteArray(1, bufferToWrite, 0, bufferToWrite.Length);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
private bool readCommand(MemoryMappedViewAccessor accessor, string command, int timeoutMS, out string resp)
|
||||
{
|
||||
resp = "";
|
||||
byte response = 0;
|
||||
int totalCycle = 0;
|
||||
int sleepTime = 500;
|
||||
byte[] bytesToRead = new byte[NUM_CHAR_MSG];
|
||||
|
||||
if (!accessor.CanRead) return false;
|
||||
|
||||
//Read Pre-Command
|
||||
while (response != RES)
|
||||
{
|
||||
totalCycle++;
|
||||
accessor.Read(0, out response);
|
||||
if (response != RES)
|
||||
Thread.Sleep(sleepTime);
|
||||
if (totalCycle * sleepTime > timeoutMS)
|
||||
return false;
|
||||
}
|
||||
|
||||
//Read Command
|
||||
accessor.ReadArray(1, bytesToRead, 0, bytesToRead.Length);
|
||||
|
||||
//Elaborate String
|
||||
string textRecieved = Encoding.UTF8.GetString(bytesToRead);
|
||||
if (textRecieved == null) return false;
|
||||
|
||||
string[] textSplitted = textRecieved.Replace("\0", string.Empty).Split(';');
|
||||
if (textSplitted.Length < 2) return false;
|
||||
if (textSplitted[0] != command) return false;
|
||||
|
||||
char[] bufferToClean = Enumerable.Repeat('\0', NUM_CHAR_MSG).ToArray();
|
||||
accessor.WriteArray(0, bufferToClean, 0, bufferToClean.Length);
|
||||
|
||||
//Output
|
||||
textSplitted = textSplitted.Skip(1).ToArray();
|
||||
resp = String.Join(";", textSplitted);
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Thermo.Active.Model.DTOModels.AlarmModels;
|
||||
using YamlDotNet.Core.Tokens;
|
||||
|
||||
namespace Thermo.Active.CmsConnectGateway
|
||||
{
|
||||
public static class CMSConnectConstants
|
||||
{
|
||||
public const string IP_ADDR_LABEL = "IP_ADDRESS=";
|
||||
public const string GATEWAY_LABEL = "DEFAULT_GATEWAY=";
|
||||
public const string DNSIP_LABEL = "DNS_IP=";
|
||||
public const string DNSPREFIX_LABEL = "DNS_SUFFIX=";
|
||||
public const string PROXY_ADDR_LABEL = "PROXY=";
|
||||
public const string NO_PROXY_LABEL = "NO_PROXY=";
|
||||
public const string UNDEF_VALUE = "none";
|
||||
public const string CONNECTION_OK_VALUE = "OK";
|
||||
public const string CONNECTION_NOWEB_VALUE = "NO_WEB";
|
||||
public const string CONNECTION_NOPORT_VALUE = "NO_PORTS";
|
||||
|
||||
public const int REBOOT_MINUTES_MAX = 2;
|
||||
public const int REBOOT_MSWAIT_BETWEEN_OP = 500;
|
||||
|
||||
public const string ADMIN_COMMAND = "sudo ";
|
||||
public const string SSH_SET_PROXY_COMMAND = ADMIN_COMMAND + "./setProxy.sh ";
|
||||
public const string SSH_SET_DNSIP_COMMAND = ADMIN_COMMAND + "./setDnsIp.sh ";
|
||||
public const string SSH_SET_DNSSUFFIX_COMMAND = ADMIN_COMMAND + "./setDnsSuffix.sh ";
|
||||
public const string SSH_SET_NETWORK_COMMAND = ADMIN_COMMAND + "./setNetwork.sh ";
|
||||
public const string SSH_GET_NETWORK_COMMAND = ADMIN_COMMAND + "./getNetworkConfiguration.sh ";
|
||||
public const string SSH_GET_PROXY_COMMAND = ADMIN_COMMAND + "./getProxyConfiguration.sh ";
|
||||
public const string SSH_TEST_CONNECTION_COMMAND = ADMIN_COMMAND + "./testConnection.sh ";
|
||||
public const string SSH_GW_REBOOT_COMMAND = ADMIN_COMMAND + "./gatewayReboot.sh ";
|
||||
|
||||
public const string YAML_CONFIG_FILE = "./example-mconnect.conf.yaml";
|
||||
|
||||
|
||||
public const string CONNECT_UNDEFINED = "UNDEFINED";
|
||||
public const string CONNECT_MACHINE_STAUTS_EXE = "EXE";
|
||||
public const string CONNECT_MACHINE_STAUTS_READY = "READY";
|
||||
public const string CONNECT_MACHINE_STAUTS_SETUP = "SETUP";
|
||||
public const string CONNECT_MACHINE_STAUTS_FAIL = "FAIL";
|
||||
public const string CONNECT_MACHINE_STAUTS_POWEROFF = "POWER_OFF";
|
||||
|
||||
public const string CONNECT_PROC_STAUTS_EXE = "EXE";
|
||||
public const string CONNECT_PROC_STAUTS_READY = "READY";
|
||||
public const string CONNECT_PROC_STAUTS_HOLD = "HOLD";
|
||||
public const string CONNECT_PROC_STAUTS_FHOLD = "FEED_HOLD";
|
||||
public const string CONNECT_PROC_STAUTS_OSTOP = "OPTIONAL_STOP";
|
||||
public const string CONNECT_PROC_STAUTS_PSTOPPED = "PROGRAM_STOPPED";
|
||||
|
||||
public const string CONNECT_PROC_MODE_AUTO = "AUTOMATIC";
|
||||
public const string CONNECT_PROC_MODE_EDIT = "EDIT";
|
||||
public const string CONNECT_PROC_MODE_JOG = "MANUAL_JOG";
|
||||
|
||||
public static string ConvertThermoToConnectStatus(int status)
|
||||
{
|
||||
switch (status)
|
||||
{
|
||||
case 0: return CONNECT_MACHINE_STAUTS_POWEROFF;
|
||||
case 1: return CONNECT_MACHINE_STAUTS_READY;
|
||||
case 2: return CONNECT_MACHINE_STAUTS_EXE;
|
||||
case 4: return CONNECT_MACHINE_STAUTS_SETUP;
|
||||
case 8: return CONNECT_MACHINE_STAUTS_FAIL;
|
||||
case 16: return CONNECT_MACHINE_STAUTS_READY;
|
||||
case 128: return CONNECT_MACHINE_STAUTS_FAIL;
|
||||
default: return CONNECT_UNDEFINED;
|
||||
}
|
||||
}
|
||||
|
||||
public static string ConvertThermoToConnectProcessStatus(int status)
|
||||
{
|
||||
switch (status)
|
||||
{
|
||||
case 0: return CONNECT_PROC_STAUTS_READY;
|
||||
case 1: return CONNECT_PROC_STAUTS_READY;
|
||||
case 2: return CONNECT_PROC_STAUTS_EXE;
|
||||
case 4: return CONNECT_PROC_STAUTS_FHOLD;
|
||||
case 8: return CONNECT_PROC_STAUTS_OSTOP;
|
||||
case 16: return CONNECT_PROC_STAUTS_HOLD;
|
||||
case 128: return CONNECT_PROC_STAUTS_HOLD;
|
||||
default: return CONNECT_UNDEFINED;
|
||||
}
|
||||
}
|
||||
public static string ConvertThermoToConnectProcessMode(int status)
|
||||
{
|
||||
switch (status)
|
||||
{
|
||||
case 1: return CONNECT_PROC_MODE_EDIT;
|
||||
case 2: return CONNECT_PROC_MODE_AUTO;
|
||||
case 4: return CONNECT_PROC_MODE_JOG;
|
||||
default: return CONNECT_UNDEFINED;
|
||||
}
|
||||
}
|
||||
|
||||
public static bool ConvertThermoToConnectPower(int status)
|
||||
{
|
||||
switch (status)
|
||||
{
|
||||
case 0: return false;
|
||||
default: return true;
|
||||
}
|
||||
}
|
||||
public static bool ConvertThermoToConnectMachineAlarm(DTOAlarmsModel alarms)
|
||||
{
|
||||
return alarms.PlcAlarms.Count > 0;
|
||||
}
|
||||
|
||||
public static string ConvertThermoToConnectAlarms(DTOAlarmsModel alarms)
|
||||
{
|
||||
List<string> alms = new List<string>();
|
||||
foreach (DTOPlcAlarmModel alarm in alarms.PlcAlarms) {
|
||||
int severity = alarm.IsWarning ? 500 : 900;
|
||||
alms.Add(alarm.Id.ToString("D6") + "|" + severity);
|
||||
}
|
||||
return string.Join(",", alms);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
---------------------------------------------------------------
|
||||
------- MConnect Client SDK -------
|
||||
---------------------------------------------------------------
|
||||
|
||||
Libreria di utility per connessione con il cloud di Maestro Connect.
|
||||
|
||||
Le dipendenze inserite sono necessarie al funzionamento dell'SDK.
|
||||
|
||||
Sono inclusi a titolo di esempio due files:
|
||||
* example-mconnect.conf.yaml
|
||||
* example-NLog.config
|
||||
|
||||
Attenzione a configurare correttamente il file NLog.xml includendo il rule per la classe, vedere ad esempio il file example-NLog.config allegato.
|
||||
@@ -9,8 +9,9 @@
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Thermo.Active.CmsConnectGateway</RootNamespace>
|
||||
<AssemblyName>Thermo.Active.CmsConnectGateway</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@@ -30,23 +31,84 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="MConnectSDK, Version=1.2.2007.218, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MConnectSDK.1.2.2007.218\lib\net462\MConnectSDK.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.1.1.1\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NLog.4.6.7\lib\net45\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Pipelines.Sockets.Unofficial, Version=1.0.0.0, Culture=neutral, PublicKeyToken=42ea0a778e13fbe2, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Pipelines.Sockets.Unofficial.2.1.16\lib\net461\Pipelines.Sockets.Unofficial.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Renci.SshNet, Version=2016.1.0.0, Culture=neutral, PublicKeyToken=1cee9f8bde3db106, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SSH.NET.2016.1.0\lib\net40\Renci.SshNet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Net.IPNetwork, Version=2.4.0.126, Culture=neutral, PublicKeyToken=717343cc2c25edcf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\IPNetwork2.2.4.0.126\lib\net46\System.Net.IPNetwork.dll</HintPath>
|
||||
<Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\StackExchange.Redis.2.1.58\lib\net461\StackExchange.Redis.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Diagnostics.PerformanceCounter, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Diagnostics.PerformanceCounter.4.7.0\lib\net461\System.Diagnostics.PerformanceCounter.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.IO.Compression, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.IO.Pipelines, Version=4.0.2.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Pipelines.4.7.3\lib\net461\System.IO.Pipelines.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Net.IPNetwork, Version=2.5.226.0, Culture=neutral, PublicKeyToken=717343cc2c25edcf, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\IPNetwork2.2.5.226\lib\net46\System.Net.IPNetwork.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.Threading.Channels, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Channels.4.7.1\lib\net461\System.Threading.Channels.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="YamlDotNet, Version=7.0.0.0, Culture=neutral, PublicKeyToken=ec19458f3c15af5e, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\YamlDotNet.7.0.0\lib\net45\YamlDotNet.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Builders\iBuilder.cs" />
|
||||
<Compile Include="CMSConnectConstants.cs" />
|
||||
<Compile Include="GatewayAdapter.cs" />
|
||||
<Compile Include="Events\GatewayRebootEventHandlerArgs.cs" />
|
||||
<Compile Include="Exceptions\GatewayException.cs" />
|
||||
@@ -56,8 +118,23 @@
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="example-mconnect.conf.yaml" />
|
||||
<None Include="example-NLog.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<ItemGroup>
|
||||
<Content Include="README.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\cms_core_library\CMS_CORE_Library\CMS_CORE_Library.csproj">
|
||||
<Project>{4abf8eef-2b23-483e-acdc-53214fe28681}</Project>
|
||||
<Name>CMS_CORE_Library</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Thermo.Active.Model\Thermo.Active.Model.csproj">
|
||||
<Project>{631375dd-06d3-49bb-8130-d9ddb34c429d}</Project>
|
||||
<Name>Thermo.Active.Model</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.2" newVersion="4.0.2.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -0,0 +1,31 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
|
||||
autoReload="true"
|
||||
throwExceptions="false"
|
||||
internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log" >
|
||||
|
||||
|
||||
<!-- optional, add some variabeles
|
||||
https://github.com/nlog/NLog/wiki/Configuration-file#variables
|
||||
-->
|
||||
<variable name="myvar" value="myvalue"/>
|
||||
|
||||
<!--
|
||||
See https://github.com/nlog/nlog/wiki/Configuration-file
|
||||
for information on customizing logging rules and outputs.
|
||||
-->
|
||||
|
||||
<targets async="true">
|
||||
<target xsi:type="File"
|
||||
name="mconnect_sdk"
|
||||
fileName="${basedir}/logs/${shortdate}.log"
|
||||
layout="${longdate} ${uppercase:${level}} ${message}"
|
||||
/>
|
||||
</targets>
|
||||
|
||||
<rules>
|
||||
<logger name="MConnectSDK.*" minlevel="Debug" writeTo="mconnect_sdk" />
|
||||
</rules>
|
||||
</nlog>
|
||||
@@ -0,0 +1,14 @@
|
||||
#File di conf per MConnectClientSDK
|
||||
conf:
|
||||
Client_ID: "test"
|
||||
MachineID: "cjpjwuas400cb0slxs5zfj4yh"
|
||||
PingTarget: "stg.api.maestroconnect.scmgroup.com"
|
||||
AliveTarget: "https://stg.api.maestroconnect.scmgroup.com/health"
|
||||
BaseUrl: "https://stg.api.maestroconnect.scmgroup.com/api"
|
||||
UploadUrl: "https://stg.api.maestroconnect.scmgroup.com/storage-api/backups"
|
||||
WebAppUrl: "https://stg.maestroconnect.scmgroup.com/settings/machine-activation?user_code={0}&machine_id={1}"
|
||||
MemoryLayer:
|
||||
Redis:
|
||||
ConnectionString: "127.0.0.1,abortConnect=false,ssl=false"
|
||||
DbIndex: 1
|
||||
Module: "MCC"
|
||||
@@ -1,5 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="IPNetwork2" version="2.4.0.126" targetFramework="net461" />
|
||||
<package id="IPNetwork2" version="2.5.226" targetFramework="net462" />
|
||||
<package id="MConnectSDK" version="1.2.2007.218" targetFramework="net462" />
|
||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="1.1.1" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
<package id="NLog" version="4.6.7" targetFramework="net462" />
|
||||
<package id="Pipelines.Sockets.Unofficial" version="2.1.16" targetFramework="net462" />
|
||||
<package id="SSH.NET" version="2016.1.0" targetFramework="net461" />
|
||||
<package id="StackExchange.Redis" version="2.1.58" targetFramework="net462" />
|
||||
<package id="System.Buffers" version="4.5.1" targetFramework="net462" />
|
||||
<package id="System.Diagnostics.PerformanceCounter" version="4.7.0" targetFramework="net462" />
|
||||
<package id="System.IO.Compression" version="4.3.0" targetFramework="net462" />
|
||||
<package id="System.IO.Pipelines" version="4.7.3" targetFramework="net462" />
|
||||
<package id="System.Memory" version="4.5.4" targetFramework="net462" />
|
||||
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net462" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.7.1" targetFramework="net462" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net462" />
|
||||
<package id="System.Threading.Channels" version="4.7.1" targetFramework="net462" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
|
||||
<package id="YamlDotNet" version="7.0.0" targetFramework="net462" />
|
||||
</packages>
|
||||
@@ -0,0 +1,112 @@
|
||||
<ModelDesign>
|
||||
<Machine>
|
||||
<Property SymbolicName="Model" BrowseName="Model" DataType="ua:String" ValueRank="Scalar" Value="EIDOS" />
|
||||
<Property SymbolicName="Manufacturer" BrowseName="Manufacturer" DataType="ua:String" ValueRank="Scalar" Value="CMS Industries" />
|
||||
<Property SymbolicName="Serial" BrowseName="Serial" DataType="ua:String" ValueRank="Scalar" Value="9943" />
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="CNC_MACHINE" />
|
||||
<Property SymbolicName="BuildYear" BrowseName="BuildYear" DataType="ua:String" ValueRank="Scalar" Value="2020" />
|
||||
<Variable SymbolicName="Status" BrowseName="Status" DataType="ua:String" ValueRank="Scalar" Units="Enum" />
|
||||
<Variable SymbolicName="Alarm" BrowseName="Alarm" DataType="ua:Boolean" ValueRank="Scalar" Units="Bool" />
|
||||
<Variable SymbolicName="Emergency" BrowseName="Emergency" DataType="ua:Boolean" ValueRank="Scalar" Units="Bool" />
|
||||
<Variable SymbolicName="Power" BrowseName="Power" DataType="ua:Boolean" ValueRank="Scalar" Units="Bool" />
|
||||
<Variable SymbolicName="ActiveTime" BrowseName="ActiveTime" DataType="ua:Float" ValueRank="Scalar" Units="h" CmsDataType="CounterList" CmsDataIndex="001" CmsDataOpt="HOURS" />
|
||||
<Variable SymbolicName="ActiveWorkingTime" BrowseName="ActiveWorkingTime" DataType="ua:Float" ValueRank="Scalar" Units="h" CmsDataType="CounterList" CmsDataIndex="002" CmsDataOpt="HOURS" />
|
||||
|
||||
<Component Name="Cnc">
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="SIEMENS" />
|
||||
<Property SymbolicName="Version" BrowseName="Version" DataType="ua:String" ValueRank="Scalar" Value="S71500" />
|
||||
<Condition SymbolicName="Condition" BrowseName="Condition" DataType="ua:String" ValueRank="Scalar" Type="OffNormalAlarmState" Units="" />
|
||||
<Component Name="CncProcesses">
|
||||
<Component Name="01">
|
||||
<Variable SymbolicName="Mode" BrowseName="Mode" DataType="ua:String" ValueRank="Scalar" Units="Enum" />
|
||||
<Variable SymbolicName="SubMode" BrowseName="SubMode" DataType="ua:String" ValueRank="Scalar" Units="" />
|
||||
<Variable SymbolicName="Status" BrowseName="Status" DataType="ua:String" ValueRank="Scalar" Units="Enum" />
|
||||
|
||||
<Variable SymbolicName="FeedOverride" BrowseName="FeedOverride" DataType="ua:String" ValueRank="Scalar" Units="Perc" />
|
||||
<Variable SymbolicName="RapidOverride" BrowseName="RapidOverride" DataType="ua:String" ValueRank="Scalar" Units="Perc" />
|
||||
<Variable SymbolicName="SpeedOverride" BrowseName="SpeedOverride" DataType="ua:String" ValueRank="Scalar" Units="Perc" />
|
||||
|
||||
</Component>
|
||||
</Component>
|
||||
</Component>
|
||||
<Component Name="Plc">
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="SIEMENS" />
|
||||
<Property SymbolicName="Version" BrowseName="Version" DataType="ua:String" ValueRank="Scalar" Value="" />
|
||||
<Condition SymbolicName="Condition" BrowseName="Condition" DataType="ua:String" ValueRank="Scalar" Type="OffNormalAlarmState" Units="" />
|
||||
</Component>
|
||||
<Component Name="Hmi">
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="CMS Active" />
|
||||
<Variable SymbolicName="Version" BrowseName="Version" DataType="ua:String" ValueRank="Scalar" Value="" />
|
||||
<Variable SymbolicName="User" BrowseName="User" DataType="ua:String" ValueRank="Scalar" Units="" />
|
||||
</Component>
|
||||
<Component Name="Axes">
|
||||
<Component Name="01">
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="LINEAR" />
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="X" />
|
||||
<Property SymbolicName="Role" BrowseName="Role" DataType="ua:String" ValueRank="Scalar" Value="MASTER" />
|
||||
<Property SymbolicName="MasterId" BrowseName="MasterId" DataType="ua:String" ValueRank="Scalar" Value="0" />
|
||||
<Variable SymbolicName="Load" BrowseName="Load" DataType="ua:Float" ValueRank="Scalar" Units="Perc"/>
|
||||
<Variable SymbolicName="CurrentPos" BrowseName="CurrentPos" DataType="ua:Float" ValueRank="Scalar" Units="mm" SGroup="2" DBand="1" VGroup="P" />
|
||||
<Variable SymbolicName="FeedRate" BrowseName="FeedRate" DataType="ua:Float" ValueRank="Scalar" Units="m/min" SGroup="4" DBand="1" VGroup="P" />
|
||||
</Component>
|
||||
<Component Name="02">
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="LINEAR" />
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="Y" />
|
||||
<Property SymbolicName="Role" BrowseName="Role" DataType="ua:String" ValueRank="Scalar" Value="MASTER" />
|
||||
<Property SymbolicName="MasterId" BrowseName="MasterId" DataType="ua:String" ValueRank="Scalar" Value="0" />
|
||||
<Variable SymbolicName="Load" BrowseName="Load" DataType="ua:Float" ValueRank="Scalar" Units="Perc"/>
|
||||
<Variable SymbolicName="CurrentPos" BrowseName="CurrentPos" DataType="ua:Float" ValueRank="Scalar" Units="mm" SGroup="2" DBand="1" VGroup="P" />
|
||||
<Variable SymbolicName="FeedRate" BrowseName="FeedRate" DataType="ua:Float" ValueRank="Scalar" Units="m/min" SGroup="4" DBand="1" VGroup="P" />
|
||||
</Component>
|
||||
<Component Name="03">
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="LINEAR" />
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="Z" />
|
||||
<Property SymbolicName="Role" BrowseName="Role" DataType="ua:String" ValueRank="Scalar" Value="MASTER" />
|
||||
<Property SymbolicName="MasterId" BrowseName="MasterId" DataType="ua:String" ValueRank="Scalar" Value="0" />
|
||||
<Variable SymbolicName="Load" BrowseName="Load" DataType="ua:Float" ValueRank="Scalar" Units="Perc"/>
|
||||
<Variable SymbolicName="CurrentPos" BrowseName="CurrentPos" DataType="ua:Float" ValueRank="Scalar" Units="mm" SGroup="2" DBand="1" VGroup="P" />
|
||||
<Variable SymbolicName="FeedRate" BrowseName="FeedRate" DataType="ua:Float" ValueRank="Scalar" Units="m/min" SGroup="4" DBand="1" VGroup="P" />
|
||||
</Component>
|
||||
<Component Name="04">
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="LINEAR" />
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="V" />
|
||||
<Property SymbolicName="Role" BrowseName="Role" DataType="ua:String" ValueRank="Scalar" Value="MASTER" />
|
||||
<Property SymbolicName="MasterId" BrowseName="MasterId" DataType="ua:String" ValueRank="Scalar" Value="0" />
|
||||
<Variable SymbolicName="Load" BrowseName="Load" DataType="ua:Float" ValueRank="Scalar" Units="Perc"/>
|
||||
<Variable SymbolicName="CurrentPos" BrowseName="CurrentPos" DataType="ua:Float" ValueRank="Scalar" Units="mm" SGroup="2" DBand="1" VGroup="P" />
|
||||
<Variable SymbolicName="FeedRate" BrowseName="FeedRate" DataType="ua:Float" ValueRank="Scalar" Units="m/min" SGroup="4" DBand="1" VGroup="P" />
|
||||
</Component>
|
||||
<Component Name="05">
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="LINEAR" />
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="B" />
|
||||
<Property SymbolicName="Role" BrowseName="Role" DataType="ua:String" ValueRank="Scalar" Value="MASTER" />
|
||||
<Property SymbolicName="MasterId" BrowseName="MasterId" DataType="ua:String" ValueRank="Scalar" Value="0" />
|
||||
<Variable SymbolicName="Load" BrowseName="Load" DataType="ua:Float" ValueRank="Scalar" Units="Perc"/>
|
||||
<Variable SymbolicName="CurrentPos" BrowseName="CurrentPos" DataType="ua:Float" ValueRank="Scalar" Units="mm" SGroup="2" DBand="1" VGroup="P" />
|
||||
<Variable SymbolicName="FeedRate" BrowseName="FeedRate" DataType="ua:Float" ValueRank="Scalar" Units="m/min" SGroup="4" DBand="1" VGroup="P" />
|
||||
</Component>
|
||||
<Component Name="06">
|
||||
<Property SymbolicName="Type" BrowseName="Type" DataType="ua:String" ValueRank="Scalar" Value="LINEAR" />
|
||||
<Property SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Value="C" />
|
||||
<Property SymbolicName="Role" BrowseName="Role" DataType="ua:String" ValueRank="Scalar" Value="MASTER" />
|
||||
<Property SymbolicName="MasterId" BrowseName="MasterId" DataType="ua:String" ValueRank="Scalar" Value="0" />
|
||||
<Variable SymbolicName="Load" BrowseName="Load" DataType="ua:Float" ValueRank="Scalar" Units="Perc"/>
|
||||
<Variable SymbolicName="CurrentPos" BrowseName="CurrentPos" DataType="ua:Float" ValueRank="Scalar" Units="mm" SGroup="2" DBand="1" VGroup="P" />
|
||||
<Variable SymbolicName="FeedRate" BrowseName="FeedRate" DataType="ua:Float" ValueRank="Scalar" Units="m/min" SGroup="4" DBand="1" VGroup="P" />
|
||||
</Component>
|
||||
</Component>
|
||||
<Component Name="OperatingGroups">
|
||||
</Component>
|
||||
<Component Name="AuxiliaryGroups">
|
||||
</Component>
|
||||
<Component Name="ProductionProcesses">
|
||||
<Component Name="01">
|
||||
<Component Name="Programs">
|
||||
<Component Name="01">
|
||||
<Variable SymbolicName="Name" BrowseName="Name" DataType="ua:String" ValueRank="Scalar" Units="" />
|
||||
</Component>
|
||||
</Component>
|
||||
</Component>
|
||||
</Component>
|
||||
</Machine>
|
||||
</ModelDesign>
|
||||
@@ -1,70 +1,68 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<inputsOperator>
|
||||
<buttonsListModal>
|
||||
<id>1</id>
|
||||
<simpleModal>
|
||||
<id>1</id>
|
||||
<title>
|
||||
<lang langKey="it">Attesa carico/scarico lastra</lang>
|
||||
<lang langKey="en">Waiting sheet load/unload</lang>
|
||||
</title>
|
||||
</simpleModal>
|
||||
<simpleModal>
|
||||
<id>2</id>
|
||||
<title>
|
||||
<lang langKey="it">Attesa carico/scarico pezzo</lang>
|
||||
<lang langKey="en">Waiting piece load/unload</lang>
|
||||
</title>
|
||||
</simpleModal>
|
||||
<simpleModal>
|
||||
<id>3</id>
|
||||
<title>
|
||||
<lang langKey="it">Pausa ciclo attiva</lang>
|
||||
<lang langKey="en">Pause cycle active</lang>
|
||||
</title>
|
||||
</simpleModal>
|
||||
<simpleModal>
|
||||
<id>4</id>
|
||||
<title>
|
||||
<lang langKey="it">Ciclo parcheggio in corso</lang>
|
||||
<lang langKey="en">Parking cycle ongoing</lang>
|
||||
</title>
|
||||
</simpleModal>
|
||||
<realValueModal>
|
||||
<id>10</id>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</realValueModal>
|
||||
<realValueModal>
|
||||
<id>11</id>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</realValueModal>
|
||||
<buttonsListModal>
|
||||
<id>6</id>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
<buttons>
|
||||
<button>
|
||||
<value>3</value>
|
||||
<title>
|
||||
<lang langKey="it">Hai rimosso manualmente anche il pezzo lavorato ?</lang>
|
||||
<lang langKey="en">Have you also manually removed the workpiece ?</lang>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
<buttons>
|
||||
<button>
|
||||
<value>0</value>
|
||||
<title>
|
||||
<lang langKey="it">No</lang>
|
||||
<lang langKey="en">No</lang>
|
||||
</title>
|
||||
</button>
|
||||
<button>
|
||||
<value>1</value>
|
||||
<title>
|
||||
<lang langKey="it">Si</lang>
|
||||
<lang langKey="en">Yes</lang>
|
||||
</title>
|
||||
</button>
|
||||
</buttons>
|
||||
</buttonsListModal>
|
||||
<simpleModal>
|
||||
<id>2</id>
|
||||
</button>
|
||||
<button>
|
||||
<value>4</value>
|
||||
<title>
|
||||
<lang langKey="it">DUE Hai rimosso manualmente anche il pezzo lavorato ?</lang>
|
||||
<lang langKey="en">DUE Have you also manually removed the workpiece ?</lang>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</simpleModal>
|
||||
<realValueModal>
|
||||
<id>10</id>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</realValueModal>
|
||||
<realValueModal>
|
||||
<id>11</id>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</realValueModal>
|
||||
<buttonsListModal>
|
||||
<id>6</id>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
<buttons>
|
||||
<button>
|
||||
<value>3</value>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</button>
|
||||
<button>
|
||||
<value>4</value>
|
||||
<title>
|
||||
<lang langKey="en">External water</lang>
|
||||
<lang langKey="it">Acqua esterna</lang>
|
||||
</title>
|
||||
</button>
|
||||
</buttons>
|
||||
</buttonsListModal>
|
||||
</button>
|
||||
</buttons>
|
||||
</buttonsListModal>
|
||||
</inputsOperator>
|
||||
@@ -8,6 +8,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>Frame</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>2</id>
|
||||
@@ -44,6 +46,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>Mould</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>6</id>
|
||||
@@ -53,6 +57,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>2</priority>
|
||||
<category>Heats</category>
|
||||
<subCategory_1>LowerHeaters</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>7</id>
|
||||
@@ -62,6 +68,8 @@
|
||||
<idParam>0</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Heats</category>
|
||||
<subCategory_1>UpperHeaters</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>8</id>
|
||||
@@ -71,9 +79,8 @@
|
||||
<idParam>80</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>3</priority>
|
||||
<category>Pyrometer</category>
|
||||
<category>Pyrometer</category>
|
||||
<subCategory_1>Pyrometer</subCategory_1>
|
||||
<subCategory_2></subCategory_2>
|
||||
</block>
|
||||
<block>
|
||||
<id>9</id>
|
||||
@@ -83,6 +90,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>4</priority>
|
||||
<category>Heats</category>
|
||||
<subCategory_1>DecomSustain</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>10</id>
|
||||
@@ -92,6 +101,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>5</priority>
|
||||
<category>Cycle</category>
|
||||
<subCategory_1>AcrylicFrame</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>11</id>
|
||||
@@ -110,6 +121,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Cycle</category>
|
||||
<subCategory_1>UpperOverheating</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>13</id>
|
||||
@@ -119,9 +132,7 @@
|
||||
<idParam>99</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>2</priority>
|
||||
<category>Drawing</category>
|
||||
<subCategory_1></subCategory_1>
|
||||
<subCategory_2></subCategory_2>
|
||||
<category>Drawing</category>
|
||||
</block>
|
||||
<block>
|
||||
<id>14</id>
|
||||
@@ -131,6 +142,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>Mould</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>15</id>
|
||||
@@ -149,6 +162,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>3</priority>
|
||||
<category>Cooling</category>
|
||||
<subCategory_1>Blowing</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>17</id>
|
||||
@@ -158,18 +173,19 @@
|
||||
<idParam>139</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>4</priority>
|
||||
<category>Cooling</category>
|
||||
<category>Cooling</category>
|
||||
<subCategory_1>Pyrometer</subCategory_1>
|
||||
<subCategory_2></subCategory_2>
|
||||
</block>
|
||||
<block>
|
||||
<id>19</id>
|
||||
<label>MB_Mod_Vuoto</label>
|
||||
<type>VACUUM</type>
|
||||
<section>FORMING</section>
|
||||
<idParam>-1</idParam>
|
||||
<idParam>189</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>5</priority>
|
||||
<category>Vacuum</category>
|
||||
<subCategory_1>Main</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>21</id>
|
||||
@@ -179,6 +195,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>6</priority>
|
||||
<category>Vacuum</category>
|
||||
<subCategory_1>Direct</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>23</id>
|
||||
@@ -187,8 +205,9 @@
|
||||
<section>FORMING</section>
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
|
||||
<priority>7</priority>
|
||||
<category>Vacuum</category>
|
||||
<subCategory_1>Aux</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>25</id>
|
||||
@@ -198,6 +217,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>8</priority>
|
||||
<category>Cooling</category>
|
||||
<subCategory_1>Nebulizer</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>26</id>
|
||||
@@ -216,6 +237,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>9</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>UpperPlate</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>29</id>
|
||||
@@ -225,6 +248,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>9</priority>
|
||||
<category>UpperPlate</category>
|
||||
<subCategory_1>Cycle</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>30</id>
|
||||
@@ -234,6 +259,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>9</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>UpperPlate</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>31</id>
|
||||
@@ -243,6 +270,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>10</priority>
|
||||
<category>UpperPlate</category>
|
||||
<subCategory_1>Air</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>33</id>
|
||||
@@ -252,6 +281,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>11</priority>
|
||||
<category>UpperPlate</category>
|
||||
<subCategory_1>Vacuum</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>34</id>
|
||||
@@ -279,6 +310,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>10</priority>
|
||||
<category>UpperPlate</category>
|
||||
<subCategory_1>Extraction</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>38</id>
|
||||
@@ -297,6 +330,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>2</priority>
|
||||
<category>Extraction</category>
|
||||
<subCategory_1>Main</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>40</id>
|
||||
@@ -306,6 +341,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>Mould</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>41</id>
|
||||
@@ -324,6 +361,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>false</showDelay>
|
||||
<priority>1</priority>
|
||||
<category>Positions</category>
|
||||
<subCategory_1>Frame</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>43</id>
|
||||
@@ -360,6 +399,8 @@
|
||||
<idParam>-1</idParam>
|
||||
<showDelay>true</showDelay>
|
||||
<priority>6</priority>
|
||||
<category>Vacuum</category>
|
||||
<subCategory_1>Pre</subCategory_1>
|
||||
</block>
|
||||
<block>
|
||||
<id>47</id>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,66 +1,51 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<serverConfig>
|
||||
<ncConfig>
|
||||
<ncVendor>S7NET</ncVendor>
|
||||
<!-- NO_NC/DEMO/FANUC/SIEMENS/OSAI/S7NET -->
|
||||
<showNcHMI>false</showNcHMI>
|
||||
<ncIpAddress>192.168.0.102</ncIpAddress>
|
||||
<ncPort>102</ncPort>
|
||||
<machineModel>Thermo 2020</machineModel>
|
||||
<sharedPath>C:\CMS\Recipes\</sharedPath>
|
||||
<sharedName>//PARTPRG:/</sharedName>
|
||||
<installationDate>01/06/2020</installationDate>
|
||||
<mgiOption>false</mgiOption>
|
||||
<siemensKeyboardOption>false</siemensKeyboardOption>
|
||||
<machineNumberHasLetters>false</machineNumberHasLetters>
|
||||
</ncConfig>
|
||||
<softwareProdConfig>
|
||||
<enabled>false</enabled>
|
||||
<path>C:\Program Files\Notepad++\notepad++.exe</path>
|
||||
</softwareProdConfig>
|
||||
<serverConfig>
|
||||
<serverPort>9000</serverPort>
|
||||
<serverAddress>*</serverAddress>
|
||||
<language>en</language>
|
||||
<enableDirectoryBrowsing>true</enableDirectoryBrowsing>
|
||||
<databaseAddress>localhost</databaseAddress>
|
||||
<autoOpenCmsClient>false</autoOpenCmsClient>
|
||||
<textEditorPath>C:\Windows\System32\notepad.exe</textEditorPath>
|
||||
<MTCFolderPath>C:\CMS\MTC\ADAPTER\</MTCFolderPath>
|
||||
<MTCApplicationName>SCMA</MTCApplicationName>
|
||||
<CMSConnectReady>false</CMSConnectReady>
|
||||
<maxAlarmsRows>50000</maxAlarmsRows>
|
||||
<alarmToDelete>5000</alarmToDelete>
|
||||
</serverConfig>
|
||||
<extSoftwares>
|
||||
<software>
|
||||
<longName>Calculator</longName>
|
||||
<shortName>CAL</shortName>
|
||||
<path>C:\Windows\System32\calc.exe</path>
|
||||
<arguments></arguments>
|
||||
<inMainMenuBar>true</inMainMenuBar>
|
||||
</software>
|
||||
<software>
|
||||
<longName>NotePad</longName>
|
||||
<shortName>NP</shortName>
|
||||
<path>C:\Windows\System32\notepad.exe</path>
|
||||
<arguments></arguments>
|
||||
<inMainMenuBar>true</inMainMenuBar>
|
||||
</software>
|
||||
<software>
|
||||
<longName>MsPaint</longName>
|
||||
<shortName>PA</shortName>
|
||||
<path>C:\Windows\System32\mspaint.exe</path>
|
||||
<arguments></arguments>
|
||||
<inMainMenuBar>false</inMainMenuBar>
|
||||
</software>
|
||||
<software>
|
||||
<longName>NotePad2</longName>
|
||||
<shortName>NP2</shortName>
|
||||
<path>C:\Windows\System32\notepad.exe</path>
|
||||
<arguments></arguments>
|
||||
<inMainMenuBar>false</inMainMenuBar>
|
||||
</software>
|
||||
<ncConfig>
|
||||
<ncVendor>S7NET</ncVendor> <!-- NO_NC/DEMO/FANUC/SIEMENS/OSAI/S7NET -->
|
||||
<showNcHMI>false</showNcHMI>
|
||||
<ncIpAddress>192.168.0.102</ncIpAddress>
|
||||
<ncPort>102</ncPort>
|
||||
<machineModel>Thermo 2020</machineModel>
|
||||
<sharedPath>C:\CMS\Recipes\</sharedPath>
|
||||
<sharedName>//PARTPRG:/</sharedName>
|
||||
<installationDate>01/06/2020</installationDate>
|
||||
<mgiOption>false</mgiOption>
|
||||
<siemensKeyboardOption>false</siemensKeyboardOption>
|
||||
<machineNumberHasLetters>false</machineNumberHasLetters>
|
||||
</ncConfig>
|
||||
<softwareProdConfig>
|
||||
<enabled>false</enabled>
|
||||
<path>C:\Program Files\Notepad++\notepad++.exe</path>
|
||||
</softwareProdConfig>
|
||||
<serverConfig>
|
||||
<serverPort>9000</serverPort>
|
||||
<serverAddress>*</serverAddress>
|
||||
<language>en</language>
|
||||
<enableDirectoryBrowsing>true</enableDirectoryBrowsing>
|
||||
<databaseAddress>localhost</databaseAddress>
|
||||
<autoOpenCmsClient>false</autoOpenCmsClient>
|
||||
<textEditorPath>C:\Windows\System32\notepad.exe</textEditorPath>
|
||||
<MTCFolderPath>C:\CMS\MTC\ADAPTER\</MTCFolderPath>
|
||||
<MTCApplicationName>SCMA</MTCApplicationName>
|
||||
<CMSConnectReady>true</CMSConnectReady>
|
||||
<maxAlarmsRows>50000</maxAlarmsRows>
|
||||
<alarmToDelete>5000</alarmToDelete>
|
||||
</serverConfig>
|
||||
<extSoftwares>
|
||||
<software>
|
||||
<longName>HC-DIAG2</longName>
|
||||
<shortName>HD2</shortName>
|
||||
<path>C:\Program Files (x86)\HC-DIAG2\HC-DIAG2.exe</path>
|
||||
<arguments></arguments>
|
||||
<inMainMenuBar>false</inMainMenuBar>
|
||||
</software>
|
||||
<software>
|
||||
<longName>Calc</longName>
|
||||
<shortName>NP</shortName>
|
||||
<path>C:\Windows\System32\calc.exe</path>
|
||||
<arguments></arguments>
|
||||
<inMainMenuBar>false</inMainMenuBar>
|
||||
</software>
|
||||
</extSoftwares>
|
||||
<additionalParameters>
|
||||
<entry>
|
||||
@@ -81,7 +66,7 @@
|
||||
</entry>
|
||||
<entry>
|
||||
<key>warmerAutocompStartValue</key>
|
||||
<value>30</value>
|
||||
<value>50</value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>warmerAutocompStep</key>
|
||||
@@ -89,21 +74,34 @@
|
||||
</entry>
|
||||
<entry>
|
||||
<key>LoaderXsize</key>
|
||||
<value>1900</value>
|
||||
<value>1400</value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>ThermoCameraXpos</key>
|
||||
<value>68</value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>ThermoCameraYpos</key>
|
||||
<value>728</value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>ThermoCameraXdim</key>
|
||||
<value>828</value>
|
||||
</entry>
|
||||
<entry>
|
||||
<key>ThermoCameraYdim</key>
|
||||
<value>1004</value>
|
||||
</entry>
|
||||
</additionalParameters>
|
||||
<unitOfMeasures>
|
||||
<unitOfMeasure id="0" value="" />
|
||||
<unitOfMeasure id="1" value="%" />
|
||||
<unitOfMeasure id="2" value="mm" />
|
||||
<unitOfMeasure id="1" value="mm" />
|
||||
<unitOfMeasure id="2" value="Nm" />
|
||||
<unitOfMeasure id="3" value="°C" />
|
||||
<unitOfMeasure id="4" value="Nm" />
|
||||
<unitOfMeasure id="5" value="Bar" />
|
||||
<unitOfMeasure id="6" value="mm/s" />
|
||||
<unitOfMeasure id="7" value="mm/10" />
|
||||
<unitOfMeasure id="8" value="Bar/10" />
|
||||
<unitOfMeasure id="9" value="°C/10" />
|
||||
<unitOfMeasure id="10" value="Nm/10" />
|
||||
<unitOfMeasure id="4" value="mm/s" />
|
||||
<unitOfMeasure id="5" value="ms" />
|
||||
<unitOfMeasure id="6" value="s" />
|
||||
<unitOfMeasure id="7" value="%" />
|
||||
</unitOfMeasures>
|
||||
<sampling>
|
||||
<thread name="alarms" value="200" />
|
||||
@@ -118,13 +116,13 @@
|
||||
<thread name="powerOn" value="500" />
|
||||
<thread name="prodCycle" value="1000" />
|
||||
<thread name="prodInfo" value="1000" />
|
||||
<thread name="prodPanel" value="1000" />
|
||||
<thread name="prodPanel" value="500" />
|
||||
<thread name="modules" value="200" />
|
||||
<thread name="recipe" value="400" />
|
||||
<thread name="scada" value="1000" />
|
||||
<thread name="statusCommand" value="250" />
|
||||
<thread name="userSK" value="250" />
|
||||
<thread name="warmers" value="1500" />
|
||||
<thread name="warmers" value="500" />
|
||||
<thread name="watchdog" value="250" />
|
||||
</sampling>
|
||||
</serverConfig>
|
||||
@@ -18,7 +18,7 @@
|
||||
<scaleFactor>1000</scaleFactor>
|
||||
<numDec>1</numDec>
|
||||
<minVal>0</minVal>
|
||||
<maxVal>5000000</maxVal>
|
||||
<maxVal>2000000</maxVal>
|
||||
</parameter>
|
||||
<parameter>
|
||||
<category>GAUGE</category>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<userSoftKeys>
|
||||
|
||||
<softKey_procedure>
|
||||
<active>true</active>
|
||||
<active>false</active>
|
||||
<category>1</category>
|
||||
<operatorConfirmationNeeded>false</operatorConfirmationNeeded>
|
||||
<plcId>1</plcId>
|
||||
@@ -22,7 +22,7 @@
|
||||
<lang langKey="en">Refresh alarms</lang>
|
||||
<lang langKey="it">Refresh allarmi</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
<visible>false</visible>
|
||||
</softKey_procedure>
|
||||
|
||||
<softKey_procedure>
|
||||
@@ -114,7 +114,6 @@
|
||||
<lang langKey="it">Pompe vuoto</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
<starred>true</starred>
|
||||
</softKey_procedure>
|
||||
|
||||
<softKey_procedure>
|
||||
@@ -123,20 +122,20 @@
|
||||
<operatorConfirmationNeeded>true</operatorConfirmationNeeded>
|
||||
<plcId>10</plcId>
|
||||
<localizedNames>
|
||||
<lang langKey="en">Last cycle</lang>
|
||||
<lang langKey="it">Ultimo ciclo</lang>
|
||||
<lang langKey="en">Last load</lang>
|
||||
<lang langKey="it">Ultimo carico</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
</softKey_procedure>
|
||||
|
||||
<softKey_procedure>
|
||||
<active>false</active>
|
||||
<active>true</active>
|
||||
<category>10</category>
|
||||
<operatorConfirmationNeeded>true</operatorConfirmationNeeded>
|
||||
<plcId>11</plcId>
|
||||
<localizedNames>
|
||||
<lang langKey="en">START Cycle</lang>
|
||||
<lang langKey="it">START Ciclo</lang>
|
||||
<lang langKey="en">Gantry realignment</lang>
|
||||
<lang langKey="it">Riallineamento gantry</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
</softKey_procedure>
|
||||
@@ -427,16 +426,27 @@
|
||||
<visible>true</visible>
|
||||
</softKey_procedure>
|
||||
|
||||
|
||||
|
||||
<softKey_procedure>
|
||||
<active>true</active>
|
||||
<category>7</category>
|
||||
<operatorConfirmationNeeded>false</operatorConfirmationNeeded>
|
||||
<plcId>35</plcId>
|
||||
<localizedNames>
|
||||
<lang langKey="en">Heating pyrometer</lang>
|
||||
<lang langKey="it">Pirometro riscaldo</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
<starred>true</starred>
|
||||
</softKey_procedure>
|
||||
|
||||
<softKey_procedure>
|
||||
<active>true</active>
|
||||
<category>7</category>
|
||||
<operatorConfirmationNeeded>false</operatorConfirmationNeeded>
|
||||
<plcId>36</plcId>
|
||||
<localizedNames>
|
||||
<lang langKey="en">Dashboard Setpoint Plus</lang>
|
||||
<lang langKey="it">Dashboard Setpoint Plus</lang>
|
||||
<lang langKey="en">Pyrometer +1</lang>
|
||||
<lang langKey="it">Pirometro +1</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
<refCallParam>dash_setpoint_plus</refCallParam>
|
||||
@@ -449,8 +459,8 @@
|
||||
<operatorConfirmationNeeded>false</operatorConfirmationNeeded>
|
||||
<plcId>37</plcId>
|
||||
<localizedNames>
|
||||
<lang langKey="en">Dashboard Setpoint Minus</lang>
|
||||
<lang langKey="it">Dashboard Setpoint Minus</lang>
|
||||
<lang langKey="en">Pyrometer -1</lang>
|
||||
<lang langKey="it">Pirometro -1</lang>
|
||||
</localizedNames>
|
||||
<visible>true</visible>
|
||||
<refCallParam>dash_setpoint_minus</refCallParam>
|
||||
|
||||
@@ -65,6 +65,9 @@ namespace Thermo.Active.Config
|
||||
public static List<RiskChannelModel> RiskChannelConfig;
|
||||
public static List<RiskBoardModel> RiskBoardConfig;
|
||||
public static List<AxesConfigModel> AxesConfig;
|
||||
public static Dictionary<string,string> CMSConnectEntry;
|
||||
public static string CMSConnectDataModel;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security.Cryptography;
|
||||
using System.Xml;
|
||||
using System.Xml.Linq;
|
||||
@@ -43,6 +44,7 @@ namespace Thermo.Active.Config
|
||||
ReadMacros();
|
||||
ReadScadaFile();
|
||||
ReadM156();
|
||||
ReadDataModel();
|
||||
}
|
||||
catch (XmlException ex)
|
||||
{
|
||||
@@ -86,6 +88,14 @@ namespace Thermo.Active.Config
|
||||
return xmlConfigFile;
|
||||
}
|
||||
|
||||
private static XDocument GetXmlHandler(string configFilePath, bool isFullPath = false)
|
||||
{
|
||||
// Open file reader
|
||||
XDocument xmlConfigFile = XDocument.Load((!isFullPath ? BASE_PATH + "\\" : "") + configFilePath);
|
||||
|
||||
return xmlConfigFile;
|
||||
}
|
||||
|
||||
private static void validateScada(string configSchemaFilePath, string configFilePath)
|
||||
{
|
||||
// Create new instance
|
||||
@@ -281,7 +291,33 @@ namespace Thermo.Active.Config
|
||||
})
|
||||
.ToList();
|
||||
}
|
||||
|
||||
private static void ReadDataModel()
|
||||
{
|
||||
XDocument xmlConfigFile = GetXmlHandler(CONNECT_DATAMODEL_CONFIG_PATH);
|
||||
XElement el = xmlConfigFile.Descendants("Machine").First();
|
||||
CMSConnectEntry = new Dictionary<string, string>();
|
||||
ElaborateDataModel(el,el.Name.LocalName, ref CMSConnectEntry);
|
||||
CMSConnectDataModel = File.ReadAllText(CONNECT_DATAMODEL_CONFIG_PATH);
|
||||
}
|
||||
|
||||
private static void ElaborateDataModel(XElement el, string Parent, ref Dictionary<string, string> Paths)
|
||||
{
|
||||
List<XElement> intEl = el.Elements().ToList();
|
||||
foreach (XElement elem in intEl)
|
||||
{
|
||||
if (elem.Name.LocalName == "Component")
|
||||
ElaborateDataModel(elem, Parent + ":" + elem.Attribute("Name").Value, ref Paths);
|
||||
else if(elem.Name.LocalName == "Property")
|
||||
Paths.Add(Parent + ":" + elem.Attribute("SymbolicName").Value, elem.Attribute("Value").Value);
|
||||
else
|
||||
{
|
||||
if(elem.Attribute("SymbolicName") != null && elem.Attribute("SymbolicName").Value == "Condition")
|
||||
Paths.Add(Parent + ":" + elem.Attribute("SymbolicName").Value, "");
|
||||
else
|
||||
Paths.Add(Parent + ":" + elem.Attribute("SymbolicName").Value, "UNAVAILABLE");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static string GetInputOperatoType(string tagName)
|
||||
{
|
||||
|
||||
@@ -51,6 +51,9 @@
|
||||
<Content Include="Config\axesConfig.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Config\DataModel.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Config\inputOperatorConfig.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
|
||||
@@ -1140,6 +1140,24 @@ public static class ThreadsFunctions
|
||||
NcAdapter ncAdapter = new NcAdapter();
|
||||
try
|
||||
{
|
||||
|
||||
//Write all the datamodel
|
||||
if (!RedisController.WriteDatamodel(CMSConnectDataModel))
|
||||
ManageError(ERROR_LEVEL.FATAL, CMS_CONNECT_SETUP_ALARM_MESSAGE);
|
||||
|
||||
//Write all the default entries
|
||||
if (!RedisController.WriteDefaultEntry(CMSConnectEntry))
|
||||
ManageError(ERROR_LEVEL.FATAL, CMS_CONNECT_SETUP_ALARM_MESSAGE);
|
||||
|
||||
//Write the Active Version
|
||||
if (!RedisController.WriteActiveVersion(SupportFunctions.GetSoftwareVersionAndBuildDate()))
|
||||
ManageError(ERROR_LEVEL.FATAL, CMS_CONNECT_SETUP_ALARM_MESSAGE);
|
||||
|
||||
//Write the Overrides
|
||||
if (!RedisController.WriteFakeOverrides(1))
|
||||
ManageError(ERROR_LEVEL.FATAL, CMS_CONNECT_SETUP_ALARM_MESSAGE);
|
||||
|
||||
|
||||
List<DTOLanguageModel> availableLanguages = LanguageController.GetLanguageListFromDirectory();
|
||||
if (availableLanguages == null)
|
||||
return;
|
||||
|
||||
@@ -38,7 +38,6 @@ namespace Thermo.Active.Core
|
||||
ThreadsFunctions.ReadM154Data // levare?
|
||||
|
||||
};
|
||||
private static Action ThreadSetupCmsConnect = ThreadsFunctions.SetupCmsConnect;
|
||||
|
||||
private volatile static List<Thread> RunningThreadsList = new List<Thread>();
|
||||
public static Thread StartClient;
|
||||
@@ -48,13 +47,6 @@ namespace Thermo.Active.Core
|
||||
public static void Start()
|
||||
{
|
||||
ThreadsFunctions.RestoreConnection();
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
Thread t = new Thread(() => ThreadSetupCmsConnect());
|
||||
t.Start();
|
||||
Thread.Sleep(30);
|
||||
}
|
||||
}
|
||||
|
||||
public static void StartWorkers()
|
||||
|
||||
@@ -6,6 +6,38 @@
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.10.4.0" newVersion="6.10.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.2" newVersion="4.0.2.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -1,30 +1,62 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||
</configSections>
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
|
||||
<providers>
|
||||
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.10.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
|
||||
</providers>
|
||||
</entityFramework>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
|
||||
</startup>
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<remove invariant="MySql.Data.MySqlClient" />
|
||||
<add description=".Net Framework Data Provider for MySQL" invariant="MySql.Data.MySqlClient" name="MySQL Data Provider" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.10.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
|
||||
</DbProviderFactories>
|
||||
</system.data>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.10.4.0" newVersion="6.10.4.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<configSections>
|
||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||
</configSections>
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
|
||||
<providers>
|
||||
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.10.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
|
||||
</providers>
|
||||
</entityFramework>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
|
||||
</startup>
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<remove invariant="MySql.Data.MySqlClient" />
|
||||
<add description=".Net Framework Data Provider for MySQL" invariant="MySql.Data.MySqlClient" name="MySQL Data Provider" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.10.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
|
||||
</DbProviderFactories>
|
||||
</system.data>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.10.4.0" newVersion="6.10.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.2" newVersion="4.0.2.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -1,5 +1,7 @@
|
||||
using System.Collections.Generic;
|
||||
using Thermo.Active.Database.Redis;
|
||||
using Thermo.Active.Model.DTOModels;
|
||||
using Thermo.Active.Model.DTOModels.ThAxes;
|
||||
|
||||
namespace Thermo.Active.Database.Controllers
|
||||
{
|
||||
@@ -12,6 +14,26 @@ namespace Thermo.Active.Database.Controllers
|
||||
private const string redisAlmCurr = "AdpConf:Plc:Condition:Curr";
|
||||
private const string redisAlmIt = "AdpConf:Plc:Condition:It";
|
||||
private const string redisAlmEn = "AdpConf:Plc:Condition:En";
|
||||
private const string currentUserPath = "Machine:Hmi:User";
|
||||
private const string machineMessagePath = "Machine:Messages";
|
||||
private const string machineStatusPath = "Machine:Status";
|
||||
private const string machinePowerPath = "Machine:Power";
|
||||
private const string machineAlarmPath = "Machine:Alarm";
|
||||
private const string machineEmergencyPath = "Machine:Emergency";
|
||||
private const string alarmsPath = "Machine:Plc:Condition";
|
||||
private const string processStatusPath = "Machine:Cnc:CncProcesses:%NN%:Status";
|
||||
private const string processModePath = "Machine:Cnc:CncProcesses:%NN%:Mode";
|
||||
private const string processFeedOverridePath = "Machine:Cnc:CncProcesses:%NN%:FeedOverride";
|
||||
private const string processRapidOverridePath = "Machine:Cnc:CncProcesses:%NN%:RapidOverride";
|
||||
private const string processSpeedOverridePath = "Machine:Cnc:CncProcesses:%NN%:SpeedOverride";
|
||||
|
||||
private const string datamodelPath = "AdpConf:DataModel";
|
||||
private const string currentActiveVersionPath = "Machine:Hmi:Version";
|
||||
private const string machineAxisPosition = "Machine:Axes:%NN%:CurrentPos";
|
||||
private const string machineAxisSpeed = "Machine:Axes:%NN%:FeedRate";
|
||||
private const string machineAxisLoad = "Machine:Axes:%NN%:Load";
|
||||
private const string machineAxisName = "Machine:Axes:%NN%:Name";
|
||||
private const string machineEventKpis = "Machine:Events:Kpis";
|
||||
|
||||
public static void WriteProductionNotification(uint ProductionProcess, string Notification)
|
||||
{
|
||||
@@ -48,6 +70,22 @@ namespace Thermo.Active.Database.Controllers
|
||||
string redisHash = redUtil.man.redHash(redisAlmEn);
|
||||
return redUtil.man.redSaveHashDict(redisHash, alarms);
|
||||
}
|
||||
|
||||
|
||||
public static bool WriteDatamodel(string datamodel)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(datamodelPath);
|
||||
return redUtil.man.setRSV(redisHash, datamodel.ToString());
|
||||
}
|
||||
public static bool WriteDefaultEntry(Dictionary<string, string> entries)
|
||||
{
|
||||
foreach (KeyValuePair<string,string> entry in entries)
|
||||
{
|
||||
if (!redUtil.man.setRSV(redUtil.man.redHash(entry.Key), entry.Value))
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public static bool WriteAlarmsConfigIt(Dictionary<string, string> alarms)
|
||||
{
|
||||
@@ -55,6 +93,119 @@ namespace Thermo.Active.Database.Controllers
|
||||
return redUtil.man.redSaveHashDict(redisHash, alarms);
|
||||
}
|
||||
|
||||
public static bool WriteCurrentUser(string User)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(currentUserPath);
|
||||
return redUtil.man.setRSV(redisHash, User.ToString());
|
||||
}
|
||||
public static bool WriteActiveVersion(string version)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(currentActiveVersionPath);
|
||||
return redUtil.man.setRSV(redisHash, version.ToString());
|
||||
}
|
||||
public static bool SendMessage(DTOMessageModel message)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machineMessagePath);
|
||||
return redUtil.man.setJson(redisHash, message);
|
||||
}
|
||||
|
||||
public static bool WriteCurrentMachineStatus(string status)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machineStatusPath);
|
||||
return redUtil.man.setRSV(redisHash, status.ToString());
|
||||
}
|
||||
|
||||
public static bool WriteCurrentProcessStatus(uint ProductionProcess, string status)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(processStatusPath).Replace("%NN%", ProductionProcess.ToString("00"));
|
||||
return redUtil.man.setRSV(redisHash, status.ToString());
|
||||
}
|
||||
|
||||
public static bool WriteCurrentProcessMode(uint ProductionProcess, string status)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(processModePath).Replace("%NN%", ProductionProcess.ToString("00"));
|
||||
return redUtil.man.setRSV(redisHash, status.ToString());
|
||||
}
|
||||
|
||||
public static bool WriteFakeOverrides(uint ProductionProcess)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(processFeedOverridePath).Replace("%NN%", ProductionProcess.ToString("00"));
|
||||
if (!redUtil.man.setRSV(redisHash, "100"))
|
||||
return false;
|
||||
redisHash = redUtil.man.redHash(processRapidOverridePath).Replace("%NN%", ProductionProcess.ToString("00"));
|
||||
if (!redUtil.man.setRSV(redisHash, "100"))
|
||||
return false;
|
||||
redisHash = redUtil.man.redHash(processSpeedOverridePath).Replace("%NN%", ProductionProcess.ToString("00"));
|
||||
if(!redUtil.man.setRSV(redisHash, "100"))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public static bool WriteCurrentMachinePowerPath(bool status)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machinePowerPath);
|
||||
if(status)
|
||||
return redUtil.man.setRSV(redisHash, "true");
|
||||
else
|
||||
return redUtil.man.setRSV(redisHash, "false");
|
||||
}
|
||||
|
||||
public static bool WriteCurrentMachineAlarmPath(bool status)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machineAlarmPath);
|
||||
if (status)
|
||||
return redUtil.man.setRSV(redisHash, "true");
|
||||
else
|
||||
return redUtil.man.setRSV(redisHash, "false");
|
||||
}
|
||||
|
||||
public static bool WriteCurrentMachineEmergencyPath(bool status)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machineEmergencyPath);
|
||||
if (status)
|
||||
return redUtil.man.setRSV(redisHash, "true");
|
||||
else
|
||||
return redUtil.man.setRSV(redisHash, "false");
|
||||
}
|
||||
|
||||
public static bool WriteCurrentAlarms(string alarms)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(alarmsPath);
|
||||
return redUtil.man.setRSV(redisHash, alarms);
|
||||
}
|
||||
|
||||
public static bool WriteMachineEventKpis(string alarms)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machineEventKpis);
|
||||
redUtil.man.ListPush(redisHash, alarms);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public static bool WriteCurrentAxisStatus(Dictionary<int, DTOAxisInfoModel> axis)
|
||||
{
|
||||
foreach(KeyValuePair<int, DTOAxisInfoModel> asse in axis)
|
||||
{
|
||||
string redisHash = redUtil.man.redHash(machineAxisName).Replace("%NN%", asse.Value.ID.ToString("00"));
|
||||
|
||||
if(redUtil.man.getRSV(redisHash) != null)
|
||||
{
|
||||
redisHash = redUtil.man.redHash(machineAxisPosition).Replace("%NN%", asse.Value.ID.ToString("00"));
|
||||
if (!redUtil.man.setRSV(redisHash, asse.Value.position.ToString()))
|
||||
return false;
|
||||
|
||||
redisHash = redUtil.man.redHash(machineAxisSpeed).Replace("%NN%", asse.Value.ID.ToString("00"));
|
||||
if (!redUtil.man.setRSV(redisHash, asse.Value.speed.ToString()))
|
||||
return false;
|
||||
|
||||
redisHash = redUtil.man.redHash(machineAxisLoad).Replace("%NN%", asse.Value.ID.ToString("00"));
|
||||
if (!redUtil.man.setRSV(redisHash, asse.Value.load.ToString()))
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Serialization;
|
||||
using NLog;
|
||||
using StackExchange.Redis;
|
||||
using System;
|
||||
@@ -199,6 +201,29 @@ namespace Thermo.Active.Database.Redis
|
||||
/// </summary>
|
||||
/// <param name="chiave"></param>
|
||||
/// <returns></returns>
|
||||
///
|
||||
/// <summary>
|
||||
/// Scrive un oggtto json in Redis
|
||||
/// </summary>
|
||||
/// <param name="chiave"></param>
|
||||
/// <returns></returns>
|
||||
public bool setJson(string chiave, object valore)
|
||||
{
|
||||
try
|
||||
{
|
||||
string json = JsonConvert.SerializeObject(valore, new JsonSerializerSettings
|
||||
{
|
||||
ContractResolver = new CamelCasePropertyNamesContractResolver()
|
||||
});
|
||||
|
||||
return setRSV(chiave, json);
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
public long setRCntI(string chiave)
|
||||
{
|
||||
long answ = 0;
|
||||
@@ -801,5 +826,70 @@ namespace Thermo.Active.Database.Redis
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region gestione Stack / List
|
||||
|
||||
/// <summary>
|
||||
/// Lunghezza Stack
|
||||
/// </summary>
|
||||
/// <param name="stackName"></param>
|
||||
/// <returns></returns>
|
||||
public long StackLen(string stackName)
|
||||
{
|
||||
return connRedis.GetDatabase().ListLength((RedisKey)stackName);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Mette in Stack un valore (F.I.L.O.)
|
||||
/// </summary>
|
||||
/// <param name="stackName"></param>
|
||||
/// <param name="value"></param>
|
||||
public void StackPush(string stackName, string value)
|
||||
{
|
||||
connRedis.GetDatabase().ListRightPush((RedisKey)stackName, (RedisValue)value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Recupera valore da Stack (F.I.L.O.)
|
||||
/// </summary>
|
||||
/// <param name="stackName"></param>
|
||||
/// <returns></returns>
|
||||
public string StackPop(string stackName)
|
||||
{
|
||||
return connRedis.GetDatabase().ListRightPop((RedisKey)stackName).ToString();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Lunghezza List
|
||||
/// </summary>
|
||||
/// <param name="queueName"></param>
|
||||
/// <returns></returns>
|
||||
public long ListLen(string queueName)
|
||||
{
|
||||
return connRedis.GetDatabase().ListLength((RedisKey)queueName);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Mette un valore in List (F.I.F.O.)
|
||||
/// </summary>
|
||||
/// <param name="queueName"></param>
|
||||
/// <returns></returns>
|
||||
public void ListPush(string queueName, string value)
|
||||
{
|
||||
connRedis.GetDatabase().ListRightPush((RedisKey)queueName, (RedisValue)value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Recupera valore da List (F.I.F.O.)
|
||||
/// </summary>
|
||||
/// <param name="queueName"></param>
|
||||
/// <returns></returns>
|
||||
public string ListPop(string queueName)
|
||||
{
|
||||
return connRedis.GetDatabase().ListLeftPop((RedisKey)queueName).ToString();
|
||||
}
|
||||
|
||||
#endregion gestione Stack / List
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,6 +50,9 @@
|
||||
<Reference Include="Microsoft.AspNet.Identity.EntityFramework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.Identity.EntityFramework.2.2.1\lib\net45\Microsoft.AspNet.Identity.EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.1.1.1\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MySql.Data">
|
||||
<HintPath>..\packages\MySql.Data.6.10.4\lib\net452\MySql.Data.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@@ -57,47 +60,55 @@
|
||||
<Reference Include="MySql.Data.Entity.EF6, Version=6.9.10.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.Entity.6.9.10\lib\net45\MySql.Data.Entity.EF6.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NLog.4.5.11\lib\net45\NLog.dll</HintPath>
|
||||
<HintPath>..\packages\NLog.4.6.7\lib\net45\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Pipelines.Sockets.Unofficial, Version=1.0.0.0, Culture=neutral, PublicKeyToken=42ea0a778e13fbe2, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Pipelines.Sockets.Unofficial.1.0.7\lib\net461\Pipelines.Sockets.Unofficial.dll</HintPath>
|
||||
<HintPath>..\packages\Pipelines.Sockets.Unofficial.2.1.16\lib\net461\Pipelines.Sockets.Unofficial.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\StackExchange.Redis.2.0.519\lib\net461\StackExchange.Redis.dll</HintPath>
|
||||
<HintPath>..\packages\StackExchange.Redis.2.1.58\lib\net461\StackExchange.Redis.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.4.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Diagnostics.PerformanceCounter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Diagnostics.PerformanceCounter.4.5.0\lib\net461\System.Diagnostics.PerformanceCounter.dll</HintPath>
|
||||
<Reference Include="System.Diagnostics.PerformanceCounter, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Diagnostics.PerformanceCounter.4.7.0\lib\net461\System.Diagnostics.PerformanceCounter.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.IO.Pipelines, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Pipelines.4.5.1\lib\netstandard2.0\System.IO.Pipelines.dll</HintPath>
|
||||
<Reference Include="System.IO.Compression, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Memory, Version=4.0.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.1\lib\netstandard2.0\System.Memory.dll</HintPath>
|
||||
<Reference Include="System.IO.Pipelines, Version=4.0.2.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Pipelines.4.7.3\lib\net461\System.IO.Pipelines.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.4.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.Serialization" />
|
||||
<Reference Include="System.ServiceModel" />
|
||||
<Reference Include="System.ServiceProcess" />
|
||||
<Reference Include="System.Threading.Channels, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Channels.4.5.0\lib\netstandard2.0\System.Threading.Channels.dll</HintPath>
|
||||
<Reference Include="System.Threading.Channels, Version=4.0.2.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Channels.4.7.1\lib\net461\System.Threading.Channels.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.1\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.Web.Helpers.Crypto, Version=3.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
|
||||
@@ -3,18 +3,22 @@
|
||||
<package id="EntityFramework" version="6.2.0" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.Identity.Core" version="2.2.1" targetFramework="net461" />
|
||||
<package id="Microsoft.AspNet.Identity.EntityFramework" version="2.2.1" targetFramework="net461" />
|
||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="1.1.1" targetFramework="net462" />
|
||||
<package id="MySql.Data" version="6.10.4" targetFramework="net462" />
|
||||
<package id="MySql.Data.Entity" version="6.9.10" targetFramework="net462" />
|
||||
<package id="NLog" version="4.5.11" targetFramework="net462" />
|
||||
<package id="Pipelines.Sockets.Unofficial" version="1.0.7" targetFramework="net462" />
|
||||
<package id="StackExchange.Redis" version="2.0.519" targetFramework="net462" />
|
||||
<package id="System.Buffers" version="4.4.0" targetFramework="net462" />
|
||||
<package id="System.Diagnostics.PerformanceCounter" version="4.5.0" targetFramework="net462" />
|
||||
<package id="System.IO.Pipelines" version="4.5.1" targetFramework="net462" />
|
||||
<package id="System.Memory" version="4.5.1" targetFramework="net462" />
|
||||
<package id="System.Numerics.Vectors" version="4.4.0" targetFramework="net462" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.0" targetFramework="net462" />
|
||||
<package id="System.Threading.Channels" version="4.5.0" targetFramework="net462" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.1" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
<package id="NLog" version="4.6.7" targetFramework="net462" />
|
||||
<package id="Pipelines.Sockets.Unofficial" version="2.1.16" targetFramework="net462" />
|
||||
<package id="StackExchange.Redis" version="2.1.58" targetFramework="net462" />
|
||||
<package id="System.Buffers" version="4.5.1" targetFramework="net462" />
|
||||
<package id="System.Diagnostics.PerformanceCounter" version="4.7.0" targetFramework="net462" />
|
||||
<package id="System.IO.Compression" version="4.3.0" targetFramework="net462" />
|
||||
<package id="System.IO.Pipelines" version="4.7.3" targetFramework="net462" />
|
||||
<package id="System.Memory" version="4.5.4" targetFramework="net462" />
|
||||
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net462" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.7.1" targetFramework="net462" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net462" />
|
||||
<package id="System.Threading.Channels" version="4.7.1" targetFramework="net462" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net462" />
|
||||
<package id="System.Web.Helpers.Crypto" version="3.2.3" targetFramework="net462" />
|
||||
</packages>
|
||||
@@ -268,6 +268,9 @@ namespace Thermo.Active.Model
|
||||
public const string M156_CONFIG_SCHEMA_PATH = RESOURCE_DIRECTORY + "inputOperatorConfigValidator.xsd";
|
||||
public const string M156_CONFIG_PATH = CONFIG_DIRECTORY + "inputOperatorConfig.xml";
|
||||
|
||||
public const string CONNECT_DATAMODEL_CONFIG_SCHEMA_PATH = RESOURCE_DIRECTORY + "dataModelConfigValidator.xsd";
|
||||
public const string CONNECT_DATAMODEL_CONFIG_PATH = CONFIG_DIRECTORY + "DataModel.xml";
|
||||
|
||||
public const string MAINTENANCES_CONFIG_SCHEMA_PATH = RESOURCE_DIRECTORY + "maintenancesConfigValidator.xsd";
|
||||
public const string CUSTOMER_CONTACTS_CONFIG_SCHEMA_PATH = RESOURCE_DIRECTORY + "customerContactConfigValidator.xsd";
|
||||
public const string MAINTENANCES_CONFIG_PATH = CONFIG_DIRECTORY + "maintenancesConfig.xml";
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
using System;
|
||||
|
||||
namespace Thermo.Active.Model.DTOModels
|
||||
{
|
||||
public class DTOMessageModel
|
||||
{
|
||||
public string Message { get; set; }
|
||||
|
||||
public int EstimateTime { get; set; }
|
||||
|
||||
public string Department { get; set; }
|
||||
|
||||
public DateTime TimeStamp { get; set; }
|
||||
|
||||
public string UserId { get; set; }
|
||||
|
||||
public Guid Id { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -9,13 +9,15 @@ namespace Thermo.Active.Model.DTOModels.ThProd
|
||||
{
|
||||
public short NumTarget { get; set; } = 0;
|
||||
public short NumDone { get; set; } = 0;
|
||||
public DateTime InizioProd { get; set; } = DateTime.Now;
|
||||
public short NumPreHot { get; set; } = 0;
|
||||
public DateTime? InizioProd { get; set; } = null;
|
||||
public double StimaDurata { get; set; } = 0;
|
||||
public double TempAct { get; set; } = 0;
|
||||
public double TempSetpoint { get; set; } = 0;
|
||||
public string NomeRicetta { get; set; } = "";
|
||||
public double LastCadenza { get; set; } = 0;
|
||||
public double LastTCiclo { get; set; } = 0;
|
||||
public double LastTCicloNetto { get; set; } = 0;
|
||||
public Dictionary<int, double> TS_Cadenza { get; set; } = new Dictionary<int, double>();
|
||||
public Dictionary<int, double> TS_TCiclo { get; set; } = new Dictionary<int, double>();
|
||||
|
||||
@@ -28,6 +30,8 @@ namespace Thermo.Active.Model.DTOModels.ThProd
|
||||
return false;
|
||||
if (NumDone != item.NumDone)
|
||||
return false;
|
||||
if (NumPreHot != item.NumPreHot)
|
||||
return false;
|
||||
if (InizioProd != item.InizioProd)
|
||||
return false;
|
||||
if (Math.Round(Math.Abs(StimaDurata - item.StimaDurata), 1) >= Constants.EPSILON)
|
||||
@@ -42,6 +46,8 @@ namespace Thermo.Active.Model.DTOModels.ThProd
|
||||
return false;
|
||||
if (Math.Round(Math.Abs(LastTCiclo - item.LastTCiclo), 1) >= Constants.EPSILON)
|
||||
return false;
|
||||
if (Math.Round(Math.Abs(LastTCicloNetto - item.LastTCicloNetto), 1) >= Constants.EPSILON)
|
||||
return false;
|
||||
if (!Enumerable.SequenceEqual(TS_Cadenza, item.TS_Cadenza))
|
||||
return false;
|
||||
if (!Enumerable.SequenceEqual(TS_TCiclo, item.TS_TCiclo))
|
||||
|
||||
@@ -22,7 +22,8 @@ namespace Thermo.Active.Model.DTOModels.ThProd
|
||||
|
||||
if (!Category.Equals(item.Category))
|
||||
return false;
|
||||
if (Math.Round(Math.Abs(Value - item.Value), 1) >= Constants.EPSILON)
|
||||
// poiché il vuoto è con 2 decimali serve 10 volte risoluzione risp altro...
|
||||
if (Math.Round(Math.Abs(Value - item.Value), 2) >= Constants.EPSILON / 10)
|
||||
return false;
|
||||
if (Name != item.Name)
|
||||
return false;
|
||||
|
||||
@@ -2,8 +2,17 @@
|
||||
{
|
||||
public class DTOWarmers
|
||||
{
|
||||
/// <summary>
|
||||
/// Channel Unique ID (from risk2007)
|
||||
/// </summary>
|
||||
public int IdChannel { get; set; } = 0;
|
||||
/// <summary>
|
||||
/// Reflector ID
|
||||
/// </summary>
|
||||
public int IdReflector { get; set; } = 0;
|
||||
/// <summary>
|
||||
/// Setpoint from HMI (%)
|
||||
/// </summary>
|
||||
public int SetpointHMI { get; set; } = 0;
|
||||
public int SetpointTermocam { get; set; } = 0;
|
||||
public int SetpointPLC { get; set; } = 0;
|
||||
|
||||
@@ -46,7 +46,8 @@
|
||||
<HintPath>..\packages\Microsoft.AspNet.Identity.EntityFramework.2.2.1\lib\net45\Microsoft.AspNet.Identity.EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
@@ -108,6 +109,7 @@
|
||||
<Compile Include="DTOModels\DTOAxesModel.cs" />
|
||||
<Compile Include="DTOModels\DTOClientConfigurationModel.cs" />
|
||||
<Compile Include="DTOModels\DTOM156InputModel.cs" />
|
||||
<Compile Include="DTOModels\DTOMessageModel.cs" />
|
||||
<Compile Include="DTOModels\ThAxes\DTOAxisInfoModel.cs" />
|
||||
<Compile Include="DTOModels\ThModules\DTOModulesBlock.cs" />
|
||||
<Compile Include="DTOModels\ThProd\DTOProdInfo.cs" />
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
<package id="EntityFramework" version="6.2.0" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.Identity.Core" version="2.2.1" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.Identity.EntityFramework" version="2.2.1" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.1" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
</packages>
|
||||
@@ -48,10 +48,18 @@ namespace Thermo.Active.NC
|
||||
/// </summary>
|
||||
protected DateTime lastProdEnd;
|
||||
/// <summary>
|
||||
/// Ultimo ciclo registrato(secondi)
|
||||
/// Ultimo ciclo registrato (secondi)
|
||||
/// </summary>
|
||||
protected double lastCycle = 9999;
|
||||
/// <summary>
|
||||
/// Ultimo ciclo NETTO registrato (secondi)
|
||||
/// </summary>
|
||||
protected double lastCycleNet = 9999;
|
||||
/// <summary>
|
||||
/// Indica che per i dati del prodPanel è necessario rileggere il DB (modificato)
|
||||
/// </summary>
|
||||
protected static bool forceProdPanelDbReload = false;
|
||||
/// <summary>
|
||||
/// Recipe Live data
|
||||
/// </summary>
|
||||
public static LiveData RecipeLiveData = new LiveData();
|
||||
@@ -1499,7 +1507,11 @@ namespace Thermo.Active.NC
|
||||
|
||||
return libraryError;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Lettura dati ProdPanel
|
||||
/// </summary>
|
||||
/// <param name="currentProdPanel"></param>
|
||||
/// <returns></returns>
|
||||
public CmsError ReadProdPanel(out DTOThermoPanelProd currentProdPanel)
|
||||
{
|
||||
// preparo oggetti OUT
|
||||
@@ -1510,11 +1522,6 @@ namespace Thermo.Active.NC
|
||||
bool dataChanged = false;
|
||||
int numTcOk = 0;
|
||||
|
||||
// inizio da ncAdapter.lottoStart
|
||||
if (lottoStart > currentProdPanel.InizioProd)
|
||||
{
|
||||
currentProdPanel.InizioProd = lottoStart;
|
||||
}
|
||||
// dati ricetta da live
|
||||
currentProdPanel.NomeRicetta = NcFileAdapter.RecipeLiveData.RecipeName;
|
||||
// se NON HO dati già letti --> cambiati devo rileggere
|
||||
@@ -1543,7 +1550,8 @@ namespace Thermo.Active.NC
|
||||
}
|
||||
bool changeNumPz = LastProdPanelData.NumDone != lastProdInfoData.NumDone;
|
||||
bool changeNumTarget = lastProdInfoData.NumTarget != LastProdPanelData.NumTarget;
|
||||
dataChanged = changeNumPz || changeSetpoint || changeNumTarget;
|
||||
bool changeNumPreHot = lastProdInfoData.NumPreHot != LastProdPanelData.NumPreHot;
|
||||
dataChanged = changeNumPz || changeSetpoint || changeNumTarget || changeNumPreHot || forceProdPanelDbReload;
|
||||
}
|
||||
}
|
||||
if (dataChanged)
|
||||
@@ -1553,39 +1561,7 @@ namespace Thermo.Active.NC
|
||||
{
|
||||
currentProdPanel.NumDone = lastProdInfoData.NumDone;
|
||||
currentProdPanel.NumTarget = lastProdInfoData.NumTarget;
|
||||
currentProdPanel.LastTCiclo = Math.Round((double)lastProdInfoData.TimeCycleGross / 1000, 2);
|
||||
if (lastProdInfoData.TimeCycleGross > 0)
|
||||
{
|
||||
currentProdPanel.LastCadenza = Math.Round((double)3600000 / lastProdInfoData.TimeCycleGross, 2);
|
||||
}
|
||||
// se NON HO un last value...
|
||||
if (lastCycle == 0)
|
||||
{
|
||||
lastCycle = currentProdPanel.LastTCiclo;
|
||||
}
|
||||
// se il valore SALVATO è > 3 * valore rilevato --> uso SOLO ultimo
|
||||
else if (lastCycle > 3 * currentProdPanel.LastTCiclo)
|
||||
{
|
||||
lastCycle = currentProdPanel.LastTCiclo;
|
||||
}
|
||||
// altrimenti EWMA da parametro calcolato standard, default 50%
|
||||
else
|
||||
{
|
||||
//lastCycle = 0.5 * lastCycle + 0.5 * lastDuration;
|
||||
lastCycle = ewmaLambda * currentProdPanel.LastTCiclo + (1 - ewmaLambda) * lastCycle;
|
||||
}
|
||||
// salvo anche nei live data della ricetta...
|
||||
RecipeLiveData.TC_last = lastCycle;
|
||||
|
||||
// stima durata da pz fatti... SOLO SE il NumTarget è > 0
|
||||
currentProdPanel.StimaDurata = 0;
|
||||
if (currentProdPanel.NumTarget > 0)
|
||||
{
|
||||
// 2020.09.03 uso dati da ricetta corrente... stimata con EWMA, in SECONDI!
|
||||
currentProdPanel.StimaDurata = Math.Round((currentProdPanel.NumTarget - currentProdPanel.NumDone) * lastCycle, 2) / 60;
|
||||
}
|
||||
// se stima negativa (+ pezzi di quanti richiesti...) --> ZERO!
|
||||
currentProdPanel.StimaDurata = currentProdPanel.StimaDurata < 0 ? 0 : currentProdPanel.StimaDurata;
|
||||
currentProdPanel.NumPreHot = lastProdInfoData.NumPreHot;
|
||||
}
|
||||
// dai parametri sistemo i setpoints
|
||||
if (lastRecipe != null)
|
||||
@@ -1599,10 +1575,60 @@ namespace Thermo.Active.NC
|
||||
// dal DB recupero i dati dei TC storici... cablato a last 30 x ora... ma CALCOLO SOLO i cicli "positivi" = NON i riscaldi...
|
||||
if (currentProdPanel.NumDone > 0)
|
||||
{
|
||||
// parto dai dati di lastProdInfoData...
|
||||
if (lastProdInfoData != null)
|
||||
{
|
||||
currentProdPanel.LastTCiclo = Math.Round((double)lastProdInfoData.TimeCycleGross / 1000, 2);
|
||||
if (lastProdInfoData.TimeCycleGross > 0)
|
||||
{
|
||||
currentProdPanel.LastCadenza = Math.Round((double)3600000 / lastProdInfoData.TimeCycleGross, 2);
|
||||
}
|
||||
// 2020.10.19 aggiungo TCicloNetto
|
||||
currentProdPanel.LastTCicloNetto = Math.Round((double)lastProdInfoData.TimeCycleNet / 1000, 2);
|
||||
|
||||
// se NON HO un last value...
|
||||
if (lastCycle == 0)
|
||||
{
|
||||
lastCycle = currentProdPanel.LastTCiclo;
|
||||
lastCycleNet = currentProdPanel.LastTCicloNetto;
|
||||
}
|
||||
// se il valore SALVATO è > 3 * valore rilevato --> uso SOLO ultimo
|
||||
else if (lastCycle > 3 * currentProdPanel.LastTCiclo)
|
||||
{
|
||||
lastCycle = currentProdPanel.LastTCiclo;
|
||||
lastCycleNet = currentProdPanel.LastTCicloNetto;
|
||||
}
|
||||
// altrimenti EWMA da parametro calcolato standard, default 50%
|
||||
else
|
||||
{
|
||||
//lastCycle = 0.5 * lastCycle + 0.5 * lastDuration;
|
||||
lastCycle = ewmaLambda * currentProdPanel.LastTCiclo + (1 - ewmaLambda) * lastCycle;
|
||||
lastCycleNet = ewmaLambda * currentProdPanel.LastTCicloNetto + (1 - ewmaLambda) * lastCycleNet;
|
||||
// sistemo ponderato il ciclo netto rilevato
|
||||
currentProdPanel.LastTCicloNetto = lastCycleNet;
|
||||
}
|
||||
|
||||
// salvo anche nei live data della ricetta...
|
||||
RecipeLiveData.TC_last = lastCycle;
|
||||
|
||||
// stima durata da pz fatti... SOLO SE il NumTarget è > 0
|
||||
currentProdPanel.StimaDurata = 0;
|
||||
if (currentProdPanel.NumTarget > 0)
|
||||
{
|
||||
// 2020.09.03 uso dati da ricetta corrente... stimata con EWMA, in SECONDI!
|
||||
currentProdPanel.StimaDurata = Math.Round((currentProdPanel.NumTarget - currentProdPanel.NumDone) * lastCycle, 2) / 60;
|
||||
}
|
||||
// se stima negativa (+ pezzi di quanti richiesti...) --> ZERO!
|
||||
currentProdPanel.StimaDurata = currentProdPanel.StimaDurata < 0 ? 0 : currentProdPanel.StimaDurata;
|
||||
}
|
||||
|
||||
libraryError = GetHistProdInfoDataDesc(out List<ThermoModels.ProdInfoModel> prodInfoDataList, currentProdPanel.NumDone, numRecProdPanelGraph);
|
||||
// se ci sono dati --> creo le 2 TS!
|
||||
if (prodInfoDataList != null)
|
||||
{
|
||||
// annullo richiesta reload Db (eventuale)
|
||||
forceProdPanelDbReload = false;
|
||||
// ciclo
|
||||
foreach (var item in prodInfoDataList)
|
||||
{
|
||||
if (TS_TC.ContainsKey(item.NumDone))
|
||||
@@ -1635,12 +1661,15 @@ namespace Thermo.Active.NC
|
||||
// cerco in ordine INVERSO
|
||||
libraryError = GetHistProdInfoDataAsc(out List<ThermoModels.ProdInfoModel> prodInfoFirstAsc, 1, 1);
|
||||
// se ci sono dati --> fix start
|
||||
ThermoModels.ProdInfoModel dataRecord = new ThermoModels.ProdInfoModel();
|
||||
if (prodInfoFirstDesc != null && prodInfoFirstDesc.Count > 0)
|
||||
{
|
||||
try
|
||||
{
|
||||
currentProdPanel.InizioProd = prodInfoFirstDesc.FirstOrDefault().DtEvent;
|
||||
lottoStart = currentProdPanel.InizioProd;
|
||||
// sottraggo ad inizio il tempo ciclo in secondi...
|
||||
dataRecord = prodInfoFirstDesc.FirstOrDefault();
|
||||
currentProdPanel.InizioProd = dataRecord.DtEvent.AddSeconds(-dataRecord.TimeCycleGross / 1000);
|
||||
lottoStart = currentProdPanel.InizioProd != null ? Convert.ToDateTime(currentProdPanel.InizioProd) : lottoStart;
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
@@ -1649,8 +1678,9 @@ namespace Thermo.Active.NC
|
||||
{
|
||||
try
|
||||
{
|
||||
currentProdPanel.InizioProd = prodInfoFirstAsc.FirstOrDefault().DtEvent;
|
||||
lottoStart = currentProdPanel.InizioProd;
|
||||
dataRecord = prodInfoFirstAsc.FirstOrDefault();
|
||||
currentProdPanel.InizioProd = dataRecord.DtEvent.AddSeconds(-dataRecord.TimeCycleGross / 1000);
|
||||
lottoStart = currentProdPanel.InizioProd != null ? Convert.ToDateTime(currentProdPanel.InizioProd) : lottoStart;
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
@@ -1675,7 +1705,6 @@ namespace Thermo.Active.NC
|
||||
/// <returns></returns>
|
||||
public CmsError ReadProdInfoData(out DTOProdInfo prodInfoData)
|
||||
{
|
||||
bool dataChanged = false;
|
||||
prodInfoData = new DTOProdInfo();
|
||||
ThermoModels.ProdInfoModel prodInfoRawData = new ThermoModels.ProdInfoModel();
|
||||
CmsError libraryError = numericalControl.PLC_RProdInfo(ref prodInfoRawData);
|
||||
@@ -1688,39 +1717,39 @@ namespace Thermo.Active.NC
|
||||
// 2020.09.02: incremento di 1 il NUMERO dei pezzi, in modo che mostro il pezzo corrente (n=fatti + 1)
|
||||
prodInfoData.NumDone++;
|
||||
|
||||
//// popolo il valore LAST se ho una delle condizioni missing, num fatti = 0, riscaldi > 0
|
||||
//if (lastProdInfoData == null || (lastProdInfoData.NumDone == 0) || prodInfoData.NumDone == 0 || prodInfoData.NumPreHot > 0)
|
||||
// se nullo lo popolo
|
||||
if (lastProdInfoData == null)
|
||||
{
|
||||
lastProdInfoData = prodInfoRawData;
|
||||
}
|
||||
|
||||
// se ho update da strobe... sennò restituisco ultima lettura...
|
||||
if (ThermoProdUpdatedStr)
|
||||
// do comparison with old record and if changed --> persist on DB!
|
||||
if (!prodInfoRawData.Equals(lastProdInfoData))
|
||||
{
|
||||
// do comparison with old record and if changed --> persist on DB!
|
||||
if (!prodInfoRawData.Equals(lastProdInfoData))
|
||||
{
|
||||
// save on DB! attenzione: RAW DATA perché salvo pezzo PRECEDENTE...
|
||||
using (ProdInfoController prodInfoController = new ProdInfoController())
|
||||
{
|
||||
prodInfoController.Create(prodInfoRawData.NumTarget, prodInfoRawData.NumDone, prodInfoRawData.TimeWarm, prodInfoRawData.TimeVent, prodInfoRawData.TimeVacuum, prodInfoRawData.TimeCycleGross, prodInfoRawData.TimeCycleNet, prodInfoRawData.MaterialTempEndWarm, prodInfoRawData.MaterialTempEndVent, prodInfoRawData.MoldTemp, prodInfoRawData.VacuumReadVal, prodInfoRawData.MouldEnergyOUT, prodInfoRawData.MouldEnergyIN, false);
|
||||
}
|
||||
// update last info data
|
||||
lastProdInfoData = prodInfoRawData;
|
||||
|
||||
// manage strobe/ack!
|
||||
libraryError = numericalControl.PLC_WAckProdUpdate();
|
||||
if (libraryError.IsError())
|
||||
return libraryError;
|
||||
}
|
||||
// update last info data
|
||||
lastProdInfoData = prodInfoRawData;
|
||||
}
|
||||
else
|
||||
{
|
||||
prodInfoRawData = lastProdInfoData;
|
||||
}
|
||||
|
||||
// se ho update da strobe... sennò restituisco ultima lettura...
|
||||
if (ThermoProdUpdatedStr)
|
||||
{
|
||||
// save on DB! attenzione: RAW DATA perché salvo pezzo PRECEDENTE...
|
||||
using (ProdInfoController prodInfoController = new ProdInfoController())
|
||||
{
|
||||
prodInfoController.Create(prodInfoRawData.NumTarget, prodInfoRawData.NumDone, prodInfoRawData.TimeWarm, prodInfoRawData.TimeVent, prodInfoRawData.TimeVacuum, prodInfoRawData.TimeCycleGross, prodInfoRawData.TimeCycleNet, prodInfoRawData.MaterialTempEndWarm, prodInfoRawData.MaterialTempEndVent, prodInfoRawData.MoldTemp, prodInfoRawData.VacuumReadVal, prodInfoRawData.MouldEnergyOUT, prodInfoRawData.MouldEnergyIN, false);
|
||||
// indico di rileggere il DB...
|
||||
forceProdPanelDbReload = true;
|
||||
}
|
||||
// manage strobe/ack!
|
||||
libraryError = numericalControl.PLC_WAckProdUpdate();
|
||||
if (libraryError.IsError())
|
||||
return libraryError;
|
||||
}
|
||||
|
||||
// ora controllo inizio/fine produzione
|
||||
if (ThermoProdStartStr)
|
||||
{
|
||||
|
||||
@@ -772,6 +772,11 @@ namespace Thermo.Active.NC
|
||||
Directory.CreateDirectory(dir);
|
||||
}
|
||||
File.WriteAllText(LIVE_RECIPE_PATH, rawData);
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
RedisController.WriteProductionName(1, RecipeLiveData.RecipeName);
|
||||
}
|
||||
answ = true;
|
||||
}
|
||||
catch
|
||||
|
||||
@@ -6,6 +6,38 @@
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.10.4.0" newVersion="6.10.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.2" newVersion="4.0.2.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -6,6 +6,38 @@
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.10.4.0" newVersion="6.10.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.2" newVersion="4.0.2.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -36,10 +36,11 @@
|
||||
<HintPath>..\packages\MySql.Data.6.10.4\lib\net452\MySql.Data.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=4.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NLog.4.5.11\lib\net45\NLog.dll</HintPath>
|
||||
<HintPath>..\packages\NLog.4.6.7\lib\net45\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Configuration" />
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Automatically generated by nicola.carminati: 2020-10-12 -->
|
||||
<!-- Automatically generated by nicola.carminati: 2020-10-15 -->
|
||||
<root>
|
||||
<language_it>Italiano</language_it>
|
||||
<header_maintainance_request>Effettuare manutenzione</header_maintainance_request>
|
||||
@@ -314,4 +314,13 @@
|
||||
<confirm_request_confirm>Conferma</confirm_request_confirm>
|
||||
<confirm_request_cancel>Annulla</confirm_request_cancel>
|
||||
<lbl_loader_load_area>Area di carico</lbl_loader_load_area>
|
||||
<avvio_prod_lbl_title>Avvio produione</avvio_prod_lbl_title>
|
||||
<new_production>Nuovo lotto produttivo</new_production>
|
||||
<warmup_cycles>Cicli di warmup</warmup_cycles>
|
||||
<warmup_cycles_pieces>Numero di cicli:</warmup_cycles_pieces>
|
||||
<modal_start_button>Avvio</modal_start_button>
|
||||
<edit_prod_lbl_title>Modifica produione</edit_prod_lbl_title>
|
||||
<production_management>Lotto di produzione</production_management>
|
||||
<production_enabling>Setta numeto max di pezzi</production_enabling>
|
||||
<mock_pieces>Numero di pezzi:</mock_pieces>
|
||||
</root>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Automatically generated by nicola.carminati: 2020-10-12 -->
|
||||
<!-- Automatically generated by nicola.carminati: 2020-10-15 -->
|
||||
<root>
|
||||
<language_it>English</language_it>
|
||||
<header_maintainance_request>Maintenance request</header_maintainance_request>
|
||||
@@ -314,4 +314,13 @@
|
||||
<confirm_request_confirm>Confirm</confirm_request_confirm>
|
||||
<confirm_request_cancel>Cancel</confirm_request_cancel>
|
||||
<lbl_loader_load_area>Loading area</lbl_loader_load_area>
|
||||
<avvio_prod_lbl_title>Start Production</avvio_prod_lbl_title>
|
||||
<new_production>New production lot</new_production>
|
||||
<warmup_cycles>Warmup cycles</warmup_cycles>
|
||||
<warmup_cycles_pieces>Number of cycles:</warmup_cycles_pieces>
|
||||
<modal_start_button>Start</modal_start_button>
|
||||
<edit_prod_lbl_title>Edit Production</edit_prod_lbl_title>
|
||||
<production_management>Production lot</production_management>
|
||||
<production_enabling>Set the max num of pieces</production_enabling>
|
||||
<mock_pieces>Number of pieces:</mock_pieces>
|
||||
</root>
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="MySql.Data" version="6.10.4" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.1" targetFramework="net462" />
|
||||
<package id="NLog" version="4.5.11" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
<package id="NLog" version="4.6.7" targetFramework="net462" />
|
||||
</packages>
|
||||
@@ -41,6 +41,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CMS_CORE_Library", "..\cms_
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client2020", "Client2020\Client2020.csproj", "{0780047F-12E4-4FCC-9748-6B23F0FD3711}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Thermo.Active.Thermocamera", "THermo.Active.Thermocamera\Thermo.Active.Thermocamera.csproj", "{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@@ -219,6 +221,18 @@ Global
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x64.Build.0 = Release|x64
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x86.Build.0 = Release|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Release|x64.Build.0 = Release|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -237,6 +251,7 @@ Global
|
||||
{F9F17F23-660E-488C-A7FA-6A5B35D64313} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
{49B04D99-0ECD-4900-86D3-7098D61314D7} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
{8D8EC91A-3A15-4A1D-951B-A35E7068DEBD} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {51D459FB-B45B-4A47-984E-46C35F933A82}
|
||||
|
||||
@@ -77,6 +77,42 @@
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="4.5.0.0" />
|
||||
</dependentAssembly>
|
||||
<probing privatePath="lib;libs" />
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.2" newVersion="4.0.2.2" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<connectionStrings>
|
||||
|
||||
@@ -71,11 +71,14 @@ namespace Thermo.Active
|
||||
machineId = session.MachineUser.MachineId;
|
||||
userId = session.MachineUser.UserId;
|
||||
|
||||
|
||||
MachineUserModel machineUser = new MachineUserModel();
|
||||
using (MachinesUsersController machineUsersController = new MachinesUsersController())
|
||||
{
|
||||
// Find machineUser data and joined to user data, role data, machine data
|
||||
machineUser = machineUsersController.FindByIdWithData(session.MachineUserId);
|
||||
|
||||
RedisController.WriteCurrentUser(machineUser.User.Username);
|
||||
}
|
||||
|
||||
using (FunctionsAccessController acController = new FunctionsAccessController())
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Net.Http.Headers;
|
||||
using System.Security.Claims;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web.Http;
|
||||
using Thermo.Active.Database.Controllers;
|
||||
using Thermo.Active.Listeners;
|
||||
using Thermo.Active.Model.DatabaseModels;
|
||||
using Thermo.Active.Model.DTOModels.AlarmModels;
|
||||
using Thermo.Active.Provider;
|
||||
using Thermo.Active.Thermocamera;
|
||||
using static Thermo.Active.Config.ServerConfig;
|
||||
using static Thermo.Active.Model.Constants;
|
||||
|
||||
namespace Thermo.Active.Controllers.WebApi
|
||||
{
|
||||
[RoutePrefix("api/thermocamera")]
|
||||
public class ThermocameraController : ApiController
|
||||
{
|
||||
[Route("show"), HttpPost]
|
||||
public IHttpActionResult GetDataPaginated()
|
||||
{
|
||||
String ThermoCameraXpos = AdditionalParametersConfig["ThermoCameraXpos"];
|
||||
String ThermoCameraYpos = AdditionalParametersConfig["ThermoCameraYpos"];
|
||||
String ThermoCameraXdim = AdditionalParametersConfig["ThermoCameraXdim"];
|
||||
String ThermoCameraYdim = AdditionalParametersConfig["ThermoCameraYdim"];
|
||||
if(ThermoCameraXpos != null && ThermoCameraYpos != null && ThermoCameraXdim != null && ThermoCameraYdim != null)
|
||||
{
|
||||
|
||||
if (ThermocameraComunicator.getInstance().showWindow(Int32.Parse(ThermoCameraXpos), Int32.Parse(ThermoCameraYpos), Int32.Parse(ThermoCameraXdim), Int32.Parse(ThermoCameraYdim), 3000))
|
||||
return Ok();
|
||||
else
|
||||
return BadRequest();
|
||||
|
||||
}
|
||||
return BadRequest();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -43,6 +43,7 @@ namespace Thermo.Active.Controllers.WebApi
|
||||
context.Clients.All.logout(new { id = userId.Value });
|
||||
|
||||
ThermoActiveLogger.LogMessage("Logout: " + userId.Value + "Date:" + DateTime.Now, ERROR_LEVEL.INFO);
|
||||
RedisController.WriteCurrentUser("");
|
||||
|
||||
return Ok();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
general_sizes_sheet_material_RE_00,ABS
|
||||
general_sizes_sheet_material_RE_01,PMMA
|
||||
general_sizes_sheet_material_RE_02,HDPE
|
||||
general_sizes_plate_type_RE_00,1500x1200 : 500x700
|
||||
general_sizes_plate_type_RE_01,Windowplate 2
|
||||
general_sizes_plate_type_RE_02,Windowplate 3
|
||||
general_sizes_frame_traverses_RE_00,1200 : 460
|
||||
general_sizes_frame_traverses_RE_01,Crossbar B
|
||||
general_sizes_frame_traverses_RE_02,Crossbar C
|
||||
cycle_forming_type_RE_00,Normal
|
||||
cycle_forming_type_RE_01,Special
|
||||
cycle_forming_type_RE_02,Thermocoating
|
||||
cycle_crystallisation_type_RE_00, Disabled
|
||||
cycle_crystallisation_type_RE_01,Only lower heater
|
||||
cycle_crystallisation_type_RE_02,Both heaters
|
||||
heats_decomsustain_type_RE_00,Time
|
||||
heats_decomsustain_type_RE_01,With photocell
|
||||
heats_decomsustain_type_RE_02,Sust/Dec automatic
|
||||
drawing_type_RE_00,Time
|
||||
drawing_type_RE_01,Controlled by PEC
|
||||
drawing_type_RE_04,Negative
|
||||
drawing_photocell_RE_00,Micron
|
||||
drawing_photocell_RE_01,Wenglor
|
||||
drawing_photocell_RE_02,Manual
|
||||
upperplate_cycle_type_RE_00,Disabled
|
||||
upperplate_cycle_type_RE_01,Immediate
|
||||
upperplate_cycle_type_RE_02,Mould high
|
||||
cooling_blowing_type_RE_00,No coolers
|
||||
cooling_blowing_type_RE_01,Central
|
||||
cooling_blowing_type_RE_02,Central + Extern
|
||||
cooling_nebulizer_type_RE_00,Disabled
|
||||
cooling_nebulizer_type_RE_01,Central
|
||||
cooling_nebulizer_type_RE_02,Central + Extern
|
||||
vacuum_main_start_RE_00,Immediate
|
||||
vacuum_main_start_RE_01,Mould high
|
||||
vacuum_main_start_RE_02,Upperplate low
|
||||
vacuum_main_start_RE_03,Mould slowing
|
||||
extraction_main_type_RE_00,Time
|
||||
extraction_main_type_RE_01,With upperplate
|
||||
extraction_main_type_RE_02,Frameless
|
||||
options_undercutmould_1_mode_RE_00,Disabled
|
||||
options_undercutmould_1_mode_RE_01,During vacuum
|
||||
options_undercutmould_1_mode_RE_02,During extraction
|
||||
options_undercutmould_1_mode_RE_03,Programmable position
|
||||
options_undercutupperplate_1_mode_RE_00,Disabled
|
||||
options_undercutupperplate_1_mode_RE_01,During vacuum
|
||||
options_undercutupperplate_1_mode_RE_02,During extraction
|
||||
options_undercutupperplate_1_mode_RE_03,Programmable position
|
||||
@@ -1,10 +1,10 @@
|
||||
general_sizes_sheet_material_RE_00,Materiale A
|
||||
general_sizes_sheet_material_RE_01,Materiale B
|
||||
general_sizes_sheet_material_RE_02,Materiale C
|
||||
general_sizes_plate_type_RE_00,Piastra A
|
||||
general_sizes_plate_type_RE_01,Piastra B
|
||||
general_sizes_plate_type_RE_02,Piastra C
|
||||
general_sizes_frame_traverses_RE_00,Traversino A
|
||||
general_sizes_sheet_material_RE_00,ABS
|
||||
general_sizes_sheet_material_RE_01,PMMA
|
||||
general_sizes_sheet_material_RE_02,HDPE
|
||||
general_sizes_plate_type_RE_00,1500x1200 : 500x700
|
||||
general_sizes_plate_type_RE_01,Piastra 2
|
||||
general_sizes_plate_type_RE_02,Piastra 3
|
||||
general_sizes_frame_traverses_RE_00,1200 : 460
|
||||
general_sizes_frame_traverses_RE_01,Traversino B
|
||||
general_sizes_frame_traverses_RE_02,Traversino C
|
||||
cycle_forming_type_RE_00,Normale
|
||||
@@ -15,7 +15,7 @@ cycle_crystallisation_type_RE_01,Solo riscaldo inferiore
|
||||
cycle_crystallisation_type_RE_02,Entrambi riscaldi
|
||||
heats_decomsustain_type_RE_00,A tempo
|
||||
heats_decomsustain_type_RE_01,Con fotocellula
|
||||
heats_decomsustain_type_RE_02,Sostentamento e decompressione automatici
|
||||
heats_decomsustain_type_RE_02,Sost/Dec automatici
|
||||
drawing_type_RE_00,A tempo
|
||||
drawing_type_RE_01,Mantenuta
|
||||
drawing_type_RE_04,Negativa
|
||||
@@ -38,63 +38,11 @@ vacuum_main_start_RE_03,Con rallentamento stampo
|
||||
extraction_main_type_RE_00,A tempo
|
||||
extraction_main_type_RE_01,Assistita con controstampo
|
||||
extraction_main_type_RE_02,Senza cornice
|
||||
options_undercutmould_1_mode_RE_00,Valore UNO
|
||||
options_undercutmould_1_mode_RE_01,Valore DUE
|
||||
options_undercutmould_1_mode_RE_02,Valore TRE
|
||||
options_undercutmould_2_mode_RE_00,Valore UNO
|
||||
options_undercutmould_2_mode_RE_01,Valore DUE
|
||||
options_undercutmould_2_mode_RE_02,Valore TRE
|
||||
options_undercutmould_3_mode_RE_00,Valore UNO
|
||||
options_undercutmould_3_mode_RE_01,Valore DUE
|
||||
options_undercutmould_3_mode_RE_02,Valore TRE
|
||||
options_undercutmould_4_mode_RE_00,Valore UNO
|
||||
options_undercutmould_4_mode_RE_01,Valore DUE
|
||||
options_undercutmould_4_mode_RE_02,Valore TRE
|
||||
options_undercutmould_5_mode_RE_00,Valore UNO
|
||||
options_undercutmould_5_mode_RE_01,Valore DUE
|
||||
options_undercutmould_5_mode_RE_02,Valore TRE
|
||||
options_undercutmould_6_mode_RE_00,Valore UNO
|
||||
options_undercutmould_6_mode_RE_01,Valore DUE
|
||||
options_undercutmould_6_mode_RE_02,Valore TRE
|
||||
options_undercutmould_7_mode_RE_00,Valore UNO
|
||||
options_undercutmould_7_mode_RE_01,Valore DUE
|
||||
options_undercutmould_7_mode_RE_02,Valore TRE
|
||||
options_undercutmould_8_mode_RE_00,Valore UNO
|
||||
options_undercutmould_8_mode_RE_01,Valore DUE
|
||||
options_undercutmould_8_mode_RE_02,Valore TRE
|
||||
options_undercutmould_9_mode_RE_00,Valore UNO
|
||||
options_undercutmould_9_mode_RE_01,Valore DUE
|
||||
options_undercutmould_9_mode_RE_02,Valore TRE
|
||||
options_undercutmould_10_mode_RE_00,Valore UNO
|
||||
options_undercutmould_10_mode_RE_01,Valore DUE
|
||||
options_undercutmould_10_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_1_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_1_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_1_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_2_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_2_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_2_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_3_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_3_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_3_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_4_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_4_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_4_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_5_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_5_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_5_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_6_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_6_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_6_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_7_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_7_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_7_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_8_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_8_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_8_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_9_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_9_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_9_mode_RE_02,Valore TRE
|
||||
options_undercutupperplate_10_mode_RE_00,Valore UNO
|
||||
options_undercutupperplate_10_mode_RE_01,Valore DUE
|
||||
options_undercutupperplate_10_mode_RE_02,Valore TRE
|
||||
options_undercutmould_1_mode_RE_00,Disattivato
|
||||
options_undercutmould_1_mode_RE_01,Durante vuoto
|
||||
options_undercutmould_1_mode_RE_02,Durante estrazione
|
||||
options_undercutmould_1_mode_RE_03,Programmabile con quota
|
||||
options_undercutupperplate_1_mode_RE_00,Disattivato
|
||||
options_undercutupperplate_1_mode_RE_01,Durante vuoto
|
||||
options_undercutupperplate_1_mode_RE_02,Durante estrazione
|
||||
options_undercutupperplate_1_mode_RE_03,Programmabile con quota
|
||||
|
||||
@@ -0,0 +1,350 @@
|
||||
mb_DiscesaCZ, ↓ Frame
|
||||
mb_MembDiscesaZ, ↓ Upperplate
|
||||
mb_MembZ, Upperplate
|
||||
mb_Mod_MembSalitaZ, ↑ Upperplate
|
||||
mb_Mod_AppoggioDiscesaW, ↓ Mould
|
||||
mb_Mod_RiscaldoInf, Lower heater
|
||||
mb_Mod_RiscaldoSup, Upper heater
|
||||
mb_Mod_PirometroRisc, Heating pyrometer
|
||||
mb_Mod_DecompSustain, Decomp./Sustain
|
||||
mb_Mod_Acrilico, Acrylic
|
||||
mb_Mod_RiscaldiIndietro, ← Heaters
|
||||
mb_Mod_ExtraR, Extra upper heater
|
||||
mb_Mod_Imbutitura, Drawing
|
||||
mb_Mod_SalitaW, ↑ Mould
|
||||
mb_Mod_AttesaStampo, Mould wait
|
||||
mb_Mod_Raffreddamento, Cooling
|
||||
mb_Mod_PirometroRaffr, Cooling pyrometer
|
||||
mb_Mod_Vuoto, Vacuum
|
||||
mb_Mod_VuotoDiretto, Direct vacuum
|
||||
mb_Mod_VuotoAux, Aux vacuum
|
||||
mb_Mod_Nebulizz, Nebulizer
|
||||
mb_Mod_AttesaPartenzaZ, Wait upperplate
|
||||
mb_Mod_DiscesaZ, ↓ Upperplate
|
||||
mb_Mod_Z, Upperplate low
|
||||
mb_Mod_SalitaZ, ↑ Upperplate
|
||||
mb_Mod_AriaZ, Upperplate air
|
||||
mb_Mod_VuotoZ, Upperplate vacuum
|
||||
mb_Mod_ScaricoVuotoZ, Upperplate vacuum release
|
||||
mb_Mod_ScaricoVuoto, Vacuum release
|
||||
mb_Mod_EstrazioneZ, Upperplate extraction
|
||||
mb_Mod_DiscesaAssistZ, ↓ Upperplate
|
||||
mb_Mod_Estrazione, Extraction
|
||||
mb_Mod_DiscesaW, ↓ Mould
|
||||
mb_Mod_RiscaldiIndietro2, ← Heaters
|
||||
mb_Mod_SalitaCZ, ↑ Frame
|
||||
mb_Mod_Riscaldi2, Second heating
|
||||
mb_Mod_Estrazione_Aux_W, Aux extraction
|
||||
mb_Mod_Attesa_Pirometro, Waiting pyrometer
|
||||
mb_Mod_Prevuoto, Prevacuum
|
||||
mb_Mod_SalitaAssistZ, ↑ Upperplate
|
||||
general_sizes_mould_dim_x, Mould width
|
||||
general_sizes_mould_dim_y, Mould depth
|
||||
general_sizes_mould_max_height, Mould max height
|
||||
general_sizes_mould_min_height, Mould negative height
|
||||
general_sizes_mould_base_height, Mould base height
|
||||
general_sizes_sheet_material, Material
|
||||
general_sizes_sheet_dim_x, Sheet width
|
||||
general_sizes_sheet_dim_y, Sheet depth
|
||||
general_sizes_sheet_thickness, Sheet thickness
|
||||
general_sizes_plate_type, Windowplate
|
||||
general_sizes_plate_dim_x, Windowplate width
|
||||
general_sizes_plate_dim_x_button, Move
|
||||
general_sizes_plate_dim_y, Windowplate depth
|
||||
general_sizes_plate_dim_y_button, Move
|
||||
general_sizes_frame_traverses, Crossbar
|
||||
general_sizes_frame_dim_x, Frame width
|
||||
general_sizes_frame_dim_x_button, Move
|
||||
general_sizes_frame_dim_y, Frame depth
|
||||
general_sizes_frame_dim_y_button, Move
|
||||
general_sizes_upperplate_max_height, Upperplate height
|
||||
general_area_working_dxsx, Working zone
|
||||
positions_mould_lower_position, Mould low position
|
||||
positions_mould_lower_speed, Descend speed
|
||||
positions_mould_intermediate_position, Mould mid position
|
||||
positions_mould_upper_position, Mould high position
|
||||
positions_mould_upper_speed, Ascend speed
|
||||
positions_mould_upperdeceleration_position, Ascend slowdown stroke
|
||||
positions_mould_upperdeceleration_speed, Ascend slowdown speed
|
||||
positions_mould_lowerdeceleration_position, Discend slowdown stroke
|
||||
positions_mould_lowerdeceleration_speed, Discend slowdown speed
|
||||
positions_frame_lower_position, Frame low position
|
||||
positions_frame_lower_speed, Descend speed
|
||||
positions_frame_upper_position, Frame high position
|
||||
positions_frame_upper_speed, Ascend speed
|
||||
positions_frame_intermediate_position, Frame mid position
|
||||
positions_frame_intermediate_speed, Frame mid speed
|
||||
positions_frame_unload_position, Frame unload position
|
||||
positions_upperplate_lower_position, Upperplate low position
|
||||
positions_upperplate_lower_speed, Mould descend speed
|
||||
positions_upperplate_upper_position, Upperplate high position
|
||||
positions_upperplate_upper_speed, Upperplate ascend speed
|
||||
positions_upperplate_upperdeceleration_position, Upperplate ascend slowdown stroke
|
||||
positions_upperplate_upperdeceleration_speed, Upperplate ascend slowdown speed
|
||||
positions_upperplate_lowerdeceleration_position, Upperplate descend slowdown stroke
|
||||
positions_upperplate_lowerdeceleration_speed, Upperplate descend slowdown speed
|
||||
cycle_forming_type, Cycle type
|
||||
cycle_forming_pause_cycle, Cycle pause
|
||||
cycle_forming_cooling_enabled, Cooling at cycle end
|
||||
cycle_forming_blowingbox_enabled, Box cooling at cycle end
|
||||
cycle_acrylicframe_enabled, Acrylic
|
||||
cycle_acrylicframe_time, Acrylic time
|
||||
cycle_upperoverheating_enabled, Extra upper heater enable
|
||||
cycle_upperoverheating_time, Extra upper heater time
|
||||
cycle_crystallisation_type, Second heating
|
||||
cycle_crystallisation_time, Second heating time
|
||||
cycle_loader_enable, Loader
|
||||
cycle_loader_lifter_lowerposition_delay, Loader descend delay
|
||||
cycle_loader_lifter_upperposition_delay, Loader ascend delay
|
||||
cycle_loader_split_sheet_time, Plate detachment delay
|
||||
cycle_loader_ejector_position, Expeller position
|
||||
cycle_loader_pallet_height, Pallet height
|
||||
cycle_loader_center_x, Centering X
|
||||
cycle_loader_center_y, Centering Y
|
||||
cycle_loader_checktichness_enabled, Check sheet thickness
|
||||
cycle_loader_suckers_vacuum, Suckers vacuum
|
||||
cycle_loader_ionizer_enabled, Ionizer enable
|
||||
cycle_loader_manualunloading_enabled, Manual unloading
|
||||
heats_lowerheaters_max_time, Lower heater time
|
||||
heats_lowerheaters_movement_enabled, Lower heater enable
|
||||
heats_lowerheaters_enabled, Lower heater ON
|
||||
heats_lowerheaters_oscillation, Lower heater Swing
|
||||
heats_upperheaters_max_time, Upper heater time
|
||||
heats_upperheaters_movement_enabled, Upper heater enable
|
||||
heats_upperheaters_enabled, Upper heater ON
|
||||
heats_upperheaters_oscillation, Upper heater swing
|
||||
heats_decomsustain_type, Type
|
||||
heats_decomsustain_decompression_flow, Sustain flow
|
||||
heats_decomsustain_min_blowing_time, Min blow time
|
||||
heats_decomsustain_sustain_delay, Sustain delay
|
||||
heats_decomsustain_decompression_delay, Decompression delay
|
||||
heats_decomsustain_decompression_duration, Decompression time
|
||||
heats_decomsustain_smoke_function_enabled, Smoke function
|
||||
pyrometer_pyrometer_enabled, Pyrometer enable
|
||||
pyrometer_pyrometer_setpoint, Pyrometer setpoint
|
||||
pyrometer_pyrometer_delay, Pyrometer delay
|
||||
pyrometer_upperthermoregulator_start_adjustment, Thermoregulation start
|
||||
pyrometer_upperthermoregulator_end_adjustment, Thermoregulation end
|
||||
pyrometer_upperthermoregulator_min_percentage, Min percentage
|
||||
pyrometer_upperthermoregulator_max_percentage, Max percentage
|
||||
pyrometer_upperthermoregulator_sleep_enabled, Sleep enable
|
||||
pyrometer_upperthermoregulator_sleep_percentage, Sleep percentage
|
||||
pyrometer_lowerthermoregulator_start_adjustment, Thermoregulation start
|
||||
pyrometer_lowerthermoregulator_end_adjustment, Thermoregulation end
|
||||
pyrometer_lowerthermoregulator_min_percentage, Min percentage
|
||||
pyrometer_lowerthermoregulator_max_percentage, Max percentage
|
||||
pyrometer_lowerthermoregulator_sleep_enabled, Sleep enable
|
||||
pyrometer_lowerthermoregulator_sleep_percentage, Sleep percentage
|
||||
pyrometer_upperthermoregulator_sleep_temperature, Sleep temperature
|
||||
pyrometer_upperthermoregulator_working_temperature, Working temperature
|
||||
pyrometer_lowerthermoregulator_sleep_temperature, Sleep temperature
|
||||
pyrometer_lowerthermoregulator_working_temperature, Working temperature
|
||||
drawing_type, Drawing type
|
||||
drawing_height, Bubble height
|
||||
drawing_delay, Drawing delay
|
||||
drawing_1_chart_setpointx, Time
|
||||
drawing_1_chart_setpointy, Flow
|
||||
drawing_photocell, Sensor
|
||||
drawing_mantaining_flow, Holding flow
|
||||
drawing_manual, Manual flow
|
||||
drawing_mould_up_delay, Mould ascend delay
|
||||
upperplate_cycle_type, Upperplate cycle
|
||||
upperplate_cycle_delay, Delay
|
||||
upperplate_cycle_time, Time
|
||||
upperplate_air_enable, Enable
|
||||
upperplate_air_delay, Delay
|
||||
upperplate_air_max_time, Max time
|
||||
upperplate_air_1_chart_setpointx, Time 1
|
||||
upperplate_air_1_chart_setpointy, Flow 1
|
||||
upperplate_air_2_chart_setpointx, Time 2
|
||||
upperplate_air_2_chart_setpointy, Flow 2
|
||||
upperplate_air_3_chart_setpointx, Time 3
|
||||
upperplate_air_3_chart_setpointy, Flow 3
|
||||
upperplate_air_manual, Manual flow
|
||||
upperplate_vacuum_enable, Enable
|
||||
upperplate_vacuum_delay, Delay
|
||||
upperplate_vacuum_max_time, Max Time
|
||||
upperplate_vacuum_1_chart_setpointx, Time 1
|
||||
upperplate_vacuum_1_chart_setpointy, Flow 1
|
||||
upperplate_vacuum_2_chart_setpointx, Time 2
|
||||
upperplate_vacuum_2_chart_setpointy, Flow 2
|
||||
upperplate_vacuum_3_chart_setpointx, Time 3
|
||||
upperplate_vacuum_3_chart_setpointy, Flow 3
|
||||
upperplate_vacuum_manual, Manual flow
|
||||
upperplate_extraction_enable, Enable
|
||||
upperplate_extraction_delay, Delay
|
||||
upperplate_extraction_1_chart_setpointx, Time
|
||||
upperplate_extraction_1_chart_setpointy, Flow
|
||||
upperplate_extraction_manual, Manual flow
|
||||
cooling_blowing_type, Coolers
|
||||
cooling_blowing_delay, Delay
|
||||
cooling_blowing_time, Time
|
||||
cooling_pyrometer_enabled, Enable
|
||||
cooling_pyrometer_setpoint, Setpoint
|
||||
cooling_pyrometer_delay, Delay
|
||||
cooling_nebulizer_type, Nebulizer
|
||||
cooling_nebulizer_delay, Delay
|
||||
cooling_nebulizer_time, Time
|
||||
cooling_telescopic_enable, Telescopic
|
||||
cooling_telescopic_position, Position 1
|
||||
cooling_telescopic_swing_enable, Swing
|
||||
cooling_telescopic_swing_stroke, Position 2
|
||||
cooling_shutter_1_opening_perc, Opening 1
|
||||
cooling_shutter_2_opening_perc, Opening 2
|
||||
cooling_shutter_3_opening_perc, Opening 3
|
||||
cooling_shutter_4_opening_perc, Opening 4
|
||||
cooling_shutter_5_opening_perc, Opening 5
|
||||
cooling_shutter_6_opening_perc, Opening 6
|
||||
cooling_shutter_7_opening_perc, Opening 7
|
||||
cooling_shutter_8_opening_perc, Opening 8
|
||||
cooling_shutter_9_opening_perc, Opening 9
|
||||
cooling_shutter_10_opening_perc, Opening 10
|
||||
cooling_shutter_11_opening_perc, Opening 11
|
||||
cooling_shutter_12_opening_perc, Opening 12
|
||||
cooling_shutter_13_opening_perc, Opening 13
|
||||
cooling_shutter_14_opening_perc, Opening 14
|
||||
cooling_shutter_15_opening_perc, Opening 15
|
||||
cooling_shutter_16_opening_perc, Opening 16
|
||||
vacuum_main_start, Start
|
||||
vacuum_main_delay, Delay
|
||||
vacuum_main_max_time, Max time
|
||||
vacuum_main_1_chart_setpointx, Time 1
|
||||
vacuum_main_1_chart_setpointy, Flow 1
|
||||
vacuum_main_2_chart_setpointx, Time 2
|
||||
vacuum_main_2_chart_setpointy, Flow 2
|
||||
vacuum_main_3_chart_setpointx, Time 3
|
||||
vacuum_main_3_chart_setpointy, Flow 3
|
||||
vacuum_main_manual, Manual flow
|
||||
vacuum_direct_enabled, Enable
|
||||
vacuum_direct_delay, Delay
|
||||
vacuum_direct_time, Time
|
||||
vacuum_aux_enabled, Enable
|
||||
vacuum_aux_delay, Delay
|
||||
vacuum_aux_max_time, Max Time
|
||||
vacuum_aux_1_chart_setpointx, Time 1
|
||||
vacuum_aux_1_chart_setpointy, Flow 1
|
||||
vacuum_aux_2_chart_setpointx, Time 2
|
||||
vacuum_aux_2_chart_setpointy, Flow 2
|
||||
vacuum_aux_3_chart_setpointx, Time 3
|
||||
vacuum_aux_3_chart_setpointy, Flow 3
|
||||
vacuum_aux_manual, Manual flow
|
||||
vacuum_pre_enabled, Enable
|
||||
vacuum_pre_delay, Delay
|
||||
vacuum_pre_max_time, Max Time
|
||||
vacuum_pre_1_chart_setpointx, Time 1
|
||||
vacuum_pre_1_chart_setpointy, Flow 1
|
||||
vacuum_pre_2_chart_setpointx, Time 2
|
||||
vacuum_pre_2_chart_setpointy, Flow 2
|
||||
vacuum_pre_3_chart_setpointx, Time 3
|
||||
vacuum_pre_3_chart_setpointy, Flow 3
|
||||
extraction_main_type, Type
|
||||
extraction_main_mould_dw_delay, Mould descend delay
|
||||
extraction_main_delay, Delay
|
||||
extraction_main_1_chart_setpointx, Time
|
||||
extraction_main_1_chart_setpointy, Flow
|
||||
extraction_main_manual, Manual flow
|
||||
extraction_aux_enabled, Enable
|
||||
extraction_aux_delay, Delay
|
||||
extraction_aux_1_chart_setpointx, Time
|
||||
extraction_aux_1_chart_setpointy, Flow
|
||||
extraction_aux_manual, Manual flow
|
||||
options_undercutmould_1_mode, Mode
|
||||
options_undercutmould_1_position, Position
|
||||
options_undercutmould_1_delay_acti, ON delay
|
||||
options_undercutmould_1_delay_dis, OFF delay
|
||||
options_undercutmould_2_mode, Mode
|
||||
options_undercutmould_2_position, Position
|
||||
options_undercutmould_2_delay_acti, ON delay
|
||||
options_undercutmould_2_delay_dis, OFF delay
|
||||
options_undercutmould_3_mode, Mode
|
||||
options_undercutmould_3_position, Position
|
||||
options_undercutmould_3_delay_acti, ON delay
|
||||
options_undercutmould_3_delay_dis, OFF delay
|
||||
options_undercutmould_4_mode, Mode
|
||||
options_undercutmould_4_position, Position
|
||||
options_undercutmould_4_delay_acti, ON delay
|
||||
options_undercutmould_4_delay_dis, OFF delay
|
||||
options_undercutmould_5_mode, Mode
|
||||
options_undercutmould_5_position, Position
|
||||
options_undercutmould_5_delay_acti, ON delay
|
||||
options_undercutmould_5_delay_dis, OFF delay
|
||||
options_undercutmould_6_mode, Mode
|
||||
options_undercutmould_6_position, Position
|
||||
options_undercutmould_6_delay_acti, ON delay
|
||||
options_undercutmould_6_delay_dis, OFF delay
|
||||
options_undercutmould_7_mode, Mode
|
||||
options_undercutmould_7_position, Position
|
||||
options_undercutmould_7_delay_acti, ON delay
|
||||
options_undercutmould_7_delay_dis, OFF delay
|
||||
options_undercutmould_8_mode, Mode
|
||||
options_undercutmould_8_position, Position
|
||||
options_undercutmould_8_delay_acti, ON delay
|
||||
options_undercutmould_8_delay_dis, OFF delay
|
||||
options_undercutmould_9_mode, Mode
|
||||
options_undercutmould_9_position, Position
|
||||
options_undercutmould_9_delay_acti, ON delay
|
||||
options_undercutmould_9_delay_dis, OFF delay
|
||||
options_undercutmould_10_mode, Mode
|
||||
options_undercutmould_10_position, Position
|
||||
options_undercutmould_10_delay_acti, ON delay
|
||||
options_undercutmould_10_delay_dis, OFF delay
|
||||
options_undercutupperplate_1_mode, Mode
|
||||
options_undercutupperplate_1_position, Position
|
||||
options_undercutupperplate_1_delay_acti, ON delay
|
||||
options_undercutupperplate_1_delay_dis, OFF delay
|
||||
options_undercutupperplate_2_mode, Mode
|
||||
options_undercutupperplate_2_position, Position
|
||||
options_undercutupperplate_2_delay_acti, ON delay
|
||||
options_undercutupperplate_2_delay_dis, OFF delay
|
||||
options_undercutupperplate_3_mode, Mode
|
||||
options_undercutupperplate_3_position, Position
|
||||
options_undercutupperplate_3_delay_acti, ON delay
|
||||
options_undercutupperplate_3_delay_dis, OFF delay
|
||||
options_undercutupperplate_4_mode, Mode
|
||||
options_undercutupperplate_4_position, Position
|
||||
options_undercutupperplate_4_delay_acti, ON delay
|
||||
options_undercutupperplate_4_delay_dis, OFF delay
|
||||
options_undercutupperplate_5_mode, Mode
|
||||
options_undercutupperplate_5_position, Position
|
||||
options_undercutupperplate_5_delay_acti, ON delay
|
||||
options_undercutupperplate_5_delay_dis, OFF delay
|
||||
options_undercutupperplate_6_mode, Mode
|
||||
options_undercutupperplate_6_position, Position
|
||||
options_undercutupperplate_6_delay_acti, ON delay
|
||||
options_undercutupperplate_6_delay_dis, OFF delay
|
||||
options_undercutupperplate_7_mode, Mode
|
||||
options_undercutupperplate_7_position, Position
|
||||
options_undercutupperplate_7_delay_acti, ON delay
|
||||
options_undercutupperplate_7_delay_dis, OFF delay
|
||||
options_undercutupperplate_8_mode, Mode
|
||||
options_undercutupperplate_8_position, Position
|
||||
options_undercutupperplate_8_delay_acti, ON delay
|
||||
options_undercutupperplate_8_delay_dis, OFF delay
|
||||
options_undercutupperplate_9_mode, Mode
|
||||
options_undercutupperplate_9_position, Position
|
||||
options_undercutupperplate_9_delay_acti, ON delay
|
||||
options_undercutupperplate_9_delay_dis, OFF delay
|
||||
options_undercutupperplate_10_mode, Mode
|
||||
options_undercutupperplate_10_position, Position
|
||||
options_undercutupperplate_10_delay_acti, ON delay
|
||||
options_undercutupperplate_10_delay_dis, OFF delay
|
||||
options_thermoregulator_1_enabled, Enable
|
||||
options_thermoregulator_1_setpoint, Setpoint
|
||||
options_thermoregulator_2_enabled, Enable
|
||||
options_thermoregulator_2_setpoint, Setpoint
|
||||
options_thermoregulator_3_enabled, Enable
|
||||
options_thermoregulator_3_setpoint, Setpoint
|
||||
options_thermoregulator_4_enabled, Enable
|
||||
options_thermoregulator_4_setpoint, Setpoint
|
||||
options_thermoregulator_5_enabled, Enable
|
||||
options_thermoregulator_5_setpoint, Setpoint
|
||||
options_thermoregulator_6_enabled, Enable
|
||||
options_thermoregulator_6_setpoint, Setpoint
|
||||
options_thermoregulator_7_enabled, Enable
|
||||
options_thermoregulator_7_setpoint, Setpoint
|
||||
options_thermoregulator_8_enabled, Enable
|
||||
options_thermoregulator_8_setpoint, Setpoint
|
||||
options_thermoregulator_9_enabled, Enable
|
||||
options_thermoregulator_9_setpoint, Setpoint
|
||||
options_thermoregulator_10_enabled, Enable
|
||||
options_thermoregulator_10_setpoint, Setpoint
|
||||
@@ -1,346 +1,350 @@
|
||||
mb_DiscesaCZ,↓ Cornice
|
||||
mb_MembDiscesaZ,↓ Controstampo
|
||||
mb_MembZ,Controstampo
|
||||
mb_Mod_MembSalitaZ,↑ Controstampo
|
||||
mb_Mod_AppoggioDiscesaW,↓ Stampo
|
||||
mb_Mod_RiscaldoInf,Riscaldo inferiore
|
||||
mb_Mod_RiscaldoSup,Riscaldo superiore
|
||||
mb_Mod_PirometroRisc,Pirometro riscaldo
|
||||
mb_Mod_DecompSustain,Decompressione/Sostentamento
|
||||
mb_Mod_Acrilico,Acrilico
|
||||
mb_Mod_RiscaldiIndietro,← Riscaldi
|
||||
mb_Mod_ExtraR,Riscaldo superiore aggiuntivo
|
||||
mb_Mod_Imbutitura,Imbutitura
|
||||
mb_Mod_SalitaW,↑ Stampo
|
||||
mb_Mod_AttesaStampo,Attesa stampo
|
||||
mb_Mod_Raffreddamento,Raffreddamento
|
||||
mb_Mod_PirometroRaffr,Pirometro raffreddamento
|
||||
mb_Mod_Vuoto,Vuoto
|
||||
mb_Mod_VuotoDiretto,Vuoto diretto
|
||||
mb_Mod_VuotoAux,Vuoto ausiliario
|
||||
mb_Mod_Nebulizz,Nebulizzatori
|
||||
mb_Mod_AttesaPartenzaZ,Attesa partenza Z
|
||||
mb_Mod_DiscesaZ,↓ Controstampo
|
||||
mb_Mod_Z,Controstampo basso
|
||||
mb_Mod_SalitaZ,↑ Controstampo
|
||||
mb_Mod_AriaZ,Aria controstampo
|
||||
mb_Mod_VuotoZ,Vuoto controstampo
|
||||
mb_Mod_ScaricoVuotoZ,Scarico vuoto controstampo
|
||||
mb_Mod_ScaricoVuoto,Scarico vuoto
|
||||
mb_Mod_EstrazioneZ,Estrazione controstampo
|
||||
mb_Mod_DiscesaAssistZ,↓ Controstampo
|
||||
mb_Mod_Estrazione,Estrazione
|
||||
mb_Mod_DiscesaW,↓ Stampo
|
||||
mb_Mod_RiscaldiIndietro2,← Riscaldi
|
||||
mb_Mod_SalitaCZ,↑ Cornice
|
||||
mb_Mod_Riscaldi2,Secondo riscaldo
|
||||
mb_Mod_Estrazione_Aux_W,Estrazione ausiliaria
|
||||
mb_Mod_Attesa_Pirometro,Attesa pirometro
|
||||
mb_Mod_Prevuoto,Prevuoto
|
||||
mb_Mod_SalitaAssistZ,↑ Controstampo
|
||||
general_sizes_mould_dim_x,Larghezza stampo
|
||||
general_sizes_mould_dim_y,Profondità stampo
|
||||
general_sizes_mould_max_height,Altezza massima stampo
|
||||
general_sizes_mould_min_height,Altezza minima stampo
|
||||
general_sizes_mould_base_height,Altezza base stampo
|
||||
general_sizes_sheet_material,Materiale
|
||||
general_sizes_sheet_dim_x,Larghezza lastra
|
||||
general_sizes_sheet_dim_y,Profondità lastra
|
||||
general_sizes_sheet_thickness,Spessore lastra
|
||||
general_sizes_plate_type,Piastrafinestra
|
||||
general_sizes_plate_dim_x,Larghezza piastrafinestra
|
||||
general_sizes_plate_dim_y,Profondità piastrafinestra
|
||||
general_sizes_frame_traverses,Traversino
|
||||
general_sizes_frame_dim_x,Larghezza cornice
|
||||
general_sizes_frame_dim_y,Profondità cornice
|
||||
general_sizes_upperplate_max_height,Altezza controstampo
|
||||
general_area_working_dxsx,Zona di lavoro
|
||||
positions_mould_lower_position,Quota stampo basso
|
||||
positions_mould_lower_speed,Velocità discesa
|
||||
positions_mould_intermediate_position,Quota stampo intermedio
|
||||
positions_mould_upper_position,Quota stampo alto
|
||||
positions_mould_upper_speed,Velocità salita
|
||||
positions_mould_upperdeceleration_position,Quota rallentamento salita
|
||||
positions_mould_upperdeceleration_speed,Velocità rallentamento salita
|
||||
positions_mould_lowerdeceleration_position,Quota rallentamento discesa
|
||||
positions_mould_lowerdeceleration_speed,Velocità rallentamento discesa
|
||||
positions_frame_lower_position,Quota cornice bassa
|
||||
positions_frame_lower_speed,Velocità discesa
|
||||
positions_frame_upper_position,Quota cornice alta
|
||||
positions_frame_upper_speed,Velocità salita
|
||||
positions_frame_intermediate_position,Quota cornice intermedia
|
||||
positions_frame_intermediate_speed,Velocità per quota intermedia
|
||||
positions_frame_unload_position,Quota cornice scarico
|
||||
positions_upperplate_lower_position,Quota controstampo basso
|
||||
positions_upperplate_lower_speed,Velocità discesa stampo
|
||||
positions_upperplate_upper_position,Quota controstampo alto
|
||||
positions_upperplate_upper_speed,Velocità salita controstampo
|
||||
positions_upperplate_upperdeceleration_position,Quota rallentamento salita controstampo
|
||||
positions_upperplate_upperdeceleration_speed,Velocità rallentamento salita controstampo
|
||||
positions_upperplate_lowerdeceleration_position,Quota rallentamento discesa controstampo
|
||||
positions_upperplate_lowerdeceleration_speed,Velocità rallentamento diescesa controstampo
|
||||
cycle_forming_type,Tipo ciclo
|
||||
cycle_forming_pause_cycle,Pausa ciclo
|
||||
cycle_forming_cooling_enabled,Raffreddamento a fine ciclo
|
||||
cycle_forming_blowingbox_enabled,Ventilazione cassone a fine ciclo
|
||||
cycle_acrylicframe_enabled,Acrilico
|
||||
cycle_acrylicframe_time,Durata acrilico
|
||||
cycle_upperoverheating_enabled,Abilitazione riscaldo superiore supplementare
|
||||
cycle_upperoverheating_time,Durata riscaldo superiore supplementare
|
||||
cycle_crystallisation_type,Secondo riscaldo
|
||||
cycle_crystallisation_time,Durata secondo riscaldo
|
||||
cycle_loader_enable,Caricatore
|
||||
cycle_loader_lifter_lowerposition_delay,Ritardo discesa sollevatore
|
||||
cycle_loader_lifter_upperposition_delay,Ritardo salita sollevatore
|
||||
cycle_loader_split_sheet_time,Ritardo distacco lastra
|
||||
cycle_loader_ejector_position,Quota espulsione
|
||||
cycle_loader_pallet_height,Altezza bancale
|
||||
cycle_loader_center_x,Centratura X
|
||||
cycle_loader_center_y,Centratura Y
|
||||
cycle_loader_checktichness_enabled,Controllo spessore
|
||||
cycle_loader_suckers_vacuum,Abilitazione vuoto ventose
|
||||
cycle_loader_ionizer_enabled,Abilitazione ionizzatore
|
||||
cycle_loader_manualunloading_enabled,Scarico manuale
|
||||
heats_lowerheaters_max_time,Durata massima riscaldo inferiore
|
||||
heats_lowerheaters_movement_enabled,Movimento riscaldo inferiore
|
||||
heats_lowerheaters_enabled,Accensione riscaldo inferiore
|
||||
heats_lowerheaters_oscillation,Oscillazione riscaldo inferiore
|
||||
heats_upperheaters_max_time,Durata massima riscaldo superiore
|
||||
heats_upperheaters_movement_enabled,Movimento riscaldo superiore
|
||||
heats_upperheaters_enabled,Accensione riscaldo superiore
|
||||
heats_upperheaters_oscillation,Oscillazione riscaldo superiore
|
||||
heats_decomsustain_type,Tipo decompressione/sostentamento
|
||||
heats_decomsustain_decompression_flow,Portata sostentamento
|
||||
heats_decomsustain_min_blowing_time,Durata minimo soffio
|
||||
heats_decomsustain_sustain_delay,Ritardo sostentamento
|
||||
heats_decomsustain_decompression_delay,Ritardo decompressione
|
||||
heats_decomsustain_decompression_duration,Durata decompressione
|
||||
heats_decomsustain_smoke_function_enabled,Funzione fumo
|
||||
pyrometer_pyrometer_enabled,Abilitazione pirometro
|
||||
pyrometer_pyrometer_setpoint,Setpoint pirometro
|
||||
pyrometer_pyrometer_delay,Ritardo pirometro
|
||||
pyrometer_upperthermoregulator_start_adjustment,Inizio termoregolazione
|
||||
pyrometer_upperthermoregulator_end_adjustment,Fine termoregolazione
|
||||
pyrometer_upperthermoregulator_min_percentage,Percentuale minima
|
||||
pyrometer_upperthermoregulator_max_percentage,Percentuale massima
|
||||
pyrometer_upperthermoregulator_sleep_enabled,Abilitazione riposo
|
||||
pyrometer_upperthermoregulator_sleep_percentage,Percentuale riposo
|
||||
pyrometer_lowerthermoregulator_start_adjustment,Inizio termoregolazione
|
||||
pyrometer_lowerthermoregulator_end_adjustment,Fine termoregolazione
|
||||
pyrometer_lowerthermoregulator_min_percentage,Percentuale minima
|
||||
pyrometer_lowerthermoregulator_max_percentage,Percentuale massima
|
||||
pyrometer_lowerthermoregulator_sleep_enabled,Abilitazione riposo
|
||||
pyrometer_lowerthermoregulator_sleep_percentage,Percentuale riposo
|
||||
pyrometer_upperthermoregulator_sleep_temperature,Temperatura riposo
|
||||
pyrometer_upperthermoregulator_working_temperature,Temperatura lavoro
|
||||
pyrometer_lowerthermoregulator_sleep_temperature,Temperatura riposo
|
||||
pyrometer_lowerthermoregulator_working_temperature,Temperatura lavoro
|
||||
drawing_type,Tipo imbutitura
|
||||
drawing_height,Altezza bolla
|
||||
drawing_delay,Ritardo imbutitura
|
||||
drawing_1_chart_setpointx,Durata
|
||||
drawing_1_chart_setpointy,Portata
|
||||
drawing_photocell,Scelta fotocellula
|
||||
drawing_mantaining_flow,Portata mantenimento
|
||||
drawing_manual,Portata manuale
|
||||
drawing_mould_up_delay,Ritardo salita stampo
|
||||
upperplate_cycle_type,Tipo ciclo controstampo
|
||||
upperplate_cycle_delay,Ritardo ciclo controstampo
|
||||
upperplate_cycle_time,Durata ciclo controstampo
|
||||
upperplate_air_enable,Abilitazione
|
||||
upperplate_air_delay,Ritardo
|
||||
upperplate_air_max_time,Durata massima
|
||||
upperplate_air_1_chart_setpointx,Durata 1
|
||||
upperplate_air_1_chart_setpointy,Portata 1
|
||||
upperplate_air_2_chart_setpointx,Durata 2
|
||||
upperplate_air_2_chart_setpointy,Portata 2
|
||||
upperplate_air_3_chart_setpointx,Durata 3
|
||||
upperplate_air_3_chart_setpointy,Portata 3
|
||||
upperplate_air_manual,Portata manuale
|
||||
upperplate_vacuum_enable,Abilitazione
|
||||
upperplate_vacuum_delay,Ritardo
|
||||
upperplate_vacuum_max_time,Durata massima
|
||||
upperplate_vacuum_1_chart_setpointx,Durata 1
|
||||
upperplate_vacuum_1_chart_setpointy,Portata 1
|
||||
upperplate_vacuum_2_chart_setpointx,Durata 2
|
||||
upperplate_vacuum_2_chart_setpointy,Portata 2
|
||||
upperplate_vacuum_3_chart_setpointx,Durata 3
|
||||
upperplate_vacuum_3_chart_setpointy,Portata 3
|
||||
upperplate_vacuum_manual,Portata manuale
|
||||
upperplate_extraction_enable,Abilitazione
|
||||
upperplate_extraction_delay,Ritardo
|
||||
upperplate_extraction_1_chart_setpointx,Durata
|
||||
upperplate_extraction_1_chart_setpointy,Portata
|
||||
upperplate_extraction_manual,Portata manuale
|
||||
cooling_blowing_type,Ventilatori
|
||||
cooling_blowing_delay,Ritardo
|
||||
cooling_blowing_time,Durata
|
||||
cooling_pyrometer_enabled,Abilitazione
|
||||
cooling_pyrometer_setpoint,Setpoint
|
||||
cooling_pyrometer_delay,Ritardo
|
||||
cooling_nebulizer_type,Nebulizzatori
|
||||
cooling_nebulizer_delay,Ritardo
|
||||
cooling_nebulizer_time,Durata
|
||||
cooling_telescopic_enable,Abilitazione telescopici
|
||||
cooling_telescopic_position,Posizione telescopici
|
||||
cooling_telescopic_swing_enable,Oscillazione telescopici
|
||||
cooling_telescopic_swing_stroke,Corsa oscillazione
|
||||
cooling_shutter_1_opening_perc,Apertura 1
|
||||
cooling_shutter_2_opening_perc,Apertura 2
|
||||
cooling_shutter_3_opening_perc,Apertura 3
|
||||
cooling_shutter_4_opening_perc,Apertura 4
|
||||
cooling_shutter_5_opening_perc,Apertura 5
|
||||
cooling_shutter_6_opening_perc,Apertura 6
|
||||
cooling_shutter_7_opening_perc,Apertura 7
|
||||
cooling_shutter_8_opening_perc,Apertura 8
|
||||
cooling_shutter_9_opening_perc,Apertura 9
|
||||
cooling_shutter_10_opening_perc,Apertura 10
|
||||
cooling_shutter_11_opening_perc,Apertura 11
|
||||
cooling_shutter_12_opening_perc,Apertura 12
|
||||
cooling_shutter_13_opening_perc,Apertura 13
|
||||
cooling_shutter_14_opening_perc,Apertura 14
|
||||
cooling_shutter_15_opening_perc,Apertura 15
|
||||
cooling_shutter_16_opening_perc,Apertura 16
|
||||
vacuum_main_start,Partenza vuoto
|
||||
vacuum_main_delay,Ritardo vuoto
|
||||
vacuum_main_max_time,Durata massima
|
||||
vacuum_main_1_chart_setpointx,Durata 1
|
||||
vacuum_main_1_chart_setpointy,Portata 1
|
||||
vacuum_main_2_chart_setpointx,Durata 2
|
||||
vacuum_main_2_chart_setpointy,Portata 2
|
||||
vacuum_main_3_chart_setpointx,Durata 3
|
||||
vacuum_main_3_chart_setpointy,Portata 3
|
||||
vacuum_main_manual,Portata manuale
|
||||
vacuum_direct_enabled,Abilitazione
|
||||
vacuum_direct_delay,Ritardo
|
||||
vacuum_direct_time,Durata
|
||||
vacuum_aux_enabled,Abilitazione
|
||||
vacuum_aux_delay,Ritardo
|
||||
vacuum_aux_max_time,Durata massima
|
||||
vacuum_aux_1_chart_setpointx,Durata 1
|
||||
vacuum_aux_1_chart_setpointy,Portata 1
|
||||
vacuum_aux_2_chart_setpointx,Durata 2
|
||||
vacuum_aux_2_chart_setpointy,Portata 2
|
||||
vacuum_aux_3_chart_setpointx,Durata 3
|
||||
vacuum_aux_3_chart_setpointy,Portata 3
|
||||
vacuum_aux_manual,Portata manuale
|
||||
vacuum_pre_enabled,Abilitazione
|
||||
vacuum_pre_delay,Ritardo
|
||||
vacuum_pre_max_time,Durata massima
|
||||
vacuum_pre_1_chart_setpointx,Durata 1
|
||||
vacuum_pre_1_chart_setpointy,Portata 1
|
||||
vacuum_pre_2_chart_setpointx,Durata 2
|
||||
vacuum_pre_2_chart_setpointy,Portata 2
|
||||
vacuum_pre_3_chart_setpointx,Durata 3
|
||||
vacuum_pre_3_chart_setpointy,Durata 3
|
||||
extraction_main_type,Tipo estrazione
|
||||
extraction_main_mould_dw_delay,Ritardo discesa stampo
|
||||
extraction_main_delay,Ritardo
|
||||
extraction_main_1_chart_setpointx,Durata
|
||||
extraction_main_1_chart_setpointy,Portata
|
||||
extraction_main_manual,Portata manuale
|
||||
extraction_aux_enabled,Abilitazione
|
||||
extraction_aux_delay,Ritardo
|
||||
extraction_aux_1_chart_setpointx,Durata
|
||||
extraction_aux_1_chart_setpointy,Portata
|
||||
extraction_aux_manual,Portata manuale
|
||||
options_undercutmould_1_mode,Modalità
|
||||
options_undercutmould_1_position,Quota
|
||||
options_undercutmould_1_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_1_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_2_mode,Modalità
|
||||
options_undercutmould_2_position,Quota
|
||||
options_undercutmould_2_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_2_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_3_mode,Modalità
|
||||
options_undercutmould_3_position,Quota
|
||||
options_undercutmould_3_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_3_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_4_mode,Modalità
|
||||
options_undercutmould_4_position,Quota
|
||||
options_undercutmould_4_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_4_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_5_mode,Modalità
|
||||
options_undercutmould_5_position,Quota
|
||||
options_undercutmould_5_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_5_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_6_mode,Modalità
|
||||
options_undercutmould_6_position,Quota
|
||||
options_undercutmould_6_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_6_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_7_mode,Modalità
|
||||
options_undercutmould_7_position,Quota
|
||||
options_undercutmould_7_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_7_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_8_mode,Modalità
|
||||
options_undercutmould_8_position,Quota
|
||||
options_undercutmould_8_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_8_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_9_mode,Modalità
|
||||
options_undercutmould_9_position,Quota
|
||||
options_undercutmould_9_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_9_delay_dis,Ritardo disattivazione
|
||||
options_undercutmould_10_mode,Modalità
|
||||
options_undercutmould_10_position,Quota
|
||||
options_undercutmould_10_delay_acti,Ritardo attivazione
|
||||
options_undercutmould_10_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_1_mode,Modalità
|
||||
options_undercutupperplate_1_position,Quota
|
||||
options_undercutupperplate_1_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_1_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_2_mode,Modalità
|
||||
options_undercutupperplate_2_position,Quota
|
||||
options_undercutupperplate_2_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_2_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_3_mode,Modalità
|
||||
options_undercutupperplate_3_position,Quota
|
||||
options_undercutupperplate_3_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_3_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_4_mode,Modalità
|
||||
options_undercutupperplate_4_position,Quota
|
||||
options_undercutupperplate_4_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_4_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_5_mode,Modalità
|
||||
options_undercutupperplate_5_position,Quota
|
||||
options_undercutupperplate_5_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_5_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_6_mode,Modalità
|
||||
options_undercutupperplate_6_position,Quota
|
||||
options_undercutupperplate_6_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_6_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_7_mode,Modalità
|
||||
options_undercutupperplate_7_position,Quota
|
||||
options_undercutupperplate_7_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_7_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_8_mode,Modalità
|
||||
options_undercutupperplate_8_position,Quota
|
||||
options_undercutupperplate_8_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_8_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_9_mode,Modalità
|
||||
options_undercutupperplate_9_position,Quota
|
||||
options_undercutupperplate_9_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_9_delay_dis,Ritardo disattivazione
|
||||
options_undercutupperplate_10_mode,Modalità
|
||||
options_undercutupperplate_10_position,Quota
|
||||
options_undercutupperplate_10_delay_acti,Ritardo attivazione
|
||||
options_undercutupperplate_10_delay_dis,Ritardo disattivazione
|
||||
options_thermoregulator_1_enabled,Abilitazione
|
||||
options_thermoregulator_1_setpoint,Setpoint
|
||||
options_thermoregulator_2_enabled,Abilitazione
|
||||
options_thermoregulator_2_setpoint,Setpoint
|
||||
options_thermoregulator_3_enabled,Abilitazione
|
||||
options_thermoregulator_3_setpoint,Setpoint
|
||||
options_thermoregulator_4_enabled,Abilitazione
|
||||
options_thermoregulator_4_setpoint,Setpoint
|
||||
options_thermoregulator_5_enabled,Abilitazione
|
||||
options_thermoregulator_5_setpoint,Setpoint
|
||||
options_thermoregulator_6_enabled,Abilitazione
|
||||
options_thermoregulator_6_setpoint,Setpoint
|
||||
options_thermoregulator_7_enabled,Abilitazione
|
||||
options_thermoregulator_7_setpoint,Setpoint
|
||||
options_thermoregulator_8_enabled,Abilitazione
|
||||
options_thermoregulator_8_setpoint,Setpoint
|
||||
options_thermoregulator_9_enabled,Abilitazione
|
||||
options_thermoregulator_9_setpoint,Setpoint
|
||||
options_thermoregulator_10_enabled,Abilitazione
|
||||
options_thermoregulator_10_setpoint,Setpoint
|
||||
mb_DiscesaCZ, ↓ Cornice
|
||||
mb_MembDiscesaZ, ↓ Controstampo
|
||||
mb_MembZ, Controstampo
|
||||
mb_Mod_MembSalitaZ, ↑ Controstampo
|
||||
mb_Mod_AppoggioDiscesaW, ↓ Stampo
|
||||
mb_Mod_RiscaldoInf, Riscaldo inferiore
|
||||
mb_Mod_RiscaldoSup, Riscaldo superiore
|
||||
mb_Mod_PirometroRisc, Pirometro riscaldo
|
||||
mb_Mod_DecompSustain, Decompressione/Sostentamento
|
||||
mb_Mod_Acrilico, Acrilico
|
||||
mb_Mod_RiscaldiIndietro, ← Riscaldi
|
||||
mb_Mod_ExtraR, Riscaldo superiore aggiuntivo
|
||||
mb_Mod_Imbutitura, Imbutitura
|
||||
mb_Mod_SalitaW, ↑ Stampo
|
||||
mb_Mod_AttesaStampo, Attesa stampo
|
||||
mb_Mod_Raffreddamento, Raffreddamento
|
||||
mb_Mod_PirometroRaffr, Pirometro raffreddamento
|
||||
mb_Mod_Vuoto, Vuoto
|
||||
mb_Mod_VuotoDiretto, Vuoto diretto
|
||||
mb_Mod_VuotoAux, Vuoto ausiliario
|
||||
mb_Mod_Nebulizz, Nebulizzatori
|
||||
mb_Mod_AttesaPartenzaZ, Attesa partenza Z
|
||||
mb_Mod_DiscesaZ, ↓ Controstampo
|
||||
mb_Mod_Z, Controstampo basso
|
||||
mb_Mod_SalitaZ, ↑ Controstampo
|
||||
mb_Mod_AriaZ, Aria controstampo
|
||||
mb_Mod_VuotoZ, Vuoto controstampo
|
||||
mb_Mod_ScaricoVuotoZ, Scarico vuoto controstampo
|
||||
mb_Mod_ScaricoVuoto, Scarico vuoto
|
||||
mb_Mod_EstrazioneZ, Estrazione controstampo
|
||||
mb_Mod_DiscesaAssistZ, ↓ Controstampo
|
||||
mb_Mod_Estrazione, Estrazione
|
||||
mb_Mod_DiscesaW, ↓ Stampo
|
||||
mb_Mod_RiscaldiIndietro2, ← Riscaldi
|
||||
mb_Mod_SalitaCZ, ↑ Cornice
|
||||
mb_Mod_Riscaldi2, Secondo riscaldo
|
||||
mb_Mod_Estrazione_Aux_W, Estrazione ausiliaria
|
||||
mb_Mod_Attesa_Pirometro, Attesa pirometro
|
||||
mb_Mod_Prevuoto, Prevuoto
|
||||
mb_Mod_SalitaAssistZ, ↑ Controstampo
|
||||
general_sizes_mould_dim_x, Larghezza stampo
|
||||
general_sizes_mould_dim_y, Profondità stampo
|
||||
general_sizes_mould_max_height, Altezza massima stampo
|
||||
general_sizes_mould_min_height, Altezza negativa stampo
|
||||
general_sizes_mould_base_height, Altezza base stampo
|
||||
general_sizes_sheet_material, Materiale
|
||||
general_sizes_sheet_dim_x, Larghezza lastra
|
||||
general_sizes_sheet_dim_y, Profondità lastra
|
||||
general_sizes_sheet_thickness, Spessore lastra
|
||||
general_sizes_plate_type, Piastrafinestra
|
||||
general_sizes_plate_dim_x, Larghezza piastrafinestra
|
||||
general_sizes_plate_dim_x_button, Muovi
|
||||
general_sizes_plate_dim_y, Profondità piastrafinestra
|
||||
general_sizes_plate_dim_y_button, Muovi
|
||||
general_sizes_frame_traverses, Traversino
|
||||
general_sizes_frame_dim_x, Larghezza cornice
|
||||
general_sizes_frame_dim_x_button, Muovi
|
||||
general_sizes_frame_dim_y, Profondità cornice
|
||||
general_sizes_frame_dim_y_button, Muovi
|
||||
general_sizes_upperplate_max_height, Altezza controstampo
|
||||
general_area_working_dxsx, Zona di lavoro
|
||||
positions_mould_lower_position, Quota stampo basso
|
||||
positions_mould_lower_speed, Velocità discesa
|
||||
positions_mould_intermediate_position, Quota stampo intermedio
|
||||
positions_mould_upper_position, Quota stampo alto
|
||||
positions_mould_upper_speed, Velocità salita
|
||||
positions_mould_upperdeceleration_position, Corsa rallentamento salita
|
||||
positions_mould_upperdeceleration_speed, Velocità rallentamento salita
|
||||
positions_mould_lowerdeceleration_position, Corsa rallentamento discesa
|
||||
positions_mould_lowerdeceleration_speed, Velocità rallentamento discesa
|
||||
positions_frame_lower_position, Quota cornice bassa
|
||||
positions_frame_lower_speed, Velocità discesa
|
||||
positions_frame_upper_position, Quota cornice alta
|
||||
positions_frame_upper_speed, Velocità salita
|
||||
positions_frame_intermediate_position, Quota cornice intermedia
|
||||
positions_frame_intermediate_speed, Velocità per quota intermedia
|
||||
positions_frame_unload_position, Quota cornice scarico
|
||||
positions_upperplate_lower_position, Quota controstampo basso
|
||||
positions_upperplate_lower_speed, Velocità discesa stampo
|
||||
positions_upperplate_upper_position, Quota controstampo alto
|
||||
positions_upperplate_upper_speed, Velocità salita controstampo
|
||||
positions_upperplate_upperdeceleration_position, Corsa rallentamento salita controstampo
|
||||
positions_upperplate_upperdeceleration_speed, Velocità rallentamento salita controstampo
|
||||
positions_upperplate_lowerdeceleration_position, Corsa rallentamento discesa controstampo
|
||||
positions_upperplate_lowerdeceleration_speed, Velocità rallentamento discesa controstampo
|
||||
cycle_forming_type, Tipo ciclo
|
||||
cycle_forming_pause_cycle, Pausa ciclo
|
||||
cycle_forming_cooling_enabled, Raffreddamento a fine ciclo
|
||||
cycle_forming_blowingbox_enabled, Ventilazione cassone a fine ciclo
|
||||
cycle_acrylicframe_enabled, Acrilico
|
||||
cycle_acrylicframe_time, Durata acrilico
|
||||
cycle_upperoverheating_enabled, Abilitazione riscaldo superiore supplementare
|
||||
cycle_upperoverheating_time, Durata riscaldo superiore supplementare
|
||||
cycle_crystallisation_type, Secondo riscaldo
|
||||
cycle_crystallisation_time, Durata secondo riscaldo
|
||||
cycle_loader_enable, Caricatore
|
||||
cycle_loader_lifter_lowerposition_delay, Ritardo discesa sollevatore
|
||||
cycle_loader_lifter_upperposition_delay, Ritardo salita sollevatore
|
||||
cycle_loader_split_sheet_time, Ritardo distacco lastra
|
||||
cycle_loader_ejector_position, Quota espulsione
|
||||
cycle_loader_pallet_height, Altezza bancale
|
||||
cycle_loader_center_x, Centratura X
|
||||
cycle_loader_center_y, Centratura Y
|
||||
cycle_loader_checktichness_enabled, Controllo spessore
|
||||
cycle_loader_suckers_vacuum, Abilitazione vuoto ventose
|
||||
cycle_loader_ionizer_enabled, Abilitazione ionizzatore
|
||||
cycle_loader_manualunloading_enabled, Scarico manuale
|
||||
heats_lowerheaters_max_time, Durata massima riscaldo inferiore
|
||||
heats_lowerheaters_movement_enabled, Movimento riscaldo inferiore
|
||||
heats_lowerheaters_enabled, Accensione riscaldo inferiore
|
||||
heats_lowerheaters_oscillation, Oscillazione riscaldo inferiore
|
||||
heats_upperheaters_max_time, Durata massima riscaldo superiore
|
||||
heats_upperheaters_movement_enabled, Movimento riscaldo superiore
|
||||
heats_upperheaters_enabled, Accensione riscaldo superiore
|
||||
heats_upperheaters_oscillation, Oscillazione riscaldo superiore
|
||||
heats_decomsustain_type, Tipo
|
||||
heats_decomsustain_decompression_flow, Portata sostentamento
|
||||
heats_decomsustain_min_blowing_time, Durata minimo soffio
|
||||
heats_decomsustain_sustain_delay, Ritardo sostentamento
|
||||
heats_decomsustain_decompression_delay, Ritardo decompressione
|
||||
heats_decomsustain_decompression_duration, Durata decompressione
|
||||
heats_decomsustain_smoke_function_enabled, Funzione fumo
|
||||
pyrometer_pyrometer_enabled, Abilitazione pirometro
|
||||
pyrometer_pyrometer_setpoint, Setpoint pirometro
|
||||
pyrometer_pyrometer_delay, Ritardo pirometro
|
||||
pyrometer_upperthermoregulator_start_adjustment, Inizio termoregolazione
|
||||
pyrometer_upperthermoregulator_end_adjustment, Fine termoregolazione
|
||||
pyrometer_upperthermoregulator_min_percentage, Percentuale minima
|
||||
pyrometer_upperthermoregulator_max_percentage, Percentuale massima
|
||||
pyrometer_upperthermoregulator_sleep_enabled, Abilitazione riposo
|
||||
pyrometer_upperthermoregulator_sleep_percentage, Percentuale riposo
|
||||
pyrometer_lowerthermoregulator_start_adjustment, Inizio termoregolazione
|
||||
pyrometer_lowerthermoregulator_end_adjustment, Fine termoregolazione
|
||||
pyrometer_lowerthermoregulator_min_percentage, Percentuale minima
|
||||
pyrometer_lowerthermoregulator_max_percentage, Percentuale massima
|
||||
pyrometer_lowerthermoregulator_sleep_enabled, Abilitazione riposo
|
||||
pyrometer_lowerthermoregulator_sleep_percentage, Percentuale riposo
|
||||
pyrometer_upperthermoregulator_sleep_temperature, Temperatura riposo
|
||||
pyrometer_upperthermoregulator_working_temperature, Temperatura lavoro
|
||||
pyrometer_lowerthermoregulator_sleep_temperature, Temperatura riposo
|
||||
pyrometer_lowerthermoregulator_working_temperature, Temperatura lavoro
|
||||
drawing_type, Tipo imbutitura
|
||||
drawing_height, Altezza pallone
|
||||
drawing_delay, Ritardo imbutitura
|
||||
drawing_1_chart_setpointx, Durata
|
||||
drawing_1_chart_setpointy, Portata
|
||||
drawing_photocell, Scelta fotocellula
|
||||
drawing_mantaining_flow, Portata mantenimento
|
||||
drawing_manual, Portata manuale
|
||||
drawing_mould_up_delay, Ritardo salita stampo
|
||||
upperplate_cycle_type, Tipo ciclo controstampo
|
||||
upperplate_cycle_delay, Ritardo
|
||||
upperplate_cycle_time, Durata
|
||||
upperplate_air_enable, Abilitazione
|
||||
upperplate_air_delay, Ritardo
|
||||
upperplate_air_max_time, Durata massima
|
||||
upperplate_air_1_chart_setpointx, Durata 1
|
||||
upperplate_air_1_chart_setpointy, Portata 1
|
||||
upperplate_air_2_chart_setpointx, Durata 2
|
||||
upperplate_air_2_chart_setpointy, Portata 2
|
||||
upperplate_air_3_chart_setpointx, Durata 3
|
||||
upperplate_air_3_chart_setpointy, Portata 3
|
||||
upperplate_air_manual, Portata manuale
|
||||
upperplate_vacuum_enable, Abilitazione
|
||||
upperplate_vacuum_delay, Ritardo
|
||||
upperplate_vacuum_max_time, Durata massima
|
||||
upperplate_vacuum_1_chart_setpointx, Durata 1
|
||||
upperplate_vacuum_1_chart_setpointy, Portata 1
|
||||
upperplate_vacuum_2_chart_setpointx, Durata 2
|
||||
upperplate_vacuum_2_chart_setpointy, Portata 2
|
||||
upperplate_vacuum_3_chart_setpointx, Durata 3
|
||||
upperplate_vacuum_3_chart_setpointy, Portata 3
|
||||
upperplate_vacuum_manual, Portata manuale
|
||||
upperplate_extraction_enable, Abilitazione
|
||||
upperplate_extraction_delay, Ritardo
|
||||
upperplate_extraction_1_chart_setpointx, Durata
|
||||
upperplate_extraction_1_chart_setpointy, Portata
|
||||
upperplate_extraction_manual, Portata manuale
|
||||
cooling_blowing_type, Ventilatori
|
||||
cooling_blowing_delay, Ritardo
|
||||
cooling_blowing_time, Durata
|
||||
cooling_pyrometer_enabled, Abilitazione
|
||||
cooling_pyrometer_setpoint, Setpoint
|
||||
cooling_pyrometer_delay, Ritardo
|
||||
cooling_nebulizer_type, Nebulizzatori
|
||||
cooling_nebulizer_delay, Ritardo
|
||||
cooling_nebulizer_time, Durata
|
||||
cooling_telescopic_enable, Telescopici
|
||||
cooling_telescopic_position, Quota 1
|
||||
cooling_telescopic_swing_enable, Oscillazione ventilatori
|
||||
cooling_telescopic_swing_stroke, Quota 2
|
||||
cooling_shutter_1_opening_perc, Apertura 1
|
||||
cooling_shutter_2_opening_perc, Apertura 2
|
||||
cooling_shutter_3_opening_perc, Apertura 3
|
||||
cooling_shutter_4_opening_perc, Apertura 4
|
||||
cooling_shutter_5_opening_perc, Apertura 5
|
||||
cooling_shutter_6_opening_perc, Apertura 6
|
||||
cooling_shutter_7_opening_perc, Apertura 7
|
||||
cooling_shutter_8_opening_perc, Apertura 8
|
||||
cooling_shutter_9_opening_perc, Apertura 9
|
||||
cooling_shutter_10_opening_perc, Apertura 10
|
||||
cooling_shutter_11_opening_perc, Apertura 11
|
||||
cooling_shutter_12_opening_perc, Apertura 12
|
||||
cooling_shutter_13_opening_perc, Apertura 13
|
||||
cooling_shutter_14_opening_perc, Apertura 14
|
||||
cooling_shutter_15_opening_perc, Apertura 15
|
||||
cooling_shutter_16_opening_perc, Apertura 16
|
||||
vacuum_main_start, Partenza
|
||||
vacuum_main_delay, Ritardo
|
||||
vacuum_main_max_time, Durata massima
|
||||
vacuum_main_1_chart_setpointx, Durata 1
|
||||
vacuum_main_1_chart_setpointy, Portata 1
|
||||
vacuum_main_2_chart_setpointx, Durata 2
|
||||
vacuum_main_2_chart_setpointy, Portata 2
|
||||
vacuum_main_3_chart_setpointx, Durata 3
|
||||
vacuum_main_3_chart_setpointy, Portata 3
|
||||
vacuum_main_manual, Portata manuale
|
||||
vacuum_direct_enabled, Abilitazione
|
||||
vacuum_direct_delay, Ritardo
|
||||
vacuum_direct_time, Durata
|
||||
vacuum_aux_enabled, Abilitazione
|
||||
vacuum_aux_delay, Ritardo
|
||||
vacuum_aux_max_time, Durata massima
|
||||
vacuum_aux_1_chart_setpointx, Durata 1
|
||||
vacuum_aux_1_chart_setpointy, Portata 1
|
||||
vacuum_aux_2_chart_setpointx, Durata 2
|
||||
vacuum_aux_2_chart_setpointy, Portata 2
|
||||
vacuum_aux_3_chart_setpointx, Durata 3
|
||||
vacuum_aux_3_chart_setpointy, Portata 3
|
||||
vacuum_aux_manual, Portata manuale
|
||||
vacuum_pre_enabled, Abilitazione
|
||||
vacuum_pre_delay, Ritardo
|
||||
vacuum_pre_max_time, Durata massima
|
||||
vacuum_pre_1_chart_setpointx, Durata 1
|
||||
vacuum_pre_1_chart_setpointy, Portata 1
|
||||
vacuum_pre_2_chart_setpointx, Durata 2
|
||||
vacuum_pre_2_chart_setpointy, Portata 2
|
||||
vacuum_pre_3_chart_setpointx, Durata 3
|
||||
vacuum_pre_3_chart_setpointy, Durata 3
|
||||
extraction_main_type, Tipo estrazione
|
||||
extraction_main_mould_dw_delay, Ritardo discesa stampo
|
||||
extraction_main_delay, Ritardo
|
||||
extraction_main_1_chart_setpointx, Durata
|
||||
extraction_main_1_chart_setpointy, Portata
|
||||
extraction_main_manual, Portata manuale
|
||||
extraction_aux_enabled, Abilitazione
|
||||
extraction_aux_delay, Ritardo
|
||||
extraction_aux_1_chart_setpointx, Durata
|
||||
extraction_aux_1_chart_setpointy, Portata
|
||||
extraction_aux_manual, Portata manuale
|
||||
options_undercutmould_1_mode, Modalità
|
||||
options_undercutmould_1_position, Quota
|
||||
options_undercutmould_1_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_1_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_2_mode, Modalità
|
||||
options_undercutmould_2_position, Quota
|
||||
options_undercutmould_2_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_2_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_3_mode, Modalità
|
||||
options_undercutmould_3_position, Quota
|
||||
options_undercutmould_3_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_3_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_4_mode, Modalità
|
||||
options_undercutmould_4_position, Quota
|
||||
options_undercutmould_4_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_4_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_5_mode, Modalità
|
||||
options_undercutmould_5_position, Quota
|
||||
options_undercutmould_5_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_5_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_6_mode, Modalità
|
||||
options_undercutmould_6_position, Quota
|
||||
options_undercutmould_6_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_6_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_7_mode, Modalità
|
||||
options_undercutmould_7_position, Quota
|
||||
options_undercutmould_7_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_7_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_8_mode, Modalità
|
||||
options_undercutmould_8_position, Quota
|
||||
options_undercutmould_8_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_8_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_9_mode, Modalità
|
||||
options_undercutmould_9_position, Quota
|
||||
options_undercutmould_9_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_9_delay_dis, Ritardo disattivazione
|
||||
options_undercutmould_10_mode, Modalità
|
||||
options_undercutmould_10_position, Quota
|
||||
options_undercutmould_10_delay_acti, Ritardo attivazione
|
||||
options_undercutmould_10_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_1_mode, Modalità
|
||||
options_undercutupperplate_1_position, Quota
|
||||
options_undercutupperplate_1_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_1_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_2_mode, Modalità
|
||||
options_undercutupperplate_2_position, Quota
|
||||
options_undercutupperplate_2_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_2_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_3_mode, Modalità
|
||||
options_undercutupperplate_3_position, Quota
|
||||
options_undercutupperplate_3_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_3_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_4_mode, Modalità
|
||||
options_undercutupperplate_4_position, Quota
|
||||
options_undercutupperplate_4_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_4_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_5_mode, Modalità
|
||||
options_undercutupperplate_5_position, Quota
|
||||
options_undercutupperplate_5_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_5_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_6_mode, Modalità
|
||||
options_undercutupperplate_6_position, Quota
|
||||
options_undercutupperplate_6_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_6_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_7_mode, Modalità
|
||||
options_undercutupperplate_7_position, Quota
|
||||
options_undercutupperplate_7_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_7_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_8_mode, Modalità
|
||||
options_undercutupperplate_8_position, Quota
|
||||
options_undercutupperplate_8_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_8_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_9_mode, Modalità
|
||||
options_undercutupperplate_9_position, Quota
|
||||
options_undercutupperplate_9_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_9_delay_dis, Ritardo disattivazione
|
||||
options_undercutupperplate_10_mode, Modalità
|
||||
options_undercutupperplate_10_position, Quota
|
||||
options_undercutupperplate_10_delay_acti, Ritardo attivazione
|
||||
options_undercutupperplate_10_delay_dis, Ritardo disattivazione
|
||||
options_thermoregulator_1_enabled, Abilitazione
|
||||
options_thermoregulator_1_setpoint, Setpoint
|
||||
options_thermoregulator_2_enabled, Abilitazione
|
||||
options_thermoregulator_2_setpoint, Setpoint
|
||||
options_thermoregulator_3_enabled, Abilitazione
|
||||
options_thermoregulator_3_setpoint, Setpoint
|
||||
options_thermoregulator_4_enabled, Abilitazione
|
||||
options_thermoregulator_4_setpoint, Setpoint
|
||||
options_thermoregulator_5_enabled, Abilitazione
|
||||
options_thermoregulator_5_setpoint, Setpoint
|
||||
options_thermoregulator_6_enabled, Abilitazione
|
||||
options_thermoregulator_6_setpoint, Setpoint
|
||||
options_thermoregulator_7_enabled, Abilitazione
|
||||
options_thermoregulator_7_setpoint, Setpoint
|
||||
options_thermoregulator_8_enabled, Abilitazione
|
||||
options_thermoregulator_8_setpoint, Setpoint
|
||||
options_thermoregulator_9_enabled, Abilitazione
|
||||
options_thermoregulator_9_setpoint, Setpoint
|
||||
options_thermoregulator_10_enabled, Abilitazione
|
||||
options_thermoregulator_10_setpoint, Setpoint
|
||||
|
||||
@@ -0,0 +1,650 @@
|
||||
001, ALARM AXIS ID W1
|
||||
002, ALARM AXIS ID W2
|
||||
003, ALARM AXIS ID W3
|
||||
004, ALARM AXIS ID W4
|
||||
005, ALARM AXIS ID Z1
|
||||
006, ALARM AXIS ID Z2
|
||||
007, ALARM AXIS ID Z3
|
||||
008, ALARM AXIS ID Z4
|
||||
009, ALARM AXIS ID R1
|
||||
010, ALARM AXIS ID R2
|
||||
011, ALARM AXIS ID S1
|
||||
012, ALARM AXIS ID S2
|
||||
013, ALARM AXIS ID CZ1
|
||||
014, ALARM AXIS ID CZ2
|
||||
015, ALARM AXIS ID CZ3
|
||||
016, ALARM AXIS ID CZ4
|
||||
017, ALARM AXIS ID U1
|
||||
018, ALARM AXIS ID U2
|
||||
019, ALARM AXIS ID P
|
||||
020, ALARM AXIS ID X
|
||||
021, ALARM AXIS ID CX1
|
||||
022, ALARM AXIS ID CX2
|
||||
023, ALARM AXIS ID CY1
|
||||
024, ALARM AXIS ID CY2
|
||||
025, ALARM AXIS ID F1
|
||||
026, ALARM AXIS ID F2
|
||||
027, ALARM AXIS ID F3
|
||||
028, ALARM AXIS ID F4
|
||||
029, ALARM AXIS ID F11
|
||||
030, ALARM AXIS ID F12
|
||||
031, ALARM AXIS ID F13
|
||||
032, ALARM AXIS ID F14
|
||||
033, ALARM AXIS ID E
|
||||
034, ALARM AXIS ID M
|
||||
035, ALARM AXIS ID 35
|
||||
036, ALARM AXIS ID 36
|
||||
037, ALARM AXIS ID 37
|
||||
038, ALARM AXIS ID 38
|
||||
039, ALARM AXIS ID 39
|
||||
040, ALARM AXIS ID 40
|
||||
041, ALARM AXIS ID 41
|
||||
042, ALARM AXIS ID 42
|
||||
043, ALARM AXIS ID 43
|
||||
044, ALARM AXIS ID 44
|
||||
045, ALARM AXIS ID 45
|
||||
046, ALARM AXIS ID 46
|
||||
047, ALARM AXIS ID 47
|
||||
048, ALARM AXIS ID 48
|
||||
049, ALARM AXIS ID 49
|
||||
050, ALARM AXIS ID 50
|
||||
051, ALARM AXIS ID 51
|
||||
052, ALARM AXIS ID 52
|
||||
053, ALARM AXIS ID 53
|
||||
054, ALARM AXIS ID 54
|
||||
055, ALARM AXIS ID 55
|
||||
056, ALARM AXIS ID 56
|
||||
057, ALARM AXIS ID 57
|
||||
058, ALARM AXIS ID 58
|
||||
059, ALARM AXIS ID 59
|
||||
060, ALARM AXIS ID 60
|
||||
061, ALARM AXIS ID 61
|
||||
062, ALARM AXIS ID 62
|
||||
063, ALARM AXIS ID 63
|
||||
064, ALARM AXIS ID 64
|
||||
065, ONE OR MORE AXIS NOT REFERRED
|
||||
066, ONE OR MORE GANTRY NOT ALIGNED
|
||||
067, ONE OR MORE GANTRY IN ERROR
|
||||
068, BRAKE TEST FAILED - CONTACT CMS
|
||||
069, Message Not found N.69
|
||||
070, Message Not found N.70
|
||||
071, Message Not found N.71
|
||||
072, Message Not found N.72
|
||||
073, Message Not found N.73
|
||||
074, Message Not found N.74
|
||||
075, Message Not found N.75
|
||||
076, Message Not found N.76
|
||||
077, Message Not found N.77
|
||||
078, Message Not found N.78
|
||||
079, Message Not found N.79
|
||||
080, Message Not found N.80
|
||||
081, Message Not found N.81
|
||||
082, Message Not found N.82
|
||||
083, Message Not found N.83
|
||||
084, Message Not found N.84
|
||||
085, Message Not found N.85
|
||||
086, Message Not found N.86
|
||||
087, Message Not found N.87
|
||||
088, Message Not found N.88
|
||||
089, Message Not found N.89
|
||||
090, Message Not found N.90
|
||||
091, Message Not found N.91
|
||||
092, Message Not found N.92
|
||||
093, Message Not found N.93
|
||||
094, Message Not found N.94
|
||||
095, Message Not found N.95
|
||||
096, Message Not found N.96
|
||||
097, Message Not found N.97
|
||||
098, Message Not found N.98
|
||||
099, Message Not found N.99
|
||||
100, Message Not found N.100
|
||||
101, Message Not found N.101
|
||||
102, Message Not found N.102
|
||||
103, Message Not found N.103
|
||||
104, Message Not found N.104
|
||||
105, Message Not found N.105
|
||||
106, Message Not found N.106
|
||||
107, Message Not found N.107
|
||||
108, Message Not found N.108
|
||||
109, Message Not found N.109
|
||||
110, Message Not found N.110
|
||||
111, Message Not found N.111
|
||||
112, Message Not found N.112
|
||||
113, Message Not found N.113
|
||||
114, Message Not found N.114
|
||||
115, Message Not found N.115
|
||||
116, Message Not found N.116
|
||||
117, Message Not found N.117
|
||||
118, Message Not found N.118
|
||||
119, Message Not found N.119
|
||||
120, Message Not found N.120
|
||||
121, Message Not found N.121
|
||||
122, Message Not found N.122
|
||||
123, Message Not found N.123
|
||||
124, Message Not found N.124
|
||||
125, Message Not found N.125
|
||||
126, Message Not found N.126
|
||||
127, Message Not found N.127
|
||||
128, Message Not found N.128
|
||||
129, Message Not found N.129
|
||||
130, Message Not found N.130
|
||||
131, Message Not found N.131
|
||||
132, Message Not found N.132
|
||||
133, Message Not found N.133
|
||||
134, Message Not found N.134
|
||||
135, Message Not found N.135
|
||||
136, Message Not found N.136
|
||||
137, Message Not found N.137
|
||||
138, Message Not found N.138
|
||||
139, Message Not found N.139
|
||||
140, Message Not found N.140
|
||||
141, Message Not found N.141
|
||||
142, Message Not found N.142
|
||||
143, Message Not found N.143
|
||||
144, Message Not found N.144
|
||||
145, Message Not found N.145
|
||||
146, Message Not found N.146
|
||||
147, Message Not found N.147
|
||||
148, Message Not found N.148
|
||||
149, Message Not found N.149
|
||||
150, Message Not found N.150
|
||||
151, Message Not found N.151
|
||||
152, Message Not found N.152
|
||||
153, Message Not found N.153
|
||||
154, Message Not found N.154
|
||||
155, Message Not found N.155
|
||||
156, Message Not found N.156
|
||||
157, Message Not found N.157
|
||||
158, Message Not found N.158
|
||||
159, Message Not found N.159
|
||||
160, Message Not found N.160
|
||||
161, Message Not found N.161
|
||||
162, Message Not found N.162
|
||||
163, Message Not found N.163
|
||||
164, Message Not found N.164
|
||||
165, Message Not found N.165
|
||||
166, Message Not found N.166
|
||||
167, Message Not found N.167
|
||||
168, Message Not found N.168
|
||||
169, Message Not found N.169
|
||||
170, Message Not found N.170
|
||||
171, Message Not found N.171
|
||||
172, Message Not found N.172
|
||||
173, Message Not found N.173
|
||||
174, Message Not found N.174
|
||||
175, Message Not found N.175
|
||||
176, Message Not found N.176
|
||||
177, Message Not found N.177
|
||||
178, Message Not found N.178
|
||||
179, Message Not found N.179
|
||||
180, Message Not found N.180
|
||||
181, Message Not found N.181
|
||||
182, Message Not found N.182
|
||||
183, Message Not found N.183
|
||||
184, Message Not found N.184
|
||||
185, Message Not found N.185
|
||||
186, Message Not found N.186
|
||||
187, Message Not found N.187
|
||||
188, Message Not found N.188
|
||||
189, Message Not found N.189
|
||||
190, Message Not found N.190
|
||||
191, Message Not found N.191
|
||||
192, Message Not found N.192
|
||||
193, Message Not found N.193
|
||||
194, Message Not found N.194
|
||||
195, Message Not found N.195
|
||||
196, Message Not found N.196
|
||||
197, Message Not found N.197
|
||||
198, Message Not found N.198
|
||||
199, Message Not found N.199
|
||||
200, PARAMETERS NOT INITIALIZED
|
||||
201, PLC COMMUNICATION ERROR
|
||||
202, PROFINET COMMUNICATION ERROR
|
||||
203, THERMOREGULATOR COMMUNICATION ERROR
|
||||
204, KEYBOARD COMMUNICATION ERROR
|
||||
205, HEATERS COMMUNICATION ERROR
|
||||
206, Message Not found N.206
|
||||
207, Message Not found N.207
|
||||
208, Message Not found N.208
|
||||
209, Message Not found N.209
|
||||
210, Message Not found N.210
|
||||
211, Message Not found N.211
|
||||
212, Message Not found N.212
|
||||
213, Message Not found N.213
|
||||
214, Message Not found N.214
|
||||
215, Message Not found N.215
|
||||
216, Message Not found N.216
|
||||
217, Message Not found N.217
|
||||
218, Message Not found N.218
|
||||
219, Message Not found N.219
|
||||
220, Message Not found N.220
|
||||
221, Message Not found N.221
|
||||
222, Message Not found N.222
|
||||
223, Message Not found N.223
|
||||
224, Message Not found N.224
|
||||
225, Message Not found N.225
|
||||
226, Message Not found N.226
|
||||
227, Message Not found N.227
|
||||
228, Message Not found N.228
|
||||
229, Message Not found N.229
|
||||
230, Message Not found N.230
|
||||
231, Message Not found N.231
|
||||
232, Message Not found N.232
|
||||
233, Message Not found N.233
|
||||
234, Message Not found N.234
|
||||
235, Message Not found N.235
|
||||
236, Message Not found N.236
|
||||
237, Message Not found N.237
|
||||
238, Message Not found N.238
|
||||
239, Message Not found N.239
|
||||
240, Message Not found N.240
|
||||
241, Message Not found N.241
|
||||
242, Message Not found N.242
|
||||
243, Message Not found N.243
|
||||
244, Message Not found N.244
|
||||
245, Message Not found N.245
|
||||
246, Message Not found N.246
|
||||
247, Message Not found N.247
|
||||
248, Message Not found N.248
|
||||
249, Message Not found N.249
|
||||
250, Message Not found N.250
|
||||
251, Message Not found N.251
|
||||
252, Message Not found N.252
|
||||
253, Message Not found N.253
|
||||
254, Message Not found N.254
|
||||
255, Message Not found N.255
|
||||
256, Message Not found N.256
|
||||
257, Message Not found N.257
|
||||
258, Message Not found N.258
|
||||
259, Message Not found N.259
|
||||
260, Message Not found N.260
|
||||
261, Message Not found N.261
|
||||
262, Message Not found N.262
|
||||
263, Message Not found N.263
|
||||
264, Message Not found N.264
|
||||
265, Message Not found N.265
|
||||
266, Message Not found N.266
|
||||
267, Message Not found N.267
|
||||
268, Message Not found N.268
|
||||
269, Message Not found N.269
|
||||
270, Message Not found N.270
|
||||
271, Message Not found N.271
|
||||
272, Message Not found N.272
|
||||
273, Message Not found N.273
|
||||
274, Message Not found N.274
|
||||
275, Message Not found N.275
|
||||
276, Message Not found N.276
|
||||
277, Message Not found N.277
|
||||
278, Message Not found N.278
|
||||
279, Message Not found N.279
|
||||
280, Message Not found N.280
|
||||
281, Message Not found N.281
|
||||
282, Message Not found N.282
|
||||
283, Message Not found N.283
|
||||
284, Message Not found N.284
|
||||
285, Message Not found N.285
|
||||
286, Message Not found N.286
|
||||
287, Message Not found N.287
|
||||
288, Message Not found N.288
|
||||
289, Message Not found N.289
|
||||
290, Message Not found N.290
|
||||
291, Message Not found N.291
|
||||
292, Message Not found N.292
|
||||
293, Message Not found N.293
|
||||
294, Message Not found N.294
|
||||
295, Message Not found N.295
|
||||
296, Message Not found N.296
|
||||
297, Message Not found N.297
|
||||
298, Message Not found N.298
|
||||
299, Message Not found N.299
|
||||
300, UPPER HEATER PHOTOCELL
|
||||
301, LOWER HEATER PHOTOCELL
|
||||
302, TROLLEY MOVEMENT SAFETY ALARM
|
||||
303, SHEET POSITIONING NOT POSSIBLE
|
||||
304, BUBBLE FAN INVERTER ERROR
|
||||
305, COOLING FAN INVERTER ERROR
|
||||
306, HEATERS RETRACT FAILED
|
||||
307, SUCKERS NOT LOCKED
|
||||
308, LOWER HEATER NOT IN POSITION
|
||||
309, UPPER HEATER NOT IN POSITION
|
||||
310, INSUFFICIENT LINE AIR PRESSURE
|
||||
311, PARKING REQUIRED
|
||||
312, RECIPE NOT VALID
|
||||
313, Message Not found N.313
|
||||
314, Message Not found N.314
|
||||
315, Message Not found N.315
|
||||
316, Message Not found N.316
|
||||
317, Message Not found N.317
|
||||
318, Message Not found N.318
|
||||
319, Message Not found N.319
|
||||
320, Message Not found N.320
|
||||
321, Message Not found N.321
|
||||
322, Message Not found N.322
|
||||
323, Message Not found N.323
|
||||
324, Message Not found N.324
|
||||
325, Message Not found N.325
|
||||
326, Message Not found N.326
|
||||
327, Message Not found N.327
|
||||
328, Message Not found N.328
|
||||
329, Message Not found N.329
|
||||
330, Message Not found N.330
|
||||
331, Message Not found N.331
|
||||
332, Message Not found N.332
|
||||
333, Message Not found N.333
|
||||
334, Message Not found N.334
|
||||
335, Message Not found N.335
|
||||
336, Message Not found N.336
|
||||
337, Message Not found N.337
|
||||
338, Message Not found N.338
|
||||
339, Message Not found N.339
|
||||
340, Message Not found N.340
|
||||
341, Message Not found N.341
|
||||
342, Message Not found N.342
|
||||
343, Message Not found N.343
|
||||
344, Message Not found N.344
|
||||
345, Message Not found N.345
|
||||
346, Message Not found N.346
|
||||
347, Message Not found N.347
|
||||
348, Message Not found N.348
|
||||
349, Message Not found N.349
|
||||
350, MOULDED PART ON UNLOADER
|
||||
351, MOULDED PART ON TROLLEY
|
||||
352, MISSING CENTER VACUUM
|
||||
353, MISSING SUCKERS VACUUM
|
||||
354, SHEET NOT FOUND
|
||||
355, AUTOMATIC CYCLE WITH HEATERS OFF
|
||||
356, SUCKERS-HIGH PROXY MISSING
|
||||
357, MOULD/LOWER HEATER COLLISION WARNING
|
||||
358, UPPERPLATE/UPPER HEATER COLLISION WARNING
|
||||
359, TROLLEY/FRAME COLLISION WARNING
|
||||
360, MOULD/LOWER HEATER COLLISION WARNING (WENGLOR)
|
||||
361, DANGER OF SHEET FALL
|
||||
362, WINDOWPLATE NOT IN POSITION
|
||||
363, FRAME NOT IN POSITION
|
||||
364, Message Not found N.364
|
||||
365, Message Not found N.365
|
||||
366, Message Not found N.366
|
||||
367, Message Not found N.367
|
||||
368, Message Not found N.368
|
||||
369, Message Not found N.369
|
||||
370, Message Not found N.370
|
||||
371, Message Not found N.371
|
||||
372, Message Not found N.372
|
||||
373, Message Not found N.373
|
||||
374, Message Not found N.374
|
||||
375, Message Not found N.375
|
||||
376, Message Not found N.376
|
||||
377, Message Not found N.377
|
||||
378, Message Not found N.378
|
||||
379, Message Not found N.379
|
||||
380, Message Not found N.380
|
||||
381, Message Not found N.381
|
||||
382, Message Not found N.382
|
||||
383, Message Not found N.383
|
||||
384, Message Not found N.384
|
||||
385, Message Not found N.385
|
||||
386, Message Not found N.386
|
||||
387, Message Not found N.387
|
||||
388, Message Not found N.388
|
||||
389, Message Not found N.389
|
||||
390, Message Not found N.390
|
||||
391, Message Not found N.391
|
||||
392, Message Not found N.392
|
||||
393, Message Not found N.393
|
||||
394, Message Not found N.394
|
||||
395, Message Not found N.395
|
||||
396, Message Not found N.396
|
||||
397, Message Not found N.397
|
||||
398, Message Not found N.398
|
||||
399, Message Not found N.399
|
||||
400, VACUUM PUMP 1 SUPPLY
|
||||
401, VACUUM PUMP 2 SUPPLY
|
||||
402, VACUUM PUMP 3 SUPPLY
|
||||
403, ELECTRICAL CABINET TEMPERATURE (1)
|
||||
404, ELECTRICAL CABINET TEMPERATURE (2)
|
||||
405, COOLER 1 SUPPLY
|
||||
406, COOLER 2 SUPPLY
|
||||
407, COOLER 3 SUPPLY
|
||||
408, COOLER 4 SUPPLY
|
||||
409, Message Not found N.409
|
||||
410, BOX COOLER 1 SUPPLY
|
||||
411, BOX COOLER 2 SUPPLY
|
||||
412, Message Not found N.412
|
||||
413, Message Not found N.413
|
||||
414, Message Not found N.414
|
||||
415, IONIZER SUPPLY
|
||||
416, PLIERS OPENING ERROR
|
||||
417, FRAME HOOK OPENING ERROR
|
||||
418, CENTERING CYLINDERS NOT FORWARD
|
||||
419, CENTERING CYLINDERS NOT BACKWARD
|
||||
420, VACUUM PUMP 1 OIL LEVEL
|
||||
421, VACUUM PUMP 2 OIL LEVEL
|
||||
422, VACUUM PUMP 3 OIL LEVEL
|
||||
423, GREASE LEVEL W LOW
|
||||
424, GREASE PRESSURE W LOW
|
||||
425, GREASE LEVEL Z LOW
|
||||
426, GREASE PRESSURE Z LOW
|
||||
427, THERMOREGULATORS ALARM
|
||||
428, UPS NOT READY
|
||||
429, VACUUM VALVE MALFUNCTION
|
||||
430, EXTRACTION VALVE MALFUNCTION
|
||||
431, HEATING PYROMETER MALFUNCTION
|
||||
432, COOLING PYROMETER MALFUNCTION
|
||||
433, DRAWING PHOTOCELL MALFUNCTION
|
||||
434, Message Not found N.434
|
||||
435, HEATERS NOT OK
|
||||
436, SUCKERS UNLOCKING ERROR
|
||||
437, SUCKERS LOCKING ERROR
|
||||
438, Message Not found N.438
|
||||
439, Message Not found N.439
|
||||
440, Message Not found N.440
|
||||
441, Message Not found N.441
|
||||
442, Message Not found N.442
|
||||
443, Message Not found N.443
|
||||
444, Message Not found N.444
|
||||
445, Message Not found N.445
|
||||
446, Message Not found N.446
|
||||
447, Message Not found N.447
|
||||
448, Message Not found N.448
|
||||
449, Message Not found N.449
|
||||
450, Message Not found N.450
|
||||
451, Message Not found N.451
|
||||
452, Message Not found N.452
|
||||
453, Message Not found N.453
|
||||
454, Message Not found N.454
|
||||
455, Message Not found N.455
|
||||
456, Message Not found N.456
|
||||
457, Message Not found N.457
|
||||
458, Message Not found N.458
|
||||
459, Message Not found N.459
|
||||
460, Message Not found N.460
|
||||
461, Message Not found N.461
|
||||
462, Message Not found N.462
|
||||
463, Message Not found N.463
|
||||
464, Message Not found N.464
|
||||
465, Message Not found N.465
|
||||
466, Message Not found N.466
|
||||
467, Message Not found N.467
|
||||
468, Message Not found N.468
|
||||
469, Message Not found N.469
|
||||
470, Message Not found N.470
|
||||
471, Message Not found N.471
|
||||
472, Message Not found N.472
|
||||
473, Message Not found N.473
|
||||
474, Message Not found N.474
|
||||
475, Message Not found N.475
|
||||
476, Message Not found N.476
|
||||
477, Message Not found N.477
|
||||
478, Message Not found N.478
|
||||
479, Message Not found N.479
|
||||
480, Message Not found N.480
|
||||
481, Message Not found N.481
|
||||
482, Message Not found N.482
|
||||
483, Message Not found N.483
|
||||
484, Message Not found N.484
|
||||
485, Message Not found N.485
|
||||
486, Message Not found N.486
|
||||
487, Message Not found N.487
|
||||
488, Message Not found N.488
|
||||
489, Message Not found N.489
|
||||
490, Message Not found N.490
|
||||
491, Message Not found N.491
|
||||
492, Message Not found N.492
|
||||
493, Message Not found N.493
|
||||
494, Message Not found N.494
|
||||
495, Message Not found N.495
|
||||
496, Message Not found N.496
|
||||
497, Message Not found N.497
|
||||
498, Message Not found N.498
|
||||
499, Message Not found N.499
|
||||
500, VACUUM PUMP 1 MAINTENANCE REQUIRED
|
||||
501, VACUUM PUMP 2 MAINTENANCE REQUIRED
|
||||
502, VACUUM PUMP 3 MAINTENANCE REQUIRED
|
||||
503, Message Not found N.503
|
||||
504, Message Not found N.504
|
||||
505, Message Not found N.505
|
||||
506, Message Not found N.506
|
||||
507, Message Not found N.507
|
||||
508, Message Not found N.508
|
||||
509, Message Not found N.509
|
||||
510, Message Not found N.510
|
||||
511, Message Not found N.511
|
||||
512, Message Not found N.512
|
||||
513, Message Not found N.513
|
||||
514, Message Not found N.514
|
||||
515, Message Not found N.515
|
||||
516, Message Not found N.516
|
||||
517, Message Not found N.517
|
||||
518, Message Not found N.518
|
||||
519, Message Not found N.519
|
||||
520, Message Not found N.520
|
||||
521, Message Not found N.521
|
||||
522, Message Not found N.522
|
||||
523, Message Not found N.523
|
||||
524, Message Not found N.524
|
||||
525, Message Not found N.525
|
||||
526, Message Not found N.526
|
||||
527, Message Not found N.527
|
||||
528, Message Not found N.528
|
||||
529, Message Not found N.529
|
||||
530, Message Not found N.530
|
||||
531, Message Not found N.531
|
||||
532, Message Not found N.532
|
||||
533, Message Not found N.533
|
||||
534, Message Not found N.534
|
||||
535, Message Not found N.535
|
||||
536, Message Not found N.536
|
||||
537, Message Not found N.537
|
||||
538, Message Not found N.538
|
||||
539, Message Not found N.539
|
||||
540, Message Not found N.540
|
||||
541, Message Not found N.541
|
||||
542, Message Not found N.542
|
||||
543, Message Not found N.543
|
||||
544, Message Not found N.544
|
||||
545, Message Not found N.545
|
||||
546, Message Not found N.546
|
||||
547, Message Not found N.547
|
||||
548, Message Not found N.548
|
||||
549, Message Not found N.549
|
||||
550, Message Not found N.550
|
||||
551, EMERGENCY BUTTON
|
||||
552, UPPERPLATE EQUIPMENT ERROR
|
||||
553, UPPERPLATE LOCKING ERROR
|
||||
554, UPPERPLATE UNLOCKING ERROR
|
||||
555, SAFETY OUTPUT MONITORING ERROR
|
||||
556, SAFETY SIGNALS NOT OK
|
||||
557, SMOKE EXTRACTOR NOT ACTIVE
|
||||
558, Message Not found N.558
|
||||
559, Message Not found N.559
|
||||
560, Message Not found N.560
|
||||
561, Message Not found N.561
|
||||
562, Message Not found N.562
|
||||
563, Message Not found N.563
|
||||
564, Message Not found N.564
|
||||
565, Message Not found N.565
|
||||
566, Message Not found N.566
|
||||
567, Message Not found N.567
|
||||
568, Message Not found N.568
|
||||
569, Message Not found N.569
|
||||
570, Message Not found N.570
|
||||
571, Message Not found N.571
|
||||
572, Message Not found N.572
|
||||
573, Message Not found N.573
|
||||
574, Message Not found N.574
|
||||
575, Message Not found N.575
|
||||
576, Message Not found N.576
|
||||
577, Message Not found N.577
|
||||
578, Message Not found N.578
|
||||
579, Message Not found N.579
|
||||
580, Message Not found N.580
|
||||
581, Message Not found N.581
|
||||
582, Message Not found N.582
|
||||
583, Message Not found N.583
|
||||
584, Message Not found N.584
|
||||
585, Message Not found N.585
|
||||
586, Message Not found N.586
|
||||
587, Message Not found N.587
|
||||
588, Message Not found N.588
|
||||
589, Message Not found N.589
|
||||
590, Message Not found N.590
|
||||
591, Message Not found N.591
|
||||
592, Message Not found N.592
|
||||
593, Message Not found N.593
|
||||
594, Message Not found N.594
|
||||
595, Message Not found N.595
|
||||
596, Message Not found N.596
|
||||
597, Message Not found N.597
|
||||
598, Message Not found N.598
|
||||
599, Message Not found N.599
|
||||
600, Message Not found N.600
|
||||
601, Message Not found N.601
|
||||
602, Message Not found N.602
|
||||
603, Message Not found N.603
|
||||
604, Message Not found N.604
|
||||
605, Message Not found N.605
|
||||
606, Message Not found N.606
|
||||
607, Message Not found N.607
|
||||
608, Message Not found N.608
|
||||
609, Message Not found N.609
|
||||
610, Message Not found N.610
|
||||
611, Message Not found N.611
|
||||
612, Message Not found N.612
|
||||
613, Message Not found N.613
|
||||
614, Message Not found N.614
|
||||
615, Message Not found N.615
|
||||
616, Message Not found N.616
|
||||
617, Message Not found N.617
|
||||
618, Message Not found N.618
|
||||
619, Message Not found N.619
|
||||
620, Message Not found N.620
|
||||
621, Message Not found N.621
|
||||
622, Message Not found N.622
|
||||
623, Message Not found N.623
|
||||
624, Message Not found N.624
|
||||
625, Message Not found N.625
|
||||
626, Message Not found N.626
|
||||
627, Message Not found N.627
|
||||
628, Message Not found N.628
|
||||
629, Message Not found N.629
|
||||
630, Message Not found N.630
|
||||
631, Message Not found N.631
|
||||
632, Message Not found N.632
|
||||
633, Message Not found N.633
|
||||
634, Message Not found N.634
|
||||
635, Message Not found N.635
|
||||
636, Message Not found N.636
|
||||
637, Message Not found N.637
|
||||
638, Message Not found N.638
|
||||
639, Message Not found N.639
|
||||
640, Message Not found N.640
|
||||
641, Message Not found N.641
|
||||
642, Message Not found N.642
|
||||
643, Message Not found N.643
|
||||
644, Message Not found N.644
|
||||
645, Message Not found N.645
|
||||
646, Message Not found N.646
|
||||
647, Message Not found N.647
|
||||
648, Message Not found N.648
|
||||
649, Message Not found N.649
|
||||
650, Message Not found N.650
|
||||
@@ -304,12 +304,12 @@
|
||||
304, MALFUNZIONAMENTO VENTILATORE IMBUTITURA/SOSTENTAMENTO
|
||||
305, MALFUNZIONAMENTO VENTILATORE CENTRALIZZATO
|
||||
306, ARRETRAMENTO RISCALDI FALLITO
|
||||
307, ERRORE BLOCCAGGIO TELAIO VENTOSE
|
||||
307, TELAIO VENTOSE NON BLOCCATO
|
||||
308, RISCALDO INFERIORE NON IN POSIZIONE
|
||||
309, RISCALDO SUPERIORE NON IN POSIZIONE
|
||||
310, PRESSIONE ARIA INSUFFICIENTE
|
||||
311, CICLO DI RESET MACCHINA RICHIESTO
|
||||
312, Message Not found N.312
|
||||
311, PARCHEGGIO MACCHINA RICHIESTO
|
||||
312, RICETTA NON VALIDA
|
||||
313, Message Not found N.313
|
||||
314, Message Not found N.314
|
||||
315, Message Not found N.315
|
||||
@@ -358,9 +358,9 @@
|
||||
358, PERICOLO COLLISIONE CONTROSTAMPO/RISCALDO SUPERIORE
|
||||
359, PERICOLO COLLISIONE CARRELLO/CORNICE
|
||||
360, PERICOLO COLLISIONE STAMPO/RISCALDO INFERIORE (WENGLOR)
|
||||
361, Message Not found N.361
|
||||
362, Message Not found N.362
|
||||
363, Message Not found N.363
|
||||
361, PERICOLO CADUTA LASTRA SOSPESA
|
||||
362, PIASTRAFINESTRA NON IN POSIZIONE
|
||||
363, CORNICE NON IN POSIZIONE
|
||||
364, Message Not found N.364
|
||||
365, Message Not found N.365
|
||||
366, Message Not found N.366
|
||||
@@ -397,26 +397,26 @@
|
||||
397, Message Not found N.397
|
||||
398, Message Not found N.398
|
||||
399, Message Not found N.399
|
||||
400, ALLARME ALIMENTAZIONE POMPA VUOTO 1
|
||||
401, ALLARME ALIMENTAZIONE POMPA VUOTO 2
|
||||
402, ALLARME ALIMENTAZIONE POMPA VUOTO 3
|
||||
403, ALLARME TEMPERATURA 1 ARMADIO
|
||||
404, ALLARME TEMPERATURA 2 ARMADIO
|
||||
405, ALLARME ALIMENTAZIONE VENTILATORI 1
|
||||
406, ALLARME ALIMENTAZIONE VENTILATORI 2
|
||||
407, ALLARME ALIMENTAZIONE VENTILATORI 3
|
||||
408, ALLARME ALIMENTAZIONE VENTILATORI 4
|
||||
400, ALIMENTAZIONE POMPA VUOTO 1
|
||||
401, ALIMENTAZIONE POMPA VUOTO 2
|
||||
402, ALIMENTAZIONE POMPA VUOTO 3
|
||||
403, TEMPERATURA ARMADIO (1)
|
||||
404, TEMPERATURA ARMADIO (2)
|
||||
405, ALIMENTAZIONE VENTILATORI 1
|
||||
406, ALIMENTAZIONE VENTILATORI 2
|
||||
407, ALIMENTAZIONE VENTILATORI 3
|
||||
408, ALIMENTAZIONE VENTILATORI 4
|
||||
409, Message Not found N.409
|
||||
410, ALLARME ALIMENTAZIONE VENTILATORE 1 CASSONE
|
||||
411, ALLARME ALIMENTAZIONE VENTILATORE 2 CASSONE
|
||||
410, ALIMENTAZIONE VENTILATORE 1 CASSONE
|
||||
411, ALIMENTAZIONE VENTILATORE 2 CASSONE
|
||||
412, Message Not found N.412
|
||||
413, Message Not found N.413
|
||||
414, Message Not found N.414
|
||||
415, ALLARME ALIMENTAZIONE IONIZZATORE
|
||||
415, ALIMENTAZIONE IONIZZATORE
|
||||
416, ERRORE APERTURA PINZE
|
||||
417, ERRORE APERTURA GANCIO CORNICE
|
||||
418, CENTRATORE NON AVANTI
|
||||
419, CENTRATORE NON INDIETRO
|
||||
418, CILINDRI CENTRATORE NON AVANTI
|
||||
419, CILINDRI CENTRATORE NON INDIETRO
|
||||
420, LIVELLO OLIO POMPA VUOTO 1
|
||||
421, LIVELLO OLIO POMPA VUOTO 2
|
||||
422, LIVELLO OLIO POMPA VUOTO 3
|
||||
@@ -549,10 +549,10 @@
|
||||
549, Message Not found N.549
|
||||
550, Message Not found N.550
|
||||
551, PULSANTE EMERGENZA
|
||||
552, ERRORE ATTR. CONTROSTAMPO
|
||||
552, ERRORE ATTREZZATURA CONTROSTAMPO
|
||||
553, ERRORE BLOCCO CONTROSTAMPO
|
||||
554, ERRORE SBLOCCO CONTROSTAMPO
|
||||
555, DISPOSITIVO DI SICUREZZA NON OK
|
||||
555, MONITORAGGIO USCITE SICURE
|
||||
556, SEGNALI SAFE NON OK
|
||||
557, ASPIRAZIONE FUMI NON ATTIVA
|
||||
558, Message Not found N.558
|
||||
|
||||
@@ -5,8 +5,10 @@ using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using TeamDev.SDK.FluentProgramming;
|
||||
using Thermo.Active.CmsConnectGateway;
|
||||
using Thermo.Active.Config;
|
||||
using Thermo.Active.Controllers.SignalR;
|
||||
using Thermo.Active.Database.Controllers;
|
||||
using Thermo.Active.Model.DTOModels;
|
||||
using Thermo.Active.Model.DTOModels.AlarmModels;
|
||||
using Thermo.Active.Model.DTOModels.Scada;
|
||||
@@ -33,6 +35,13 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
LastAlarms = LastAlarms.IntersectModels(newAlarmsData as DTOAlarmsModel);
|
||||
// Send data to clients
|
||||
context.Clients.Group("ncData").alarms(LastAlarms);
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
RedisController.WriteCurrentAlarms(CMSConnectConstants.ConvertThermoToConnectAlarms(newAlarmsData));
|
||||
|
||||
RedisController.WriteCurrentMachineAlarmPath(CMSConnectConstants.ConvertThermoToConnectMachineAlarm(newAlarmsData));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,6 +55,11 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
LastPowerOnData = powerOnData as DTOPowerOnDataModel;
|
||||
// Send data to clients
|
||||
context.Clients.Group("ncData").powerOn(powerOnData);
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
RedisController.WriteCurrentMachineEmergencyPath(LastPowerOnData.PrePowerOn.EmergencyButtons.Active);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -297,6 +311,7 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
recipeHasChanged = currMessage.hasChanged;
|
||||
var context = GlobalHost.ConnectionManager.GetHubContext<NcHub>();
|
||||
context.Clients.Group("ncData").recipeChangedData(currMessage);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -440,7 +455,15 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
LastProdPanelData = currProdPanel;
|
||||
|
||||
var context = GlobalHost.ConnectionManager.GetHubContext<NcHub>();
|
||||
context.Clients.Group("ncData").prodPanelData(currProdPanel);
|
||||
context.Clients.Group("ncData").prodPanelData(currProdPanel);
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady && currProdPanel.NumDone > 0 && currProdPanel.NumDone != LastProdPanelData.NumDone)
|
||||
{
|
||||
var ts = DateTime.UtcNow.ToString("o");
|
||||
var a = "{\"v\": { \"PART_COUNT\": 1}\"ts\": " + ts + "}";
|
||||
RedisController.WriteMachineEventKpis(a);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
public static void SendThermoProdInfoData(object prodInfoData)
|
||||
@@ -465,6 +488,15 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
|
||||
var context = GlobalHost.ConnectionManager.GetHubContext<NcHub>();
|
||||
context.Clients.Group("ncData").prodCycleData(currProdCycle);
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
RedisController.WriteCurrentMachineStatus(CMSConnectConstants.ConvertThermoToConnectStatus(currProdCycle.Status));
|
||||
RedisController.WriteCurrentMachinePowerPath(CMSConnectConstants.ConvertThermoToConnectPower(currProdCycle.Status));
|
||||
|
||||
RedisController.WriteCurrentProcessStatus(1,CMSConnectConstants.ConvertThermoToConnectProcessStatus(currProdCycle.Status));
|
||||
RedisController.WriteCurrentProcessMode(1,CMSConnectConstants.ConvertThermoToConnectProcessMode(currProdCycle.Mode));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -495,6 +527,11 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
LastAxisInfoData = currInfoAxes.Keys.ToDictionary(_ => _, _ => currInfoAxes[_].Clone());
|
||||
var context = GlobalHost.ConnectionManager.GetHubContext<NcHub>();
|
||||
context.Clients.Group("ncData").axisInfo(diffAxisData);
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
RedisController.WriteCurrentAxisStatus(LastAxisInfoData);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -577,6 +614,16 @@ namespace Thermo.Active.Listeners.SignalR
|
||||
// THERMO prod cycle data
|
||||
group.prodCycleData(LastProdCycleData);
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
RedisController.WriteCurrentAlarms(CMSConnectConstants.ConvertThermoToConnectAlarms(LastAlarms));
|
||||
RedisController.WriteCurrentMachineAlarmPath(CMSConnectConstants.ConvertThermoToConnectMachineAlarm(LastAlarms));
|
||||
RedisController.WriteCurrentMachineStatus(CMSConnectConstants.ConvertThermoToConnectStatus(LastProdCycleData.Status));
|
||||
RedisController.WriteCurrentMachinePowerPath(CMSConnectConstants.ConvertThermoToConnectPower(LastProdCycleData.Status));
|
||||
RedisController.WriteCurrentProcessStatus(1, CMSConnectConstants.ConvertThermoToConnectProcessStatus(LastProdCycleData.Status));
|
||||
RedisController.WriteCurrentProcessMode(1, CMSConnectConstants.ConvertThermoToConnectProcessMode(LastProdCycleData.Mode));
|
||||
}
|
||||
|
||||
Debug.WriteLine(string.Format("{0} {1} Broadcast..completed", DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss"), DateTime.Now.Millisecond));
|
||||
Monitor.Exit(_broadcastlock);
|
||||
}
|
||||
|
||||
@@ -30,4 +30,4 @@ using System.Runtime.InteropServices;
|
||||
//
|
||||
// You can specify all the values or you can default the Revision and Build Numbers
|
||||
// by using the '*' as shown below:
|
||||
[assembly: AssemblyVersion("0.100.114")]
|
||||
[assembly: AssemblyVersion("0.105.127")]
|
||||
@@ -114,7 +114,8 @@
|
||||
<HintPath>..\packages\microsoft-web-helpers.2.1.20710.2\lib\net40\Microsoft.Web.Helpers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Owin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f0ebd12fd5e55cc5, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
|
||||
@@ -226,6 +227,7 @@
|
||||
<Compile Include="Controllers\WebApi\ModulesController.cs" />
|
||||
<Compile Include="Controllers\WebApi\ProdController.cs" />
|
||||
<Compile Include="Controllers\WebApi\StarredUserSoftKeyController.cs" />
|
||||
<Compile Include="Controllers\WebApi\ThermocameraController.cs" />
|
||||
<Compile Include="Controllers\WebApi\WarmersController.cs" />
|
||||
<Compile Include="Controllers\WebApi\RecipeController.cs" />
|
||||
<Compile Include="Controllers\WebApi\AuthorizationController.cs" />
|
||||
@@ -262,12 +264,21 @@
|
||||
<DependentUpon>App.config</DependentUpon>
|
||||
</Content>
|
||||
<Content Include="CMS_Icon.ico" />
|
||||
<Content Include="Dict\Enums_english.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Dict\Enums_italian.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Dict\Labels_english.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Dict\Labels_italian.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Dict\Messaggi_english.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Dict\Messaggi_italian.txt">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
@@ -16185,6 +16196,10 @@
|
||||
<Project>{b2366b08-96bd-4f6b-b748-b45089b87a14}</Project>
|
||||
<Name>Thermo.Active.NC</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\THermo.Active.Thermocamera\Thermo.Active.Thermocamera.csproj">
|
||||
<Project>{8d8ec91a-3a15-4a1d-951b-a35e7068debd}</Project>
|
||||
<Name>Thermo.Active.Thermocamera</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Thermo.Active.UI\Thermo.Active.UI.csproj">
|
||||
<Project>{20fc0937-e7ca-4693-95f9-7a948efd173b}</Project>
|
||||
<Name>Thermo.Active.UI</Name>
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
<package id="Microsoft.Owin.StaticFiles" version="3.1.0" targetFramework="net462" />
|
||||
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net462" />
|
||||
<package id="microsoft-web-helpers" version="2.1.20710.2" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.1" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
<package id="Owin" version="1.0" targetFramework="net462" />
|
||||
<package id="PrettyBin" version="1.1.0" targetFramework="net462" />
|
||||
<package id="Swashbuckle" version="5.6.0" targetFramework="net462" />
|
||||
|
||||
@@ -84,6 +84,11 @@ namespace Thermo.Active
|
||||
if (!string.IsNullOrWhiteSpace(ServerStartupConfig.ServerAddress.ToString()))
|
||||
opt.Urls.Add("http://" + ServerStartupConfig.ServerAddress.ToString() + ":" + ServerStartupConfig.ServerPort.ToString());
|
||||
|
||||
if (Config.ServerConfig.ServerStartupConfig.CmsConnectReady)
|
||||
{
|
||||
ThreadsFunctions.SetupCmsConnect();
|
||||
}
|
||||
|
||||
// read and save last CURRENT RECIPE data...
|
||||
NcFileAdapter.ReadLastRecipe();
|
||||
RecipeController.WriteCurrentRecipeToPlc();
|
||||
|
||||
@@ -224,12 +224,11 @@
|
||||
}
|
||||
|
||||
.notenabled{
|
||||
color: #d0021b;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.strike{
|
||||
text-decoration: line-through;
|
||||
color: #d0021b;
|
||||
}
|
||||
|
||||
div {
|
||||
@@ -354,7 +353,7 @@
|
||||
display: grid;
|
||||
grid-template-rows: repeat(2, auto);
|
||||
grid-template-columns: repeat(2, auto);
|
||||
height: 245px;
|
||||
height: 260px;
|
||||
padding: 20px;
|
||||
|
||||
.piece_hours {
|
||||
|
||||
@@ -27,6 +27,10 @@
|
||||
justify-content: flex-end;
|
||||
grid-column-gap: 10px;
|
||||
|
||||
.totp{
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
button {
|
||||
border: none;
|
||||
border-radius: 2px;
|
||||
|
||||
@@ -30,6 +30,17 @@
|
||||
font-size: 32px;
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
|
||||
&.temp{
|
||||
grid-template-columns: 50% 50%;
|
||||
grid-template-rows: 50% 50%;
|
||||
display: grid;
|
||||
font-size: 22px;
|
||||
span{
|
||||
text-align: right;
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -165,11 +165,12 @@
|
||||
flex: 1;
|
||||
flex-flow: column;
|
||||
align-items: center;
|
||||
.volantino{
|
||||
.volantino{
|
||||
height: 48px;
|
||||
width: 48px;
|
||||
position: absolute;
|
||||
bottom: 101px;
|
||||
right: 492px;
|
||||
left: 100px;
|
||||
}
|
||||
.load-label{
|
||||
width: 100%;
|
||||
|
||||
@@ -147,9 +147,10 @@
|
||||
}
|
||||
.setup .modal section.body section article .svg-area .volantino {
|
||||
height: 48px;
|
||||
width: 48px;
|
||||
position: absolute;
|
||||
bottom: 101px;
|
||||
right: 492px;
|
||||
left: 100px;
|
||||
}
|
||||
.setup .modal section.body section article .svg-area .load-label {
|
||||
width: 100%;
|
||||
@@ -4436,11 +4437,10 @@ article .box .body {
|
||||
text-align: right;
|
||||
}
|
||||
.dashboard .first_col .setpoint .notenabled {
|
||||
color: #d0021b;
|
||||
opacity: 0.5;
|
||||
}
|
||||
.dashboard .first_col .setpoint .strike {
|
||||
text-decoration: line-through;
|
||||
color: #d0021b;
|
||||
}
|
||||
.dashboard .first_col .setpoint div {
|
||||
display: flex;
|
||||
@@ -4542,7 +4542,7 @@ article .box .body {
|
||||
display: grid;
|
||||
grid-template-rows: repeat(2, auto);
|
||||
grid-template-columns: repeat(2, auto);
|
||||
height: 245px;
|
||||
height: 260px;
|
||||
padding: 20px;
|
||||
}
|
||||
.dashboard .third_col .piece_time .piece_hours {
|
||||
@@ -4683,6 +4683,16 @@ article .box .body {
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
}
|
||||
.warmers svg .resistance.temp {
|
||||
grid-template-columns: 50% 50%;
|
||||
grid-template-rows: 50% 50%;
|
||||
display: grid;
|
||||
font-size: 22px;
|
||||
}
|
||||
.warmers svg .resistance.temp span {
|
||||
text-align: right;
|
||||
margin-right: 5px;
|
||||
}
|
||||
.warmers .icon {
|
||||
font-size: 30px;
|
||||
margin-left: 10px;
|
||||
@@ -5223,6 +5233,9 @@ article .box .body {
|
||||
justify-content: flex-end;
|
||||
grid-column-gap: 10px;
|
||||
}
|
||||
.modal.processo-info header .tab-header .totp {
|
||||
margin-right: 10px;
|
||||
}
|
||||
.modal.processo-info header .tab-header button {
|
||||
border: none;
|
||||
border-radius: 2px;
|
||||
|
||||
@@ -71,61 +71,6 @@
|
||||
height="2.995194"
|
||||
x="15.595546"
|
||||
y="289.87576" />
|
||||
<path
|
||||
style="fill:#bbbcbc;fill-opacity:0;stroke:#bbbcbc;stroke-width:0.5291667;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.92936802"
|
||||
d="M 37.253586,292.77887 V 239.86218"
|
||||
id="path849"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#bbbcbc;stroke-width:0.44944954;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.676304,240.09202 h 3.151188"
|
||||
id="path855"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#bbbcbc;fill-opacity:1;stroke:#bbbcbc;stroke-width:0.26458332;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.92936802"
|
||||
id="path857"
|
||||
sodipodi:sides="3"
|
||||
sodipodi:cx="62.114742"
|
||||
sodipodi:cy="292.18243"
|
||||
sodipodi:r1="1.8131941"
|
||||
sodipodi:r2="0.90659708"
|
||||
sodipodi:arg1="1.5707963"
|
||||
sodipodi:arg2="2.6179939"
|
||||
inkscape:flatsided="false"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m 62.114742,293.99563 -0.785136,-1.3599 -0.785136,-1.35989 1.570272,0 1.570272,0 -0.785136,1.35989 z"
|
||||
inkscape:transform-center-y="0.45329498"
|
||||
transform="matrix(0.99999994,0,0,1.000002,-24.861164,-1.0321708)" />
|
||||
<path
|
||||
style="fill:#bbbcbc;fill-opacity:0;stroke:#bbbcbc;stroke-width:0.34999999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.92936802"
|
||||
d="M 59.09758,289.27334 V 275.4386"
|
||||
id="path849-1"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#bbbcbc;stroke-width:0.34999999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 57.414584,275.3528 h 3.362391"
|
||||
id="path855-0"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
style="fill:#bbbcbc;fill-opacity:1;stroke:#bbbcbc;stroke-width:0.26458332;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.92936802"
|
||||
id="path857-7"
|
||||
sodipodi:sides="3"
|
||||
sodipodi:cx="62.114742"
|
||||
sodipodi:cy="292.18243"
|
||||
sodipodi:r1="1.8131942"
|
||||
sodipodi:r2="0.90659708"
|
||||
sodipodi:arg1="1.5707963"
|
||||
sodipodi:arg2="2.6179939"
|
||||
inkscape:flatsided="false"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m 62.114742,293.99563 -0.785136,-1.3599 -0.785136,-1.35989 1.570272,0 1.570272,0 -0.785136,1.35989 z"
|
||||
inkscape:transform-center-y="0.48678308"
|
||||
transform="matrix(0.92838376,0,0,1.0738472,1.4312439,-26.446198)"
|
||||
inkscape:transform-center-x="-2.0583999e-06" />
|
||||
<path
|
||||
style="fill:#bbbcbc;fill-opacity:0;stroke:#bbbcbc;stroke-width:0.3924405;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.92936802"
|
||||
d="M 99.430686,292.77887 V 263.6747"
|
||||
|
||||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 8.2 KiB |
+1
-1
@@ -3,7 +3,6 @@ declare module Prod {
|
||||
interface IProd {
|
||||
numTarget: number;
|
||||
numDone: number;
|
||||
numPreHot: number;
|
||||
timeWarm: number;
|
||||
timeVent: number;
|
||||
timeVacuum: number;
|
||||
@@ -20,6 +19,7 @@ declare module Prod {
|
||||
interface IProdPanel {
|
||||
numTarget: number;
|
||||
numDone: number;
|
||||
numPreHot: number;
|
||||
inizioProd: string;
|
||||
stimaDurata: number;
|
||||
tempAct: number;
|
||||
|
||||
@@ -33,6 +33,7 @@ export default class Combo extends Vue {
|
||||
|
||||
opened: boolean = false;
|
||||
showList() {
|
||||
if(!this.value.status.enabled) return;
|
||||
this.opened = !this.opened;
|
||||
this.$nextTick(() => lottie.searchAnimations());
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<div
|
||||
class="form"
|
||||
@click="showList"
|
||||
:class="{'error': value && value.status && value.status.hasError}"
|
||||
:class="{'error': value && value.status && value.status.hasError, 'disabled': value && value.status && !value.status.enabled}"
|
||||
>
|
||||
{{currentValue}}
|
||||
<i v-if="opened" class="fa fa-chevron-up" />
|
||||
@@ -30,6 +30,11 @@
|
||||
<style scoped>
|
||||
.combo {
|
||||
position: relative;
|
||||
|
||||
}
|
||||
|
||||
.disabled{
|
||||
background-color: rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
.combo select:disabled {
|
||||
|
||||
@@ -48,7 +48,7 @@ export default class MainGauge extends Vue {
|
||||
};
|
||||
}
|
||||
|
||||
get prod() { return store.state.prod.prod }
|
||||
get prod() { return store.state.prod.panel }
|
||||
|
||||
|
||||
polarToCartesian(centerX, centerY, radius, angleInDegrees) {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<svg viewBox="8,8,84,84" class="gauge">
|
||||
<path
|
||||
class="dial"
|
||||
:class="{'ok': (prod.numPreHot ==0), 'pre': (prod.numPreHot != 0) }"
|
||||
:class="{'ok': (!prod.numPreHot || prod.numPreHot ==0), 'pre': (prod.numPreHot && prod.numPreHot != 0) }"
|
||||
fill="none"
|
||||
stroke="#eee"
|
||||
stroke-width="2"
|
||||
@@ -31,13 +31,14 @@
|
||||
</svg>
|
||||
</div>
|
||||
<div ref="gauge2" class="gauge2"></div>
|
||||
<span class="done" v-if="prod.numPreHot == 0">
|
||||
<span class="done" v-if="!prod.numPreHot || prod.numPreHot == 0">
|
||||
{{prod.numDone}}
|
||||
<small class="error" v-if="scrapedItems.length">-{{scrapedItems.length}}</small>
|
||||
</span>
|
||||
<span class="done" v-if="prod.numPreHot != 0">-{{prod.numPreHot}}</span>
|
||||
<span class="done" v-if="prod.numPreHot && prod.numPreHot != 0">-{{prod.numPreHot}}</span>
|
||||
<hr />
|
||||
<span class="target">{{prod.numTarget}}</span>
|
||||
<span class="target" v-if="prod.numTarget != 0">{{prod.numTarget}}</span>
|
||||
<span class="target" v-else>--</span>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts" src="./gauge.ts"></script>
|
||||
|
||||
@@ -9,10 +9,22 @@ export default class Item extends Vue {
|
||||
@Prop()
|
||||
value: Prod.IProd;
|
||||
|
||||
@Prop()
|
||||
panel: Prod.IProdPanel
|
||||
|
||||
get noDisplayNumber(){
|
||||
return this.panel && this.panel.numTarget != 0 && this.value.numDone > this.panel.numTarget;
|
||||
}
|
||||
|
||||
showDetails: boolean = false;
|
||||
openCloseDetails(){
|
||||
this.showDetails = !this.showDetails;
|
||||
//if(this.showDetails)
|
||||
// this.$emit("close-detail",this.value.numDone);
|
||||
}
|
||||
|
||||
async setScrap(num: number) {
|
||||
await prodService.SetScrap(num);
|
||||
this.value.isScrap = true;
|
||||
this.value.isScrap = !this.value.isScrap;
|
||||
await prodService.SetScrap(num,this.value.isScrap);
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,8 @@
|
||||
<template>
|
||||
<div class="history-item">
|
||||
<div class="body" @click="showDetails = !showDetails">
|
||||
<label :class="{red: value.isScrap}">{{value.numDone}}</label>
|
||||
<div class="body" @click="openCloseDetails">
|
||||
<label v-if="noDisplayNumber">--</label>
|
||||
<label :class="{red: value.isScrap}" v-else>{{value.numDone}}</label>
|
||||
<div class="col">
|
||||
<small>{{'history-item_warmup' | localize("tempo riscaldo")}}</small>
|
||||
<span>{{Math.floor(value.timeWarm / 60) | round(0)}}'{{value.timeWarm % 60 | round(0)}}''</span>
|
||||
|
||||
@@ -9,6 +9,7 @@ export default class stats extends Vue {
|
||||
value: { [id: number]: number };
|
||||
|
||||
get Values(): number[] {
|
||||
console.log(this.value);
|
||||
var r: number[] = [];
|
||||
if (this.value)
|
||||
for (const i in this.value) {
|
||||
@@ -21,6 +22,9 @@ export default class stats extends Vue {
|
||||
@Prop()
|
||||
maxNumDone: number;
|
||||
|
||||
@Prop()
|
||||
isTime: number;
|
||||
|
||||
get min() {
|
||||
return Math.min(...this.Values);
|
||||
}
|
||||
@@ -29,6 +33,44 @@ export default class stats extends Vue {
|
||||
return Math.max(...this.Values);
|
||||
}
|
||||
|
||||
get maxLabels() {
|
||||
if(this.Values && this.Values.length)
|
||||
{
|
||||
let v = Math.max(...this.Values);
|
||||
if(this.isTime)
|
||||
return Math.floor(v / 60) + "' " + (Math.floor(v) % 60) + "''"
|
||||
else
|
||||
return v
|
||||
}
|
||||
else
|
||||
return "--"
|
||||
}
|
||||
get minLabels() {
|
||||
if(this.Values && this.Values.length)
|
||||
{
|
||||
let v = Math.min(...this.Values);
|
||||
if(this.isTime)
|
||||
return Math.floor(v / 60) + "' " + (Math.floor(v) % 60) + "''"
|
||||
else
|
||||
return v
|
||||
}
|
||||
else
|
||||
return "--"
|
||||
}
|
||||
|
||||
get calcPointFill(){
|
||||
let str = "0," + this.height + " ";
|
||||
|
||||
for (let index = 0; index < this.Values.length; index++) {
|
||||
let x = index * (this.width / 19);
|
||||
let y = this.height - (this.Values[index] - this.min) * this.height / this.delta
|
||||
str += x + "," + y + " ";
|
||||
}
|
||||
let x = (this.Values.length -1) * (this.width / 19);
|
||||
let y = this.height
|
||||
str += x + "," + y + " ";
|
||||
return str;
|
||||
}
|
||||
get delta() {
|
||||
return Math.max(this.max - this.min, 1);
|
||||
}
|
||||
@@ -42,8 +84,8 @@ export default class stats extends Vue {
|
||||
get pathData() {
|
||||
if (this.Values && this.Values.length) {
|
||||
var d = [
|
||||
"M", 0, (this.Values[0] - this.min) * this.height / this.delta,
|
||||
"S"
|
||||
"M", 0, this.height - (this.Values[0] - this.min) * this.height / this.delta,
|
||||
"L"
|
||||
]
|
||||
d.push(...this.Values.map((v, idx) => `${idx * (this.width / 19)} ${this.height - (v - this.min) * this.height / this.delta}`))
|
||||
d.push()
|
||||
@@ -51,4 +93,13 @@ export default class stats extends Vue {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
calcPointY(v){
|
||||
return this.height - (v - this.min) * this.height / this.delta
|
||||
}
|
||||
get itemsNo(){
|
||||
if (!this.Values) return 0;
|
||||
return this.Values.length
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<svg
|
||||
preserveAspectRatio="xMidYMid slice"
|
||||
:viewBox="`0 -20 ${width + 30} ${height+60}`"
|
||||
:viewBox="`-5 -20 ${width + 50} ${height+60}`"
|
||||
:key="delta"
|
||||
>
|
||||
<g class="chart-axis">
|
||||
@@ -10,7 +10,7 @@
|
||||
<line :x1="0" :x2="width" :y1="height*2/3" :y2="height*2/3" stroke="#353535" stroke-width="1" />
|
||||
<line :x1="0" :x2="width" :y1="height" :y2="height" stroke="#353535" stroke-width="1" />
|
||||
</g>
|
||||
<g chart="chart-axis">
|
||||
<!--<g chart="chart-axis">
|
||||
<line
|
||||
v-for="(i,idx) in Values"
|
||||
:key="idx"
|
||||
@@ -21,41 +21,46 @@
|
||||
stroke="#35353550"
|
||||
stroke-width="1"
|
||||
/>
|
||||
</g>
|
||||
</g>-->
|
||||
<g>
|
||||
<polygon :points="calcPointFill" style="fill:#1791ff;stroke-width:0" fill-opacity="0.3" />
|
||||
<path fill="none" :d="pathData" v-if="pathData" stroke="#1791ff" stroke-width="4" />
|
||||
<circle
|
||||
v-for="(i,idx) in Values"
|
||||
:key="'point_'+idx"
|
||||
:cx="idx * (width / 19)"
|
||||
:cy="calcPointY(i)"
|
||||
r="5"
|
||||
stroke="#1791ff"
|
||||
stroke-width="0"
|
||||
fill="#1791ff" />
|
||||
<foreignObject
|
||||
v-for="(i,idx) in Values"
|
||||
:key="'val_'+idx"
|
||||
:x="(idx * (width / 19))-10"
|
||||
:y="height+5"
|
||||
:width="20"
|
||||
height="30"
|
||||
class="chart-legend"
|
||||
style="text-align:center"
|
||||
>{{maxNumDone - (itemsNo )+ idx}}</foreignObject>
|
||||
|
||||
</g>
|
||||
<g>
|
||||
<foreignObject
|
||||
:x="width+2"
|
||||
y="-10"
|
||||
width="30"
|
||||
width="50"
|
||||
height="30"
|
||||
class="chart-legend"
|
||||
>{{max | round(1)}}</foreignObject>
|
||||
>{{maxLabels}}</foreignObject>
|
||||
<foreignObject
|
||||
:x="width+2"
|
||||
:y="height - 15"
|
||||
width="30"
|
||||
:y="height - 9"
|
||||
width="50"
|
||||
height="30"
|
||||
class="chart-legend"
|
||||
>{{min | round(1)}}</foreignObject>
|
||||
<foreignObject
|
||||
:x="width-30"
|
||||
:y="height"
|
||||
:width="60"
|
||||
height="30"
|
||||
class="chart-legend"
|
||||
style="text-align:center"
|
||||
>{{maxNumDone}}</foreignObject>
|
||||
<foreignObject
|
||||
:x="0"
|
||||
:y="height"
|
||||
:width="60"
|
||||
height="32"
|
||||
class="chart-legend"
|
||||
style="text-align:left"
|
||||
>{{Math.max(maxNumDone-20,1)}}</foreignObject>
|
||||
>{{minLabels}}</foreignObject>
|
||||
</g>
|
||||
</svg>
|
||||
</template>
|
||||
|
||||
@@ -48,15 +48,13 @@ export default class Dashboard extends Vue {
|
||||
|
||||
@Watch("lastItem", { deep: true })
|
||||
async lastitemChanged(n: Prod.IProd, o) {
|
||||
if (this.items.length && n.numDone - 1 != this.items[0].numDone) {
|
||||
if ((this.items.length && n.numDone - 1 != this.items[0].numDone) || (!this.items.length && n.numDone > 1)) {
|
||||
let result = await prodService.History(n.numDone - 1, 1);
|
||||
if (result && result.length) {
|
||||
for (const i of result) {
|
||||
this.itemsMap.set(i.numDone, i);
|
||||
}
|
||||
|
||||
this.items = Array.from(this.itemsMap.values()).sort((a, b) => b.numDone - a.numDone);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,6 +92,7 @@ export default class Dashboard extends Vue {
|
||||
get softKeys(): { [id: number]: SoftKeysConfigurationModel[] } {
|
||||
return store.state.machineInfo.softKeys as { [id: number]: SoftKeysConfigurationModel[] };
|
||||
}
|
||||
|
||||
|
||||
get allSoftKeys(): SoftKeysConfigurationModel[] {
|
||||
var result = [];
|
||||
|
||||
@@ -91,19 +91,19 @@
|
||||
<div class="timing-area">
|
||||
<div class="start">
|
||||
<small>{{'dashboard-timing-start' | localize('inizio')}}</small>
|
||||
<time>{{panel.inizioProd | date('HH:mm')}}</time>
|
||||
<time v-if="panel.inizioProd">{{panel.inizioProd | date('HH:mm')}}</time>
|
||||
<time v-else>--:--</time>
|
||||
</div>
|
||||
<div class="current">
|
||||
<small>{{'dashboard-timing-elapsed' | localize('dashboard-timing-starto')}}</small>
|
||||
<time>{{Math.floor(elapsed /1000 / 3600)}}:{{elapsed | date('mm:ss')}}</time>
|
||||
<time v-if="panel.inizioProd">{{Math.floor(elapsed /1000 / 3600)}}:{{elapsed | date('mm:ss')}}</time>
|
||||
<time v-else>--:--</time>
|
||||
</div>
|
||||
<div class="end">
|
||||
<small>{{'dashboard-timing-end' | localize('fine')}}</small>
|
||||
<time v-if="panel.stimaDurata">
|
||||
<time v-if="panel.stimaDurata && panel.inizioProd">
|
||||
<span>~{{endEstimation | date('HH:mm')}}</span>
|
||||
<small
|
||||
style="text-transform:lowercase"
|
||||
>+{{Math.floor(remainingTime /1000 / 3600 /24)}} {{'remainging_days' | localize("gg")}}</small>
|
||||
<small style="text-transform:lowercase" >+{{Math.floor(remainingTime /1000 / 3600 /24)}} {{'remainging_days' | localize("gg")}}</small>
|
||||
</time>
|
||||
<time v-else>--:--</time>
|
||||
</div>
|
||||
@@ -169,7 +169,8 @@
|
||||
:width="614"
|
||||
:height="65"
|
||||
:value="panel.tS_Cadenza"
|
||||
:max-num-done="lastItem.numDone-1"
|
||||
:max-num-done="lastItem.numDone"
|
||||
:isTime = "false"
|
||||
v-if="selectedChart == 'pezziora'"
|
||||
></stats>
|
||||
<stats
|
||||
@@ -177,12 +178,13 @@
|
||||
:width="614"
|
||||
:height="65"
|
||||
:value="panel.tS_TCiclo"
|
||||
:max-num-done="lastItem.numDone-1"
|
||||
:max-num-done="lastItem.numDone"
|
||||
:isTime = "true"
|
||||
v-if="selectedChart == 'tempociclo'"
|
||||
></stats>
|
||||
</div>
|
||||
<div class="current-item">
|
||||
<hitem :value="lastItem"></hitem>
|
||||
<hitem :value="lastItem" :panel="panel"></hitem>
|
||||
</div>
|
||||
<div class="history-list scrollable">
|
||||
<hitem :value="item" v-for="(item, idx) in items" :key="idx"></hitem>
|
||||
|
||||
@@ -9,6 +9,7 @@ import gantt from "./gantt/gantt.vue";
|
||||
import zoom from "./gantt/zoomLevel.vue";
|
||||
import softKey from "./softkey.vue";
|
||||
import { Hub } from '@/services';
|
||||
import EditProduzione from "@/app_modules_thermo/setup/avvio-produzione/edit-produzione.vue";
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
@@ -17,12 +18,20 @@ import { Hub } from '@/services';
|
||||
})
|
||||
export default class Processo extends Vue {
|
||||
|
||||
|
||||
|
||||
get inAuto(): boolean {
|
||||
return store.state.machineStatus.cycleProd.mode==2;
|
||||
};
|
||||
get actual(): number {
|
||||
return store.state.prod.prod.numDone;
|
||||
return store.state.prod.panel.numDone;
|
||||
};
|
||||
|
||||
get tot(): number {
|
||||
return store.state.prod.prod.numTarget;
|
||||
return store.state.prod.panel.numTarget;
|
||||
};
|
||||
get preHot(): number {
|
||||
return store.state.prod.panel.numPreHot;
|
||||
};
|
||||
|
||||
get blocks(): server.Modblock[] {
|
||||
@@ -39,6 +48,10 @@ export default class Processo extends Vue {
|
||||
return store.state.machineStatus.gaugeData;
|
||||
}
|
||||
|
||||
async editProd(){
|
||||
await ModalHelper.ShowModalAsync(EditProduzione);
|
||||
}
|
||||
|
||||
public sendMessage(name: string) {
|
||||
messageService.publishToChannel(name);
|
||||
}
|
||||
|
||||
@@ -20,8 +20,13 @@
|
||||
@checkChanged="softKeyChanged(b.id, b.operatorConfirmationNeeded)"
|
||||
></soft-key>
|
||||
</template>
|
||||
<label>
|
||||
<div>{{actual}}/</div><button class="btn">{{tot}}</button>
|
||||
<label v-if="actual != null" >
|
||||
<div v-if="preHot == 0">{{actual}}/</div>
|
||||
<div v-else>-{{preHot}}/</div>
|
||||
<button @click="editProd" class="btn" v-if="inAuto && tot != 0">{{tot}}</button>
|
||||
<button @click="editProd" class="btn" v-if="inAuto && tot == 0">--</button>
|
||||
<div class="totp" v-if="!inAuto && tot != 0">{{tot}}</div>
|
||||
<div class="totp" v-if="!inAuto && tot == 0">--</div>
|
||||
</label>
|
||||
</div>
|
||||
<gantt
|
||||
|
||||
+11
-2
@@ -2,7 +2,7 @@ import Vue from "vue";
|
||||
import { Modal, ModalHelper } from "@/components/modals";
|
||||
import { Factory, messageService, awaiter } from "@/_base";
|
||||
import Component from "vue-class-component";
|
||||
import { Prop } from 'vue-property-decorator';
|
||||
import { Prop,Watch } from 'vue-property-decorator';
|
||||
import { appModelActions, store } from "@/store/app.store";
|
||||
import { prodService } from "@/services/prodService";
|
||||
import { prodActions } from "@/store/prod.store";
|
||||
@@ -37,6 +37,15 @@ export default class AvvioProduzione extends Vue {
|
||||
}
|
||||
} as Recipe.IValue;
|
||||
|
||||
|
||||
|
||||
@Watch("pieces.status.enabled")
|
||||
changeMaxPieces(){
|
||||
if(!this.pieces.status.enabled)
|
||||
{
|
||||
this.pieces.setpointHMI = 0;
|
||||
}
|
||||
}
|
||||
annulla() {
|
||||
ModalHelper.HideModal();
|
||||
};
|
||||
@@ -45,11 +54,11 @@ export default class AvvioProduzione extends Vue {
|
||||
|
||||
async showDashboard() {
|
||||
|
||||
await prodService.Start(this.pieces.setpointHMI, this.newjob, this.warmuppieces.setpointHMI);
|
||||
if (this.newjob) {
|
||||
messageService.publishToChannel('restart-cycle');
|
||||
prodActions.resetProd(store);
|
||||
}
|
||||
await prodService.Start(this.pieces.setpointHMI, this.newjob, this.warmuppieces.setpointHMI);
|
||||
|
||||
|
||||
ModalHelper.HideModal();
|
||||
|
||||
+4
-4
@@ -12,7 +12,7 @@
|
||||
<section>
|
||||
<article>
|
||||
<div class="input-area mb-10" style="margin:auto">
|
||||
<label>{{'new'|localize('Nuova produzione')}}</label>
|
||||
<label>{{'new_production'|localize('Nuova produzione')}}</label>
|
||||
<toggle-button v-model="newjob"></toggle-button>
|
||||
</div>
|
||||
<div class="box mt-10">
|
||||
@@ -32,7 +32,7 @@
|
||||
</div>
|
||||
<article class="body">
|
||||
<div class="input-area mb-10">
|
||||
<label>{{'production_enabling'|localize('Modifica numero pezzi')}}</label>
|
||||
<label>{{'production_enabling'|localize('Set numero max di pezzi')}}</label>
|
||||
<toggle-button v-model="pieces.status.enabled"></toggle-button>
|
||||
</div>
|
||||
<div class="input-area mb-10">
|
||||
@@ -45,8 +45,8 @@
|
||||
</article>
|
||||
</section>
|
||||
<footer>
|
||||
<button class="btn" @click="annulla()">Annulla</button>
|
||||
<button class="btn btn-success" @click="showDashboard()">Avvio</button>
|
||||
<button class="btn" @click="annulla()">{{'modal_cancel_button' | localize("Annulla")}}</button>
|
||||
<button class="btn btn-success" @click="showDashboard()">{{'modal_start_button' | localize("Avvia")}}</button>
|
||||
</footer>
|
||||
</modal>
|
||||
</div>
|
||||
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
import Vue from "vue";
|
||||
import { Modal, ModalHelper } from "@/components/modals";
|
||||
import { Factory, messageService, awaiter } from "@/_base";
|
||||
import Component from "vue-class-component";
|
||||
import { Prop,Watch } from 'vue-property-decorator';
|
||||
import { appModelActions, store } from "@/store/app.store";
|
||||
import { prodService } from "@/services/prodService";
|
||||
import { prodActions } from "@/store/prod.store";
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
modal: Modal,
|
||||
}
|
||||
})
|
||||
export default class EditProduzione extends Vue {
|
||||
|
||||
pieces: Recipe.IValue = {
|
||||
setpointHMI: 0,
|
||||
range: { min: 0, max: 999999 },
|
||||
status: {
|
||||
enabled: true,
|
||||
hasError: false,
|
||||
visible: true
|
||||
}
|
||||
} as Recipe.IValue;
|
||||
|
||||
@Watch("pieces.status.enabled")
|
||||
changeMaxPieces(){
|
||||
if(!this.pieces.status.enabled)
|
||||
{
|
||||
this.pieces.setpointHMI = 0;
|
||||
}
|
||||
}
|
||||
annulla() {
|
||||
ModalHelper.HideModal();
|
||||
};
|
||||
|
||||
get prod() { return store.state.prod.panel }
|
||||
|
||||
async showDashboard() {
|
||||
|
||||
await prodService.Start(this.pieces.setpointHMI, false, 0);
|
||||
|
||||
|
||||
ModalHelper.HideModal();
|
||||
}
|
||||
|
||||
async beforeMount() {
|
||||
// this.contactInfo = await awaiter(new machineService().getContactConfiguration());
|
||||
messageService.subscribeToChannel("esc_pressed", args => {
|
||||
this.close();
|
||||
});
|
||||
}
|
||||
|
||||
beforeDestroy() {
|
||||
messageService.deleteChannel("esc_pressed");
|
||||
}
|
||||
|
||||
close() {
|
||||
messageService.deleteChannel("esc_pressed");
|
||||
ModalHelper.HideModal();
|
||||
}
|
||||
|
||||
mounted() {
|
||||
this.pieces.setpointHMI = this.prod.numTarget;
|
||||
}
|
||||
|
||||
}
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
<template>
|
||||
<div class="setup">
|
||||
<modal
|
||||
type="avvio-produzione-info"
|
||||
:title="'edit_prod_lbl_title' | localize('Edit produzione')"
|
||||
>
|
||||
<div slot="header-buttons">
|
||||
<button class="modal-close" @click="close()">
|
||||
<i class="fa fa-remove"></i>
|
||||
</button>
|
||||
</div>
|
||||
<section>
|
||||
<article>
|
||||
<div class="box mt-10">
|
||||
<div class="header">
|
||||
<label>{{'production_management' | localize("Gestione produzione")}}</label>
|
||||
</div>
|
||||
<article class="body">
|
||||
<div class="input-area mb-10">
|
||||
<label>{{'production_enabling'|localize('Set numero max di pezzi')}}</label>
|
||||
<toggle-button v-model="pieces.status.enabled"></toggle-button>
|
||||
</div>
|
||||
<div class="input-area mb-10">
|
||||
<label style="flex:1;">{{'mock_pieces'|localize('Numero pezzi')}}</label>
|
||||
<label>{{prod.numDone}}/</label>
|
||||
<numeric v-model="pieces" :keyboardPosition="'bottom'" />
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</article>
|
||||
</section>
|
||||
<footer>
|
||||
<button class="btn" @click="annulla()">{{'modal_cancel_button' | localize("Annulla")}}</button>
|
||||
<button class="btn btn-success" @click="showDashboard()">{{'confirm' | localize("Conferma")}}</button>
|
||||
</footer>
|
||||
</modal>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./edit-produzione.ts"></script>
|
||||
+2
@@ -46,6 +46,7 @@ export default class ControlBox extends Vue {
|
||||
|
||||
ontouchmove(event: TouchEvent) {
|
||||
if (!this.touching) return;
|
||||
if(!this.value.status.enabled) return;
|
||||
|
||||
let newtouch: { x: number, y: number } = null;
|
||||
for (const touch of Array.from(event.touches).slice(0, 1)) {
|
||||
@@ -58,6 +59,7 @@ export default class ControlBox extends Vue {
|
||||
if (this.moveVertical)
|
||||
this.value.setpointHMI -= (newtouch.y - this.touching.y) * this.scale;
|
||||
|
||||
this.value.setpointHMI = parseFloat(this.value.setpointHMI.toFixed(this.value.numDec));
|
||||
this.value.setpointHMI = Math.min(Math.max(this.value.setpointHMI, this.value.range.min), this.value.range.max);
|
||||
|
||||
// console.log(event, newtouch, this.touching);
|
||||
|
||||
-24
@@ -25,30 +25,6 @@
|
||||
<small>{{recipe.positions_frame_lower_speed.unitMeasure}}</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="borded_label" id="quota3">
|
||||
<div>
|
||||
<img src="assets/icons/png/discesa.png" />
|
||||
<span>00</span>
|
||||
<small>mm</small>
|
||||
</div>
|
||||
<div>
|
||||
<img src="assets/icons/png/alta.png" />
|
||||
<span>00</span>
|
||||
<small>mm</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="borded_label" id="quota4">
|
||||
<div>
|
||||
<img src="assets/icons/png/discesa.png" />
|
||||
<span>00</span>
|
||||
<small>mm</small>
|
||||
</div>
|
||||
<div>
|
||||
<img src="assets/icons/png/bassa.png" />
|
||||
<span>00</span>
|
||||
<small>mm</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="borded_label" id="quota2">
|
||||
<div v-focus-on:positions_frame_upper_position>
|
||||
<img src="assets/icons/png/salita.png" />
|
||||
|
||||
+3
@@ -15,6 +15,9 @@ export default class Resistance extends Vue {
|
||||
@Prop({ default: false })
|
||||
selected: boolean;
|
||||
|
||||
@Prop({ default: false })
|
||||
temperature: boolean;
|
||||
|
||||
@Prop({ default: function () { return [253, 216, 53] } })
|
||||
colorFrom: number[];
|
||||
|
||||
|
||||
+14
@@ -2,9 +2,23 @@
|
||||
<div
|
||||
class="resistance"
|
||||
:key="selected"
|
||||
v-if="!temperature"
|
||||
@click="$emit('click')"
|
||||
v-on:touchend="$emit('click')"
|
||||
:style="{backgroundColor:`rgb(${currentColor})`}"
|
||||
>{{channel.setpointHMI}} %</div>
|
||||
<div
|
||||
class="resistance temp"
|
||||
:key="selected"
|
||||
@click="$emit('click')"
|
||||
v-on:touchend="$emit('click')"
|
||||
v-else
|
||||
:style="{backgroundColor:`rgb(${currentColor})`}"
|
||||
>
|
||||
<span>{{channel.setpointHMI}} °C</span>
|
||||
<span>{{channel.setpointHMI}} °C</span>
|
||||
<span>{{channel.setpointHMI}} %</span>
|
||||
<span>{{channel.setpointHMI}} %</span>
|
||||
</div>
|
||||
</template>
|
||||
<script src="./resistance.ts" lang="ts"></script>
|
||||
+92
@@ -0,0 +1,92 @@
|
||||
import Vue from 'vue';
|
||||
import Component from 'vue-class-component';
|
||||
import { Prop } from 'vue-property-decorator';
|
||||
import warmers from "./warmers.vue";
|
||||
import { store } from '@/store';
|
||||
import { thermocameraService } from "@/services/thermocameraService";
|
||||
|
||||
@Component({
|
||||
name: "thermocamera", components: {
|
||||
|
||||
warmers
|
||||
}
|
||||
})
|
||||
export default class Thermocamera extends Vue {
|
||||
|
||||
@Prop()
|
||||
recipe: Recipe.IRecipe;
|
||||
|
||||
selectedChannelIds: number[] = [];
|
||||
uniformChannelValue: number = -1;
|
||||
|
||||
beforeMount(){
|
||||
this.uniformChannelValue = -1;
|
||||
}
|
||||
|
||||
get selectedChannels(): Warmers.IChannel[] {
|
||||
return store.state.warmers.channels.filter(i => this.selectedChannelIds.indexOf(i.idChannel) >= 0);
|
||||
}
|
||||
|
||||
selectionMethod = "none"
|
||||
|
||||
changedSelectValue(v){
|
||||
if(this.uniformChannelValue>=0)
|
||||
for (const c of this.selectedChannels) c.setpointHMI = this.uniformChannelValue;
|
||||
}
|
||||
|
||||
|
||||
zoomIn() {
|
||||
(this.$refs.warmers as any).zoomIn();
|
||||
}
|
||||
|
||||
zoomOut() {
|
||||
(this.$refs.warmers as any).zoomOut();
|
||||
}
|
||||
zoomReset() {
|
||||
(this.$refs.warmers as any).zoomReset();
|
||||
}
|
||||
|
||||
async showcamera(){
|
||||
this.zoomReset()
|
||||
await thermocameraService.show();
|
||||
|
||||
}
|
||||
|
||||
selectionChanged(selected: number[]) {
|
||||
this.selectedChannelIds = []
|
||||
this.uniformChannelValue = -1;
|
||||
this.selectedChannelIds = selected;
|
||||
}
|
||||
|
||||
disableHeater(){
|
||||
|
||||
}
|
||||
|
||||
enableHeater(){
|
||||
|
||||
}
|
||||
|
||||
setAllTemperature(){
|
||||
|
||||
}
|
||||
|
||||
add5() {
|
||||
for (const c of this.selectedChannels) c.setpointHMI = Math.min(Math.max(parseFloat(c.setpointHMI.toString()) + 5, 0), 100);
|
||||
this.$emit("warmersChanged");
|
||||
}
|
||||
|
||||
remove5() {
|
||||
for (const c of this.selectedChannels) c.setpointHMI = Math.min(Math.max(parseFloat(c.setpointHMI.toString()) - 5, 0), 100);
|
||||
this.$emit("warmersChanged");
|
||||
}
|
||||
|
||||
add1() {
|
||||
for (const c of this.selectedChannels) c.setpointHMI = Math.min(Math.max(parseFloat(c.setpointHMI.toString()) + 1, 0), 100);
|
||||
this.$emit("warmersChanged");
|
||||
}
|
||||
|
||||
remove1() {
|
||||
for (const c of this.selectedChannels) c.setpointHMI = Math.min(Math.max(parseFloat(c.setpointHMI.toString()) - 1, 0), 100);
|
||||
this.$emit("warmersChanged");
|
||||
}
|
||||
}
|
||||
+105
@@ -0,0 +1,105 @@
|
||||
<template>
|
||||
<section>
|
||||
<aside class="scrollable auto" v-if="recipe">
|
||||
<div class="box transparent">
|
||||
<div class="body">
|
||||
<div class="divider"></div>
|
||||
|
||||
<div class="input-area">
|
||||
<label>{{'warmers_selection' | localize('Selezione')}}</label>
|
||||
</div>
|
||||
<div class="input-area left grid grid-5">
|
||||
<button
|
||||
class="btn btn-info square"
|
||||
@click="$refs.warmers.toggleSelection('rect')"
|
||||
:class="{pressed: selectionMethod == 'rect'}"
|
||||
>
|
||||
<img src="assets/icons/png/rett.png" />
|
||||
</button>
|
||||
<button
|
||||
class="btn btn-info square"
|
||||
@click="$refs.warmers.toggleSelection('poly')"
|
||||
:class="{pressed: selectionMethod == 'poly'}"
|
||||
>
|
||||
<img src="assets/icons/png/libera.png" />
|
||||
</button>
|
||||
<label></label>
|
||||
<button class="btn btn-info" @click="$refs.warmers.selectAll()">
|
||||
<label>{{'warmers_select_all' | localize('Tutti')}}</label>
|
||||
</button>
|
||||
<button class="btn btn-info" @click="$refs.warmers.selectNone()">
|
||||
<label>{{'warmers_select_none' | localize('Nessuno')}}</label>
|
||||
</button>
|
||||
</div>
|
||||
<div class="input-area left grid">
|
||||
<button
|
||||
class="btn"
|
||||
@click="showcamera"
|
||||
>{{'warmers_showcamera' | localize('Show Camera')}}</button>
|
||||
</div>
|
||||
<div class="divider"></div>
|
||||
<div class="input-area">
|
||||
<label>{{'warmers_enable' | localize('Gestione Abilitazione')}}</label>
|
||||
</div>
|
||||
<div class="input-area grid left">
|
||||
<button
|
||||
class="btn"
|
||||
@click="enableHeater"
|
||||
>{{'warmers_enabletemp' | localize('Enable selected')}}</button>
|
||||
<button
|
||||
class="btn"
|
||||
@click="disableHeater"
|
||||
>{{'warmers_disabletemp' | localize('Disable selected')}}</button>
|
||||
</div>
|
||||
<div class="divider"></div>
|
||||
<div class="input-area">
|
||||
<label>{{'warmers_temperature' | localize('Gestione Temperatura')}}</label>
|
||||
</div>
|
||||
<div class="input-area left grid grid-5">
|
||||
<button class="btn btn-info square" @click="remove5()">-5°C</button>
|
||||
<button class="btn btn-info square" @click="remove1()">-1°C</button>
|
||||
<button class="btn btn-info square" @click="add1()">+1°C</button>
|
||||
<button class="btn btn-info square" @click="add5()">+5°C</button>
|
||||
<select class="input-select" v-model="uniformChannelValue" @change="changedSelectValue">
|
||||
<option value="-1">{{'warmers_select_power' | localize('Seleziona...')}}</option>
|
||||
<option v-for="index in 31" :key="index" :value="((index-1)*10)">{{(index-1)*10}}°C</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-area grid left">
|
||||
<button
|
||||
class="btn btn-success"
|
||||
@click="setAllTemperature"
|
||||
>{{'warmers_setTemperature' | localize('Set all temperature')}}</button>
|
||||
</div>
|
||||
|
||||
<!-- </div> -->
|
||||
</div>
|
||||
</div>
|
||||
</aside>
|
||||
<hr />
|
||||
<article class="warmers">
|
||||
<warmers
|
||||
ref="warmers"
|
||||
@select="selectionChanged"
|
||||
@methodChanged="m => selectionMethod = m"
|
||||
:recipe="recipe"
|
||||
:temperature="true"
|
||||
></warmers>
|
||||
|
||||
<div class="absolute bottom right">
|
||||
<button class="btn btn-info square icon" @click="zoomIn()">
|
||||
<i class="fa fa-search-plus" ></i>
|
||||
</button>
|
||||
<button class="btn btn-info square icon" @click="zoomOut()">
|
||||
<i class="fa fa-search-minus" ></i>
|
||||
</button>
|
||||
<button class="btn btn-info square icon" @click="zoomReset()">
|
||||
<i class="fa fa-square-o" ></i>
|
||||
</button>
|
||||
</div>
|
||||
</article>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
|
||||
<script lang="ts" src="./thermocamera.ts"></script>
|
||||
+4
@@ -32,6 +32,10 @@ export default class Warmers extends Vue {
|
||||
@Prop({ default: true })
|
||||
usePanZoom: boolean;
|
||||
|
||||
@Prop({ default: false })
|
||||
temperature: boolean;
|
||||
|
||||
|
||||
get planSizeX() {
|
||||
return parseFloat(this.parameters.warmerPlanSizeX.toString());
|
||||
}
|
||||
|
||||
+1
@@ -26,6 +26,7 @@
|
||||
@mouseup="stopSelection"
|
||||
@click="select(cell)"
|
||||
:selected="isSelected(cell.idChannel)"
|
||||
:temperature="temperature"
|
||||
/>
|
||||
</foreignObject>
|
||||
</g>
|
||||
|
||||
+3
-1
@@ -6,6 +6,8 @@ import { Prop, Watch } from 'vue-property-decorator';
|
||||
import StepFooter from "@/app_modules_thermo/setup/components/step-footer.vue";
|
||||
import RiscaldiSup from "./base-components/riscaldi-superiori.vue";
|
||||
import RiscaldiInf from "./base-components/riscaldi-inferiori.vue";
|
||||
import Thermocamera from "./base-components/thermocamera.vue";
|
||||
|
||||
import SostDecomp from "./base-components/sostentamento-decompressione.vue";
|
||||
import { recipeActions } from "@/store/recipe.store";
|
||||
import { store } from "@/store";
|
||||
@@ -14,7 +16,7 @@ import { recipeService } from "@/services/recipeService";
|
||||
import { warmersService } from "@/services/warmersService";
|
||||
import { debounce } from "@/_base/debounce";
|
||||
|
||||
@Component({ components: { modal: Modal, stepfooter: StepFooter, riscaldiinf: RiscaldiInf, riscaldisup: RiscaldiSup, sostdecomp: SostDecomp } })
|
||||
@Component({ components: { modal: Modal, stepfooter: StepFooter, riscaldiinf: RiscaldiInf, riscaldisup: RiscaldiSup, sostdecomp: SostDecomp,thermocamera:Thermocamera } })
|
||||
export default class ShowRiscaldamentoSuperioreInfo extends Vue {
|
||||
|
||||
recipe: Recipe.IRecipe = this.$store.getters.getCurrent();
|
||||
|
||||
+6
@@ -17,6 +17,11 @@
|
||||
@click="show = 'decomsustain'"
|
||||
v-if="isDecomsustainEnabled()"
|
||||
>{{'decomsustain' | localize("Sostentamento/Decompressione")}}</button>
|
||||
<button
|
||||
:class="{'active':show == 'termocamera'}"
|
||||
@click="show = 'termocamera'"
|
||||
v-if="isDecomsustainEnabled()"
|
||||
>{{'Thermoprophet' | localize("Thermoprophet")}}</button>
|
||||
</div>
|
||||
<div slot="header-buttons">
|
||||
<button class="modal-close" @click="close()">
|
||||
@@ -25,6 +30,7 @@
|
||||
</div>
|
||||
<riscaldiinf v-if="show == 'lowerheaters'" :recipe="recipe" @warmersChanged="warmersChanged" ></riscaldiinf>
|
||||
<riscaldisup v-if="show == 'upperheaters'" :recipe="recipe" @warmersChanged="warmersChanged" ></riscaldisup>
|
||||
<thermocamera v-if="show == 'termocamera'" :recipe="recipe" @warmersChanged="warmersChanged" ></thermocamera>
|
||||
<sostdecomp v-if="show == 'decomsustain'" :recipe="recipe"></sostdecomp>
|
||||
<footer>
|
||||
<div v-if="isLoading"><i class="loader fa fa-circle-o-notch fa-spin"></i></div>
|
||||
|
||||
@@ -85,9 +85,11 @@ export default class ModalLoadProgram extends Vue {
|
||||
}
|
||||
|
||||
get canLoadProgram() {
|
||||
return this.$store.state.process.canLoadProgram;
|
||||
if(!this.$store.state.machineStatus.cycleProd) return false
|
||||
return this.$store.state.machineStatus.cycleProd.mode!=2;
|
||||
}
|
||||
|
||||
|
||||
async duplicate() {
|
||||
let result = await ModalHelper.ShowModalAsync(duplicateModal, { name: this.selectedFile.Name, folder: this.currentPath });
|
||||
this.relaodFiles();
|
||||
|
||||
@@ -251,8 +251,7 @@
|
||||
<div class="modal-load-program-footer">
|
||||
<button
|
||||
class="btn btn-success"
|
||||
:disabled="!selectedFile || fileIsChanged || loadClicked"
|
||||
v-if="this.isLocalNavigation"
|
||||
:disabled="!selectedFile || fileIsChanged || loadClicked || !canLoadProgram"
|
||||
@click="load(selectedFile)"
|
||||
>{{'modal_load_program_btn_upload_recipe' | localize('Carica e attiva ricetta')}}</button>
|
||||
</div>
|
||||
|
||||
@@ -26,6 +26,7 @@ import { prodActions } from "@/store/prod.store";
|
||||
import { Model } from "vue-property-decorator";
|
||||
import { prodService } from "./prodService";
|
||||
import { recipeService } from "./recipeService";
|
||||
import { warmersActions } from "@/store/warmers.store";
|
||||
|
||||
declare const PRODUCTION;
|
||||
|
||||
@@ -107,6 +108,7 @@ export class Hub {
|
||||
|
||||
// qui i NUOVI metodi NUOVI dal server (Recipe, gauges) da completare lato HUB
|
||||
this._hub.client.recipeFullData = Hub.recipeFullData;
|
||||
this._hub.client.warmersData = Hub.warmersData;
|
||||
this._hub.client.setpointHmiInvalid = Hub.setpointHmiInvalid;
|
||||
this._hub.client.recipeOverData = Hub.recipeOverData;
|
||||
this._hub.client.recipeChangedData = Hub.recipeChangedData;
|
||||
@@ -181,6 +183,10 @@ export class Hub {
|
||||
recipeActions.setCurrent(store, data, true);
|
||||
}
|
||||
|
||||
public static warmersData(data){
|
||||
warmersActions.setChannels(store, data as { [id: number]: Warmers.IChannel });
|
||||
}
|
||||
|
||||
public static async setpointHmiInvalid(data) {
|
||||
if (data) {
|
||||
await recipeService.GetCurrent();
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
import { baseRestService } from "../_base/baseRestService";
|
||||
import { CONFIGURATION } from "@/config";
|
||||
import { warmersActions } from "@/store/warmers.store";
|
||||
import { store } from "@/store";
|
||||
import Warmers from "@/app_modules_thermo/setup/riscaldi/components/base-components/warmers";
|
||||
|
||||
export class ThermocameraService extends baseRestService {
|
||||
|
||||
BASE_URL = async () => (await CONFIGURATION).api.apiServerUrl + "api/thermocamera/";
|
||||
|
||||
|
||||
async show() {
|
||||
let result = await this.Post<any>((await this.BASE_URL()) + "show", null, true);
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
export const thermocameraService = new ThermocameraService();
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user