Pages: 1 [2] 3   Go Down
Author Topic: comptage d'objets par minute ( aide )  (Read 5583 times)
0 Members and 1 Guest are viewing this topic.
Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

oui oui bien sure, je vais tester ton prog , comme je veux mettre un peu de fioriture : ) ( ecran tactile ) bouton radio pour lancer le compte à rebour ,au bout d'une minute ,nb de boites ) c'est ce que je recherche ,je vais tester ça ,et je te tiens au parfum ,
Cool sympa
@+
Logged

Geneva
Offline Offline
Faraday Member
**
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
je te tiens au parfum

Peinture ou parfum.... ?   ;D
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

AHHH AHHH AHHH
je te garanti ,que travailler dans ce domaine ,c'est pas chanel 5  ;D ;D ;D

la chimie attention

le parfum n'est pas le mème ,solvant , résine, amoniac etc. etc .. ;D ;D ;D
en bref ça poke grave  ;D ;D
Logged

Geneva
Offline Offline
Faraday Member
**
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

à Genève, suivant dans quel quartier tu te trouves, entre Givaudan et Firmenich, les odeurs on connait  :smiley.

Tu vas utiliser quoi comme écran ? (encore une !@#$!#$!! de question  ;D).
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ah ouai , merde , j'y suis allé 2 fois a Genève ,bon c'est vrai il y a longtemps ,une fois très jeune ,et 2eme fois environ 25 ans ,j'avais trop kiffé , j'adore la haute savoie et la suisse (Genève pour sa propreté ,l'horloge en fleur ,le lac ,et les gens très cool et sympas ) et bien sure votre chocolat ,un pure bonheur ,mais je pense que ça a changé ,enfin , mon rève ,le festival de montreux (Claude Nobs, Deep purple ,que de souvenir)
enfin enfin
l'écran est un 4D system micro LCD 32032 P1T


Logged

France
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3617
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
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
Si on pose des questions c'est qu'on ne veut pas répondre à coté de la plaque. Par exemple au début il n'y avait pas d'information sur la cadence et sur le fait que les objets à compter sont bien séparés les uns des autres.

Ceci étant dit, je pense que le capteur est mal adapté au besoin. Une bête barrière infrarouge serait certainement plus fiable. Un capteur de distance comme celui que tu proposes nécessite de déterminer des seuils. Si les objets à compter ne sont pas toujours à la même distance du capteur ou si leurs bords ne sont pas parallèles (bidons circulaires ou boites posées de travers) tu risque de rencontrer des difficultés.

Quote
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.
On parle de quelques pièces par minutes, il suffit de connecter la sortie du capteur sur une entrée analogique de l'arduino et le comparateur peut être réalisé par le logiciel. Le réglage peut alors se faire avec 2 boutons ou un potentiomètre sur une autre entrée analogique. Le problème c'est plutôt la non linéarité de l'information délivrée par le capteur (en particulier le rebroussement à 15cm) qui peut rendre le réglage délicat. C'est pourquoi je pense que pour ce besoin une barrière infrarouge est autrement plus simple à mettre en oeuvre.
« Last Edit: January 14, 2011, 02:49:49 am by fdufnews » Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 62
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Comme mon nombre de message l'indique, je suis nouveau sur ce forum et je ne connais pas encore forcement toutes les 'coutumes' du lieu mais je participe à plusieurs forum techniques sur d'autres sujets.

 Si j'ai pris le temps de poser mes questions c'est que ton sujet m'intéressais mais que j'estimais que les informations données dans le post d'origine étaient insuffisantes.
Alors si tu me dis que j'ai perdu mon temps à essayer de comprendre, je t'assure que je ne recommencerais pas. Sur certain forum ta remarque se solderait par un plonk généralisé.
Je n'ai absolument pas la prétention d'être un hacker arduino que je découvre progressivement mais je conseil toujours la lecture de ce document car les principes qu'il décrit son vrai qq soit le domaine technique concerné http://www.linux-france.org/article/these/smart-questions/smart-questions-fr.html

Serge
Logged

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

bonjour
Désolé Serge si je t'ai offensé ,car ce n'était pas le but ,et ce n'est pas non plus parce que tu es nouveau sur ce forum que tu n'as pas les connaissances .pour ma part je bricole (et j'arrive à me débrouiller quand meme) .disons que j'aurai du poser la question differemment (comment faire un comptage (cellule ,IR etc ...) dans un timer de 60 s )
pour fdufnews ,je ne cherche pas à faire un instrument de haute précision (pour info) car comme je l'ai cité (un chrono en main et comptage par visu )ce n'est pas précis ,je m'accorde une erreur (+ ou - 2 boites) ,j'ai pensé au  Sharp (E R infrarouge) facile à mettre en place 3 fils.(je l'ai testé à l'arrache ça me parait correcte)
effectivement la plupart des boites sont cylindriques  mais il y a un temps d'arret (remplissage boites) et elles sont guidées (ne peuvent pas etre de travers),je pense avoir tout dit .
merci à tous pour votre implication
William
Logged

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

récapitulatif
Pardon , il y a quand mème une précision ( le temps , 1 mn )   :smiley
@+
Logged

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Salut Jean-François
Chose promise chose du, j'ai donc utilisé ton code et apporté quelques modifs (j'avoue que j'ai un peu bricolé ) mais ça a l'air de tenir la route ,comme je ne possède pas de Devree (conditioneuse) chez moi  ;D ,j'ai simulé le passage des boites devant le capteur ,j'ai pris ma paluche  ;D
il me reste la gestion de l'ecran pour le déclenchement et la remise à zero du comptage (ça va le faire,c'est à ma portée  :smiley ) voici le code ,dans le cas ou tu trouve une solution + simple ou un bug.


[edit]long oldtime=0;
long time=60000; //  60000 millisecondes = 1 minute
int boite=0;
int ledPin =  9;            // LED connected to digital pin 9
int sensorPin = 1;        // value read from the sensor
int outputValue = 0;        // value output to the PWM (analog out)
 
void setup(){
  pinMode(ledPin, OUTPUT);
    Serial.begin(9600);
    attachInterrupt(0,comptage,RISING);  // capteur sur digital pin 2
}

void loop(){
/*  la bricole est ici comme le capteur est plutot destiné à la distance
     j'ai utilisé la sortie digit 9 pour le déclenchement de l'interruption
     si il y a une autre solution ,je suis tout Ouïe
*/
 
 int analogValue = analogRead(sensorPin);
  outputValue = map(analogValue, 250, 900, 0, 255);
  if (outputValue<0)
 digitalWrite(ledPin, LOW);
      else
     digitalWrite(ledPin, HIGH);
     // wait 20 milliseconds for the analog-to-digital converter
  delay(20);

 oldtime = millis();
//  Serial.println(oldtime/1000);// afficher le timer en secondes pour le test horloge

 if (oldtime>=time)
{
  detachInterrupt(0);
}
}

void comptage(){
  if (digitalRead(0))
  {
    boite++;
    Serial.println(boite);// afficher le compteur boite(s)
  }
}[/edit]


« Last Edit: January 14, 2011, 11:20:44 am by zener57 » Logged

Geneva
Offline Offline
Faraday Member
**
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Je dis peut-être une bétise, mais si tu travailles avec la pin 9 en entrée, tu n'a pas besoins d'utiliser attachInterrupt(), et tu fais ta boucle de comptage directement dans le if avec l'analog Read().

Ensuite, fais deux boléens :start  et comptage, que tu mets à false en les déclarant.
Lorsque tu appuies sur le bouton pour démarrer le comptage, ça te mets "start" à true.
Si start est à true, lors du début du passage d'une boite "comptage se mets à true et tu initialises la valeur du chrono dans la foulée et tu remets "start" à false (le chrono ne doit s'initialiser que si start est à true). Ainsi , si une boite est déjà engagée (à moitié)  lors de "start", le chrono commencera au début de la boite suivante.
Lorsque la minute est passée tu remets "comptage" à false.

Il faudra certainement corriger certain truc dans ma logique....  :smiley
« Last Edit: January 15, 2011, 03:18:19 am by jfs » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Salut Jean-François

la pin 9 est une sortie  smiley-wink , la bidouille est là justement ,comme le capteur délivre une valeur ANA variable je l'ai connecté sur une entrée ana et fais une magouille afin qu'il déclenche une sortie digit qui elle meme est connectée à l'entrée (interrupt ) pour ne pas faire ce que m'a proposé fdufnews (qui a raison dans son raisonnement) ,je me suis imposé mon propre cahier des charges  ;D
j'ai modifié ton code car le timer fonctionnait en permanence et déclenché par l'interruption .
Quote
Il faudra certainement corriger certain truc dans ma logique....
 ;D ;D moi aussi.
je suis à des km de l'optimisation de code  ;D les programmeurs doivent s'arracher les cheveux,le principale c'est que ça fonctionne ,n'est-ce pas ???
@+
william
Logged

Geneva
Offline Offline
Faraday Member
**
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
j'ai modifié ton code car le timer fonctionnait en permanence et déclenché par l'interruption .

Tu as eu bien raison, car c'était un jet comme ça juste pour se donner une idée, même la minute n'est pas une minute....  ;D ;D


Quote
le principale c'est que ça fonctionne ,n'est-ce pas ???

D'accord avec toi, d'autant que certaines erreurs peuvent t'amener sur des pistes..... inattendues et révélatrices de solutions  smiley-wink
« Last Edit: January 15, 2011, 04:11:38 am by jfs » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Geneva
Offline Offline
Faraday Member
**
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quelques questions par rapport à l'écran que tu vas utiliser.
Est-ce que tu peux le gérer directement avec l'Arduino ?
Comment est l'affichage (fluidité, rapidité...) ?
Est il facile à utiliser ?

J'ai fait quelques recherches sur Gougle et je n'ai pas trouvé trop trouvé d'info avec l'Arduino.
« Last Edit: January 15, 2011, 04:17:58 am by jfs » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Oise
Offline Offline
Full Member
***
Karma: 0
Posts: 114
The Truth is elsewhere
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

absolument cher ami ,pour cela je tiens à te remercier car cela m'a permis de me donner un coup de pouce , je ne vais pas remettre une couche ,mais ,personnellement c'est ce que je recherche sur un forum !
l'echange d'idée .
comme je suis loin d'avoir inventé l'eau chaude et le fil à couper le beurre ,une petite aide ça fais plaisir  smiley-wink

par contre la suite risque d'etre plus complexe ( comme je l'ai cité ) je veux faire un ptit appareil multi usage (dont un tachimetre ) et là au secour  ;D ;D
Logged

Pages: 1 [2] 3   Go Up
Jump to: