Forum Électro-Bidouilleur

Merci de vous connecter ou de vous inscrire.

Connexion avec identifiant, mot de passe et durée de la session
Recherche avancée  

Nouvelles:

Le Forum est maintenant chiffré (préambule https). Bien sûr, des liens externes insérés dans les sujets vont demeurer inchangés. Mais la composition des pages du Forum est désormais sécurisée. Si des problèmes d'affichage surviennent, veillez à vider votre cache pour ce site.

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 - Curiosus

Pages: 1 ... 11 12 [13] 14 15 ... 21
181
Discussion Générale d'Électronique / Re : Tige potentiomètre
« le: Janvier 01, 2020, 08:47:27 pm »
Bonsoir Jazziac,

Oui tu peux scier le surplus, mais il faut éviter que l'axe bouge (sur le coté du potentiomètre), de plus ne pas hésiter, si tu vois une surchauffe du à  la friction de la scie de s'arrêter en le laissant refroidir.

Ps: ne pas arroser, si tu vois qu'il chauffe, laisse le refroidir naturellement.
 
A+

182
Bonjour tout le forum,

Je vous souhaite également, une très bonne année pour 2020


A+

183
Bonsoir, et merci pour le voeux de fin d'année,

 J'ai rectifié le schéma, car il faut absolument que le module A4988 soit alimenté, ce qui n'était pas le ca sur ton schéma.

Même si le 5 volts est en commun, le module à  bien une alimentation qui est séparé à  celui du moteur.

J'ai mis le réglage du pas en 1/2 phase, tu peux le changer si tu veux plus de précision dans le pas

Le changement de la  valeur du pas peut être  fait à  partir de M1, M2, M3 (voir le tableaux sur mon schéma), il y a 5 possibilité.

L = GND
H = +5 volts

Pour que tu comprenne bien, voici une explication sur le réglage de la précision du pas

Exemple avec une fréquence fixe de 50 Hz

