Bozza sim ulazione produzione

This commit is contained in:
Samuele Locatelli
2022-03-07 17:58:37 +01:00
parent 84bfe1e65a
commit 78dba42a2d
8 changed files with 273 additions and 106 deletions
+20 -1
View File
@@ -30,10 +30,12 @@ var currSimGen = new Simulator(Directory.GetCurrentDirectory());
Thread threadStatus = new Thread(simStatus);
Thread threadAlarms = new Thread(simAlarms);
Thread threadParams = new Thread(simParameters);
Thread threadProd = new Thread(simProd);
threadStatus.Start();
threadAlarms.Start();
threadParams.Start();
threadProd.Start();
/// <summary>
/// Hash Redis contenente i dati MP di una specifico TYPE (es StatusMacchina, StateMachineIngressi, ...)
@@ -89,7 +91,7 @@ void simParameters()
do
{
var newParams = currSimGen.MachineGetParameters();
var newParams = currSimGen.getParameters();
string rawData = JsonConvert.SerializeObject(newParams);
saveAndSendMessage(mHash("Machine:Parameters:Current"), rawData, "parameters", rawData);
// attesa random
@@ -108,6 +110,23 @@ void simStatus()
string rawData = JsonConvert.SerializeObject(newStatus);
saveAndSendMessage(mHash("Machine:Status:Current"), rawData, "status", rawData);
// attesa random
Thread.Sleep(rand.Next(minPeriod, maxPeriod));
} while (true);
}
void simProd()
{
int minPeriod = 3000;
int maxPeriod = 10000;
do
{
// recupero uno stato simulato
var newStatus = currSimGen.MachineGetProd();
string rawData = JsonConvert.SerializeObject(newStatus);
saveAndSendMessage(mHash("Machine:Production:Current"), rawData, "production", rawData);
// attesa random
Thread.Sleep(rand.Next(minPeriod, maxPeriod));
} while (true);