sortie digital 5V arduino pro mini 5V 16M s'écroule sur borne 1 4N35 (optocouple

Ouf je sens une pointe d'énervement, problème pourtant simple. Encore faut-il regarder les posts depuis le début. Code et image et video

Je vais donc être on ne peut plus concis.

  • Une carte FTDI qui programme une carte arduino mini pro 5v 16MHZ.
  • une carte avec émetteur récepteur ultrason HC-SR04
  • TOUT fonctionne, il y a une led verte enclenchée si distance supérieur à 20cm
  • Une led rouge qui s'enclenche quand distance est en dessous de 20cm de même qu'une 3iem sortie digital qui enclenche une autre led et paf la tension aux bornes de cette 3iem led s'écroule.

Au départ je pensais avoir un problème avec optocoupleur ou transistor qui faisait que la tension +5v "croule" Mais non même avec une simple led à la place des montages à transistors ou optocoupleur le +5v de cette troisième sortie tombe à presque rien. le tout est alimenté par une alim stabilisée de +5v et tout est stable point de vue tension et courant.

Donc dans les précédents postes si vous les aviez lu il y a Tesla Member qui précise que la véritable limite est 20 mA et encore SOUS CONDITIONS de cette carte mini pro.

Je suppose qu'il a raison puisque avec 3 leds je suis déjà limité sur ma 3iem sortie. Et enfin j'ai posté aussi le lien vers ma carte arduino mini pro, quand on prend un sujet déjà bien entamé et qu'on aime pas les photos et les vidéos il faut quand même tenir compte des liens vers les composants.

Est ce suffisamment clair hbachetti? Sinon effectivement je ne vois plus d'autre solution que de consulter votre boule de Cristal si bien représentée sur votre photo :wink: 8) Et alors vous comprendrez enfin :slight_smile: allez sans rancune nous ne sommes pas ici pour nous "piquer" mais pour résoudre :wink:
enfin je suis toujours parti de ce principe...

Donc problème résolu si vous ne comprenez pas ce n'est rien. :slight_smile:

Si les deux premières LEDs s'allument correctement avec une sortie 5V, il n'y a aucune raison que pour la troisième ce ne soit pas le cas.
Il s'agit probablement d'un problème de code.
La pin de la troisième LED est peut-être en train de faire du PWM.
Pour en être certain il suffit de charger un programme qui allume simplement cette LED, l'exemple blink par exemple, en changeant le numéro de la pin. Je ne lis pas bien le schéma mais c'est bien la pin 4 ?

Deux remarques :

Effectivement, un optocoupleur sur la sortie d'un ARDUINO pour piloter un relais ne sert à rien.

Un BC547 est un transistor petits signaux. Tu ne parviendra jamais à le saturer suffisamment pour piloter un relais.
Utilise plutôt un 2N2222 ou PN2222 ou 2N3904.
Voir ICI.
Un BD235 y parviendra, mais il n'y a aucun intérêt à utiliser un transistor de 2A 25 W pour piloter une bobine de relais qui consomme 60mA.
Continue avec le BD235 si tu n'as rien d'autre sous la main, mais surtout pas le BC547.

@+

D'après mes essais récents, une pin d'ARDUINO NANO ou MINI chargée de manière à sortir 20mA fournit quand même 4.25V à la charge.
Voir ICI.

Sûr que c'est un problème de code. Un voltmètre mesure une moyenne, un oscilloscope non.

@+

Donc dans les précédents postes si vous les aviez lu il y a Tesla Member qui précise que la véritable limite est 20 mA et encore SOUS CONDITIONS de cette carte mini pro.

  1. Il n'a pas de "Tesla member" sur ce forum dans le cas présent il y a un "68tjs" qui t'a placé une boule de cristal parce que tu ne réponds pas aux questions ou que tu crois y avoir répondu.
  2. On ne joue pas aux devinettes et on se renseigne un minimum au lieu de croire le dernier qui a parlé.

La meilleure documentation est la datasheet du micro. Elle fait plus de 400 pages mais il est possible de réfléchir et de ne s'occuper que de la partie qui traite du problème en cours.
Tout se trouve au chapitre des "Electrical Characteristics" où concernant le courant max on trouve

  • les Absolute Maximum Rating
  • ce genre de courbes :

Courant_max_atmega328p.png

où il est visible que la tension ne s'écroule pas brutalement et certainement pas pour 30 mA.
Ce qui est visible c'est que la courbe n'est pas une droite au sens mathématique mais commence à plonger à partir de 5 mA.
Ce qui veut dire qu'il n'y a pas que l'effet ohmique du au Rdson des transistors de sortie du micro ou que (il faudrait un spécialiste en techno) sous l'effet d'un courant trop important le transistor se dégrade et que le Rdson se met à augmenter.

