コード例 #1
0
        public double GetTemperatureInCelsius()
        {
            var cpuTempProvider = new CpuTemperature();
            var cpuTemp         = cpuTempProvider.Temperature;

            return(cpuTemp.DegreesCelsius);
        }
コード例 #2
0
 public SenseHatServices()
 {
     ledMatrix = new SenseHatLedMatrixI2c();
     pressureAndTemperatureSensor = new SenseHatPressureAndTemperature();
     temperatureAndHumiditySensor = new SenseHatTemperatureAndHumidity();
     temperatureCpuSensor         = new CpuTemperature();
 }
コード例 #3
0
        static void Main(string[] args)
        {
            var root = new ConfigurationBuilder()
                       .SetBasePath(Directory.GetCurrentDirectory())
                       .AddJsonFile("settings.json")
                       .Build();

            int interval = root.GetSection("Interval").Get <int>();

            _pin   = root.GetSection("Pin").Get <int>();
            _gates = root.GetSection("Gates").Get <List <Gate> >();

            _cpuTemperature = new CpuTemperature();
            _fan            = new SoftwarePwmChannel(pinNumber: _pin, frequency: 400, dutyCycle: 0);
            _fan.Start();

            using Timer timer = new Timer(interval);
            timer.Elapsed    += Timer_Elapsed;
            timer.Start();

            Console.CancelKeyPress += (sender, eArgs) => {
                _quitEvent.Set();
                eArgs.Cancel = true;
            };
            _quitEvent.WaitOne();

            _fan.Dispose();
            _cpuTemperature.Dispose();
            timer.Dispose();
        }
コード例 #4
0
        public SimpleFileStreamTest(string fileName)
        {
            _accelerometerDevice = new Accelerometer();
            _gyroscopeDevice     = new Gyroscope();
            _cpuDevice           = new CpuTemperature();

            stream = new FileStream(fileName, FileMode.Create, FileAccess.Write);
        }
コード例 #5
0
        public SingleThreadBinaryChunkkTest(string fileName)
        {
            _accelerometerDevice = new Accelerometer();
            _gyroscopeDevice     = new Gyroscope();
            _cpuDevice           = new CpuTemperature();

            this.fileName = fileName;
        }
コード例 #6
0
        public BinaryChunkWriterScaledTest(string fileName)
        {
            _accelerometerDevice = new Accelerometer();
            _gyroscopeDevice     = new Gyroscope();
            _cpuDevice           = new CpuTemperature();
            _rtcDevice           = new RTC();

            fs = new FileStream(fileName, FileMode.Create, FileAccess.Write);
        }
コード例 #7
0
        public async Task SaveCpuTemperature()
        {
            var cpu = new CpuTemperature();

            while (true)
            {
                if (cpu.IsAvailable)
                {
                    var cpuString = $"The CPU temperature in Celsius is {cpu.Temperature.Celsius} C";
                    Console.WriteLine(cpuString);

                    if (cpu.Temperature.Celsius <= 10)
                    {
                        await _unitOfWork.CpuTemprature.AddAsync(new Cpu
                        {
                            Temprature = cpu.Temperature.Celsius,
                            State      = CpuState.Critical
                        }).ConfigureAwait(false);
                    }
                    else if (cpu.Temperature.Celsius > 10 && cpu.Temperature.Celsius <= 20)
                    {
                        await _unitOfWork.CpuTemprature.AddAsync(new Cpu
                        {
                            Temprature = cpu.Temperature.Celsius,
                            State      = CpuState.Cold
                        }).ConfigureAwait(false);
                    }
                    else if (cpu.Temperature.Celsius > 20 && cpu.Temperature.Celsius <= 55)
                    {
                        await _unitOfWork.CpuTemprature.AddAsync(new Cpu
                        {
                            Temprature = cpu.Temperature.Celsius,
                            State      = CpuState.Ok
                        }).ConfigureAwait(false);
                    }
                    else if (cpu.Temperature.Celsius > 55 && cpu.Temperature.Celsius >= 65)
                    {
                        await _unitOfWork.CpuTemprature.AddAsync(new Cpu
                        {
                            Temprature = cpu.Temperature.Celsius,
                            State      = CpuState.Hot
                        }).ConfigureAwait(false);
                    }
                    else
                    {
                        await _unitOfWork.CpuTemprature.AddAsync(new Cpu
                        {
                            Temprature = cpu.Temperature.Celsius,
                            State      = CpuState.Critical
                        }).ConfigureAwait(false);
                    }
                }
                await Task.Delay(2000).ConfigureAwait(false);
            }
        }
