CRINSA-team2025 V1
Documentation du Club Robot INSA Rennes 2025
Chargement...
Recherche...
Aucune correspondance
GripperFinger.h
1//
2// Created by Romain Pouvreau on 14/04/2026.
3//
4
5#ifndef GRIPPERFINGER_H
6#define GRIPPERFINGER_H
7
8#include <Wire.h>
9
14namespace HazelnutGripper
15{
20 struct ColorData {
21 uint16_t clear;
22 uint16_t red;
23 uint16_t green;
24 uint16_t blue;
25 };
26
31 enum class OperationMode : uint8_t {
32 Standby = 0x01,
33 SingleRead = 0x02,
34 Continuous = 0x03
35 };
36
44 {
45 public:
51 GripperFinger(TwoWire* wire, uint8_t address = 0x24);
52
57 void enableStatusLed(bool enable);
58
63 void enableActionLed(bool enable);
64
70 void setAngle(uint8_t servoIndex, uint8_t degrees);
71
75 void open();
76
80 void close();
81
85 void stop();
86
91 bool isMoving();
92
97 bool isTargetReached();
98
103 bool isFaulty();
104
109 void setSensingMode(OperationMode mode);
110
116 bool hasNewColorData();
117
123
124 private:
125 uint8_t _addr;
126
127 TwoWire* _wire;
128
129 void _write8(uint8_t cmd, uint8_t value);
130 uint8_t _read8(uint8_t cmd);
131 uint16_t _read16(uint8_t cmd);
132
137 enum Register : uint8_t {
138 REG_YELLOW_LED = 0x01,
139 REG_BLUE_LED = 0x02,
140 REG_SERVO_1_POS = 0x03,
141 REG_SERVO_2_POS = 0x04,
142 REG_MOTOR_TARGET = 0x05,
143 REG_MOTOR_STATUS = 0x06,
144 REG_COLOR_INT_TIME = 0x07,
145 REG_COLOR_GAIN = 0x08,
146 REG_COLOR_STATUS = 0x09,
147 REG_COLOR_MODE = 0x0A,
148 REG_COLOR_C_HIGH = 0x0B,
149 REG_COLOR_R_HIGH = 0x0D,
150 REG_COLOR_G_HIGH = 0x0F,
151 REG_COLOR_B_HIGH = 0x11
152 };
153 };
154}
155#endif //GRIPPERFINGER_H
GripperFinger(TwoWire *wire, uint8_t address=0x24)
Constructeur de la classe GripperFinger.
Definition GripperFinger.cpp:9
void enableActionLed(bool enable)
Allume ou éteint la LED d'action (Bleue).
Definition GripperFinger.cpp:20
void open()
Lance l'ouverture de la pince.
Definition GripperFinger.cpp:31
void setAngle(uint8_t servoIndex, uint8_t degrees)
Définit l'angle d'un servomoteur.
Definition GripperFinger.cpp:25
ColorData getColor()
Récupère l'ensemble des valeurs RGBC du capteur.
Definition GripperFinger.cpp:60
void close()
Lance la fermeture de la pince.
Definition GripperFinger.cpp:32
void setSensingMode(OperationMode mode)
Définit le mode de lecture du capteur TCS3472.
Definition GripperFinger.cpp:50
bool isMoving()
Vérifie si le moteur est actuellement alimenté.
Definition GripperFinger.cpp:35
bool isTargetReached()
Vérifie si la pince a terminé son mouvement vers la cible.
Definition GripperFinger.cpp:40
void enableStatusLed(bool enable)
Allume ou éteint la LED de statut (Jaune).
Definition GripperFinger.cpp:15
bool hasNewColorData()
Indique si une nouvelle mesure de couleur a été effectuée.
Definition GripperFinger.cpp:55
bool isFaulty()
Vérifie si le driver moteur est en état de faute.
Definition GripperFinger.cpp:45
void stop()
Arrête immédiatement le moteur de la pince.
Definition GripperFinger.cpp:33
Espace de noms regroupant les fonctionnalités de contrôle de la pince Baguette.
Definition BournsACEncoder.h:10
OperationMode
Modes de fonctionnement du capteur de couleur.
Definition GripperFinger.h:31
@ Standby
Capteur en sommeil (consommation réduite)
Definition GripperFinger.h:32
@ Continuous
Échantillonnage périodique automatique.
Definition GripperFinger.h:34
@ SingleRead
Effectue une seule lecture puis repasse en Standby.
Definition GripperFinger.h:33
Structure regroupant les valeurs brutes du capteur de couleur TCS3472.
Definition GripperFinger.h:20
uint16_t green
Composante Verte.
Definition GripperFinger.h:23
uint16_t clear
Luminosité totale (lux)
Definition GripperFinger.h:21
uint16_t red
Composante Rouge.
Definition GripperFinger.h:22
uint16_t blue
Composante Bleue.
Definition GripperFinger.h:24