[Programmation] contrôler un moteur pas a pas...
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

contrôler un moteur pas a pas...



  1. #1
    invitec20c017b

    contrôler un moteur pas a pas...


    ------

    Bonjour,
    Je suis débutant et j'aimerai contrôler un moteur pas a pas 4 phases.
    J'ai récupéré un PIC16F84 et grace a ce microcontroleur je veut contrôler mon moteur.

    J'ai donc en sortie du microcontroleur du 5V, le moteur veut du 12V.

    Le séquencement est géré par un programme en C mais la n'est pas le problème.

    Le problème est de passé du 5V au 12V... Pour cela j'ai fait quelque recherche et je suis tombé sur ce schéma :



    Ce n'est que la moitié du schéma, l'autre moitié est identique pour les 2 autres phases. La bobine représente le moteur.
    La porte oui est nécessaire pour adapter l'impédance...

    Mais le reste, je ne le comprends pas ...

    La aussi j'ai fait des recherches, il semblerait que se soit un montage en "totem-pole" mais pas exactement. Par exemple, les diodes ou la résistance R4 n'est pas présent sur les autres schéma "totem pole".

    Comment fonctionne-t-il ? (fonctionne-t-il ?)
    Avez d'autre idées pour contrôler mon moteur ?
    S'il vous plait aider moi !

    merci

    -----

  2. #2
    nams2590

    Re : controler un moteur pas a pas...

    Si tu veux mon avis, il y a beaucoup plus simple que tout cela.

    Tu as beaucoup de solutions.

    1) Mettre tout simplement un transistor biolaire sur chaque sortie.
    Tu relie la base a ta sortie du PIC avec une résistance, tu met ton 12V sur le collecteur avec une résistance (NPN) et ton enroulement entre la masse et la l'emetteur.

    2) Mettre un amplificateur opérationnel par sortie. Avec des amplificateurs alimentés en 0, 12V (Ca existe !!!).
    Tu fais un montage comparateur (Sortie su PIC sur le + et masse sur le -) La sortie reliée à ton enroulement moteur.

    3) Tu utilise un optocoupleur. (Un peu bête pour cette utilisation, car tu n'as pas besoin d'isolation galvanique)

    4) Tu utilise un relais, mais un peu bête ici (Mêmes raisons)

    ...
    namselectro

  3. #3
    invitec20c017b

    Re : contrôler un moteur pas a pas...

    Merci de ta réponse !

    Je vais utiliser la technique 1, qui me parait la plus simple...

    encore merci

    @+

  4. #4
    gcortex

    Re : contrôler un moteur pas a pas...

    Slt, en émetteur suiveur t'auras max 4,3V

  5. A voir en vidéo sur Futura
  6. #5
    invite55fe29e6

    Re : contrôler un moteur pas a pas...

    Bonjour a tous,
    Pour la commande d'un moteur pas à pas, tu peux le faire en VHDL,c'était un de mes projets que je devait faire et j'ai trouvé cela assé marranr et simple à faire,
    Voila regarde:

    library ieee;
    use ieee.std_logic_1164.all;
    use ieee.std_logic_unsigned.all;

    Entity CommandePap is

    Port ( CLK,RAZ,Sens,Mode : in std_logic;
    Q:Buffer std_logic_vector(2 downto 0);
    PH1,PH2,PH3,PH4 : out std_logic);


    attribute LOC : string;
    attribute LOC of Q :signal is "P14,P15,P16";
    attribute LOC of PH1 :signal is "P21";
    attribute LOC of PH2 :signal is "P20";
    attribute LOC of PH3 :signal is "P18";
    attribute LOC of PH4 :signal is "P19";
    attribute LOC of CLK :signal is "P1" ;
    attribute LOC of RAZ :signal is "P3" ;
    attribute LOC of Mode :signal is "P5" ;
    attribute LOC of Sens :signal is "P7" ;

    end;

    Architecture Archpap of CommandePap is
    signal phase : std_logic_vector (4 downto 1);
    begin

    process(CLK,RAZ)
    begin
    If RAZ='0' then Q<="000";
    elsif(CLK'event and CLK='1')then Q<=Q+1;
    End If;
    end process;

    With RAZ&Sens&Mode&Q select

    phase <= "0001" when "101000",
    "0011" when "101001",
    "0010" when "101010",
    "0110" when "101011",
    "0100" when "101100",
    "1100" when "101101",
    "1000" when "101110",
    "1001" when "101111",

    "1001" when "111000",
    "1000" when "111001",
    "1100" when "111010",
    "0100" when "111011",
    "0110" when "111100",
    "0010" when "111101",
    "0011" when "111110",
    "0001" when "111111",

    "0011" when "100000",
    "0011" when "100001",
    "0110" when "100010",
    "0110" when "100011",
    "1100" when "100100",
    "1100" when "100101",
    "1001" when "100110",
    "1001" when "100111",

    "1001" when "110000",
    "1001" when "110001",
    "1100" when "110010",
    "1100" when "110011",
    "0110" when "110100",
    "0110" when "110101",
    "0011" when "110110",
    "0011" when "110111",

    "0000" when others;

    PH1 <= phase(1);
    PH2 <= phase(2);
    PH3 <= phase(3);
    PH4 <= phase(4);

    end Archpap;
    Voila comment on peut faire une variation d'un moteurs pas à pas,
    tu peux controlé la vitesse le sens, le mode (Pas ou demi pas)enfin si tu veux plus d'explications je suis là,mais voila c'était juste pour te donné un exemple de commande par logic,je ne sais pas si sa cole a ton projet mais voila
    @+
    Cordialment

  7. #6
    momoto33127

    Re : contrôler un moteur pas a pas...

    bboydance créer ton propre topic merci.

Discussions similaires

  1. Contrôler un moteur brushless ?
    Par roger2000 dans le forum Technologies
    Réponses: 5
    Dernier message: 01/02/2015, 17h53
  2. Contrôler un moteur par un PIC
    Par Anduriel dans le forum Électronique
    Réponses: 4
    Dernier message: 01/10/2012, 16h25
  3. Contrôler un moteur pas à pas
    Par Tidus1707 dans le forum Électronique
    Réponses: 37
    Dernier message: 09/07/2011, 19h58
  4. Controler la vitesse d'un micro-moteur (et choix de moteur).
    Par invite72371e24 dans le forum Électronique
    Réponses: 3
    Dernier message: 15/02/2009, 14h07
  5. Controler la vitesse d'un micro-moteur (et choix de moteur).
    Par invite72371e24 dans le forum Électronique
    Réponses: 1
    Dernier message: 13/02/2009, 16h50
Découvrez nos comparatifs produits sur l'informatique et les technologies.