コード例 #8
0
        static void GetTempBMP280()
        {
            CpuTemperature temp = new CpuTemperature();

            while (true)
            {
                Console.WriteLine(
                    $"Temperature: {temp.Temperature.Celsius.ToString("0.0")} °C");

                Thread.Sleep(2000);
            }
        }
コード例 #9
0
        public static double GetCPUTemp()
        {
            CpuTemperature cpuTemperature = new CpuTemperature();

            if (cpuTemperature.IsAvailable)
            {
                return(Math.Round(cpuTemperature.Temperature.Celsius, 0));
            }
            else
            {
                return(Double.NaN);
            }
        }
コード例 #10
0
        public Temperature GetCpuTemp()
        {
            var temperature = new CpuTemperature();

            if (temperature.IsAvailable)
            {
                return(temperature.Temperature);
            }
            else
            {
                throw new CpuTempNotAvailableException("Error: CPU Temperature not available!");
            }
        }
コード例 #11
0
ファイル: GPIOController.cs プロジェクト: djaus2/BlazGPIO
        public Double Get()
        {
            CpuTemperature cpuTemperature = new CpuTemperature();
            double         temperature    = -1;

            if (cpuTemperature.IsAvailable)
            {
                temperature = cpuTemperature.Temperature.Celsius;
                if (!double.IsNaN(temperature))
                {
                    System.Diagnostics.Debug.WriteLine($"CPU Temperature: {temperature} C");
                }
            }
            return(temperature);
        }
コード例 #12
0
 public CpuTempSensor(ILogger <CpuTempSensor> logger, IOptions <CpuTempConfig> options)
 {
     Logger = logger;
     if (options.Value.Enabled)
     {
         CurrentState     = SensorStateEnum.Uninitialized;
         _cpuTemperature  = new CpuTemperature();
         Object           = this;
         TelemetryEnabled = options.Value.Telemetry;
     }
     else
     {
         CurrentState = SensorStateEnum.Disabled;
     }
 }
コード例 #13
0
        public Vibe2020DataService(ILogger <Vibe2020DataService> logger)
        {
            _logger = logger;
            try
            {
                var settings = new SpiConnectionSettings(1, 0)
                {
                    Mode = SpiMode.Mode0, ClockFrequency = 1900000
                };

                _accelerometerDevice = new Accelerometer(settings);
            }
            catch (Exception ex)
            {
                _logger.LogError("Error Initializing Accelerometer.", ex.Message, ex.StackTrace);
            }
            try
            {
                var settings = new SpiConnectionSettings(0, 0)
                {
                    Mode = SpiMode.Mode3, ClockFrequency = 900000
                };

                _gyroscopeDevice = new Gyroscope(settings);
            }
            catch (Exception ex)
            {
                _logger.LogError("Error Initializing Gyroscope.", ex.Message, ex.StackTrace);
            }
            try
            {
                _rtcDevice = new RTC();
            }
            catch (Exception ex)
            {
                _logger.LogError("Error Initializing RTC.", ex.Message, ex.StackTrace);
            }
            try
            {
                _cpuDevice = new CpuTemperature();
            }
            catch (Exception ex)
            {
                _logger.LogError("Error Initializing CPU Temp Device.", ex.Message, ex.StackTrace);
            }
        }
コード例 #14
0
 public PureMemoryTest()
 {
     using (SpiDevice spi = SpiDevice.Create(new SpiConnectionSettings(0, 0)
     {
         Mode = SpiMode.Mode0, ClockFrequency = 2000000
     }))
     {
         _accelerometerDevice = new Mcp3208Custom(spi, (int)Channel.X, (int)Channel.Y, (int)Channel.Z);
     }
     //_accelerometerDevice = new Accelerometer(new SpiConnectionSettings(0, 0) { Mode = SpiMode.Mode0, ClockFrequency = 1900000 });
     _gyroscopeDevice = new Gyroscope(new SpiConnectionSettings(1, 0)
     {
         Mode = SpiMode.Mode0, ClockFrequency = 1000000
     });
     _rtcDevice = new RTC();
     _cpuDevice = new CpuTemperature();
 }
