// Callback function that plots a data point for the current temperature, the goal temperature,
        // the heater steer value and the Pulse Width Modulated (PWM) value.
        private void OnPlotDataPoint(ReceivedCommand arguments)
        {
            // Plot data if we are accepting data
            if (!AcceptData)
            {
                return;
            }

            // Get all arguments from plot data point command
            var time = arguments.ReadBinFloatArg();

            time = (TimeUtils.Millis - _startTime) / 1000.0f;
            var currTemp    = arguments.ReadBinFloatArg();
            var goalTemp    = arguments.ReadBinFloatArg();
            var heaterValue = arguments.ReadBinFloatArg();
            var heaterPwm   = arguments.ReadBinBoolArg();

            // do not log data if times are out of sync
            //if (time<_startTime) return;

            // Update chart with new data point;
            _chartForm.UpdateGraph(time, currTemp, goalTemp, heaterValue, heaterPwm);

            // Update _startTime in case it needs to be resend after disconnection
            //_startTime = time;
        }
Пример #2
0
        // Callback function that plots a data point for the current temperature, the goal temperature,
        // the heater steer value and the Pulse Width Modulated (PWM) value.
        private void OnPlotDataPoint(ReceivedCommand arguments)
        {
            var time        = arguments.ReadBinFloatArg();
            var currTemp    = arguments.ReadBinFloatArg();
            var goalTemp    = arguments.ReadBinFloatArg();
            var heaterValue = arguments.ReadBinFloatArg();
            var heaterPwm   = arguments.ReadBinBoolArg();

            _chartForm.UpdateGraph(time, currTemp, goalTemp, heaterValue, heaterPwm);
        }
        // Callback function To receive the binary float series from the Arduino
        void OnReceiveBinaryFloatSeries(ReceivedCommand arguments)
        {
            _receivedBytesCount += CountBytesInCommand(arguments, false);

            if (_receivedItemsCount % (SeriesLength / 10) == 0)
            {
                Console.WriteLine("Received value: {0}", arguments.ReadBinFloatArg());
            }
            if (_receivedItemsCount == 0)
            {
                // Received first value, start stopwatch
                _beginTime = Millis;
            }
            else if (_receivedItemsCount == SeriesLength - 1)
            {
                // Received all values, stop stopwatch
                _endTime = Millis;
                var deltaTime = (_endTime - _beginTime);
                Console.WriteLine("{0} milliseconds per {1} items = is {2} ms/item, {3} Hz",
                                  deltaTime,
                                  SeriesLength,
                                  (float)deltaTime / (float)SeriesLength,
                                  (float)1000 * SeriesLength / (float)deltaTime
                                  );
                Console.WriteLine("{0} milliseconds per {1} bytes = is {2} ms/byte,  {3} bytes/sec, {4} bps",
                                  deltaTime,
                                  _receivedBytesCount,
                                  (float)deltaTime / (float)_receivedBytesCount,
                                  (float)1000 * _receivedBytesCount / (float)deltaTime,
                                  (float)8 * 1000 * _receivedBytesCount / (float)deltaTime
                                  );
                _receiveBinaryFloatSeriesFinished = true;
            }
            _receivedItemsCount++;
        }
Пример #4
0
        // Callback function that plots a data point for the current temperature, the goal temperature,
        // the heater steer value and the Pulse Width Modulated (PWM) value.
        private void OnPlotDataPoint(ReceivedCommand arguments)
        {
            // Plot data if we are accepting data
            if (!AcceptData)
            {
                return;
            }

            // Get all arguments from plot data point command
            var time = arguments.ReadBinFloatArg();

            time = (TimeUtils.Millis - _startTime) / 1000.0f;
            var currTemp    = arguments.ReadBinFloatArg();
            var goalTemp    = arguments.ReadBinFloatArg();
            var heaterValue = arguments.ReadBinFloatArg();
            var heaterPwm   = arguments.ReadBinBoolArg();

            // Update chart with new data point;
            _chartForm.UpdateGraph(time, currTemp, goalTemp, heaterValue, heaterPwm);
        }
 // Callback function To receive the binary float series from the Arduino
 void OnReceiveBinaryFloatSeries(ReceivedCommand arguments)
 {
     if (_receivedBinaryCount % (SeriesLength / 10) == 0)
     {
         Console.WriteLine("Received value: {0}", arguments.ReadBinFloatArg());
     }
     if (_receivedBinaryCount == 0)
     {
         // Received first value, start stopwatch
         _beginTime = Millis;
     }
     else if (_receivedBinaryCount == SeriesLength - 1)
     {
         // Received all values, stop stopwatch
         _endTime = Millis;
         Console.WriteLine("{0} milliseconds per {1} items = is {2} ms/item", _endTime - _beginTime, SeriesLength, (_endTime - _beginTime) / (float)SeriesLength);
         _receiveBinaryFloatSeriesFinished = true;
     }
     _receivedBinaryCount++;
 }
Пример #6
0
        void OnRpmIn(ReceivedCommand arguments)
        {
            float data = arguments.ReadBinFloatArg();

            RpmData((double)data);
        }
Пример #7
0
        void OnCurrentIn(ReceivedCommand arguments)
        {
            float data = arguments.ReadBinFloatArg();

            CurrentData((double)data);
        }
Пример #8
0
        void OnVoltageIn(ReceivedCommand arguments)
        {
            float data = arguments.ReadBinFloatArg();

            VoltageData((double)data);
        }
Пример #9
0
        void OnThrustDataIn(ReceivedCommand arguments)
        {
            float data = arguments.ReadBinFloatArg();

            ThrustData((double)data);
        }