Module de chronométrage

Bonsoir,
En intro, j'ai commencé à vaguement bricoler lors d'une conception de feu tricolore sur arduino uno/mega.
Aujourd'hui, je souhaiterai votre aide/conseil pou un système de chronométrage.
Mon idée première sera le branchement d'une cellule photo-électrique sur une carte arduino.
La carte arduino serait branchée en USB sur un ordinateur.
Dès réception de "barrière coupée" par la carte arduino, je souhaiterai que cette dernière envoie via le port COM, un signal au PC.
Via une appli VB.NET en écoute du port COM, lors de la réception du signal de la carte Arduino, l'appli récupérerait l'heure système du PC en 1000ème de seconde.
Le calcul du chrono serait la différence entre les heures de départ et d'arrivée.
J'ai entre-aperçu un matériel de ce genre :
%product-title% - Conrad Electronic France
Qu'en pensez-vous de mon idée de farfelu ?
Merci par avance.
Raphael

La fonction millis() ou micros() pourra vous donner une résolution meilleure sur l’arduino que en sortie d’une communication série (même à haut débit) avec un PC multi-tâche... à quoi sert vraiment le PC?

J'ai deux PC sur le terrain.

  • 1 au départ pour recevoir les heures depuis la barrière du départ, les heures d'arrivée via 3G (épreuve de plusieurs kilomètres), établir les différences, établir les classements et gérer un direct (application vb.net déjà en fonctionnement)
  • 1 à l'arrivée pour recevoir les heures depuis la barrière d'arrivée, les envoyer par 3G au PC du départ. Le PC d'arrivée est aussi présent de gérer les envois en échec pour les mettre en attente avant nouvel essai... Ca ne reste que de la 3G...

Ok ça explique :slight_smile:

Comment vous différenciez deux compétiteurs et comment garantissez vous que les 2 PCs ont la même heure à la millliseconde près ?

Les compétiteurs sont identifiés manuellement, à vue.
Les 2 PCs seront synchronisés ensemble et en désactivant la mise à l'heure automatique.
Les millièmes de seconde d'écart entre les 2 PCs seront les mêmes pour chaque concurrent, personne ne sera lésé...
La cellule choisie est-elle correcte ?

Oui ça peut faire le job - vous n’avez peut être pas besoin de 9m de portée vous diviserez fortement le prix si vous prenez 3m - tout dépend de la largeur de l’arrivée (plus c’est large plus c’est difficile de détecter 2 concurrents arrivant en même temps, le premier pouvant cacher l’arrivée du second)

Il faut installer un réflecteur bien positionné de l’autre côté et l’alim n’est pas en 5V. Vous avez du courant dispo à l’arrivée (sinon prévoir une bonne batterie de 12V au moins)

J’ai quelques doute sur le besoin à la milliseconde près en condition réelle d’arrivée multiples groupées mais bon c’est vous qui connaissez le cas d’usage

Les voitures sont lancées une à une, espacées de plusieurs secondes.
Peut être devrais-je me pencher sur la durée de blocage de la cellule...
Concernant la largeur de la route, ceci est très aléatoire, de base la route fait au moins 6 mètres, en comptant un dégagement pour protéger le matériel, je ne dois pas être loin des 9 mètres.

Voici la doc de la cellule :
http://www.rallygt.fr/189745_fra.pdf

Ai-je d'autre matériel à prévoir entre le contact de la cellule et l'entrée input de mon Arduino ?
Merci, merci encore...

Le lien ne fonctionne pas - faudrait voir le niveau de tension de sortie du module en cas de détection

Désolé...
Je viens de corriger le lien

Bonjour

La sortie de la cellule est un simple contact inverseur , donc c'est à gérer comme tout contact , bouton poussoir.....

On aussi qq infos sur le 'temps de réaction'.. à comparer avec la durée de coupure du faisceau pour la vitesse maximale des véhicules.
Capture d’écran du 2019-01-22 11-57-16.png

Distance max
Capture d’écran du 2019-01-22 12-01-14.png

Je peux aisément foncé vers ce matériel ?
Afin de vous souvenir de moi (lol
Je vois le branchement +/- de la cellule, je ne comprends pas les autres points NC, NO et C

Capture d’écran du 2019-01-22 12-11-54.png
En absence de coupure du faisceau il ya un contact entre C (Common) et NC (Normally Closed)

En présence de coupure le contact s'établit entre C et NO (Normally Open)

par convention sur un schéma on représente l'état de repos (içi absence de coupure)

Dans les tutoriels 'Zeste de savoir' (auteur Eskimon) conseilés en tête de Forum (cf Regle du Forum) il ya tout ce qu'il faut pour gérer un contact avec Arduino (voir "Un simple bouton")

50000 lux maxi de lumière ambiante, ce n'est pas un peu léger ?

pour référence (Wikipedia)... donc éviter le soleil direct

Capture d’écran du 2019-01-22 12-34-29.png

En protégeant cellule et réflecteur en installant une casquette à chacun ?