Aide pti nouveau - projet arduino type alfano.

Bonjour à tous.

Pour commencer, petite présentation. Nicolas 26ans.
j'ai fais 2x 2nd ISI et ISP ^^ (j'aimai bien) - après je suis parti sur un BEP Electronique.
puis un BAC + une mention complémentaire en Mécanicien Système Avionique.

Sinon, je suis motard (de route) et bientôt j'ai une session piste organiser.
j'aimerais un alfano - c'est un chronomètre qui détecte des boucles sur certain circuit. assez couteux

Il existe 2/3 techniques pour faire soit même a l'aide d'un PALM - Mm de carte arduino je crois.

Donc voila, je suis tout nouveau dans ce monde.
j'ai une carte arduino uno de base avec - quelques leds, résistances, P/B, un petit écran, et des fils.

Pour le capteur, j'en ai fabriquer un avec 4 Interrupteur a lame souple - ou à effet reed - je ne sais pas trop le nom officiel.

  • un que j'ai acheter tout fais chez conrad.

je vais monter la partie hardware.

  • voir qu'elles I/O et utilisés par l'écran.
    Pour le branchement du capteur. que conseillez vous - digital ou analogique ou pwm ( ce sont des impulsions) ?!
    sachant que c'est juste pour récupérer un contact au passage de la boucle?!

pour le soft, on verra quand tout sera en place. car j'ai un million de questions.

j'espère ne pas relancer un énième sujet déjà traité.
et que vous allez m'apporter pleins de solutions :smiley:

bonne journée.

Salut,

Le problème pour t'aider c'est justement le capteur : comment ça marche cette histoire de boucle ? Je trouve aucune doc technique sur le net ...

Salut, merci pour ton intérêt.

alors je sais pas si je pourrai grandement t’éclairé … car il est vrai que je n’ai rien trouvé sur le sujet.

Certains circuits sont équipés de 1, 2 voir 3 boucles (Pour les temps Intermédiaire : Star/Stop - i1 - i2 - Star/Stop)
Normalement c’est des boucles magnétiques de assez forte puissance - et le capteur les détectes au passages.

B@tto:
Salut,

Le problème pour t'aider c'est justement le capteur : comment ça marche cette histoire de boucle ? Je trouve aucune doc technique sur le net ...

Il me semble avoir déjà vu evoqué ce terme sur le forum

sans garantie que ça colle , un lien vers ce qui semblerait un hack ancien
http://eneos.free.fr/index.php?Fiche=302

Salut.

En effet Artouste, c'est là où j'ai commencer.

NickoR:
Salut.

En effet Artouste, c'est là où j'ai commencer.

pour les bandes
j'ai trouvé ça

Les bandes sont formées d’aimants insérés dans une rainure. Ils n'ont pas besoin d'électricité, piles ou entretien de tout genre. Ils émettent une énergie constante pendant environ 200 ans.

Comme il semble que la plupart des capteurs soient à ILS, le champ local généré doit etre assez important.

une fois validé le fait que ton capteur "capte" bien , le plus simple est simplement d'utiliser une entrée digitale de ton arduino comme declencheur.

Visiblement ça ressemble effectivement à la description de Nickor ...

Si c'est bien ça il y a le schéma à utiliser dans le lien.

Après c'est une simple utilisation de millis() pour chronométrer et d'une lecture digitale (idéalement sur interruption) du capteur pour avoir les tops.

il y a quand meme du grain à moudre sur le net :grin:
http://www.forumgsxr.com/forum/construction-d-un-bipfano-un-alfano-a-30-t4614.html

Mon capteur 4 ILS viens de là ;p.

Petite question au passage, :zipper_mouth_face:
j’ai un écran 2line 16char me semble-t-il.
avec une interface IIC - je dois me brancher sur les 4 sortie GND-VCC-SDA-SCL

ou sur les sorties de base :

Connecter broche RS du LCD sur la broche 2
Connecter broche E du LCD sur la broche 3
Connecter broche D4 du LCD sur la broche 4
Connecter broche D5 du LCD sur la broche 5
Connecter broche D6 du LCD sur la broche 6
Connecter broche D7 du LCD sur la broche 7


