Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Jean-Luc

Pages: 1 ... 75 76 [77] 78 79 ... 93
1141
Vos projets / Re : arduino gare cachee
« le: février 19, 2016, 09:23:55 am »
Bonjour Marc.

Ce qu'essaye d'expliquer bricoleau est que, en l'état le programme ne fonctionnera pas car il fait des suppositions sur le fonctionnement des ILS qui sont fausses. En effet, en utilisation réelle, le déclenchement de l'ILS sera fugace et par conséquent il faudrait que le programme mémorise ce déclenchement dans un variable booléenne par exemple. Cette variable sera remise à false quand le programme fera quitter la voie au train.

Ceci dit, comme tu simules, les conditions sont différentes et tu fais sans doute en sorte que les 3 ILS soient déclenchés en même temps.

Mais il faut également filtrer les ILS. En l'état unit est incrémenté à chaque fois qu'un des ILS est déclenché. Or si le même ILS reste déclenché d'une exécution de loop à la suivante, unit est incrémenté 2 fois pour ce même ILS et au moment où le programme le teste, il ne vaut jamais 3 et unit dépasse cette valeur. Supposons par exemple le scénario suivant : à la première exécution de loop un train déclenché l'ILS 1 unit est incrémenté. A la seconde exécution unit est incrémenté une seconde fois. A la 3e exécution de loop, un second train arrive et déclenché l'ILS 2, unit est incrémenté 2 fois, une fois pour l'ILS 1 et une fois pour l'ILS 2. Au moment du test il vaut 4 et n'a jamais valu 3.

Ce qui t'intéresse en fait c'est le passage de LOW à HIGH pour chaque ILS. Le mieux est d'utiliser une bibliothèque qui fait ça pour toi. Par exemple Button : http://playground.arduino.cc/Code/Button
La fonction uniquePress est celle qu'il te faut.

1142
Vos projets / Re : Arduino pilotage PN37
« le: février 18, 2016, 07:46:36 pm »
Oui c'est normal. SMSSmoothBounce n'a pas la même trajectoire de min vers max et de max vers min. Pour la première, il y a le rebond, pour la seconde, c'est un sinus comme dans SMSSmooth :

float SMSSmoothBounce::slopeUp(float time)
{
  if (time <= 0.79) {
    return (1.0 - cos(time * PI))/1.8;
  }
  else {
    float timeOff = 10.0 * (time - 0.55);
    return (0.834 + 1.0 / (timeOff * timeOff));
  }
}

float SMSSmoothBounce::slopeDown(float time)
{
  return (1.0 - cos(time * PI))/2.265;
}

Au lieu d'un simple bounce, on peut faire un sinus amorti. C'est très rapide à programmer

1143
Vos projets / Re : Arduino pilotage PN37
« le: février 18, 2016, 04:02:46 pm »

1144
Vos projets / Re : Arduino pilotage PN37
« le: février 18, 2016, 09:39:01 am »
Effectivement je n'ai pas encore rédigés de documentation. Je peux faire ca rapidement. Si c'est en anglais ça va ? En attendant un article sur Locoduino.

1145
Vos projets / Re : Arduino pilotage PN37
« le: février 17, 2016, 10:54:07 pm »
En fait dans SlowMotionServo je ne fais pas comme ça.

Plutot que de déplacer les servos d'un pas fixé et de faire varier l'intervalle de rafraîchissement pour faire varier la vitesse, la bibliothèque calcule la position de chaque servo selon la date lue via millis() à chaque fois que update est appelée. Il suffit juste d'appeler update le plus fréquemment possible dans loop et on ne s'embête pas avec l'intervalle de temps de rafraîchissement.

Ce n'est donc pas sensible à des appels irréguliers tant que l’intervalle de temps d'appel de update n'est pas trop long.

1146
Vos projets / Re : Arduino pilotage PN37
« le: février 17, 2016, 09:43:56 am »
Ça dépend de la qualité du servo. L'arduino se contente de construire une impulsion avec une résolution de 4μs. 0° correspondent grosso modo a 500μs et 180° à 2500μs. On a donc 2000μs pour 180° et donc environ 11μs par degré. La résolution doit être vers les 0,36°

1147
Vos projets / Re : Re : Arduino pilotage PN37
« le: février 17, 2016, 09:25:03 am »
Ma question : est-ce qu'on peut mettre ce test dans le setup, qui attendrait ce premier appui pour donner la main à la loop, ou bien ça ne marche pas et il faut un flag et un if .. else en début de loop ?

On peut mettre ce que l'on veut dans setup.

1148
Vos projets / Re : Arduino pilotage PN37
« le: février 17, 2016, 09:21:07 am »
Pour déplacer ton servos tu peux utiliser SlowMotionServo. Il faut juste avoir la function qui donne la position en fonction du temps.

https://git.framasoft.org/locoduino.org/SlowMotionServo/tree/master

1149
Vos projets / Re : arduino gare cachee
« le: février 16, 2016, 08:45:02 am »
Outre les remarques de bricoleau, il faut également tenir compte du fait que les ILS ne sont pas constamment on quand le train est présent, si l'aimant a dépassé l'ILS, il décolle.

Il faut donc mémoriser qu'il a été on dans le passé pour savoir si un train est présent sur la voie ou non.

1150
Débuter / Re : Probleme avec la bibliothèque MENWIZ
« le: février 14, 2016, 10:08:25 am »
Bonjour ptitrain

Je viens de télécharger la chose. Je ne comprends pas trop pourquoi la version 1.3.2 est sur github dans un zip ??? c'est très étrange. La version 1.3.2 ne contient pas d'exemple. J'ai donc installé la version 1.2.

J'ai plein d'erreurs de compilation probablement dues au fait que gcc, le compilateur embarqué dans l'IDE Arduino, est devenu plus strict au fur et à mesure des versions. Ça ne donne pas confiance dans le code de MENWIZ, l'auteur semble avoir des habitudes de programmation borderline.

Thierry ? LcdUI ne fait pas la même chose ?

1151
Shields et Modules / Re : Carte Pont tournant
« le: février 13, 2016, 09:20:38 pm »
NEMA17 ne spécifie pas le nombre de pas par tour. Ça spécifie juste les dimensions. On trouve des NEMA17 200 pas par tour (1,9° par pas) et 400 pas par tour (0,8° par pas). En l'absence de spécification, il y a  fort à parier qu'il s'agit de 200 pas par tour. J'ai cherché la référence  donnée sur la page d'Ali Express et j'ai trouvé 200 pas par tour. Pour ces trucs là je n'achète  pas en Chine car les informations ne sont pas très détaillées. Il ne vaut mieux pas faire d'économies sur ce composant.

1152
Débuter / Re : IDE Arduino
« le: février 13, 2016, 08:54:38 pm »
Tu peux passer outre mais ca sera technique.

http://inotool.org

1153
Shields et Modules / Re : Carte Pont tournant
« le: février 13, 2016, 08:43:58 pm »
D'après ce que je trouve sur le net avec la référence 42SHD0001, il s'agit d'un moteur 200 pas/tour

1154
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: février 13, 2016, 08:30:14 pm »
Je vais en recevoir entre 10 et 12. J'en ai besoin de 2.

1155
Shields et Modules / Re : Carte Pont tournant
« le: février 13, 2016, 08:29:13 pm »
Merci les gars.

Ca n'a pas changé. C'est un NEMA 17 (taille du boitier, positionnement des perçages).

Celui que j'ai est un moteur vendu chez selectronic à 400 pas par tour et 12800 micro pas avec le DRV8824. C'est mieux qu'un 200 pas.

http://www.selectronic.fr/moteur-pas-a-pas-modele-pap-2.html

Pages: 1 ... 75 76 [77] 78 79 ... 93