private static Rubidium CreateRubidium() { TcpConnection tcp = new TcpConnection(new TcpConnectionSettings(new IPEndPoint(IPAddress.Loopback, 5001))); tcp.OpenConnection(); Rubidium rubidium = new Rubidium(new RubidiumSettings()); rubidium.Connections.Add(tcp); rubidium.Init(); return(rubidium); }
static void Main(string[] args) { Log.Logger = new LoggerConfiguration() .MinimumLevel.Debug() .Enrich.FromLogContext() .WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss.fff} {Level:u3}] {Properties:j} {Message:lj}{NewLine}{Exception}") .WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("http://localhost:9200")) { AutoRegisterTemplate = true, AutoRegisterTemplateVersion = AutoRegisterTemplateVersion.ESv6 }) .CreateLogger(); DeviceManager deviceManager = new DeviceManager(); var zoneA = deviceManager.AddZone("ZoneA"); var zoneB = deviceManager.AddZone("ZoneB"); var zoneC = deviceManager.AddZone("ZoneC"); Site.Site siteAA = zoneA.AddSite(new Site.Site("ZoneA-SiteA")); TplBooster tplBooster = CreateTplBooster(); Rubidium rubidium = CreateRubidium(); CricketTransciever cricketTransciever = CreateCricketTransciever(); Apc7920B apc = CreateApc(); //Moxa moxa = CreateMoxa(); siteAA.AddDeviceToSite(tplBooster); siteAA.AddDeviceToSite(rubidium); siteAA.AddDeviceToSite(cricketTransciever); siteAA.AddDeviceToSite(apc); //ControlledDevice powerSupply = DeviceFactory.CreateDevice(AvailableDeviceType.PowerSupply, new List<(AvailableApi, AvailableConnection, AvailableSyntax,ConnectionSettings)> //{ // //( AvailableApi.PowerSupplyApi, AvailableConnection.TcpConnection, AvailableSyntax.ScpiSyntax,new TcpConnectionSettings(new IPEndPoint(IPAddress.Loopback, 8888))), // ( AvailableApi.PowerManagementApi, AvailableConnection.TcpConnection, AvailableSyntax.ScpiSyntax,new TcpConnectionSettings(new IPEndPoint(IPAddress.Loopback, 7777))), //}); //ControlledDevice cricket = DeviceFactory.CreateDevice(AvailableDeviceType.CricketTransciever, new List<(AvailableApi, AvailableConnection, AvailableSyntax, ConnectionSettings)> //{ // ( AvailableApi.CricketTranscieverApi, AvailableConnection.UdpConnection, AvailableSyntax.ScpiSyntax, new UdpConnectionSettings(new IPEndPoint(IPAddress.Loopback, 11000))), //}); //ControlledDevice rubidium = DeviceFactory.CreateDevice(AvailableDeviceType.Rubidium, new List<(AvailableApi, AvailableConnection, AvailableSyntax, ConnectionSettings)> //{ // ( AvailableApi.RubidiumApi, AvailableConnection.TcpConnection, AvailableSyntax.RubidiumSyntax, new TcpConnectionSettings(new IPEndPoint(IPAddress.Loopback, 8888))), //}); //siteAA.AddDeviceToSite(powerSupply); //siteAA.AddDeviceToSite(cricket); //siteAA.AddDeviceToSite(rubidium); //RubidiumApi rubidiumApi = ApiFactory.ConfigureDeviceApis<RubidiumApi>(AvailableConnection.TcpConnection, // new TcpConnectionSettings(new IPEndPoint(IPAddress.Parse("127.0.0.1"),8888)), new RubidiumSyntax()); //Rubidium rubidium = new Rubidium(new PowerSupplySettings()); //rubidium.AddApi(rubidiumApi); //var s = JsonConvert.SerializeObject(rubidium); //deviceManager.AddDevice(rubidium, true); //var rep = rubidium.GetApi<RubidiumApi>().GetBitReport(); //var report = rubidiumApi.GetBitReport(); //var report2 = rubidiumApi.GetSystemReport(); //var report3 = rubidiumApi.GetTimeReport(); //TplBoosterApi tplBoosterApi = ApiFactory.ConfigureDeviceApis<TplBoosterApi>(AvailableConnection.HttpConnection, // new HttpConnectionSettings(new UriEndPoint(new Uri("http://localhost:9999"))), new TplBoosterSyntax()); //PowerSupplyApi psApi = ApiFactory.ConfigureDeviceApis<PowerSupplyApi>(AvailableConnection.TcpConnection, // new TcpConnectionSettings(new IPEndPoint(IPAddress.Loopback, 8888)), new ScpiSyntax()); //psApi.TurnOn(2); //PowerSupply powerSupply = // new PowerSupply( // new PowerSupplySettings()); ////powerSupply.AddApi(psApi); //powerSupply.AddLogic(new PingMonitor(new MonitorSettings(),psApi)); //powerSupply.Init(); //SerialEndPoint serialEndPoint = new SerialEndPoint("COM3"); //DataAcquisition dataAcquisition = // new DataAcquisition( // new DataAcuisitionSettings(new SerialConnectionSettings(serialEndPoint) // { // BaudRate = 115200, // DataBits = 8, // Parity = Parity.None, // StopBits = StopBits.One // })); //dataAcquisition.Init(); //PingMonitor pingMonitor = powerSupply.GetLogic<PingMonitor>(); //pingMonitor.MonitorSettings.SamplingRate = TimeSpan.FromSeconds(1); while (true) { Console.WriteLine("Press A for activate monitor or D for deactivate"); ConsoleKeyInfo key = Console.ReadKey(); if (key.Key == ConsoleKey.A) { foreach (var controlledDevice in siteAA.Devices) { controlledDevice.Value.StartAllMonitors(); } } else if (key.Key == ConsoleKey.D) { foreach (var controlledDevice in siteAA.Devices) { controlledDevice.Value.StopAllMonitors(); } } else if (key.Key == ConsoleKey.T) { //powerSupply.GetLogic<PowerSupplyControlLogic>()?.TurnOn(2); } else if (key.Key == ConsoleKey.S) { Console.WriteLine(); } else if (key.Key == ConsoleKey.Q) { break; } } }
public void TestPrintElectronShellCfg_All() { IElement testSubject;; testSubject = new Hydrogen(); Console.WriteLine($"Hydrogen {testSubject.PrintElectronShellCfg()}"); testSubject = new Helium(); Console.WriteLine($"Helium {testSubject.PrintElectronShellCfg()}"); testSubject = new Lithium(); Console.WriteLine($"Lithium {testSubject.PrintElectronShellCfg()}"); testSubject = new Beryllium(); Console.WriteLine($"Beryllium {testSubject.PrintElectronShellCfg()}"); testSubject = new Boron(); Console.WriteLine($"Boron {testSubject.PrintElectronShellCfg()}"); testSubject = new Carbon(); Console.WriteLine($"Carbon {testSubject.PrintElectronShellCfg()}"); testSubject = new Nitrogen(); Console.WriteLine($"Nitrogen {testSubject.PrintElectronShellCfg()}"); testSubject = new Oxygen(); Console.WriteLine($"Oxygen {testSubject.PrintElectronShellCfg()}"); testSubject = new Fluorine(); Console.WriteLine($"Fluorine {testSubject.PrintElectronShellCfg()}"); testSubject = new Neon(); Console.WriteLine($"Neon {testSubject.PrintElectronShellCfg()}"); testSubject = new Sodium(); Console.WriteLine($"Sodium {testSubject.PrintElectronShellCfg()}"); testSubject = new Magnesium(); Console.WriteLine($"Magnesium {testSubject.PrintElectronShellCfg()}"); testSubject = new Aluminum(); Console.WriteLine($"Aluminum {testSubject.PrintElectronShellCfg()}"); testSubject = new Silicon(); Console.WriteLine($"Silicon {testSubject.PrintElectronShellCfg()}"); testSubject = new Phosphorus(); Console.WriteLine($"Phosphorus {testSubject.PrintElectronShellCfg()}"); testSubject = new Sulfur(); Console.WriteLine($"Sulfur {testSubject.PrintElectronShellCfg()}"); testSubject = new Chlorine(); Console.WriteLine($"Chlorine {testSubject.PrintElectronShellCfg()}"); testSubject = new Argon(); Console.WriteLine($"Argon {testSubject.PrintElectronShellCfg()}"); testSubject = new Potassium(); Console.WriteLine($"Potassium {testSubject.PrintElectronShellCfg()}"); testSubject = new Calcium(); Console.WriteLine($"Calcium {testSubject.PrintElectronShellCfg()}"); testSubject = new Scandium(); Console.WriteLine($"Scandium {testSubject.PrintElectronShellCfg()}"); testSubject = new Titanium(); Console.WriteLine($"Titanium {testSubject.PrintElectronShellCfg()}"); testSubject = new Vanadium(); Console.WriteLine($"Vanadium {testSubject.PrintElectronShellCfg()}"); testSubject = new Chromium(); Console.WriteLine($"Chromium {testSubject.PrintElectronShellCfg()}"); testSubject = new Manganese(); Console.WriteLine($"Manganese {testSubject.PrintElectronShellCfg()}"); testSubject = new Iron(); Console.WriteLine($"Iron {testSubject.PrintElectronShellCfg()}"); testSubject = new Cobalt(); Console.WriteLine($"Cobalt {testSubject.PrintElectronShellCfg()}"); testSubject = new Nickel(); Console.WriteLine($"Nickel {testSubject.PrintElectronShellCfg()}"); testSubject = new Copper(); Console.WriteLine($"Copper {testSubject.PrintElectronShellCfg()}"); testSubject = new Zinc(); Console.WriteLine($"Zinc {testSubject.PrintElectronShellCfg()}"); testSubject = new Gallium(); Console.WriteLine($"Gallium {testSubject.PrintElectronShellCfg()}"); testSubject = new Germanium(); Console.WriteLine($"Germanium {testSubject.PrintElectronShellCfg()}"); testSubject = new Arsenic(); Console.WriteLine($"Arsenic {testSubject.PrintElectronShellCfg()}"); testSubject = new Selenium(); Console.WriteLine($"Selenium {testSubject.PrintElectronShellCfg()}"); testSubject = new Bromine(); Console.WriteLine($"Bromine {testSubject.PrintElectronShellCfg()}"); testSubject = new Krypton(); Console.WriteLine($"Krypton {testSubject.PrintElectronShellCfg()}"); testSubject = new Rubidium(); Console.WriteLine($"Rubidium {testSubject.PrintElectronShellCfg()}"); testSubject = new Strontium(); Console.WriteLine($"Strontium {testSubject.PrintElectronShellCfg()}"); testSubject = new Yttrium(); Console.WriteLine($"Yttrium {testSubject.PrintElectronShellCfg()}"); testSubject = new Zirconium(); Console.WriteLine($"Zirconium {testSubject.PrintElectronShellCfg()}"); testSubject = new Niobium(); Console.WriteLine($"Niobium {testSubject.PrintElectronShellCfg()}"); testSubject = new Molybdenum(); Console.WriteLine($"Molybdenum {testSubject.PrintElectronShellCfg()}"); testSubject = new Technetium(); Console.WriteLine($"Technetium {testSubject.PrintElectronShellCfg()}"); testSubject = new Ruthenium(); Console.WriteLine($"Ruthenium {testSubject.PrintElectronShellCfg()}"); testSubject = new Rhodium(); Console.WriteLine($"Rhodium {testSubject.PrintElectronShellCfg()}"); testSubject = new Palladium(); Console.WriteLine($"Palladium {testSubject.PrintElectronShellCfg()}"); testSubject = new Silver(); Console.WriteLine($"Silver {testSubject.PrintElectronShellCfg()}"); testSubject = new Cadmium(); Console.WriteLine($"Cadmium {testSubject.PrintElectronShellCfg()}"); testSubject = new Indium(); Console.WriteLine($"Indium {testSubject.PrintElectronShellCfg()}"); testSubject = new Tin(); Console.WriteLine($"Tin {testSubject.PrintElectronShellCfg()}"); testSubject = new Antimony(); Console.WriteLine($"Antimony {testSubject.PrintElectronShellCfg()}"); testSubject = new Tellurium(); Console.WriteLine($"Tellurium {testSubject.PrintElectronShellCfg()}"); testSubject = new Iodine(); Console.WriteLine($"Iodine {testSubject.PrintElectronShellCfg()}"); testSubject = new Xenon(); Console.WriteLine($"Xenon {testSubject.PrintElectronShellCfg()}"); testSubject = new Cesium(); Console.WriteLine($"Cesium {testSubject.PrintElectronShellCfg()}"); testSubject = new Barium(); Console.WriteLine($"Barium {testSubject.PrintElectronShellCfg()}"); }