1 tour moteur peut être fait avec 50 pulsations pour un mode   1 (soit 50 positions d'axe moteur)
1 tour moteur peut être fait avec 100 pulsations pour un mode 2 (soit 100 positions d'axe moteur)
1 tour moteur peut être fait avec 150 pulsations pour un mode 3 (soit 150 positions d'axe moteur)
1 tour moteur peut être fait avec 200 pulsations pour un mode 4 (soit 200 positions d'axe moteur)
1 tour moteur peut être fait avec 250 pulsations pour un mode 5 (soit 250 positions d'axe moteur)

Pour un mode 4, qui représente 200 pulsations à  une fréquence de 50 Hz, il faudra plus de temps pour faire un tour qu'un mode 1

Si on sait qu'un tour fait 200 pas, on peut calculer l'angle d'un pas: 360° / 200 pas = 1,8° de pas 

Je te souhaite également une bonne année 2020

A+

184
Bonjour cathodic, et tout le forum,

Citer
Écrit par cathodic : Je suis un peu embêté car je n'ai sous la main qu'une seule alimentation 5V

Comme tout est compatible en 5 volts, tu alimentes tout le montage en 5 volts.

Citer
Écrit par cathodic : Edit omission: Je n'ai besoin que d'un seul sens de rotation. Je peux donc retirer de ton plan le poussoir et la résistance de 10K ?

Oui tu peux retirer la résistance et le poussoir, mais il faudra connecter la broche Dir soit au +5 volts,  ou GND

Ps : le petit potentiomètre sur le module A4988 sert à  régler la force du moteur, pour l'instant laisse le au milieu.

A+

185
Bonjour cathodic, et tout le forum,

Ton module NE555 doit être alimenté en 5 volts

Ton module A4988 à  deux alimentation, une pour ton moteur, et une pour lui qui doit être de 5 volts.

Ton moteur pas à  pas, surement en 5 volts, à  contrôler......

Avant de brancher fait un plan, et mets le ici, je regarderais si il y a pas d'erreur, n'oublie rien sur le schéma...... ;)

Voici un exemple en Français, des détails techniques : https://wiki.mchobby.be/index.php?title=A4988

J'ai fait un petit plan pour te facilité la tache...
 
A+

186
Bonsoir diltech, et tout le forum,

J'ai vu sur ton schéma que tu alimentes ton régulateur en 12 volts,

Pour faire un essai, essayer d'alimenté ton régulateur 7805 au environ de  7 volts, et regarde si il est toujours chaud.

Un régulateur linéaire(7805) ne converti pas d'énergie, il se contente simplement de transformer l’excédant en chaleur.

Un régulateur à  découpage serait mieux, sans modifier ton PCB :  https://fr.rs-online.com/web/p/products/7962132

Bon il  est assez chère, voir chez les chinois.

J'utilise couramment ceci : https://www.ebay.co.uk/itm/Mini-Adjustable-DC-DC-4V-12-24V-To-5V-3A-Step-Down-Power-Module-Buck-Converter/152759838299?hash=item239132265b:g:fVQAAOSwI2xbUuKx

Ou ici : https://fr.aliexpress.com/item/32826540392.html

Dimension 17mm * 11mm * 5mm (L * W * H), pas plus grand qu'un 7805

A+


187
Bonsoir diltech, et tout le forum,

La première chose que tu peux faire c'est de contrôler le nombre d'ampère que tire ton montage avec le 7805, de plus regardé avec un oscilloscope si il y a pas de parasite.

Après tu regardes sans le 7805, combien d'ampère tu tires

J'ai regardé ton schéma, je n'ai pas vu d'erreur,  maintenant entre la théorie schématique et sur le terrain il y a une grande différence.

Personnellement je n'utilise plus le 7805, j'ai eu pas mal de soucis avec lui.

A+

188
Discussion Générale d'Électronique / Re : Conversion int char
« le: Décembre 24, 2019, 03:40:20 pm »
Bonjour,

C'est le gros problème des langages de haut niveau, faire sans comprendre, après on sait plus quoi faire.

A voir comment fonctionne une conversion binaire vers ASCII, dans le langage ASM ça serait à  toi de la faire, ou moins ça te permettrais de comprendre....

Si tu commence comme ça,  bon courage par la suite..... 

je vous souhaite un joyeux Noà«l.

A+

189
Bonsoir,

Citer
Écrit par olibou : Peut être que si j'utilise une autre broche en entrée cela va contourner le problème ?

Toutes ses pattes peuvent être configuré en convertisseur analogique RA0, RA1, RA2, RC0, RC1, RC2, RC3 (voir mon code en ASM)

D'après le datasheet en page 41, le comparateur agit seulement sur les pattes : RA0, RA1, RA2.

Pour ne pas utiliser le comparateur, il faut mettre CMCON = B'00000111' , ce qui te permet de les utiliser comme convertisseur analogique.

Voir extrait du datasheet ci-dessous

A+

190
Bonjour olibou, et tout le forum,

Tu fais ce que tu veux, si l'assembleur ne te convient pas, ne prends pas, moi j'aime bien l'assembleur,  mais c'est moi.
 
Il est conseillé d'apprendre un minimum d'assembleur, ça rends service quand une fonction n'existe pas, ou si tu veux de la vitesse pour ton code.

Monsieur Bigonoff et comme Électro-Bidouilleur ils ont fait quelle que chose de super, retransmettre leurs connaissances.

Merci mille fois à  eux.

Je viens de regarder ton code en C, et je m'aperçois que tu n'as pas configuré CMCON,

1)ça veux dire que tes comparateur ne sont pas éteint

2) ADFM et à  1 alors qu'il est plus simple de le mettre à  0, et récupérer le résultat dans ADRESH

Bon à  suivre ......

A+

191
Bonsoir,

Je ne vais pas faire de long discourt vu l'heure tardive, voila j'ai fini, testé, sa fonctionne, après on pourras le réécrire en  MPLAB (en C)

De plus pas besoin de quartz, car ce pic possède un oscillateur interne de 4 Mhz, il suffit juste de l'activer, chose que j'ai faite.

Le code pour les intéressés


list      p=16f676           ; list directive to define processor
#include <p16F676.inc>        ; processor specific variable definitions

errorlevel  -302              ; suppress message 302 from list file

__CONFIG   _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT

;*************************************** assignations *****************************************

#DEFINE     led1         PORTC,0          ; led rouge
#DEFINE     led2         PORTC,1          ; led bleu
#DEFINE     led3         PORTC,2          ; led vert

;**********************************************************************************************

 CBLOCK H'20'

      loop1         :1
      loop2         :1
      loop3         :1
         
      res8          :1     
      res16         :1     
      res24         :1 
 ENDC

;***********************************************************************************************

    ORG H'0'                              ; reset au démarrage
      goto debut                          ;

    ORG H'4'                              ; lieux des interruptions
      retfie

;***********************************************************************************************
debut
  call 0x3FF                          ;
 
;***********************************************************************************************

  BANKSEL OSCCAL                      ; passer en bank 1

;***********************************************************************************************

      movwf   OSCCAL                      ;

;************************** configuration du registre ANSEL en bank 1 **************************

      movlw B'00000001'                   ; mode numérique  : 13(RA0),
      movwf ANSEL                         ; mode analogique : 12(RA1), 11(RA2), 10(RC0),9(RC1),8(RC2), 7(RC3)

;************************ configuration du registre ADCON1 en bank 1 **************************

      movlw B'00100000'                   ; b6 = ADCS2 choisir la fréquence de fonctionnement du convertisseur
      movwf ADCON1                        ; b5 = ADCS1 en fonction de la fréquence d'horloge du PIC
                                          ; b4 = ADCS0
                                          ; 
;************************ configuration du registre OPTION_REG en bank 1 ***********************

      movlw B'10000000'                   ;  résistances hors service sur PORTA
      movwf OPTION_REG                    ;

;******************** configuration des registres TRISA & TRISC en bank 1 **********************

      movlw B'00000001'                   ; configure les pattes de TRISA
      movwf TRISA                         ; 13(RA0),12(RA1),11(RA2),4(RA3),3(RA4),2(RA5)

      movlw B'00000000'                   ; configure les pattes de TRISC
      movwf TRISC                         ; 10(RC0), 9(RC1), 8(RC2), 7(RC3), 6(RC4), 5(RC5)
                                                 
                                          ; alimentation sous 5 volts patte 14 mettre au moins
     
;***********************************************************************************************

  BANKSEL ADCON0                      ; passer en bank 0

;***********************************************************************************************
     
                                          ; b7 = ADFM détermine si le résultat de la conversion
                                          ; sera justifié à  droite = 1 ou à  gauche = 0 
                                          ; b6 = VCFG 1 = VREF pin, 0 = VDD
      movlw B'00000000'                   ; 
      movwf ADCON0                        ;
     
;************************* configuration du registre CMCON en bank 0 ************************** 

      movlw B'00000111'
      movwf CMCON                         ; éteindre le comparateur                   

;*********************** configuration du registre INTCON en bank 0,1 **************************

      clrf INTCON                         ; désactivé les interruptions

;***********************************************************************************************
reset
      clrf PORTA
      clrf PORTC

;***********************************************************************************************     

; Pour avoir un état bas, milieu, haut, on divise par 3 (255 /3) = 85   

; état bas de 0 à  85, état milieu de 86 à  170, état haut 171 à  255

;********************************* "sélection du canal(RA0)" ***********************************

      call canal_an0                      ;

;***********************************************************************************************     
control_1     
      call numériser                      ; lancer la conversion

      movf res8,W
      sublw D'85'

      btfss STATUS,C
      goto control_2

      bsf led1
      bcf led2       
      bcf led3

      goto control_fin

control_2 
      movf res8,W
      sublw D'170'

      btfss STATUS,C
      goto control_3

      bcf led1
      bsf led2       
      bcf led3

      goto control_fin     

control_3
      bcf led1
      bcf led2       
      bsf led3

control_fin
      call _300ms                         ; petite pause

      goto control_1

;***********************************************************************************************
;**************************** "canaux des convertiseurs numériques" *****************************
;***********************************************************************************************
canal_an0
     bcf ADCON0,CHS0                      ; 000 (RA0)
     bcf ADCON0,CHS1
     bcf ADCON0,CHS2

     return

;***********************************************************************************************
canal_an1
     bsf ADCON0,CHS0                     ; 001 (RA1)
     bcf ADCON0,CHS1
     bcf ADCON0,CHS2

     return
;***********************************************************************************************
canal_an2
     bcf ADCON0,CHS0                      ; 010 (RA2)
     bsf ADCON0,CHS1
     bcf ADCON0,CHS2

     return

;***********************************************************************************************
canal_an3
     bsf ADCON0,CHS0                      ; 011 (RA3)
     bsf ADCON0,CHS1
     bcf ADCON0,CHS2

     return

;***********************************************************************************************
canal_an4
     bcf ADCON0,CHS0                      ; 100 (RC0)
     bcf ADCON0,CHS1
     bsf ADCON0,CHS2

     return

;***********************************************************************************************
canal_an5
     bsf ADCON0,CHS0                      ; 101 (RC1)
     bcf ADCON0,CHS1
     bsf ADCON0,CHS2

     return
;***********************************************************************************************
canal_an6
     bcf ADCON0,CHS0                      ; 110 (RC2)
     bsf ADCON0,CHS1
     bsf ADCON0,CHS2

     return

;***********************************************************************************************
canal_an7
     bsf ADCON0,CHS0                      ; 111 (RC3)
     bsf ADCON0,CHS1
     bsf ADCON0,CHS2

     return

;***********************************************************************************************
numériser
      bsf ADCON0,ADON                     ; on lance l’acquisition (charge du condensateur)
      nop             
      nop                                 ; tempo pour charge du condensateur
      nop
      bsf ADCON0,GO                       ; lancer la conversion A/D

      btfsc ADCON0,GO                     ; si le bit GO est à  1 on va à  la ligne 1       
      goto $-D'1'                         ; conversion n'est pas terminer     
      bcf ADCON0,ADON                     ; fin de conversion, éteindre convertisseur

      movf ADRESH,W                       ; sauver la valeur qui vient d'être numérisé
      movwf res8                          ; dans la variable "res8"
                                           
      return

;***********************************************************************************************
_300ms
      movlw D'51'
      movwf loop1

      movlw D'12'
      movwf loop2

      movlw D'4'
      movwf loop3

      decfsz loop1,F
      goto $-D'1'
      decfsz loop2,F
      goto $-D'3'
      decfsz loop3,F
      goto $-D'5'

      return

;***********************************************************************************************

  End



Fichiers joints : fichier schéma, fichier code, fichier code compilé

A+


192
Bonjour olibou, et tout le forum,

J'ai fini le programme, je le teste et le mets vers les 1 heure 30  du matin, en France métropolitain, (avec un schéma) chose que tu aurais du faire.

Je vais pas te dire qu'un langage est mieux qu'un autre, c'est à  toi de voir, personnellement je suis pas d'accord de payer une licence pour programmer.

Je me suis constitué une bibliothèque que j'ai écrit en ASM, ce qui me permets de la modifier à  tous moment.

Revenons à  ton programme, J'ai mis 3 led rouge, vert, bleu, avec un potentiomètre, si tu tournes le potentiomètres
elles s’allumeront en fonction de la position de celui-ci..

Si tu vois une autre idée ?

A+


   


193
Bonjour olibou,

Je pratique pas  MPLAB (en C), j'écris tout mes programmes an ASM, si tu veux je peux l'écrire an ASM, et t'expliquer la façon de faire
pour que tu le réécrive en C

A+


194
Discussion Générale d'Électronique / Re : LED infrarouge
« le: Décembre 13, 2019, 11:57:07 am »
Bonjour Nolimit60, et tout le forum,

Citer
Écrit par Nolimit60 : j'ai effectué beaucoup de récupération de LED et récepteur  IR :) et je voudrais pouvoir les identifiés.

Hum...., le problème c'est pas le code de la télécommande, c'est la porteuse qui peut varier d'une télécommande à  une autre. 

Regarde ici : https://fr.wikipedia.org/wiki/T%C3%A9l%C3%A9commande

ça te donne un idée du nombre de porteuse que peut avoir une télécommande

Un montage amusant à  faire ici : http://www.pc-optimise.com/electronique/telecommande.php?print=yes

  A+




195
Bonjour Zirconium, et tout le forum,

Après filtrage, pour  abaisser la tension DC je te conseille ceci : https://www.ebay.fr/itm/Panel-Xl7015-Dc-Adjustable-Buck-Power-Module-Input-5-80Vdc-Dc-Power-Convert-E2S6/123864284790?hash=item1cd6e2fe76:g:IEcAAOSwTBtdR5ab

Malheureusement limité à  80 volts

En ce qui concerne la logique, Papyblue te propose un optocoupleur, cela serait très bien, mais le gros problème c'est leur rapidité.

Car ton analyseur logique travaille en nanoseconde, et à  ma connaisance je connais pas d’optocoupleur travaillant en de t'elle rapidité.

Prendre un optocoupleur c'est un risque de voir passé des signaux à  la trappe, une diode zener avec une résistance me semble le plus adapter.

 A+


 

Pages: 1 ... 11 12 [13] 14 15 ... 21