コード例 #15
0
        static void Main(string[] args)
        {
            CpuTemperature cpuTemperature = new CpuTemperature();

            while (true)
            {
                if (cpuTemperature.IsAvailable)
                {
                    double temperature = cpuTemperature.Temperature;
                    if (temperature != double.NaN)
                    {
                        Console.WriteLine($"CPU Temperature {temperature} degrees centigrade");
                    }
                }
                Thread.Sleep(1000);
            }
        }
コード例 #16
0
        public static void Main(string[] args)
        {
            CpuTemperature cpuTemperature = new CpuTemperature();

            while (true)
            {
                if (cpuTemperature.IsAvailable)
                {
                    double temperature = cpuTemperature.Temperature.Celsius;
                    if (!double.IsNaN(temperature))
                    {
                        Console.WriteLine($"CPU Temperature: {temperature} C");
                    }
                }

                Thread.Sleep(1000);
            }
        }
コード例 #17
0
        public BinaryChunkWriterTest(string fileName)
        {
            using (SpiDevice spi = SpiDevice.Create(new SpiConnectionSettings(1, 0)
            {
                Mode = SpiMode.Mode0, ClockFrequency = 900000
            }))
            {
                _accelerometerDevice = new Mcp3208Custom(spi, (int)Channel.X, (int)Channel.Y, (int)Channel.Z);
            }
            // _accelerometerDevice = new Accelerometer(new SpiConnectionSettings(0, 0) { Mode = SpiMode.Mode0, ClockFrequency = 1900000 });
            _gyroscopeDevice = new Gyroscope(new SpiConnectionSettings(0, 0)
            {
                Mode = SpiMode.Mode0, ClockFrequency = 900000
            });
            _cpuDevice = new CpuTemperature();
            _rtcDevice = new RTC();
            _uart      = new UART();

            fs = new FileStream(fileName, FileMode.Create, FileAccess.Write);
        }
コード例 #18
0
 public RaspberryPiCpuTemperatureReader()
 {
     _cpuTemperature = new CpuTemperature();
 }
 public Device()
 {
     _temperature = new CpuTemperature();
 }
コード例 #20
0
 public CpuMonitor()
 {
     _monitor = new CpuTemperature();
 }
