Added comments to BikeSimulation

This commit is contained in:
fabjuuuh
2020-09-11 11:55:13 +02:00
parent 631129a206
commit 7da952628d

View File

@@ -31,44 +31,54 @@ namespace Hardware.Simulators
} }
public void StartSimulation() public void StartSimulation()
{ {
//Example BLE Message
//4A-09-4E-05-19-16-00-FF-28-00-00-20-F0 //4A-09-4E-05-19-16-00-FF-28-00-00-20-F0
float x = 0.0f; float x = 0.0f;
//Perlin for Random values
ImprovedPerlin improvedPerlin = new ImprovedPerlin(0,LibNoise.NoiseQuality.Best); ImprovedPerlin improvedPerlin = new ImprovedPerlin(0,LibNoise.NoiseQuality.Best);
while (true) while (true)
{ {
CalculateVariables(improvedPerlin.GetValue(x)+1); CalculateVariables(improvedPerlin.GetValue(x)+1);
//Simulate sending data
dataConverter.Bike(GenerateBike0x19()); dataConverter.Bike(GenerateBike0x19());
dataConverter.Bike(GenerateBike0x10()); dataConverter.Bike(GenerateBike0x10());
dataConverter.BPM(GenerateHeart()); dataConverter.BPM(GenerateHeart());
Thread.Sleep(1000); Thread.Sleep(1000);
x += 0.1f; x += 0.1f;
eventCounter++; eventCounter++;
elapsedTime++; elapsedTime++;
} }
} }
//Generate an ANT message for page 0x19
private byte[] GenerateBike0x19() private byte[] GenerateBike0x19()
{ {
byte[] bikeByte = { 0x19, Convert.ToByte(eventCounter%256), 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }; byte[] bikeByte = { 0x19, Convert.ToByte(eventCounter%256), 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
return bikeByte; return bikeByte;
} }
//Generate an ANT message for page 0x10
private byte[] GenerateBike0x10() private byte[] GenerateBike0x10()
{ {
byte[] bikeByte = { 0x10, Convert.ToByte(equipmentType), Convert.ToByte(elapsedTime*4%64), Convert.ToByte(distanceTraveled), array[0], array[1], Convert.ToByte(BPM), 0xFF }; byte[] bikeByte = { 0x10, Convert.ToByte(equipmentType), Convert.ToByte(elapsedTime*4%64), Convert.ToByte(distanceTraveled), array[0], array[1], Convert.ToByte(BPM), 0xFF };
return bikeByte; return bikeByte;
} }
//Generate an ANT message for BPM
private byte[] GenerateHeart() private byte[] GenerateHeart()
{ {
byte[] hartByte = { 0x00, Convert.ToByte(BPM)}; byte[] hartByte = { 0x00, Convert.ToByte(BPM)};
return hartByte; return hartByte;
} }
//Generate an ANT message for resistance
public byte[] GenerateResistance(float percentage) public byte[] GenerateResistance(float percentage)
{ {
byte[] antMessage = new byte[13]; byte[] antMessage = new byte[13];
@@ -108,22 +118,18 @@ namespace Hardware.Simulators
} }
//Set resistance in simulated bike
public void setResistance(byte[] bytes) public void setResistance(byte[] bytes)
{ {
//TODO check if message is correct
if(bytes.Length == 13) if(bytes.Length == 13)
{ {
this.resistance = Convert.ToDouble(bytes[11])/2; this.resistance = Convert.ToDouble(bytes[11])/2;
Console.WriteLine(resistance); }
} }
} }
/*private double Random(double x) //Interface for receiving a message on the simulated bike
{
return (Math.Sin(2 * x) + Math.Sin(Math.PI * x) + 2) / 4;
}*/
}
interface IHandler interface IHandler
{ {
void setResistance(byte[] bytes); void setResistance(byte[] bytes);