Go Down

Topic: comptage d'objets par minute ( aide ) (Read 5 times) previous topic - next topic

zener57

bonjour à tous (et meilleurs voeux)
je souhaiterai faire un petit appareil (à usage multiple) mais pour le moment je parlerai du 1er usage.
il sagit de faire un comptage sur une durée d'une minute (calcul de cadence d'une conditionneuse peinture)
materiel dispo ,une arduino-mega, un capteur IR Sharp 2y0a02, et d'un ecran tactile.
mon probleme est au niveau du timer ,car je ne vois pas comment faire !
- lancement d'une minuterie ,le capteur comptabilise le nombre de boites et ceci sur une durée d'une minute .
pouvez-vous m'aider ? merci à l'avance
William

Le Pnume

#1
Jan 13, 2011, 04:48 pm Last Edit: Jan 13, 2011, 05:08 pm by Le_Pnume Reason: 1
Bonjour,

je pense que pour pouvoir t'aider il faut un peu plus de précision. En effet les contraintes vont être très différentes si ton flux de boites est d'environ 10 par minutes (dans ce cas le timer n'a pas besoin d'une grande précision) ou de 10 par secondes (et là c'est pas la même affaire)

Serge

zener57

tout d'abord merci d'avoir répondu.

les cadences de boites varient de 10 à 40 boites minute ,suivant le type de boite (donnée constructeur) je ne veux pas un truc d'enfer ,seulement quelque chose de relativement fiable ,car actuelement pour vérification c'est un chrono et on compte les boites ,attention c'est la methode barbare,nous avons un systeme informatique (réseau) qui calcule le TRS des machines dans 3 unités ,mais actuelement des soucis de comptage,
je tenais à faire ce petit accessoire pour me marrer et montrer que leur systeme n'etait pas fiable.

Le Pnume

Attention ce que je vais dire est à prendre avec des pincettes car mes connaissances en électroniques sont très parcellaires mais je ne suis pas sur que le capteur Sharp 2y0a02 soit un bon choix pour ce genre de mesure.
Je n'ai pas trouvé d'info (mais je n'ai pas cherché bcp) sur la taille du spot de mesure dans ton cas il faut qu'il soit assez précis si tu veux compter 2 boites en contact (ou en quasi contact).
Si la mesure effectué se fait sur une zone de l'ordre de l'écartement de l'émetteur et du récepteur (qq cm) il n'est pas sur que la variation de distance détecter soit suffisante pour détecter 2 boites en contact . Sinon pour la mise en ?uvre de ce capteur cf http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1230387822/6

Serge

zener57

franchement ça va aller ,car il y a suffisament d'espace entre 2 boites ,car le soucis actuel ce trouve sur le format 0,5l , diam 99 ,il y a 2 pas (130mm et 260 mm) donc suffisament de place entre 2

Jean-François

#5
Jan 13, 2011, 06:17 pm Last Edit: Jan 14, 2011, 05:24 pm by jfs Reason: 1
Est ce que le comptage commence au milieu d'un flux de boites ou est ce que la première boite initialise le comptage ?


Un truc du style :

Code: [Select]
long oldtime=0;
int boite=0;

void setup(){
   Serial.begin(9600);
   attachInterrupt(0,comptage,RISING);  // capteur sur digital pin 2
}

void loop(){}
 

void comptage(){
 
oldtime = millis();

if (time<=oldtime+1000000){
 if (digitalRead(0){
   boite++;
   Serial.println(boite);
 }
}
MacBook intel core 2 duo  os X snow Leopard 10.6
 eMac PPc G4  os X Leopard 10.5
powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

zener57

salut JF
ne vous prenez pas la tete non plus : ) pardonne moi si je suis directe,mais j'ai un reproche à faire ,à chaque fois que je pose une question sur un forum français , on me répond par des questions , ce qui n'est pas le cas sur des forums internationales ,bref ,(tel le sketch à magdane en pack de 6 de 12 avec des etiquettes qui collent avec de la colle ???) la conditionneuse est de couleur verte et en inox : ) : )
si ça peut servir ,(je plaisante mais , ça me tanne ) je préfère que l'on ne me réponde pas en fait .
pardonne moi JF ,mais j'hesite à chaque fois de poser des questions sur ce forum à cause de ça ( j'ai une boule à  l'estomac)
encore pardon .
pour te répondre le start comptage demarre par bouton(ou autre ) en mettant le capteur entre 2 boites  

merci quand mème (tu dois dire ,ce mec est un peu aigris   : ) )
amicalement le ptit suisse : )
william

