Salut tout le monde,
Je rencontre un soucis que je ne comprends pas.
J'ai essayé de m'afficher toutes mes valeurs qui sont prises en compte dans mon calcul mais je comprends.
Il faut changer la valeur de la variable pipeSelector.
Pour certains diamètres le pourcentage passe de positif à négatif etc etc
Et si vous essayé avce le pipeSelector à 0 pas de problème.
Quelqu'un peut me dire ou j'ai fait une erreur. MErci !!!!
const float pipeLenght = 1000; // Longueur du tuyau de travail (mm)
const float pipeMargin = 100; // Marge d'un côté du tube (mm);
float distanceEachCut = 8.6; // Distance entre chaque coup de lame sur une face (mm)
const int stepForComplete = 200;
int pipeDiameter[10] = {50, 63, 80, 90, 100, 110, 125, 140, 160, 200};
int pipeDistanceX[10] = {25, 30, 35, 40, 45, 50, 55, 60, 65, 70};
int pipeNbDrilling[10] = {3, 4, 4, 5, 5, 6, 6, 7, 8, 8};
int pipeSelector = 0;
void setup()
{
Serial.begin(9600);
pipeSelector = 7; //changer cette valeur entre 0 et 9
boolean isStarted = false;
float temp_ecoule = millis();
int cntActions = 0;
float countMovementX = trunc((pipeLenght - pipeMargin * 2) / distanceEachCut);
for (int i = 1; i <= pipeNbDrilling[pipeSelector]; i++)
{
for (int j = 1; j <= countMovementX + 1; j++)
{
if (isStarted == false)
{
//Je fais des actions
isStarted = true;
}
if (j != countMovementX + 1)
{
cntActions++;
}
Serial.println(cntActions * 100 / ((countMovementX) * pipeNbDrilling[pipeSelector]));
Serial.println();
}
if (i != pipeNbDrilling[pipeSelector])
{
cntActions++;
}
}
Serial.println(millis() - temp_ecoule);
}
void loop()
{
}