utilisé. Une valeur plus élevée indique une réflectance inférieure (une surface noire ou le vide). Les senseurs QTR-xA retournera une valeur
brute entre 0 et 1023. Les senseurs QTR-xRC retournera une valeur entre 0 et un argument timeout (exprimé en microsecondes, indiqué dans
le constructeur avec 2000 par défaut).
Toutes les fonction qui lisent des valeurs prennent un argument readMode en paramètre. Celui-ci spécifie le type de lecture qui est effectué.
Plusieurs options sont possibles:
QTR_EMITTERS_OFF
niveau de lumière ambiante près du senseur;
QTR_EMITTERS_ON
QTR_EMITTERS_ON_AND_OFF
par l'option
QTR_EMITTERS_ON_AND_OFF
LEDs IR allumée, "éteint" correspond à la lecture avec les LED IR éteinte et "max" la valeur maximale lue par le senseur.
Cette option permet de réduire la quantité d'interférence provenant des variations de lumière ambiante.
A noter que le contrôle des LEDs émettrices ne fonctionnera que si vous avez spécifié une broche
valide pour le contrôle des LEDs IR dans l'appel du constructeur.
Exemple d'utilisation:
unsigned int
sensor_values[8];
sensors.read(sensor_values);
emittersOn()
void
emittersOn()
Allume les LEDs IR (InfraRouge). Principalement utilisée par la méthode read() et appeler cette fonction avant ou après la lecture du
senseur n'a aucun effet sur la lecture. Vous devriez utiliser cette fonction uniquement pour effectuer des tests.
Cette fonction en fait quelque-chose que si la broche émetteur IR (emitter) à été spécifiée dans le constructeur (donc une valeur différente de
QTR_NO_EMITTER_PIN).
emittersOff()
void
emittersOff()
Désactive les LEDs Infrarouges. Comme pour emitterOn(), cette fonction est utilisée par read() et appeler cette fonction avant ou
après une lecture de senseur n'a aucun effet sur les lectures (mais peut être utilisée pour effectuer des tests).
calibrate()
void calibrate(unsigned char
Effectue une lecture des senseurs pour calibration. Les valeurs du senseur ne sont pas retournée; à la place, les valeurs maximales et minimales
sont stockées en interne et utilisé par la méthode readCalibrated() (lecture calibrée). Vous pouvez accéder aux valeurs de calibration (ex: les
lectures min et max du senseur) via les pointeurs des membres publiques calibratedMinimumOn, calibratedMaximumOn,
calibratedMinimumOff et calibratedMaximumOff. Notez que ces pointeurs pointent vers des tableaux ayant une longueur numSensors
tel que spécifié dans le constructeur. Ces tableaux ne seront alloués qu'après l'appel de calibrate(). Si la la calibration est uniquement réalisée
avec les LED IR allumées alors les tableaux de calibration destinés aux valeurs off (éteinte) ne seront pas alloués.
readCalibrated()
void readCalibrated(unsigned int
Retourne la lecture des senseurs calibrés avec une valeur entre 0 et 1000, où 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()
unsigned int readLine(unsigned int
indique que la lecture doit être effectuée sans allumer les LEDs infrarouge (IR), ce qui permet d'évaluer le
indique que les diodes émettrices doivent être activées durant la lecture, ce qui permet de lire la réflectance;
indique que la lecture doit être réaliser avec les deux états (allumé et éteint). La résultat retourné
correspond à allumé + max – éteint, où "allumé" correspond à une lecture avec les
readMode
=
QTR_EMITTERS_ON)
*sensorValues,
unsigned char
*sensorValues,
unsigned char
readMode
=
QTR_EMITTERS_ON)
readMode
=
QTR_EMITTERS_ON,
unsigned char
whiteLine
=
0)