Esempio n. 1
0
        public double PowerToSell()
        {
            double        result = 0;
            PriceAndPower pnp;

            lock (lockInstance)
            {
                if (Instance.BatteryIsCharging)
                {
                    Instance.SumProduced = Instance.PowerProducedSolar;
                    Instance.SumConsume  = (double.Parse(Instance.PowerConsumersUse) + double.Parse(Instance.PowerInBattery) + double.Parse(
                                                Instance.PowerEVUse)).ToString();
                }
                else
                {
                    if (double.Parse(Instance.BatteryCapacity) >= double.Parse(Instance.PowerInBattery) - 0.15)
                    {
                        Instance.SumProduced = Instance.PowerProducedSolar;
                        Instance.SumConsume  = (double.Parse(Instance.PowerConsumersUse) + double.Parse(Instance.PowerEVUse)).ToString();
                    }
                    else
                    {
                        Instance.SumProduced = (double.Parse(Instance.PowerProducedSolar) + double.Parse(Instance.PowerInBattery)).ToString();
                        Instance.SumConsume  = (double.Parse(Instance.PowerConsumersUse) + double.Parse(Instance.PowerEVUse)).ToString();
                    }
                }
                result = (double.Parse(Instance.SumConsume) - double.Parse(Instance.SumProduced));
                pnp    = new PriceAndPower(double.Parse(Instance.Price), result, DateTime.Now);
                PriceAndPowers.Add(pnp);
                serializer.SerializeObject <ObservableCollection <PriceAndPower> >(PriceAndPowers, "PriceAndPower.xml");
            }
            //Thread.Sleep(300);
            return(result);
        }
Esempio n. 2
0
 public void Setup()
 {
     pap = new PriceAndPower();
 }