Luj06

#7
Jan 13, 2011, 06:40 pm Last Edit: Jan 13, 2011, 06:44 pm by julien@pobot.org Reason: 1
Comme Zener57 indique qu'il s'agit d'un montage "pour se marrer", je pense qu'on peut imposer des conditions d'utilisation particulières, notamment pour le démarrage et la calibration.

Le plus simple pour ton code serait d'utiliser les interruptions : avec un ampli-op monté en comparateur à hystérésis, tu connectes le capteur au comparateur que tu règles sur place avec deux potentiomètres. Le comparateur sort un signal tout ou rien que tu peux mettre sur une patte en interruption externe de ton Arduino : il y a alors plus qu'à écrire une petite fonction qui incrémente un compteur dans ton Arduino, et à utiliser la fonction delay() pour attendre la fin de la minute.

Tu peux aussi utiliser la bibliothèque MsTimer2 pour pouvoir appeler périodiquement (toutes les secondes ou plus) une fonction qui incrémente ton horloge.

C'est un projet simple : tu peux t'inspirer de ce que j'ai fait pour les odomètres de mon robot (au lieu de compter des paquets, je compte des secteurs blanc et noir sur une roue : l'électronique est la même). Il y a le plan du circuit et aucune soudure à faire, on s'en sort avec une plaquette d'essai et quelques fils. Le composant (ampli-op) en lui-même ne coûte que 2 euros.

- le montage : http://www.pobot.org/Odometrie-du-Pobot-Easy.html
- le code des interruptions : http://www.pobot.org/Interruptions-externes.html

[EDIT: merci de pas généraliser. Oui on pose des questions, mais c'est pour éviter de répondre à côté, en faisant croire qu'une réponse a déjà été donnée juste parce que les mots-clés sont les mêmes]

Jean-François

Je t'ai mis un bout de code avec ma question....  ;D
MacBook intel core 2 duo  os X snow Leopard 10.6
 eMac PPc G4  os X Leopard 10.5
powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

zener57

de plus pardonne moi car je n'avais pas vu ce morceau de code : ) :)
mille excuses

Jean-François

Aucun soucis.

Ma question était plus pour savoir si c'est un comptage de production, ou de régularité de la cadence.
MacBook intel core 2 duo  os X snow Leopard 10.6
 eMac PPc G4  os X Leopard 10.5
powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

zener57

c'est plus pour une verif ,car comme je l'ai cité ,le chrono (start) et on compte le nombre de boites jusqu'à atteindre une minute (c'est une approximation ) car le systeme actuel (informatisé) anecdote ,un opérateur à conditionné 3500 boites le système a compté 1200 boites ,de quoi ce poser des questions ce qui implique un TRS en chute libre et des grincements de dents

Jean-François


Quote

les cadences de boites varient de 10 à 40 boites minute


Ce serait pas plutôt par seconde ?

ça correspondrait plus à 1200-3500 par minute....  :-?
MacBook intel core 2 duo  os X snow Leopard 10.6
 eMac PPc G4  os X Leopard 10.5
powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

zener57

non ,non ,je ne parlais en minutes , l'opérateur avait un ordre  de fabrication de 3500 b avec une cadence standard de 30 b/mn et le systeme avait comptabilisé que 1200 (environ 1 b/3 ) donc fatalement son TRS n'était pas bon

Jean-François

#14
Jan 13, 2011, 08:01 pm Last Edit: Jan 13, 2011, 08:02 pm by jfs Reason: 1
Ah! ok  ;D
Donc le code que je t'ai mis devrais suffire, il faut rajouter un bouton pour lancer le "chrono" . Par contre, je ne sais pas comment fonctionne ton capteur, il faudra peut-être adapter un peu.
Autrement tu pourrais utiliser un bête interrupteur pour faire le comptage des boites.
MacBook intel core 2 duo  os X snow Leopard 10.6
 eMac PPc G4  os X Leopard 10.5
powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Go Up