Go Down

Topic: Problème d'alimentation sur ma carte UNO (Read 1 time) previous topic - next topic

Creecreeprs

Bonjour et merci de prendre compte de mon post.

Je suis un peux novice en carte arduino et je m'amuse à découvrir tous ce que je peux faire avec mon kit (celui-ci : http://www.sainsmart.com/sainsmart-starter-kit-rfid-master-with-motor-relay-lcd-servo-avr-for-arduino-1602-uno-r3.html ) mais j'ai un problème: mon alimentation déconne totalement.
Ça à commencer quand j'ai branché ma batterie externe pour tester un petit programme autre part qu'à coter de mon pc mais 1 minutes plus tard, ça à commencer à sentir le cramé. J'ai donc tous débrancher et essayer de le brancher à mon pc mais l'odeur continuais et ma carte s'éteignais 1 fois sur 2 alors qu'elles était correctement branché.
Après tous ça, j'ai décidé d'attendre environ 1 semaine jusqu'à aujourd'hui. L'alimentation quand la carte est branché au pc à l'air tout à fait normal mais la batterie externe n'alimente plus rien.
Après une vérification complète, les 6 piles de ma batterie sont fonctionnelles donc le problème ne vient pas de là.
Donc je flippe un peux pour ma carte et je préférerait  qu'elle marche autre part que brancher à mon pc, c'est donc pour ça que j'attends vos réponse si vous avez des idées.

Merci d'avoir lus jusqu'au bout et désoler pour les fautes si fautes il y a.

dfgh

6 piles?
pour arriver à quelle tension?
tu peux expliquer ?
branchées ou ?
un schéma?

Creecreeprs

Les 6 piles dans la batterie:

Branchés ici:


Quant à la tension, l'arduino UNO à un input Voltage de 7-12V (recommandé) et input Voltage 6-20V (limit) selon le site officiel. Sachant que mes piles sont des AA 1.5V et que c'est ce qui est recommandé sur ma batterie (on voit pas sur les photos car c'est gravé), je pense que ça passe.

J'espère que ça t'éclaire.

68tjs

#3
Oct 24, 2015, 09:04 pm Last Edit: Oct 24, 2015, 09:11 pm by 68tjs
Sur la photo il y a une carte mezzanine sur la carte UNO.

La première des choses à faire est de la retirer.
Si cela fait pareil la carte additionnelle ne "semble" pas en cause, notes les guillemets de précaution.
Si cela ne le fait plus c'est que la carte add est en cause.

Sans cette carte additionelle qu'est-ce que cela donne ?

Mon petit doigt me dit qu'avec ce qu'il a sur la carte additionnelle tu doit consommer trop sur le 5V.
Mon petit doigt me dit qu'avec la carte reliée au PC, c'est le PC qui fourni et lui il peut aller jusqu'à 500 mA sans dommage.
Par contre le régulateur interne de la carte doit chauffer salement.

Pas de cachotterie dis nous ce qu'il y a sur cette carte :).
Les Shadocks : L'ignorance ne s'apprend pas.

infobarquee

bonjour,
1- le plus dans la prise est ou? centre/exterieur?
2- carte officielle ou china?
AUCUNE AIDE PAR MP

68tjs

Quote
le plus dans la prise est ou? centre/exterieur?
C'est un kit Sainsmart donc une carte sainsmart et la 1N4007 en série doit être présente. Un branchement à l'envers ne  peut rien faire. De plus la carte n'aurait pas fonctionné du tout alors qu'elle a fonctionné par intermittences.
Il faut savoir ce qui est branché dessus.
Les Shadocks : L'ignorance ne s'apprend pas.

infobarquee

je n'avais pas vu sur la photo le boitier piles.
mais bon, sans déboulonner saintsmart, j'ai eu pas mal de mésaventures avec leur matos, donc je m'attends à tout sur ce genre de kit.
souvent la qualité des composants laisse vraiment a désirer, surtout sur tout ce qui est régulateur (3 cartes drivers cnc avec ce soucis).
AUCUNE AIDE PAR MP

Creecreeprs

En tout cas, le problème ne vient pas de la mezzanine car ça fait pareille (en tout cas surement). Ça doit donc venir de la carte mais ce qu'il y a dessus, c'est juste un programme à la con pour contrôler un moteur et 2 leds via une matrix 4x4 touche.
En tout cas si vous avez des idées pour régler le problème du matos défectueux, je suis preneur mais je pense qu'on ne peut pas faire grand chose d'autre que prendre une carte :/
Merci tout de même de votre aide.

68tjs

Quote
je pense qu'on ne peut pas faire grand chose d'autre que prendre une carte :/
Je pense que cette réflexion est de la fuite en avant et qu'une autre carte fera pareil.

Quote
c'est juste un programme à la con pour contrôler un moteur et 2 leds via une matrix 4x4 touche.
Rien que celà  un moteur et 2 dels !
Ce n'est pas le programme qui est à la ***.
Combien consomme tout ce que tu raccordes ?
Quel courant dans les Dels ?
Quel courant dans le moteur ?
On n'alimente jamais un moteur par l'arduino, il faut toujours utiliser une alimentation externe.
Le moteur se commande avec un transistor ou avec un relais.
Est-ce que tu protèges le micro-controleur en mettent une diode de roue libre sur le moteur ?

Pour la description de ton sujet tu devrais lire ceci  Bienvenue sur le forum de la communauté francophone
Tu aurais du le lire avant de commencer, il n'est jamais trop tard pour bien faire.
Les Shadocks : L'ignorance ne s'apprend pas.

Creecreeprs

Pour les leds elles sont chacune branchés sur un pin GND et sur le pin qui les contrôlent (+ une résistance 1K entre la led et le pin GND) mais je sais pas trop combien le GND consomme de courant :/ (je suis un novice).
Pour le moteur, c'est un servo moteur (Micro servo 9G SG90) avec un câble sur un pin GND, un autre sur le 5V et un autre sur le pin qui le contrôle (le 12) et comme je l'ai dit, je sais pas trop cobien fait le GND.

Du coup pour le tout, je sais pas grands chose :/
Le montage fait à la rash avec fritzing:


Et sinon le code il est là (c'est un peux du bidouillage, surtout à la fin):

#include <Keypad.h>
#include <Servo.h>

Servo myservo;
int pos = 02;

long REDLED =10;      // + un brachement gnd avec resistance
long GREENLED =11;    // + un brachement gnd avec resistance

char* ourCode= "12";
int currentPosition = 0;

const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] = {
 {'1','2','3','A'},
 {'4','5','6','B'},
 {'7','8','9','C'},
 {'*','0','#','D'}
};
byte rowPins[ROWS] = {9,8,7,6};
byte colPins[COLS] = {5,4,3,2};

Keypad keypad = Keypad( makeKeymap(keys), rowPins,
colPins, ROWS, COLS );
void setup(){
 myservo.attach(12); 
 int pos = 0;
 
 Serial.begin(9600);
 pinMode (REDLED, OUTPUT);
 pinMode (GREENLED, OUTPUT);
 {digitalWrite(REDLED,HIGH);}
}
void loop(){
 char key = keypad.getKey();
 if (key != NO_KEY){
 Serial.println(key);
 

 if (key == ourCode[currentPosition])
 {
        ++currentPosition;
        if (currentPosition == 2)
        {
          {digitalWrite(GREENLED,HIGH);}
          {digitalWrite(REDLED,LOW);}
          for (pos = 0; pos <= 180; pos += 2) {
          myservo.write(pos);             
          delay(15);
          currentPosition = 0;
          }
        }
      }
      else {
        {digitalWrite(REDLED,HIGH);}
        {digitalWrite(GREENLED,LOW);}

        if (pos = 15)
        {
        for (pos = 15; pos >= 15; pos -= 2) {
        myservo.write(pos);             
        delay(15); 
        }
        }

        else
        {
         for (pos = 180; pos >= 15; pos -= 2) {
        myservo.write(pos);             
        delay(15); 
        } 
        }                       
        currentPosition = 0;
      }
   
 
 
 }
}

dfgh

  :)