Merci !! je vais jeter un œil a millis()
j’ai essayé les capteurs en continuité - il se déclenche que lorsque l’aimant passe très bas mais c’est du au faible champ de mes aimants.

NickoR:
j’ai un écran 2line 16char me semble-t-il.
avec une interface IIC - je dois me brancher sur les 4 sortie GND-VCC-SDA-SCL

oui et prendre la bonne lib LCDI2C fonction du composant I²C qui fait l’interface

Super. je cherche ca.


edit : c'est bon, j'ai réussi un hello world. avec une librairie iiC.
par contre, si je fais une phrase trop longue. ca ne passe pas à la 2nd ligne. ?!

NickoR:
Super. je cherche ca.


edit : c'est bon, j'ai réussi un hello world. avec une librairie iiC.
par contre, si je fais une phrase trop longue. ca ne passe pas à la 2nd ligne. ?!

ha non :grin:
c'est à toi de penser à (bien) gerer l'occupation des lignes

Ah le salow. il ne gère pas ca tout seul.

mais c’est bon, j’ai trouver comment écrire où je le souhaite. et faire clignoter.

maintenant je me penche sur le logiciel de chronométrage. chrono tout simple, et pour le moment je vais simuler le capteur par un interrupteur.


j’ai mon chronomètre! bon pour le moment il se lance au départ du programme … manque le start / stop

et n’affiche que les 10eme.

V

vu comment tu avance, ca devrai pas trop te poser probleme.
je vais quand meme te faire quelques preconisations/remarques:

utiliser une entrée interruptive a ses avantages et incorvenients. vu que tu as plusieurs contacts ILS et chacun d'eux est suceptible de rebons, tu dois "capturer" le passage pour le figer dans l'interruption, et ensuite revalider dans la boucle principale 2 ou 3 secondes plus tard.

le chrono n'est pas un probleme avec millis(). evite delay() pour compter le temps de maniere precise.

j'ai pas approfondi si la librairie lcdi2C bloque les interruptions. si c'est le cas, tu n'aura pas de probleme sur la detection des capteurs ILS, mais millis() pourrai deriver si tu communique intensivement avec le lcd.
sur que ce n'est las le cas avec la librairie LCD standard (pas de cli/sei utilisé).

vu les champ magnétiques sur circuit, evite d'avoir une longueur de cable importante entre l'arduino et l'ecran LCD.
si ca se trouve, tu sera peut etre meme obligé d'otpocoupler l'entrée de comptage.

stoque les temps en EEprom et analize chez toi si tout est coherent.
pour le prix d'un ecran graphique 1"8 à 20$, tu peut avoir un truc vraiment sympa:

V

Salut!

Merci, super sympa toutes ces infos.

Pour l'écran, le 16x2 c'est celui livré d'origine. je l'utilise pour commencer les codes, je suis en attente d'un 3''2 TFT LCD -

En effet je n'avais pas penser aux différents capteurs. qui risque de ne pas être un mm temps.

Ok, je vais me pencher sur millis - mais je n'ai pas encore trouver de fonction pour le chrono.
je n'arrive pas à faire un truc coherant.

Je pense que l'écran sera au plus près de la carte. le capteur aura un cable tv ce qui est censé le protéger des interférence.

En tout cas, merci pour tout, et je suis preneur de tout avis.

NickoR:
Salut!

Merci, super sympa toutes ces infos.

Pour l'écran, le 16x2 c'est celui livré d'origine. je l'utilise pour commencer les codes, je suis en attente d'un 3''2 TFT LCD -

En effet je n'avais pas penser aux différents capteurs. qui risque de ne pas être un mm temps.

Ok, je vais me pencher sur millis - mais je n'ai pas encore trouver de fonction pour le chrono.
je n'arrive pas à faire un truc coherant.

Je pense que l'écran sera au plus près de la carte. le capteur aura un cable tv ce qui est censé le protéger des interférence.

En tout cas, merci pour tout, et je suis preneur de tout avis.

