Comment faire un système de tri selon le volume de l’œuf, fruits… avec Arduino ?

mars 04 2025

ASSISTANCE PRMIUM DISPONIBLE AU +237 690861311 APPEL OU WHATSAPP

Pour créer un système de tri basé sur le volume des œufs ou des fruits avec Arduino, voici un guide détaillé utilisant des capteurs ultrasoniques pour mesurer les dimensions et calculer le volume.

  1.  (ou autre modèle compatible).

  2.  (ex. HC-SR04) pour mesurer les dimensions.

  3.  (ex. SG90 ou MG996R) pour orienter les objets.

  4. .

  5.  (USB ou batterie).

  6. .

  • Les capteurs ultrasoniques mesurent les dimensions principales de l’objet : hauteur, largeur et épaisseur.

  • L’Arduino calcule le volume à partir de ces dimensions en supposant une forme approximative (sphère, ellipsoïde, etc.).

  • En fonction du volume calculé, le servomoteur oriente l’objet vers une zone spécifique.

Broche du capteur Arduino
VCC 5V
GND GND
TRIG Pin 7
ECHO Pin 6

Connectez un capteur pour chaque dimension (hauteur, largeur, épaisseur).

Broche du servomoteur Arduino
Signal Pin 9
VCC 5V
GND GND

Voici un exemple de code pour mesurer les dimensions, calculer le volume et trier les objets :

cpp
#include <Servo.h>
 
// Définir les broches des capteurs ultrasoniques
#define TRIG_HAUT 7
 ECHO_HAUT 
#define TRIG_LARG 5
#define ECHO_LARG4
#define TRIG_EPAI 3
#define ECHO_EPAI 2
 
// Initial du servomoteur
Servo servo Seuils de volume en³
const float seuil = 1000; // Petit volume
 float seuil = 200.; Volume moyen
 
void setup() {
    // des broches des capteurs pinIG_HAUT, OUTPUT);
    pinMode(ECHO_HAUT, INPUT);
    pinMode_LARG, OUTPUT);
    pinCHO_LARG, INPUT);
    pinMode(TRIG_EPAI, OUTPUT);
    pinMode(ECHO_EPAI, INPUT);
 
    // Initialisation du servoteur
   .attach(9);
    servo.write(90); // Position initiale (ne)
 
    Serial.begin(9600 // Pour afficher résultats dans moniteur série
}
 
void loop() {
    Mes des dimensions
    float hauteur mesurerDistance(TRIGAUT, ECHO_HAUT);
    float largeur = mesurerDistance(TRIG_LARG, ECHO_LARG);
    float epaisseur = mesurerDistance(TRIG_EPAI ECHO_EPAI);
 
    // Calcul (approximé rectangulaire)
    float volume = hauteur * largeur * epaisseur;
 
    Serial.print(“Hauteur “);
    Serial.print(hauteur);
    Serial.print, Largeur: “);
    Serial.printlargeur);
    Serial.print(” cm, Epaisseur: “);
    Serial.print(epaisseur);
    Serial.print(” cm, Volume: “);
    Serial.print);
    Serial(” cm³”);
 
    // Tri selon le volume
    ifvolume < seuil1) {
        Serial.println(“Catégorie : Petit”);
        servo.write(45); // la zone pour petits objets
    } else ifvolume >= seuil1 && volume < seuil2) {
       .printlnCatégorie : Moyen servo(90 // Oriente vers la pour objets
    } else {
        Serial.println(“Catégorie Grand”);
        servo.write(135); // Oriente vers la zone pour grands
    }
delay2000 // Pause avant la prochaine mesure
}
// Fonction pour mesurer la distance avec un capteur ultrasonique
float mesurerDistance(int trigPin, int echoPin) {
    digitalWrite(trigPin, LOW);
    delayMicroseconds2);
    digitalWrite(trigPin, HIGH);
    delayMicro();
    digitalWrite(trigPin, LOW);
    long duration = pulse(echoPin, HIGH);
    duration * 0.034 / 2 // Conversion en cm
}

  1. Placez un objet connu devant les capteurs et notez les dimensions mesurées.

  2. Ajustez la position des capteurs pour obtenir des mesures précises.

  3. Modifiez les seuils (seuil1seuil2) dans le code en fonction des volumes réels.

  1. Montez les capteurs ultrasoniques sur une structure stable autour du support où seront placés les objets.

  2. Fixez le servomoteur à une structure permettant d’orienter les objets vers différentes zones.

  3. Si nécessaire, ajoutez un mécanisme manuel ou automatique pour amener les objets sous les capteurs.

  • Tri des œufs par taille/volume pour l’emballage.

  • Tri des fruits selon leur taille pour l’agroalimentaire.

  • Automatisation dans l’industrie agricole.

Avec ce système basé sur Arduino et des capteurs ultrasoniques, vous pouvez trier efficacement des objets en fonction de leur volume !

Write a Reply or Comment

Translate »