Constructor:
QTRSensorsRC()
Cette version du constructeur n'effectue aucune initialisation. Si ce constructeur est utiliser alors le code doit également appeler init()
avant d'utiliser les méthodes de la classe.
Constructor:
QTRSensorsRC(unsigned
Cette version du constructeur appelle la méthode init() décrite ci-dessous.
void QTRSensorsRC::init(unsigned
Initialise le tableau de senseur QTR-RC (digital).
Le tableau digitalPins doit contenir les broches digitales Arduino correspondant à chaque senseur.
numSensors spécifie la longueur du tableau digitalPins (le nombre de senseur QTR-RC que vous utilisez). numSensors ne doit pas
excéder 16 positions.
timeout spécifie le nombre de microsecondes au-delà desquels la lecture du senseur sera considérée comme complètement noir! Cela
signifie, si la longueur de l'impulsion pour une broche excède le timeout, la mesure de l'impulsion cesse et la lecture pour cette broche
considère que le résultat est complètement noir. Pololu recommande un timeout entre 1000 et 3000 µs (0.001 et 0.003 secondes)
dépendant de facteurs comme la hauteur du senseur et la lumière ambiante. Cela permet d'écourter le cycle de lecture des senseurs tout
en maintenant une mesure utile de la reflectande.
emitterPin est la broche digitale Arduino qui contrôle l'allumage et l'extinction des LEDs Infrarouge. Cette broche est optionnelle,
broche qui n'existe que sur les détecteurs de lignes QTR 8A et 8RC QTR. Si une broche valide est spécifié alors les LED InfraRouges
ne sont allumée que durant les opérations de lecture. Si la valeur
pouvez laisser le broche emitter déconnectée sur votre senseur de ligne afin que les LED Infrarouge restent toujours allumées.
QTRSensorsAnalog() - constructeur
Constructor:
QTRSensorsAnalog()
Cette version du constructeur -destiné au senseurs de type analogique- n'effectue aucune initialisation. Si ce constructeur est utilisé, l'utilisateur
doit appeler la méthode init() avant l'utilisation des autres méthodes de cette classe.
Constructor:
QTRSensorsAnalog(unsigned
Ce constructeur fait juste un appel à init(), tel que détaillé ci-dessous.
void init(unsigned
char*
Initialise un ensemble de senseur QTR-A (analogique).
pins est un tableau de broches qui contient les broches d'entrées analogiques utilisées pour chaque senseur. Par exemple, si les pins sont
{0, 1, 7}, le premier senseur est l'entrée analogique 0, le deuxième senseur est l'entrée analogique 1 et le troisième senser est l'entrée
analogique 7.
numSensors indique la longueur du tableau analogPins (le nombre de senseurs QTR-A utilisés). La valeur de numSensors ne peut pas
dépasser 16.
numSamplesPerSensor indique le nombre d'échantillonnages 10-bit à réaliser par canal/senseur lors de chaque lecture (échantillons
dont la bibliothèque fait une moyenne). Le nombre total de conversion analogique-vers-digital réalisés est également au numSensors *
numSamplesPerSensor.
accroître ce paramètre améliore la suppression du bruit mais au coût d'un temps de capture plus important (accroissement du temps
d'échantillonnage total). Ce paramètre ne peut pas excéder la valeur de 64. Pololu recommande la valeur 4.
emitterPin est la broche digitale Arduino qui permet de contrôler les LEDs infrarouges (allumées ou éteintes). Cette broches est
optionnelle et elle n'existe que sur les modèles de QTR 8A et QTR 8RC des senseurs de ligne. Si une broche valide est spécifiée, alors
les diodes infrarouge ne seront allumées que durant la lecture. Si la valeur QTR_NO_EMITTER_PIN (255) est utilisée pour ce
paramètre alors vous pouvez laisser la broches des diode Infrarouge déconnectée et les LEDs seront constamment alimentées.
Note d'usage
Calibration
La bibliothèque propose la méthode calibrate() pour facilement calibrer les senseurs dans les conditions particulières qu'il va rencontrer. La
char*
digitalPins,
char*
digitalPins,
char*
analogPins,
analogPins,
unsigned char
unsigned char
numSensors,
unsigned char
numSensors,
QTR_NO_EMITTER_PIN
unsigned char
numSensors,
numSensors,
unsigned char
unsigned int
timeout
=
unsigned int
timeout
=
2000,
(255) est utilisé lors de l'appel alors vous
unsigned char
numSamplesPerSensor
numSamplesPerSensor
=
4,
2000,
unsigned char
emitterPin
unsigned char
emitterPin
=
4,
unsigned
unsigned char
emitterPin
=