Fonctionnement impossible sans Cable USB

Bonjour à tous,

Dans le cadre d'un projet de pilotage d'un moteur pas à pas, j'utilise une carte ARDUINO UNO R3.

Après de nombreux éssais et échanges sur une autre discussion sur ce forum, je suis arrivé à une solution qui fonctionne presque parfaitement.

Mon problème est que tout fonctionne si mon câble USB est bien branché à un ordinateur, pourtant j'ai réalisé un circuit imprimé avec lequel j'alimente la broche VIN de mon Arduino avec un 12V.

Savez-vous pourquoi la carte ne fonctionne pas lorsque je ne branche pas le câble USB?

Merci d'avance

Bonjour

Le régulateur 5V de la carte est peut etre HS.

@+

Quelle est la consommation totale sur le 5V ?

12V me parait une tension élevée. Si l'on considère que la dissipation est de (12V - 5V) * courant, étant donné que le régulateur peut au mieux dissiper 1W, tu seras limité à 150mA.
Avec une alimentation 9V la limitation serait de 250mA.

Fredoooo:
Mon problème est que tout fonctionne si mon câble USB est bien branché à un ordinateur, pourtant j'ai réalisé un circuit imprimé avec lequel j'alimente la broche VIN de mon Arduino avec un 12V.

Savez-vous pourquoi la carte ne fonctionne pas lorsque je ne branche pas le câble USB?

Pour savoir de quoi on parle, un schéma électrique, des photos du montage.

Merci pour vos réponses rapides :

Je retrouve le même problème sur 3 montages donc je ne pense pas que le régulation soit HS.

Pour des raisons pratiques j'ai opté pour une alimentation 12V directement sur la broche VIN. J'ai essayé d'alimenter via le connecteur 5.5mm en 9V mais même résultat, si le cordon USB n'est pas relié, cela ne fonctionne pas.

enfin voici une photo de mon montage :

Il n'y aurait pas des masses non réunis?
Tu ne tires pas trop sur la sortie 5V de l'Arduino?
Tu n'aurais pas une attente sur le port serie dans ton setup()?

Çà va être vachement pratique avec la ref caviardé...

c'est un proto pour la NASA ? Projet Mars ONE ?

fdufnews:
Il n'y aurait pas des masses non réunis?
Tu ne tires pas trop sur la sortie 5V de l'Arduino?
Tu n'aurais pas une attente sur le port serie dans ton setup()?

Toutes les masses sont bien réunis.

Je n'utilise pas la sortie 5.5V de mon arduino (ci-joint mon schéma de cablage)

Et ci-dessous mon code :

#include <Encoder.h>

// defines pins numbers
Encoder myEnc(7, 8);

//   avoid using pins with LEDs attached
#define stepPin 10
#define dirPin 9
#define m0Pin 6
#define m1Pin 5
#define BoutonPin 11
#define SleepPin 4


void setup() {

  
 //Serial.begin(9600); 
  pinMode(stepPin,OUTPUT); 
  pinMode(dirPin,OUTPUT);
  pinMode(m0Pin,OUTPUT);
    pinMode(m1Pin,OUTPUT);
 
}

const long LimiteMax = 250;
const long LimiteMin = -250;
long oldPosition  = -999;
int compte = 0;

 
void loop() {
  
    digitalWrite(SleepPin, HIGH);
    digitalWrite(m0Pin,LOW);
    digitalWrite(m1Pin,HIGH);
    
   long newPosition = myEnc.read();

  if (newPosition != oldPosition) {

     if ((newPosition - oldPosition) > 0 ){    

        if (compte>LimiteMax){
        
        }
        else {
      
        compte = compte +1;
       // Serial.println(compte);
        
       rotateCW();  
        }
     }
     else {

        if (compte<LimiteMin){
       
        }
        else {

        compte = compte -1;
        //Serial.println(compte);
       rotateCCW();

        }
     
     }
        oldPosition = newPosition;

  }

}
void rotateCW() 
{

    digitalWrite(dirPin,LOW);
    digitalWrite(stepPin,HIGH);
    delayMicroseconds(50);
    digitalWrite(stepPin,LOW);
    delayMicroseconds(50); 
}
void rotateCCW() 
{

    digitalWrite(dirPin,HIGH);
    digitalWrite(stepPin,HIGH);
    delayMicroseconds(50);
    digitalWrite(stepPin,LOW);
    delayMicroseconds(50);   
}

Enfin la référence que j'ai caché ne concerne en rien l'arduino mais c'est uniquement ma référence de mon système.

Schema motorisation caméra.pdf (161 KB)

Ok ^^

quand vous retiré l'uno du shield et que vous la branchez en 12v, elle s'allume ?

