Modifications

Sauter à la navigation Sauter à la recherche
Ligne 56 : Ligne 56 :  
<syntaxhighlight lang="C">void readCalibrated(unsigned int *sensorValues, unsigned char readMode = QTR_EMITTERS_ON)</syntaxhighlight>
 
<syntaxhighlight lang="C">void readCalibrated(unsigned int *sensorValues, unsigned char readMode = QTR_EMITTERS_ON)</syntaxhighlight>
   −
Returns sensor readings calibrated to a value between 0 and 1000, where 0 corresponds to a reading that is less than or equal to the minimum value read by '''calibrate()''' and 1000 corresponds to a reading that is greater than or equal to the maximum value. Calibration values are stored separately for each sensor, so that differences in the sensors are accounted for automatically.
+
Retourne la lecture des senseurs calibrés avec une valeur entre 0 et 1000, 0 corresponds à une lecture inférieure ou égale à la valeur minimale obtenue par '''calibrate()''' et 1000 correspond à une lecture supérieure ou égale à la valeur maximale. Les valeurs de calibration sont stockées séparément pour chacun des senseurs infrarouges, par conséquent, la différence entre les senseurs est automatiquement prise en compte.
    
=== readLine() ===
 
=== readLine() ===
 
<syntaxhighlight lang="C">unsigned int readLine(unsigned int *sensorValues, unsigned char readMode = QTR_EMITTERS_ON, unsigned char whiteLine = 0)</syntaxhighlight>
 
<syntaxhighlight lang="C">unsigned int readLine(unsigned int *sensorValues, unsigned char readMode = QTR_EMITTERS_ON, unsigned char whiteLine = 0)</syntaxhighlight>
   −
Operates the same as read calibrated, but with a feature designed for line following: this function returns an estimated position of the line. The estimate is made using a weighted average of the sensor indices multiplied by 1000, so that a return value of 0 indicates that the line is directly below sensor 0 (or was last seen by sensor 0 before being lost), a return value of 1000 indicates that the line is directly below sensor 1, 2000 indicates that it’s below sensor 2, etc. Intermediate values indicate that the line is between two sensors. The formula is:
+
Fonctionne de la même façon que {{fname|readCalibrated}} mais cette fonction est conçue pour le suivit de ligne:  
 +
* Cette fonction retourne une estimation de la position de la ligne.  
 +
* L'estimation est faite en utilisant la moyenne pondérée des senseurs par indice, indice du senseur multiplié par 1000. De sorte, une valeur 0 indique que la ligne est sous le senseur 0 (ou qu'il a été sous le senseur 0 juste avant d'être perdu), une valeur de 1000 indique que le senseur est sous le senseur 1, 2000 indique sous le senseur 2, etc.  
 +
 
 +
Une valeur intermédiaire indique indique que la ligne est entre deux senseurs. La formule est:
    
  <nowiki> 0*value0 + 1000*value1 + 2000*value2 + ...
 
  <nowiki> 0*value0 + 1000*value1 + 2000*value2 + ...
Ligne 67 : Ligne 71 :  
     value0  +  value1  +  value2 + ...</nowiki>
 
     value0  +  value1  +  value2 + ...</nowiki>
   −
As long as your sensors aren’t spaced too far apart relative to the line, this returned value is designed to be monotonic, which makes it great for use in closed-loop PID control. Additionally, this method remembers where it last saw the line, so if you ever lose the line to the left or the right, it’s line position will continue to indicate the direction you need to go to reacquire the line. For example, if sensor 4 is your rightmost sensor and you end up completely off the line to the left, this function will continue to return 4000.
+
Aussi longtemps que les senseurs ne sont pas trop espacés par rapport à la ligne alors cette fonction est conçue pour retourner une valeur monotone. Une fonction monotone reste toujours croissante ou décroissante (son sens de variation est constant, voir l'article [https://fr.wikipedia.org/wiki/Fonction_monotone Fonction monotone sur wikipedia.fr]).
 +
 
 +
Une valeur monotone est une entrée idéale pour réaliser un asservissement PID en boucle fermée.
 +
 
 +
{{traduction}}
 +
 
 +
Additionally, this method remembers where it last saw the line, so if you ever lose the line to the left or the right, it’s line position will continue to indicate the direction you need to go to reacquire the line. For example, if sensor 4 is your rightmost sensor and you end up completely off the line to the left, this function will continue to return 4000.
    
By default, this function assumes a dark line (high values) surrounded by white (low values). If your line is light on black, set the optional second argument whiteLine to true. In this case, each sensor value will be replaced by the maximum possible value minus its actual value before the averaging.
 
By default, this function assumes a dark line (high values) surrounded by white (low values). If your line is light on black, set the optional second argument whiteLine to true. In this case, each sensor value will be replaced by the maximum possible value minus its actual value before the averaging.
29 879

modifications

Menu de navigation