La limite à 20 mA par sortie est à prendre comme étant le courant max qui permet à Atmel de garantir le fonctionnement et la fiabilité de son micro.

Les autres limites sont :
IVcc <= 200 mA
IGnd <= 200 mA

Les sorties sont groupées par PORT de 8 I/O (voir la datasheet pour la répartition)
Par PORT les limites sont
Isource <=150 mA --> le courant sort de la pin du micro, la charge est connectée à la masse
Isink <= 100 mA ---> le courant entre dans la pin du micro, la charge est connectée au Vcc

Note : c'est la raison de la double condition sur IVcc et IGnd : ces courants ne sont pas égaux
C'est un peu moins simple que sur les vidéo Youtube que je rejette.
D'autre part obliger à voir une video ne se fait pas, j'ai le javascript bloqué et aucune envie de le rétablir sur des sources inconnues. Soit j'ai l'info et si je peux répondre j'essaye de le faire soit je ne l'ai pas et je passe mon chemin.

Courant_max_atmega328p.png

Autant pour moi hbachetti désolé et 68tjs je connais le datasheet, évidemment, en ce qui me concerne la doc que j'ai consulté avait suffisamment de renseignements sur la première page pour ne pas consulter les innombrables pages. Vous savez sans doute qu'il existe des marques différentes, Siemens TI etc, qui placent leur doc pour un même composant.

Ensuite désolé pour vous si vous n'avez pas lu certains posts, bien oui il n'y a pas que les vidéos, je peux comprendre que vous n’ayez pas suffisamment de temps.

Personnellement je n'ai pas la possibilité de rester connecter en permanence et lorsque je me connecte et que je réponds au dernier post qui a été le xièm après le votre si vous aviez lu ma réponse vous en auriez déduit que certaines de vos questions ne nécessitaient plus de réponse ça coule de source mais soit je comprends mieux la nécessité pour vous d'avoir une boule de cristal pour arriver à comprendre quelque chose :). UNE simple led fait "crouler le +5v. Je peux comprendre l'erreur moi-même je me suis trompé en nommant un autre à votre place 68tjs néanmoins je laisse la boule et l'ironie de côté.

Pour conclure je persiste à ne pas répondre à TOUTES VOS questions 68tjs pcq je viens de faire identiquement le même montage avec une uno et identiquement le même code en ayant pris soin de changer ma carte depuis le menu. Tout fonctionne sans que le +5v ne "s'écroule" il y a bien un problème avec la carte mini pro.
j'attends une autre carte mini pro commandée depuis peu pour refaire l'essai et je ne manquerai pas d'en informer les membres du forum qui m'ont aidé sans boule de cristal et sans ironie.

Merci et bonne continuation avec votre boule de cristal. :wink:

Il n'est pas exclu que la sortie en question sur la mini pro soit défectueuse. On peut assez facilement flinguer une sortie en faisant un court-circuit accidentellement.

Pour t'en convaincre il suffirait de changer la sortie sur laquelle tu as un problème pour une autre et de vérifier que cela fonctionne.

Bien sûr j'ai essayé d'autres sorties digital mais c'est pareille.

Je crois que c'est fait.

Oui malheureusement j’ai essayé une autre sortie hélas même résultat le +5 “croule”. Merci quand même.

Je reviens vers vous comme convenu. Bien sûr je n’ai pas résolu le problème mais je l’ai contourné. Après tout c’est le résultat qui compte et puis surtout je ne devrai pas jeter ma carte.

Je n’utilise que deux sorties maximum sur ma mini pro 5V 16MHZ, je garde la borne 9 pour la led verte et je récupère la borne 8 de la led rouge pour attaquer mon BD235 qui commande simultanément mon relai et ma led rouge. Ohhhh tout fonctionne.

Pour ceux qui sont intéressés le code et le schéma sont en attachés.

Merci à tous pour votre aide pcq rien que le fait de consacrer un peu de votre temps aux autres est inestimable. Il ne faut pas avoir peur d’intervenir même si on n’a pas la solution votre aide guidera toujours
le demandeur.

:wink:

capt_dist_garage.ino (1.61 KB)

IMG_20180918_0001.pdf (130 KB)

Bonjour à tous !

je pense aussi, sans avoir testé, que le problème viens de la carte, qui ne peu fournir assez de courant, donc si tu veux alimenter tout cela, monte plusieurs transistor npn ayant un assez grand gain ( minimum 500 je pense ) comme un bd679 si tu as çà dans ta caisse à outil !!

