Esempio n. 1
0
 public S7PlcService(int index, ICpuConfig config, List <IDatablockModel> datablocks)
     : base(index, config, datablocks)
 {
     S7.Net.CpuType S7NetCpuType = ConvertCpuType(Config.CpuType);
     _plcReader = new S7.Net.Plc(S7NetCpuType, config.Ip, (short)config.Rack, (short)config.Slot);
     _plcWriter = new S7.Net.Plc(S7NetCpuType, config.Ip, (short)config.Rack, (short)config.Slot);
 }
Esempio n. 2
0
 protected PlcService(int index, ICpuConfig config, List <IDatablockModel> datablocks)
 {
     Index              = index;
     Config             = config;
     Datablocks         = datablocks;
     _plcReadWriteTimer = new System.Threading.Timer(PlcReadWriteCallback, null, Timeout.Infinite, Timeout.Infinite);
 }
Esempio n. 3
0
        public static PlcService Create(int index, ICpuConfig config, List <IDatablockModel> datablocks)
        {
            if (AssemblyEnvironment.IsDevelopment())
            {
                return(new SimulatedPlcService(index, config, datablocks));
            }

            return(new S7PlcService(index, config, datablocks));
        }
Esempio n. 4
0
 public SimulatedPlcService(int index, ICpuConfig config, List <IDatablockModel> datablocks)
     : base(index, config, datablocks)
 {
     foreach (var db in datablocks)
     {
         if (db.Signals.Count > _simulatedSignals.Count)
         {
             foreach (var signal in db.Signals)
             {
                 _simulatedSignals.Add(new SimulatedSignal(signal.Index));
             }
         }
     }
 }
Esempio n. 5
0
 public virtual async Task ConnectAsync(ICpuConfig config)
 {
     Config = config;
     await ConnectAsync();
 }
Esempio n. 6
0
 public override Task ConnectAsync(ICpuConfig config)
 {
     return(base.ConnectAsync(config));
 }
Esempio n. 7
0
 public TestablePlcService(int index, ICpuConfig config, List <IDatablockModel> datablocks)
     : base(index, config, datablocks)
 {
 }
Esempio n. 8
0
 public override async Task ConnectAsync(ICpuConfig config)
 {
     Config = config;
     await ConnectAsync();
 }