Elle s'allume mais mon code ne fonctionne pas.

Je viens de faire l'essai d'alimenter via l'USB avec un chargeur de téléphone, pour voir si la connexion au PC est essentielle ou si c'est juste l'alimentation.

Et cela fonctionne. Donc a priori, je dois impérativement utiliser le port USB pour alimenter ma carte pour qu'elle fonctionne. Y a t-il un choix spécifique à donner en programmation pour lui indiquer quel alimentation prendre?

Dans mon cas je ne souhaite pas utiliser l'alimentation via le USB mais bien par mon circuit imprimé qui alimente la broche VIN.

Est ce que, si vous branchez tout, votre Vin est bien 12 v ? (un transfo avec une resistance interne forte, -prevu pour de très faibles puissances- peut être surprenant et il faudrait peut être vérifier Vin *** si vous avez un voltmètre**)

Fredoooo:
Elle s'allume mais mon code ne fonctionne pas.

Je viens de faire l'essai d'alimenter via l'USB avec un chargeur de téléphone, pour voir si la connexion au PC est essentielle ou si c'est juste l'alimentation.

Et cela fonctionne. Donc a priori, je dois impérativement utiliser le port USB pour alimenter ma carte pour qu'elle fonctionne. Y a t-il un choix spécifique à donner en programmation pour lui indiquer quel alimentation prendre?

Dans mon cas je ne souhaite pas utiliser l'alimentation via le USB mais bien par mon circuit imprimé qui alimente la broche VIN.

bonjour
regard rapide
ton uno est un clone = schema inconnu et comme sur ta photo on ne voit que le verso du PCB :grin: , il ne peut pas à ce stade etre déduit grand chose de l'acheminement/aiguillage des tensions d'alim possible entre USB et jack

il faudrait connaitre exactement les compos de regul et d’aiguillage utilisés !
Lien exact vers ton clone ?
Bonnes photos (references compo lisibles) recto/verso de TON uno ?

Ci-joint les photos de mon Arduino de l'autre côté, ainsi que le PCB pour voir les liaisons.

Je ne comprends vraiment pourquoi l'alimentation par USB est la seule qui permet le fonctionnement de ma carte.

Vous comparez deux types d'alimentations par USB avec un seul type d'alim fait maison...
si votre alimentation maison ne peut pas fournir de courant (resistance interne trop élévée, surchauffe du regulateur sur l'arduino), elle ne peut pas fonctionner.
Si vous avez un voltmètre, vous pouvez au moins savoir si Vin est arrive bien, avec des valeurs réalistes, dans votre "arduino".

Fredoooo:
Ci-joint les photos de mon Arduino de l'autre côté, ainsi que le PCB pour voir les liaisons.

Je ne comprends vraiment pourquoi l'alimentation par USB est la seule qui permet le fonctionnement de ma carte.

IL est routé où , le GND 12V ?

dbrion06:
Vous comparez deux types d'alimentations par USB avec un seul type d'alim fait maison...
si votre alimentation maison ne peut pas fournir de courant (resistance interne trop élévée, surchauffe du regulateur sur l'arduino), elle ne peut pas fonctionner.
Si vous avez un voltmètre, vous pouvez au moins savoir si Vin est arrive bien, avec des valeurs réalistes, dans votre "arduino".

Lorsque j'alimente via mon système directement la broche VIN, j'ai bien 12V qui arrive, j'ai contrôlé avec un multimètre mais ma carte n’exécute pas mon code, alors que lorsque le cable USB est branché, ma carte est alimenté et exécute mon code.

Artouste:
IL est routé où , le GND 12V ?

Le GND 12V est bien relié à la Masse de mon arrivée 12V (les 2 broches GND sont reliés)

Artouste:
IL est routé où , le GND 12V ?

On peut supposer sur le plan de masse inférieur (comme le laissent soupçonner les vias)

Fredoooo:
Lorsque j'alimente via mon système directement la broche VIN, j'ai bien 12V qui arrive

Et sur la pin 5V?

Merci, Kamil. (votre question permettra de règler, me semble-t-il, le problème d'une surchauffe ou du convertisseur Vin-5v dysfonctionnel -le 5v USB arrive par une autre voie, AFAIK)

kamill:
On peut supposer sur le plan de masse inférieur (comme le laissent soupçonner les vias)
Et sur la pin 5V?

Oui c'est bien cela l'ensemble des masses de mon système sont reliés sur le plan de masse inférieur.

sur la pin 5V j'ai 5.5V et sur la 3.3V j'ai bien 3.3V.

Vous faites bien marcher (ou plutôt ne pas marcher....) l'ensemble de votre système?