if (pos = 15)
     


if (pos == 15)

Creecreeprs


68tjs

Deux messages à lire en urgence :
http://forum.arduino.cc/index.php?topic=324322.0
http://forum.arduino.cc/index.php?topic=315372.0

Pour la suite :
Le GND c'est la référence pour les tensions.
C'est exactement comme pour les hauteurs : on a pris le niveau de la mer mais on aurait pu prendre le niveau de la place  de "trouduc les oies".
On a fait au plus simple : le niveau de la mer pour les hauteurs, l'endroit qui permet de simplifier les calculs pour l'électricité.


Quote
Pour les leds elles sont chacune branchés sur un pin GND et sur le pin qui les contrôlent (+ une résistance 1K entre la led et le pin GND) mais je sais pas trop combien le GND consomme de courant :/ (je suis un novice).
Si tu lis le tuto d'Eskimon tu verra que la loi d'Ohm s'applique :

U =RI

Vcc = 5V
Vdiode ~= 2V (-> la valeur exacte se trouve dans la datasheet de la diode)
Donc U = Vcc-Vd = 3V
I =U/R = 3mA
Donc pour les Del il n'y a pas de problème car une sortie de micro peut fournir, sans danger pour le micro, jusqu'a 20 mA.

Pour le servo:
Déjà ce n'est pas un moteur mais un servo, c'est différent.
Un passage par wikipédia pour comprendre le fonctionnement d'un servo serait bien utile :
https://fr.wikipedia.org/wiki/Servomoteur
Surtout la fin : "Dans le cadre du modélisme".

Sauf si c'est un tout petit servo ni les sorties du micro-controleur, ni le régulateur interne ne peut fournir le courant d'alimentation suffisant sans danger.
Il faut une alim externe.
La commande du servo ne consomme pas, le servo peut être commandé directement par le micro-contrôleur.
Les Shadocks : L'ignorance ne s'apprend pas.

Creecreeprs

Ok, j'ai bien lus les règles du Forum et j'ai compris comment mettre un code (encore désoler). Je vais me mettre tuto d'Eskimon et encore désoler pour mon ignorance.

Et si vous avez des idées pour mon alimentation, ce serais cool  :)

68tjs

Quote
Et si vous avez des idées pour mon alimentation, ce serais cool
Essaye d'alimenter le servo avec un chargeur genre chargeur de téléphone , un chargeur 5V 1A devrait convenir.

Surtout ne pas oublier d'établir une référence de tension commune entre les deux sources.

En terme pratique il faut relier les "-" ensemble :
Sur l'Arduino le "-" est relié à la masse (GND ou ground).

Ce n'est pas la peine d'utiliser un gros câble il ne passera quasiment pas de courant dans cette liaison.
C'est comme dans du chaufage central : l'eau qui sort de la chaudière doit pouvoir y revenir, ici c'est les électrons qui sortiront de l'arduino et qui entreront dans la patte de commande du servo qui doivent pouvoir revenir dans l'arduino.

Les Shadocks : L'ignorance ne s'apprend pas.

Go Up