donc voilà ce qu'on peut essayer, mais le plus simple ce serai d'après moi, de consulter les "absolue maximum rating" ( je ne suis plus certain de mon anglais, mais en gros il faut au moins contrôler les "maximum absolure rating" qui ce situe en générales, au début du datasheet !!

bon, il faut que j'y aille je verai de nouveau cette a-m ou ce soir ce qu'il en ai !!

courage !!

Merci mais la solution de mon BD235 me convient pcq c'est ce que j'ai dans ma boite à outils donc problème résolu. :wink:
Merci encore.

Bonjour,
je viens de tester ton montage, tout fonctionne parfaitement.

J'ai remplace chaque LED par 3 LEDs (sur 3 sorties) tout est OK.

Carte promini alimentee par le connecteur "FTDI"

Par contre dans ton soft, a la 2eme ligne, tu parles d'un Atema168 !!

La carte pro-mini supporte un 328.

L'affichage de la distance sur la console c'est ...... bof.

Jacques

Oui je me doutais bien que ma carte à des problèmes. Et effectivement j'ai choisi le processeur Atema168 pcq en 368 au téléversement j'ai ces messages d'erreur:

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x9c
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xef
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xac
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xbc
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x38
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x48
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x28
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x5a
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xbd
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x09
Une erreur est survenue lors du transfert du croquis

Tu as peut-être acheté des PRO MINI Atmega168 ?

@JMe87

A part la taille mémoire, je ne vois pas de différence entre un Atmega168 et un 328.
Tu penses que cela pourrait être à l'origine du problème ?
Perso je n'ai pas d'Atmega168 pour essayer.

@+

Oui c'est un atmega168. Et effectivement la mesure de distance avec le capt ultrason c'est pas génial il y a des lectures qui affichent zero alors qu'il n'y a pas eu d'obstacle?? Une solution peut-être.

hbachetti, non le probleme ne vient pas de la mais comme il refuse de faire les test que je lui propose dans le message #14, il vivra avec son montage qui fonctionne plus ou moins !!

didiersee, je ne parle pas du calcul mais de la facon d'afficher le resultat dans la console. Illisible.

Voilà Jme87 j'ai essayé:

"Pour tenter de detecter la cause de ton probleme, tu utilises ton pro-mini et ton alimentation tout seuls.
Tu installes un soft "blink"
Tu verifies ta sortie a vide avec un voltmetre.
Puis tu charges avec 470R et tu testes."

Tout fonctionne correctement sur toutes les sorties digital je ne comprends pas??

JMe87:
mais comme il refuse de faire les test que je lui propose dans le message #14, il vivra avec son montage qui fonctionne plus ou moins !!

Il refuse de faire aussi de faire ceux que j’ai proposé : son câblage est parfait, son relai est parfait, circulez.
Il donne des réponses qualitatives : ça marche pas, ça marche, mais quand on demande des chiffres il n’y a plus personne. Et quand on le lui fait remarquer il se vexe.

Seule une expertise systématique, étape par étape a la possibilité de trouver l’origine du non fonctionnement.
Il doit tout décâbler et recâbler fonction par fonction, tant que le HS-SR04 et les dels resteront en service il sera impossible de trouver une erreur.
Soit le câblage est faux, soit le micro est flingué par les multiples interventions , probablement accidentelles donc indécelables, durant les tentatives de dépannage, puisque cela fonctionne avec un UNO, c’est à dire avec un autre câblage et avec un autre micro.

Je ne vais pas remonter deux pages écran mais j’espère que les E/S de la mini-pro ne sont pas A6 et A7.

Pour 68tsj
Pas besoin de remonter deux pages en arrière il suffit de consulter TA boule

boule_de_cristal.jpg

Donc mon montage fonctionne plus ou moins bien soit je m’en contente. Par contre j’ai un problème récurant quelque soit le code parce que j’ai vu pas mal d’internautes confrontés à ce problème que ce soit avec Arduino ou avec Raspberry.

C’est bien le capt ultrason HC-SR04 qui est en cause.

j’ai occasionnellement des valeurs zéro et j’ai trouvé sur le net une procédure pour éviter ce problème dans le cas de lecture 0, il suffit de lui appliquer un signal “bas” pendant 100ms sur sa sortie “Echo”. j’ai bien essayé

digitalWrite(echoPin, LOW);
    delay(100);

mais ça ne fonctionne pas quelqu’un aurait-il une autre idée?
Merci