コード例 #21
0
ファイル: AlphaBot2.cs プロジェクト: ACT-ZUT/AlphaBot2.NET
        public void Enable(Accessories accessory)
        {
            try
            {
                switch (accessory)
                {
                case Accessories.Camera:
                    if (camera is null)
                    {
                        this.camera = new Camera();
                    }
                    else
                    {
                        Disable(Accessories.Camera); this.camera = new Camera();
                    }
                    break;

                case Accessories.IMU:
                    if (imu is null)
                    {
                        this.imu = new Mpu6050(I2cDevice.Create(
                                                   new I2cConnectionSettings(1, Mpu6050.DefaultI2cAddress)));
                    }
                    else
                    {
                        Disable(Accessories.IMU);
                        this.imu = new Mpu6050(I2cDevice.Create(
                                                   new I2cConnectionSettings(1, Mpu6050.DefaultI2cAddress)));
                    }
                    break;

                case Accessories.MotorL:
                    if (motorL is null)
                    {
                        this.motorL = DCMotor.Create(6, 12, 13);
                    }
                    else
                    {
                        Disable(Accessories.MotorL); this.motorL = DCMotor.Create(6, 12, 13);
                    }
                    break;

                case Accessories.MotorR:
                    if (motorR is null)
                    {
                        this.motorR = DCMotor.Create(26, 20, 21);
                    }
                    else
                    {
                        Disable(Accessories.MotorR); this.motorR = DCMotor.Create(26, 20, 21);
                    }
                    break;

                case Accessories.Motors:
                    Enable(Accessories.MotorL);
                    Enable(Accessories.MotorR);
                    break;

                case Accessories.ADC:
                    if (adc is null)
                    {
                        this.adc = new Tlc1543(24, 5, 23, 25);
                    }
                    else
                    {
                        Disable(Accessories.ADC); this.adc = new Tlc1543(24, 5, 23, 25);
                    }
                    break;

                case Accessories.IR:
                    if (ir is null)
                    {
                        this.ir = new IrReceiver(17);
                    }
                    else
                    {
                        Disable(Accessories.IR); this.ir = new IrReceiver(17);
                    }
                    break;

                case Accessories.Sonar:
                    if (sonar is null)
                    {
                        this.sonar = new Hcsr04(22, 27);
                    }
                    else
                    {
                        Disable(Accessories.Sonar); this.sonar = new Hcsr04(22, 27);
                    }
                    break;

                case Accessories.LED:
                    if (led is null)
                    {
                        this.led = new Ws2812b(18, 4);
                    }
                    else
                    {
                        Disable(Accessories.LED); this.led = new Ws2812b(18, 4);
                    }
                    break;

                case Accessories.CPUTemp:
                    if (cpuTemperature is null)
                    {
                        this.cpuTemperature = new CpuTemperature();
                    }
                    //else { Disable(led); this.led = new Ws2812b(18, 4); }
                    break;

                case Accessories.All:
                    foreach (var item in Enum.GetValues(typeof(Accessories)))
                    {
                        Enable((Accessories)item);
                    }
                    break;

                default:
                    Console.WriteLine("Something went wrong (Enabling accessories)");
                    break;
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine($"Enabling accessory: {Enum.GetName(typeof(Accessories), accessory)} failed.");
                System.Diagnostics.Debug.WriteLine($"Exception message: {ex.Message}");

                Console.WriteLine($"Enabling accessory: {Enum.GetName(typeof(Accessories), accessory)} failed.");
                Console.WriteLine($"Exception message: {ex.Message}");
            }
        }
コード例 #22
0
ファイル: AlphaBot2.cs プロジェクト: ACT-ZUT/AlphaBot2.NET
        public void Disable(Accessories accessory)
        {
            try
            {
                switch (accessory)
                {
                case Accessories.Camera:
                    camera.Dispose();
                    break;

                case Accessories.IMU:
                    imu.Dispose();
                    break;

                case Accessories.MotorL:
                    if (motorL != null)
                    {
                        motorL.Speed = 0;
                    }
                    motorL.Dispose();
                    break;

                case Accessories.MotorR:
                    if (motorR != null)
                    {
                        motorR.Speed = 0;
                    }
                    motorR.Dispose();
                    break;

                case Accessories.Motors:
                    Disable(Accessories.MotorL);
                    Disable(Accessories.MotorR);
                    break;

                case Accessories.ADC:
                    adc.Dispose();
                    break;

                case Accessories.IR:
                    ir.Dispose();
                    break;

                case Accessories.Sonar:
                    sonar.Dispose();
                    break;

                case Accessories.LED:
                    led.Dispose();
                    break;

                case Accessories.CPUTemp:
                    cpuTemperature = null;
                    break;

                case Accessories.All:
                    foreach (var item in Enum.GetValues(typeof(Accessories)))
                    {
                        if ((Accessories)item != Accessories.All)
                        {
                            Disable((Accessories)item);
                        }
                    }
                    break;

                default:
                    Console.WriteLine("Something went wrong (Disabling accessories)");
                    break;
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine($"Disabling accessory: {Enum.GetName(typeof(Accessories), accessory)} has failed.");
                System.Diagnostics.Debug.WriteLine($"Exception message: {ex.Message}");

                Console.WriteLine($"Disabling accessory: {Enum.GetName(typeof(Accessories), accessory)} has failed.");
                Console.WriteLine($"Exception message: {ex.Message}");
            }
        }
コード例 #23
0
ファイル: CpuSensors.cs プロジェクト: Kash0321/remotedebugrpi
 /// <summary>
 /// Inicializa una instancia de <see cref="CpuSensors" />
 /// </summary>
 public CpuSensors()
 {
     CPUTemperatureSensor = new CpuTemperature();
 }