bonjour
pour le capteur (à base d'ILS en // des schemas ) il y a aussi de prevu un circuit anti-rebond qui doit bien faire son job :grin:
Pour aller plus loin , il faudrait passer sur du/des capteur(s) Hall analogiques et avoir acces "aux" circuits" pour "depouiller de la mesure"
Mais pragmatiquement je suppose que vu le nombre "d'amateurs" la solution ILS est bien eprouvée/validée 8)

pour le compteur, je te laisse chercher/trouver le "code le mieux adapté" :grin: c'est aussi le but du jeu ici 8)

question et reflexion perso sur le dispositif d'affichage "en course" , un LCD c'est suffisamment lisible quelque soit les conditions d'eclairage naturel/incident ?
intuitivement je serais plus parti sur de l'affichage numerique led

Salut

En effet ,les capteurs ne sera testé que en condition réel sur circuit lors d'une journée de roulage.
Je n'habite pas assez près d'un circuit, et je ne pense pas qu'on puisse y accéder pour effecteur des test sur les boucles.

Je pense aussi que les capteurs ILS soit une solution, peut être pas la meilleur mais fonction. (de ce que j'ai pu un peu lire)

Pour le code, pas de souci, je cherche, je souhaite apprendre. mais je pense revenir d'ici peu car la je pêche.

et pour ta dernière réflexion. je l'avoue, je n'y ai mm pas penser.
Bon c'est surtout pour apprendre.

Si j'arrive à ce que je veux, et que cela me plait.

il faudrait peut être aussi envisager une carte plus petit. j'ai cru voir qu'il exister des micro voir nano ?!

Si c’est un champs magnétique à détecter, ça serait interessant de regarder du côté des capteurs à effet hall, plus sensible donc tu pourras le mettre plus haut par rapport au sol, donc mieux intégré à la moto

Salut.

Oui en effet, ca me botte bien. j’ai un capteur Hall qui m’interesse.
Mais déjà je vais essayer avec mon capteur fait maison. un de chez conrad. et j’ai commander une petit module Magnetic sensor voir ce que cela donne.

----- edit ----

bon voila ou j’en suis.
j’ai le code pour initialiser l’ecran.
la constante pour le bouton,

// library
#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2); // adresse lcd
int Capteur = 2;   // pushbutton connected to digital pin 2
void setup()
{
   lcd.init();                      // initialize the lcd 
   lcd.backlight();
   pinMode(Capteur, INPUT);      // sets the digital pin 2 as input
}

maintenant, je sais plus faire - comment afficher un chrono “minute:seconde:dix cent et millieme” à 0.
et le start/stop via le bouton.

je sais pas si je suis vraiment clair. mais je n’avance plus. lol
et là je sais plus faire. :roll_eyes:

----edit 2 -----

bon alors - j’ai crée une constante

int etatCapteur;                    // variable de lecture de l'état du bouton.

Mais ensuite ??!! je me suis lancer la dedans.

 void loop()
{
    etatCapteur = digitalRead(capteur); // lit l'état du bouton-poussoir

  // teste si le bouton-poussoir est enfoncé    
   if (etatCapteur == HIGH) {     
        
    [b]lancer le chrono ?![/b]
  } 
    
}

Artouste:
question et reflexion perso sur le dispositif d'affichage "en course" , un LCD c'est suffisamment lisible quelque soit les conditions d'eclairage naturel/incident ?
intuitivement je serais plus parti sur de l'affichage numerique led

un lcd comme tu dois voir courament, non.
il faut prendre un grande taille, genre 1601L d'analog vision.
mais sur circuit, tu ne regarde que la piste, sinon t'es au tas.

accessoirement tu peut rajouter une oreillette que tu ferai bipper si tu rallonge ou augment ton temps.

il y a plusieurs passages ILS par boucle. tu pourra stocker chaque config de circuit en E2Prom, genre
piste 1:
L1=300m
L2=500m
L3=750m
L4=1200m
L5=1500m
piste 1:
L1=220m
L2=410m
L3=650m
L4=1200m
L5=0m (pas present)
piste 1:
ect...

les capteurs ILS fonctionnent tres bien, surtout quand t'en mets 4 en //
ils finissent quand meme par griller, plus par les vibrations et l'intensité du champ magnétique par rapport a un usage "normal" (ie: fdc de verin, par exemple).