Added configurable refresh rate sampling time
It seems data comes in bursts, so a sampling time of 1 second gave false numbers
This commit is contained in:
parent
65fc49450e
commit
5aa9be7aab
|
@ -1,6 +1,7 @@
|
|||
using System;
|
||||
using GameDev.UDP;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Serialization;
|
||||
|
||||
[RequireComponent(typeof(UDPManager))]
|
||||
public class ReceiveData : MonoBehaviour
|
||||
|
@ -8,10 +9,16 @@ public class ReceiveData : MonoBehaviour
|
|||
[Header("Connections")]
|
||||
[SerializeField] private UDPManager _udpManager;
|
||||
|
||||
[Header("Config")]
|
||||
[SerializeField] private float _sampleTimeSetting;
|
||||
|
||||
[Header("State")]
|
||||
[SerializeField] private float _updateRate;
|
||||
[SerializeField] private ulong _packages;
|
||||
[field: SerializeField] public byte[] ReceivedData { get; set; }
|
||||
[SerializeField] private float _updateRateHz;
|
||||
[SerializeField] private ulong _packagesReceived;
|
||||
private byte[] ReceivedData { get; set; }
|
||||
|
||||
private int _newPackages;
|
||||
private float _sampleTime;
|
||||
|
||||
[field: Header("ReceivedData")]
|
||||
[field: SerializeField] private byte Watchdog { get; set; }
|
||||
|
@ -40,12 +47,10 @@ public class ReceiveData : MonoBehaviour
|
|||
[field: SerializeField] private float RightMotorAngVel { get; set; }
|
||||
[field: SerializeField] private int M1Raw { get; set; }
|
||||
[field: SerializeField] private int M2Raw { get; set; }
|
||||
private int _newPackages;
|
||||
private float _sampleTime;
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
_sampleTime = 1;
|
||||
_sampleTime = _sampleTimeSetting;
|
||||
_udpManager.ReceivedNewUdpData += ProcessData;
|
||||
}
|
||||
|
||||
|
@ -56,7 +61,7 @@ public class ReceiveData : MonoBehaviour
|
|||
|
||||
private void ProcessData()
|
||||
{
|
||||
_packages++;
|
||||
_packagesReceived++;
|
||||
_newPackages++;
|
||||
ReceivedData = _udpManager.Data;
|
||||
var i = 0;
|
||||
|
@ -97,9 +102,9 @@ public class ReceiveData : MonoBehaviour
|
|||
{
|
||||
if (_sampleTime < 0)
|
||||
{
|
||||
_updateRate = _newPackages;
|
||||
_updateRateHz = _newPackages;
|
||||
_newPackages = 0;
|
||||
_sampleTime = 1;
|
||||
_sampleTime = _sampleTimeSetting;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue