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 ... 73 74 [75] 76 77 ... 95
1111
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 17, 2016, 12:10:14 pm »
TME livre en 24h, pas de précipitation  :)

Les valeurs de résistance dans la détection d'alimentation ne sont pas bonnes. je vous tiens au courant.

1112
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 17, 2016, 11:35:05 am »
Je suis en train de faire les sachets de composants. C'est presque complet (les items en vert de la liste sont dans le sachet). Il me reste à découper les cartes, à faire le total et à vous envoyer tout ça.

1113
Shields et Modules / Re : Re : Carte Servomoteurs DCC + CAN
« le: mars 17, 2016, 11:33:52 am »
Disons que sur ton schéma 3/6, au lieu d'aller tester le "Vin" aux bornes du condo, j'aurais mis une diode (1N4148) :
-> anode au point 1 (anode de la 1N4007)
-> cathode au point 2 (cathode de la zener)
Et je pense que c'est tout.
Comme ça, la zener coupe tout de suite et le NANO attend la fin de décharge du condo.

Oui, prendre la tension avant D1 est mieux mais il n'est pas nécessaire de mettre une diode. Si on se trompe de sens pour l'alimentation, la zener sera prise dans le sens direct mais la résistance de 10kΩ empêchera sa destruction. Faire cette modif est facile, il faut couper une piste au recto et mettre un strap au verso.

1114
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 16, 2016, 04:09:22 pm »
Ah, j'ai oublié la capa de 470µF sur la sortie du régulateur qui étalera la consommation des servos. C'est donc moins pire qu'exposé. Je vais testé avec un seuil plus haut (zener de 10V). Tout ça c'est à la louche, c'est beaucoup plus complexe dans la réalité. L'expérience dira combien j'arrive à sauvegarder en l'état actuel.

1115
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 16, 2016, 03:00:57 pm »
Ok je vois ce que tu veux dire.

Le circuit de détection avec la zener et le transistor remplit le même rôle que D2 à la différence que ça garantit que tu n'auras pas plus de 5V sur l'entrée du Nano et donc ça ne crame pas.

D1 existe mais alimente un condensateur en entrée du régulateur ainsi que le Nano. Le défaut est que le régulateur tire également dessus pour alimenter les servos et donc il va se vider plus vite.

Calcul de dos d'enveloppe :

J'avais mesuré la consommation du microservo que j'utilise, le HK15178 de Hobbyking. Au repos un servo consomme 7mA. En mouvement 60mA. Si on suppose qu'on a 2 servos en mouvement maximum (cas des portes de remise) ça donne 200mA, l'équivalent d'une résistance de 25Ω. De son côté, le Nano consomme 15mA (led PWR) + 20mA environ. Soit l'équivalent d'une résistance de 140Ω. Grosso modo on a une résistance équivalente de 20Ω. Avec les 470µF on a donc un peu plus de 9 ms, soit le temps d'écrire 3 octets  ::) flute

Donc oui il faudrait mettre une capa mais elle n'a pas besoin d'être grosse si on la met entre le 5V et la masse du Nano. En effet, on n'a que le Nano et la led PWR qui tirent dessus et donc avec 470µF la constante RC est de 65ms. On peut utiliser une capa comme C3 au dos de la carte.

1116
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 16, 2016, 01:51:03 pm »
Je vois pas trop ce que ça apporte en fait

1117
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 16, 2016, 01:26:11 pm »
C'est plus ou moins déjà le cas.

1118
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 16, 2016, 12:08:08 pm »
Petit problème de mise en œuvre de la détection de perte d'alimentation.

Il s'avère que le Nano que j'ai monté arrête de fonctionner lorsque la tension d'entrée de la carte passe sous les 9V. Derrière j'ai une diode de protection donc le Nano reçoit 8,3V sur VIN, ce qui est supérieur à la tension mini de 7V.

Mais voilà ce n'est pas un nano officiel et les caractéristiques annoncées sur arduino.cc ne sont visiblement pas respectées. Comme personne ne va monter un Nano officiel à 35$ pour mettre sur cette carte, il faut faire avec.

Or, la détection de perte d'alimentation déclenche à 7,5V (c'est la zener que j'ai montée à la place de 6,8V) après la diode de protection. Donc un VIN de 8,2V et donc plus bas que le plantage du micro. C'est ballot.

Donc :
1 - Il faut alimenter la carte en 12V car à 9V on est au seuil du plantage du Nano. Le Nano recevra 11,3V
2 - Il faut détecter au dessus de 9V, le plus au dessus possible en fait et juste en dessous du 12V.

Il existe des zener 11V et 10V. À cela il faut ajouter les 0,7V de la diode de protection. En 11V, la détection déclenche si l'alimentation passe en dessous de 11,7V. J'ai peur que 0,3V soit un peu juste comme marge de bruit. En 10V, la détection déclenche à 10,7V ce qui me semble mieux.

Donc, ne commandez pas les composants manquants tout de suite. Je vais aller acheter quelques zener supplémentaires chez mon revendeur local et continuer mes essais.

1119
Débuter / Re : y a t'il un programmeur dans l'avion?
« le: mars 15, 2016, 09:54:41 pm »
Bonsoir,

2 choses :

1) as tu installé la bibliothèque Bounce2 ? J'ai donné le lien en début de message
2) si oui, le B de Bounce doit être en majuscule.

1120
Oui bon certes mais quand même.

J'avais commencé à travailler sur une manette sans fil avec un écran tactile 3,5". Connexion en zigbee/Bluetooth le/wifi peu importe. Chargeur LI incorporé, etc

Et j'ai craqué. Trop de boulot, bibliothèques de gestion du LCD et du tactile trop merdiques, pas moyen de définir des zones de clipping (j'ai proposé l'ajout à l'auteur avec le code et tout et je me suis fait jeter), lent, peu fiable. La calibration du tactile n'a jamais fonctionné correctement. Et puis c'est du tactile résistif, on est à des années lumières du capacitif en matière de précision, de sensibilité, de réactivité. Bref un fois listé les éléments et fait le total, je me retrouvais à environ 100€ pour un truc épais, pas beau, pas fiable et dont je n'avais aucune idée de l'autonomie ni de la capacité à éviter que le truc ne prenne feu pendant la charge.

De l'autre côté on a les tablettes ou les smartphones (mais ces derniers sont trop petits pour moi) et j'en ai déjà, il n'y a que le logiciel à faire. Ils sont fins, beaux, ont une bonne autonomie. Ils ont une grande capacité de stockage, sont cent fois plus puissants qu'une manette que l'on ferait soi-même. Ils ont une connectivité Bluetooth et wifi. Et surtout ils permettent d'autre choses comme des logs, du diagnostic, du paramétrage, ils peuvent faire TCO (dans mon cas iPad Air 2 9,7") afficher une photo de la loco dont on prend le contrôle.

Puis je faire mieux qu'un iPad Air 2 avec mes petits doigts ? Non bien sûr, pas la moindre chance.

Ça me donnera l'occasion d'apprendre Swift :-)

1121
Débuter / Re : y a t'il un programmeur dans l'avion?
« le: mars 14, 2016, 11:31:26 pm »
Bonsoir,

Il y a plusieurs aspects.

Tout d'abord ce qui t'intéresse dans ton contact ce n'est pas son état, 0 ou 1 mais son changement d'état, en l'occurrence de 0 à 1. Comme c'est le changement d'état qui t'intéresse, il faut généralement faire attention aux rebonds du contact qui vont produire plusieurs changement d'état. Mais dans ton cas, comme tu démarres une temporisation, les rebonds ne seront pas vu car je suppose que les changement d'état ne t'intéressent que si la temporisation n'est pas démarrée. Mais bon, abondance de bien ne nuit pas

Quoiqu'il en soit, le mieux est d'utiliser une bibliothèque pour lire ton contact. Par exemple Bounce2 qui va traiter les rebonds et qui s'occupe également des changements d'états. https://github.com/thomasfredericks/Bounce2/archive/master.zip

Classiquement, on inclut la bibliothèque :

#include <Bounce2.h>

La seconde chose est d'instancier un objet Bounce pour le contact :

Bounce contact;

Puis dans setup, de programmer la broche en entrée et de lier cet objet à cette broche, supposons que ça soit le broche 2. Note que comme ton contact connecte la broche à 5V, il faut une résistance (47kΩ) pour tirer la broche à GND quand le bouton contact n'est pas établi. Si le contact connectait la broche à GND, tu pourrais employer les résistances pullup intégrées à l'Arduino et avoir un montage plus simple) :

  pinMode(2, INPUT);
  contact.attach(2);

Ensuite dans loop, il faut appeler update pour que l'objet contact face son travail :

  contact.update();

Ensuite ce qui t'intéresse c'est le passage de 0 à 1 de ton entrée. Pour cela il faut appeler rose (de monter ou s'élever : rise, rose, risen) qui renvoit un booleen vrai si une montée, passage de 0 à 1 est détectée :

if (contact.rose()) {
  // lancer la tempo
}

Je suppose que si pendant qu'il y a une tempo de lancée, le contact est coupé puis rétabli, cela doit être ignoré. Il faut donc une variable d'état pour indiquer que la tempo est lancée. Appelons cette variable, un booléen, tempoEnCours. Il faut maintenant récupérer la date courante, via millis() et et la stocker dans une variable dateDebutTempo. On va ensuite à chaque tour de loop, relire la date courante avec millis et, quand cette date courante — dateDebutTempo devient supérieur à la durée de la tempo, on remet tempoEnCours à false et on remet la sortie à 0. Ça donne ça :

#include <Bounce2.h>

Bounce contact;
const byte pinContact = 2;
const byte pinSortie = 3;

void setup() {
  contact.attach(pinContact, INPUT);
  pinMode(pinSortie, OUTPUT);
  digitalWrite(pinSortie, LOW);
}

bool tempoEnCours = false;
unsigned long dateDebutTempo;
const unsigned long dureeTempo = 3000;

void loop() {
  contact.update();

  if (contact.rose() && ! tempoEnCours) {
    // lance la tempo
    tempoEnCours = true;
    dateDebutTempo = millis();
    digitalWrite(pinSortie, HIGH);
  }

  if (tempoEnCours) {
    unsigned long dateCourante = millis();
    if (dateCourante - dateDebutTempo > dureeTempo) {
      tempoEnCours = false;
      digitalWrite(pinSortie, LOW);
    }
  }
}

C'est non testé mais je pense que ça va marcher.

1122
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 14, 2016, 06:59:27 pm »
J'ai commencé le logiciel ce week-end.

Pour l'instant j'en suis à l'implémentation du moniteur permettant de paramétrer la carte selon les commandes que j'ai indiquées précédemment.

Ensuite je passerai à la détection de perte d'alimentation. Il faut que je fasse des essais pour voir combien d'octets on arrive à écrire dans l'EEPROM avant que le micro ne plante.

Ça se passe ici : https://git.framasoft.org/locoduino.org/ServoBoardCANDCC

1123
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 14, 2016, 03:37:17 pm »
Et dans la foulée, si vous n'êtes pas bien équipés pour monter des cartes, je vous recommande deux outils pas chers et utiles pour travailler propre :

Un plieur de pattes (résistances, ILS, etc) : http://www.tme.eu/fr/details/d-ab5/appareil-de-formatage-de-broches/donau/
Complètement indispensable pour les ILS ou le pliage sauvage aboutit à la casse de l'ampoule.

Un bracelet antistatique quand on manipule des composants sensibles : http://www.tme.eu/fr/details/scs-ecws61m-1/bandes-esd-pour-poignee/scs/ecws61m-1/

et éventuellement :

Un redresseur de pattes pour les CI en boîtier DIP (moins utile) : http://www.conrad.fr/ce/fr/product/168203/Redresseur-de-pattes que je n'ai pas trouvé chez TME.

1124
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 14, 2016, 11:53:00 am »
La liste des composants, le (F) en début de ligne indique que je le fournis, comme c'était pas très clair j'ai mis en rouge si je ne le fournis pas :

ARD1   Arduino Nano v3.0   arduino-nano-v-3-0   arduino-nano-v-3-0
Là j'ai monté un Nano chinois avec un CH340 (USB-série) : http://www.electrodragon.com/product/edarduino-nano-c-new-usb-ch340/
Il faut deux socles à broches, on ne peut pas le monter autrement à cause du 6N137 qui est dessous : http://www.tme.eu/fr/details/zl262-16sg/barres-et-socles-a-broches/ninigi/

B1   CFG   push-button-pcb-4-pins   tact : http://www.tme.eu/fr/details/tact-67n-f/microcommutateurs-tact-pcb/ninigi/

(F) C1   100nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/mc5-100n-5%25/condensateurs-de-polyester-tht/arcotronics/r82dc3100dq50j/

(F) C2   100nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/mc5-100n-5%25/condensateurs-de-polyester-tht/arcotronics/r82dc3100dq50j/

C3   470µF   aluminium-capacitor   radial-capacitor-25-70 http://www.tme.eu/fr/details/uvz1a471med/condensateurs-electrolytiques-tht-105c/nichicon/

(F) C4   100nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/mc5-100n-5%25/condensateurs-de-polyester-tht/arcotronics/r82dc3100dq50j/

(F) C5   22pF   ceramic-multi-layer-capacitor   ceramic-multi-layer-capacitor-100mil http://www.tme.eu/fr/details/cc-22/condensateurs-ceramiques-tht-50v/sr-passives/

(F) C6   22pF   ceramic-multi-layer-capacitor   ceramic-multi-layer-capacitor-100mil http://www.tme.eu/fr/details/cc-22/condensateurs-ceramiques-tht-50v/sr-passives/

C7   1nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/r82ec1100dq50k/condensateurs-de-polyester-tht/kemet/

(F) C8   100nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/mc5-100n-5%25/condensateurs-de-polyester-tht/arcotronics/r82dc3100dq50j/

(F) C9   100nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/mc5-100n-5%25/condensateurs-de-polyester-tht/arcotronics/r82dc3100dq50j/

C10   470µF   radial-electrolytic-capacitor   radial-capacitor-50-100 http://www.tme.eu/fr/details/rd1v477m10016bb/condensateurs-electrolytiques-tht-105c/samwha/

(F) C11   100nF   unpolarized-capacitor   metallized-polyester-capacitor-50 http://www.tme.eu/fr/details/mc5-100n-5%25/condensateurs-de-polyester-tht/arcotronics/r82dc3100dq50j/

(F) D1   1N4007   1n400x   do41 http://www.tme.eu/fr/details/1n4007-dc/diodes-universelles-tht/dc-components/1n4007/

(F) D2   1N4148   1n4148-thin   do35-thin http://www.tme.eu/fr/details/1n4148-dio/diodes-universelles-tht/diotec-semiconductor/1n4148/

(F) D3   1N4148   1n4148-thin   do35-thin http://www.tme.eu/fr/details/1n4148-dio/diodes-universelles-tht/diotec-semiconductor/1n4148/

(support F) IC1   expandeur fins de course   mcp23017   dil28 http://www.tme.eu/fr/details/mcp23017-e_sp/multiplexeurs-et-commutateurs-analogues/microchip-technology/ et (F) http://www.tme.eu/fr/details/gold-28p-w/supports-de-precision/ninigi/gold-28p-w/

IC2   7805   lm78xx   to220up http://www.tme.eu/fr/details/l7805acv/stabilisateurs-de-tension-non-regles/st-microelectronics/

IC3   MCP2515   mcp2515   dil18 http://www.tme.eu/fr/details/mcp2515-i_p/circuits-integres-interface-can/microchip-technology/ et http://www.tme.eu/fr/details/gold-18p/supports-de-precision/ninigi/gold-18p/
 
(support F) IC4   MCP2551   pca82c250   dil08 http://www.tme.eu/fr/details/mcp2551-i_p/circuits-integres-interface-can/microchip-technology/ et http://www.tme.eu/fr/details/gold-8p/supports-de-precision/ninigi/gold-8p/

(support F) IC5   6N137   6n137   dil08 http://www.tme.eu/fr/details/6n137-l/optocoupleurs-sortie-logique-tht/liteon/ et http://www.tme.eu/fr/details/gold-8p/supports-de-precision/ninigi/gold-8p/

(F) K1   ALIM   terminal-block-2ways-angled   terminal-block-2-3-5mm-angled http://www.tme.eu/fr/details/15edgrc-3.5_2p/barres-de-serrages-pour-pcb/degson-electronics/ et http://www.tme.eu/fr/details/15edgk-3.5_2p/barres-de-serrages-pour-pcb/degson-electronics/

(F) K2 à K9   S0   modular-5-male-connector   modular-5-points-connector http://www.tme.eu/fr/details/ns25-w5p/connecteurs-de-signal-pas-254mm/ninigi/ et http://www.tme.eu/fr/details/ns25-g5/connecteurs-de-signal-pas-254mm/ninigi/ et http://www.tme.eu/fr/details/ns25-t/connecteurs-de-signal-pas-254mm/ninigi/

(F) K10 et K11   CAN   6p4c-modular-jack-low-profile   6p4c-right-angle-modular-jack-low-profile http://www.tme.eu/fr/details/rj11gk/connecteurs-rj/

K12   DCC   terminal-block-2ways-angled   terminal-block-2-3-81mm-angled http://www.tme.eu/fr/details/15edgrc3.81-02p/barres-de-serrages-pour-pcb/degson-electronics/15edgrc-381-02p-14-00ah/ et http://www.tme.eu/fr/details/15edgk3.81-02p/barres-de-serrages-pour-pcb/degson-electronics/15edgk-381-02p-14-00ah/

(F) K13      spox-4   spox-4 http://www.tme.eu/fr/details/mx-5267-04a/connecteurs-de-signal-pas-250mm/molex/022035045-22-03-5045-5267-04a/ et http://www.tme.eu/fr/details/mx-5264-04/connecteurs-de-signal-pas-250mm/molex/050375043-50-37-5043-5264-04/ et http://www.tme.eu/fr/details/mx-5263-pbtl/connecteurs-de-signal-pas-250mm/molex/008701040-08-70-1040-5263pbtl/

OC1   4N33   4n3x-darlington-optocoupler   dil06 http://www.tme.eu/fr/details/4n33/optocoupleurs-sortie-de-transistor-tht/vishay/ et http://www.tme.eu/fr/details/gold-6p/supports-de-precision/ninigi/gold-6p/

(F) Q1   16MHz   quartz-ext   hc49u-488 http://www.tme.eu/fr/details/16.00m-hc49-s/resonateurs-a-quartz-tht/yic/

(F) R1   4,7kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws4k7/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0472a50/

(F) R2   4,7kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws4k7/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0472a50/

(F) R3   120Ω   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws120r/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0121a50/

(F) R4   1kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws1k/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0102a50/

(F) R5   4,7kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws4k7/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0472a50/

(F) R6   4,7kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws4k7/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0472a50/

(F) R7   10kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws10k/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0103a50/

(F) R8   10kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws10k/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0103a50/

(F) R9   10kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws10k/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0103a50/

(F) R10   10kΩ   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws10k/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0103a50/

(F) R11   330Ω   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws330r/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0331a50/

(F) R12   180Ω   resistor   rc2512 http://www.tme.eu/fr/details/smd2512-180r-1%25/resistances-cms-2512/royal-ohm/25121wf0181t4e/

(F) R13   330Ω   resistor   mf12-rect http://www.tme.eu/fr/details/1_4ws330r/resistances-carbon-tht-14w-subminiat/royal-ohm/cfr0s4j0331a50/

RC1      rectifier-dil   rectifier-dil-to-269-aa http://www.tme.eu/fr/details/b1s/redresseurs-monophases-a-diodes-cmstht/dc-components/

(F) RN1   10kΩ   4-bussed-resistor-array   sil5 http://www.tme.eu/fr/details/dr10k-4_5/reseaux-de-resistances-tht/royal-ohm/rnla05g0103b0e/

(F) RN2   10kΩ   4-bussed-resistor-array   sil5 http://www.tme.eu/fr/details/dr10k-4_5/reseaux-de-resistances-tht/royal-ohm/rnla05g0103b0e/

(F) S3   TERM   1-strap   strap-sil2 http://www.tme.eu/fr/details/zl201-20g/barres-et-socles-a-broches/connfly/ds1021-1_20sf11/ et http://www.tme.eu/fr/details/jumper-h_r/barres-et-socles-a-broches/ninigi/jumper-/

(F) T1   BC547   bc547   to92-bent http://www.tme.eu/fr/details/bc547c-dio/transistors-npn-tht/diotec-semiconductor/bc547c/

Z1   6,8V   zener   do35 http://www.tme.eu/fr/details/bzx55c6v8-tap/diodes-zener-tht/vishay/ en attente de test

1125
Shields et Modules / Re : Carte Servomoteurs DCC + CAN
« le: mars 14, 2016, 10:14:06 am »
Je suis en train de faire la liste avec les liens chez TME, une minute :)

Pages: 1 ... 73 74 [75] 76 77 ... 95