[Programmation] Modification/ programmation attiny13
Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 44

Modification/ programmation attiny13



  1. #1
    inviteb2c36586

    Question Modification/ programmation attiny13


    ------

    Bonjour, je suis à la recherche du connaisseur pour m'aider à comprendre et modifier un programme pour attiny13

    Les fichiers on était récupéré à cette adresse :http://libstock.mikroe.com/projects/...13-and-ds18b20

    J ai commander ceci pour la programmation
    http://fr.aliexpress.com/item/USB-IS...967931731.html

    http://fr.aliexpress.com/item/New-Pr...610451320.html

    http://fr.aliexpress.com/item/Free-s...619910814.html

    J'ai installé le logiciel Atmel studio, puis j'ai simplement ouvert le code .c je me retrouve donc avec ceci

    Code:
    // Roman Toropov
    // Termostat
    
    char duty;
    unsigned int temp2write;
    
    void main() {
    
       DDB0_bit = 1;
       // duty = 0;
       PWM1_Init(_PWM1_FAST_MODE, _PWM1_PRESCALER_1, _PWM1_NON_INVERTED, 0);
    
     //--- Main loop
      do {
        //--- Perform temperature reading
        Ow_Reset(&PORTB, 2);                         // Onewire reset signal
        Ow_Write(&PORTB, 2, 0xCC);                   // Issue command SKIP_ROM
        Ow_Write(&PORTB, 2, 0x44);                   // Issue command CONVERT_T
        Delay_us(120);
    
        Ow_Reset(&PORTB, 2);
        Ow_Write(&PORTB, 2, 0xCC);                   // Issue command SKIP_ROM
        Ow_Write(&PORTB, 2, 0xBE);                   // Issue command READ_SCRATCHPAD
    
        temp2write =  Ow_Read(&PORTB, 2);
        temp2write = (Ow_Read(&PORTB, 2) << 8) + temp2write;
    
        //--- Format and display result on Lcd
      // if (temp2write & 0x8000) {
         // text[0] = '-';
         // temp2write = ~temp2write + 1;
         // }
    
      // Extract temp_whole
      temp2write = temp2write >> 4 ;
    
                 // min duty 20  max 30
      // if ((temp2write < 46) && (temp2write > 35)) { duty = (temp2write - 35) * 12; }
      if (temp2write > 37) { duty = (temp2write - 37) * 5 + 20; }
    
      if (temp2write > 45) { duty = 255; }
      if (temp2write < 38) { duty = 0; }
    
      PWM1_Set_Duty(duty);
    
      Delay_ms(3000);
    
      } while (1);
    
    }

    Je souhaiterais avoir une broche qui lorsque la temperature et supérieur a une consigne max alors il permutte une broche de 0 a 5v ou de 5v a 0 pendant un temps donné en seconde

    Cela et il possible ? Je precise que je n y connais rien et que je me lance dans l aventure .

    Merci de votre comprehension et pour vos explication .

    -----

  2. #2
    inviteb2c36586

    Re : Modification/ programmation attiny13

    Personne ?

  3. #3
    invite1d577638

    Re : Modification/ programmation attiny13

    Disons que si tu n'y connais rien, ça va être dur pour nous de t'aider...

    En quoi ce code est représentatif de ce que tu dois utiliser ?

    Tu parles de mesure de température, quoi comme capteur ? Tu as un schéma de ce que tu souhaites réaliser ?

    Il existe des thermostats touts faits...

  4. #4
    inviteb2c36586

    Re : Modification/ programmation attiny13

    Bonjour merci pour cette réponse , je te joint le fichier .
    Je le realise car j ai besoin de l intégrés dans une carte embarque que j ai cree .
    Pour récapituler j ai besoin avec mon attiny
    Avoir une consigne de x1° a x2° qui
    de x1° déclenchera mon ventillo de 0 pour atteindre a x2° un signal pwm 255
    puis sur une autre broche avoir 0v puis une fois une temperature atteinte m envoyer un signal de 5v pendant un certain temps .
    Une fois ce temps écouler il verrifie de nouveaux la temperature si c elle ci n a pas atteinte une temperature donnée alors il recommence a compter puis verrifie de nouveaux

    Pour le capteur un ds18B20 Nom : 1367410233_ds18b20_thumb.JPG
Affichages : 262
Taille : 12,8 Ko

    Merci d avance

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

    Re : Modification/ programmation attiny13

    Donne la doc de ton capteur...

  7. #6
    inviteb2c36586

    Re : Modification/ programmation attiny13

    Bonjour quand tu parle de capteur, je presume que tu me parle de la ds18B20 ? Si oui voici la doc
    https://datasheets.maximintegrated.c...ds/DS18B20.pdf
    Merci

  8. #7
    invite1d577638

    Re : Modification/ programmation attiny13

    Le capteur dialogue avec le protocole 1-wire.

    La description de chaque bit est donnée dans la doc.

    Après le code que tu donnes se tape tout le boulot et modifie le rapport cyclique d'une sortie PWM. La variable contenant la température est temp2write.

  9. #8
    invite2c278084

    Re : Modification/ programmation attiny13

    hello,


    étonnant de ne pas avoir entendu le choeur des vierges effarouchées pour ce schéma !
    faut donc s'y coller
    • on ne sait pas ce qu'est ce transistor, donc surtout pas sa tension de seuil
    • étonnant branchement d'une résistance de 1MΩ entre grille et drain
    • encore plus étonnant de commander le transistor par un circuit RC à constante de temps de 0.2Hz faut un PWM à fréquence de récurrence compatible ! (ou alors ce serait voulu pour créer un seuil par intégration, auquel cas la remarque 1 exige réponse, mais c'est le genre de montage qui tombe parfois en marche au PWM voulu)
    • totalement indécent de ne pas avoir de diode de roue libre entre pied de moteur et + alim


    saluts

  10. #9
    antek

    Re : Modification/ programmation attiny13

    Citation Envoyé par zibuth27 Voir le message
    • on ne sait pas ce qu'est ce transistor, donc surtout pas sa tension de seuil
    • étonnant branchement d'une résistance de 1MΩ entre grille et drain
    • encore plus étonnant de commander le transistor par un circuit RC à constante de temps de 0.2Hz faut un PWM à fréquence de récurrence compatible ! (ou alors ce serait voulu pour créer un seuil par intégration, auquel cas la remarque 1 exige réponse, mais c'est le genre de montage qui tombe parfois en marche au PWM voulu)
    • totalement indécent de ne pas avoir de diode de roue libre entre pied de moteur et + alim
    On peut ajouter le +Vdd obtenu à partir de +12V et résistance série.

  11. #10
    inviteb2c36586

    Re : Modification/ programmation attiny13

    Le transistore pilote la vitesse du ventilo.
    Il n y a pas de diode car le moteur en contient deja une .
    zibuth tu ma perdu dans toute tes explications

  12. #11
    invite1d577638

    Re : Modification/ programmation attiny13

    Il t'a simplement indiqué ce qui ne va pas dans ton schéma...

  13. #12
    invite2c278084

    Re : Modification/ programmation attiny13

    hello,

    on ne sait rien de ton moteur : consommation nominale, résistance interne
    on ne sait rien de ton transistor : courant et puissances max, forme du coude de seuil et sa variation en température


    si ton montage travaillait en PWM, le transistor "saturerait" au rythme du PWM, donc la dissipation de puissance reste faible
    tu veux apparemment une zone proportionnelle de x1° à x2°
    quelle est la fréquence de récurrence de ton PWM (je ne lis pas couramment l'arduino, mais plutôt le c)

    tu places un filtre RC en sortie PWM de ton µC (filtre réduit à 200k/1µF, on est encore loin de pouvoir prendre en compte la 1MΩ)
    sa fréquence de coupure (où le signal est atténué de 30%) est de 0.8Hz

    Pour un tiny 13 utilisé à 1,2MHz (oscillateur interne et fuse CKDIV à 0), le prédiviseur au max, à 1024, et le PWM au max, à 8 bits (256 pas) soit une fréquence de récurrence min de 4.6 Hz, nous sommes en plein dans une zone de forte atténuation du filtre et la tension grille va avoir du mal à atteindre le seuil de conduction (qui va dépendre, lui, du courant demandé par le moteur et de la température du transistor qui risque de se trouver en zone linéaire, donc de s'échauffer)
    c'est pourquoi je dis que ça risque de tomber en marche pour certaines combinaisons particulières de tous les paramètres!

    exemple de la fonction de transfert d'un BS170 (en PJ)

    le plus sûr et le plus simple serait de faire un PWM vrai, par exemple en réduisant considérablement R4, en éliminant C2 et R3 et en choisissant le transistor en fonction du moteur
    il n'y a peut-être pas que le hardware à changer, pour le code, je laisse faire les arduinistes !

    le µC est bien alimenté : la résistance 680 Ω est associée à une Zener 5.1V, ce qui alimente correctement le µC et ses annexes (jusqu'à 10mA)


    saluts
    Images attachées Images attachées  

  14. #13
    inviteb2c36586

    Re : Modification/ programmation attiny13

    bonjour désolé pour l absence la semaine a étais très longue , alors pour le ventilateur il s agit d un ventilateur 80X80 consomment en moyenne entre 100 ma et 500 ma bien que je ne pense pas qui dépassera les 300 ma a pleine charge j attend de le recevoir pour le brancher sur l alimentation de labo
    Si je comprend bien pour toi R3 /R4 /c2 ne servent a rien tu relierais directement la pates 5 au mosfet ?
    Pour le transistor utilise il s agit d un ta78m05f
    http://www.datasheetlib.com/datashee...conductor.html

    en théorie car les essaie seront lancé une fois le dissipateur usiné le ventilo ce déclenchera au alentours de 28° pour être a sont maximum si la temperature atteint les 50° (la plage peut être réduit selon le comportement lors des test )

    Merci pour cette réponse j attend ton retours et j espère t avoir fourni tout les information que tu souhaite

  15. #14
    invite2c278084

    Re : Modification/ programmation attiny13

    hello,

    ce que tu déclares comme transistor est un circuit intégré régulateur de tension série, voisin du 78L05
    donnes le schéma complet de ce que tu envisages maintenant
    ensuite faudra éventuellement voir le soft

    A titre d'exemple voici une réalisation de ventilation d'alim de labo, partant d'un bloc alim de PC portable (19V)
    j'utilise un régulateur série, un tiny13, un BS170, une diode, une thermistance et une résistance. La zener n'est là que si l'alimentation primaire fait plus de 12V, dans ton cas, ça devient un fil


    saluts
    Images attachées Images attachées

  16. #15
    mag1

    Re : Modification/ programmation attiny13

    Bonjour,

    Sans vouloir jouer les trouble fêtes, je peux proposer une régulation de température avec un picaxe 08M2, programmation simple à la portée de tous, en basic.

    Schéma et code fournis si intéressé.

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  17. #16
    mag1

    Re : Modification/ programmation attiny13

    Bon, si ça sert à rien, c'est pas grave...

    Le code:

    On démarre un PWM, fréquence 1000Hz, valeur de la variable rapport cyclique (RC) pour 100% =999
    On lit un capteur DS18B20, en degrés
    Deux valeurs pour les bornes de t°: Tmin et Tmax
    On calcule un pas de RC par °C , un écart de 20 °C donne 20 pas de RC
    Ventilation proportionnelle entre Tmin et Tmax
    Un voyant allumé pour T>=Tmax

    Code:
    ;ventillo MM 28052016
    #picaxe 08M2
    symbol Tmax=b1
    symbol Tmin=b2
    symbol Tp=b3	;température lue
    symbol delta=w12
    symbol rapcycle=w13
    symbol sonde=C.4
    symbol ventil=C.2
    symbol led=C.1
    	pullup %10000		;R pullup sur C.4
    	pwmout pwmdiv4, ventil, 249, 999  ;Fq = 1000Hz, RC=100%
    	Tmax= 50
    	Tmin= 28
    	delta=Tmax-Tmin		;écart t°
    	delta=999 /delta	;pas rap cyclique par °C, 1 pas par °C
    	Do
    		readtemp sonde, Tp	;lecture sonde
    		If Tp<Tmin then 	;
    			rapcycle =0		;pas de ventilation		
    		elseif Tp>Tmax then	;
    			rapcycle=999	;ventilation max
    		else
    			rapcycle= Tp-Tmin * delta  ;rap cyclique proportionnel			
    		endif
    		pwmduty ventil,rapcycle		;réglage pwm
    		if Tp>=Tmax then 		;
    			high Led				;allumage led 
    		elseif Tp<Tmax then		;
    			low Led			;extinction led
    		endif	
    		pause 1000		;attente 1 seconde	
    	loop
    Le schéma: pour un courant de 500mA max, un BC337 bien saturé est un bon choix.
    Images attachées Images attachées  
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  18. #17
    inviteb2c36586

    Re : Modification/ programmation attiny13

    oulala pardon rectification le mosfet utilise et un irll014

    Du coup cela paraît plus logique =)

    Mag1 merci pour ton schema mes ma carte et deja réaliser a partir d un attiny 13 et j ai que celui ci en stock peut il remplacer le tien ?

  19. #18
    inviteb2c36586

    Re : Modification/ programmation attiny13

    À l'heure d aujourd'hui le schéma realiissait et celui-ci:



    si j ai bien compris Tu me conseil de retiré R4/C2/R3 ?

    Le mosfet utilise est un le mosfet utilise et un irll014
    Le ventillo consomme entre 200 et 400 ma

  20. #19
    antek

    Re : Modification/ programmation attiny13

    Citation Envoyé par moijerem59 Voir le message
    si j ai bien compris Tu me conseil de retiré R4/C2/R3 ?
    Moi je . . . suggère :
    - supprimer R3
    - remplacer C2 par R 470k minimum
    - remplacer R4 par valeur calculée en fonction du courant que peut fournir IC1 (pour 200 ohm on a environ 1µs de temps de commutation)
    - parasitage pin 7 IC1 ?

  21. #20
    invite2c278084

    Re : Modification/ programmation attiny13

    hello,

    je conseille de retirer R3 R4 C2 :

    SI
    ton transistor est compatible (notamment en courant et tension de seuil et tension max)
    ET SI
    tu commandes en PWM


    merci de donner un lien vers la datasheet IRL1014 (attitude générale demandée par Futura Sciences pour éviter au répondant de perdre son temps en recherches que tu as déjà faites, et éventuellement de corriger tes références)


    quant tu répond "tu me conseilles" (avec orthographie rectifiée) merci de préciser à qui tu réponds, vu qu'il y a plusieurs intervenants


    saluts

  22. #21
    inviteb2c36586

    Re : Modification/ programmation attiny13

    desolé , mon message étais bien pour toi . concernant la datasheet la voici :
    http://www.vishay.com/docs/91319/sihll014.pdf
    Mais connaissance pour déterminé si le transistor et compatible ne sont pas assez élevée
    pour le question si je commande en Pwm , je n en est aucune idée je part de 0 donc je dirais oui je cherche la meilleur solution
    Merci encore

  23. #22
    mag1

    Re : Modification/ programmation attiny13

    Citation Envoyé par moijerem59 Voir le message
    oulala pardon rectification le mosfet utilise et un irll014


    Mag1 merci pour ton schema mes ma carte et deja réaliser a partir d un attiny 13 et j ai que celui ci en stock peut il remplacer le tien ?
    Non, on ne peut pas remplacer l'un par l'autre, les brochages sont incompatibles.

    Il n'est pas très prudent de faire des cartes sans avoir finalisé le schéma par un essai sur table.

    Je ne connais pas l'IRL1014 (?), mais il doit être compatible TTL, et le montage avec R3,C2, et R4=220k (?) me semble aussi incompatible avec un fonctionnement en PWM.
    Pour 400mA, il faut effectivement remplacer le BC337 par un mosfet genre IRL530 et la 1k par 220 ohms

    Ma réponse est une alternative à l'attiny, au cas où....il faudrait refaire des cartes.

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  24. #23
    mag1

    Re : Modification/ programmation attiny13

    Citation Envoyé par moijerem59 Voir le message
    desolé , mon message étais bien pour toi . concernant la datasheet la voici :
    http://www.vishay.com/docs/91319/sihll014.pdf
    Oui, c'est bon pour une commande PWM avec attiny

    Y a bien un arduiniste qui va faire le code, simple

    MM
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  25. #24
    inviteb2c36586

    Re : Modification/ programmation attiny13

    zibuth27 comme ceci ? je ne suis pas sur pour le q1 d avoir choisit le bon considéré que c est le meme que le schema precedent
    ps sur le schema j ai laissé r4 mais si tu est certain que je peut le cable en direct je le retire aussi pas de danger pour lATtiny ?

    Nom : Capture d'écran 2016-05-29 12.25.02.jpg
Affichages : 159
Taille : 166,7 Ko

  26. #25
    mag1

    Re : Modification/ programmation attiny13

    Si tu supprimes la zener 5,1 v, l'attiny reçoit 12 V.....il est mort!

    Q1 est un mosfet. Là, c'est un transistor. Reprend un mosfet
    Faut une diode sur le moteur
    Ou il est le capteur ?

    MM
    Dernière modification par mag1 ; 29/05/2016 à 12h58.
    Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...

  27. #26
    antek

    Re : Modification/ programmation attiny13

    Citation Envoyé par moijerem59 Voir le message
    je ne suis pas sur pour le q1 d avoir choisit le bon considéré que c est le meme que le schema precedent
    ps sur le schema j ai laissé r4 mais si tu est certain que je peut le cable en direct je le retire aussi pas de danger pour lATtiny ?
    Pourquoi toutes ces modifs en 2 heures ?

  28. #27
    inviteb2c36586

    Re : Modification/ programmation attiny13

    mag1 sous shematic je ne trouve pas le symbole de la diode zener , le capteur est a droite le premier schema vient du net moi je reproduit avec les moyen du bord

    Antek ? tu laisserais R4
    Nom : Capture d'écran 2016-05-29 13.07.54.jpg
Affichages : 153
Taille : 76,0 Ko

  29. #28
    antek

    Re : Modification/ programmation attiny13

    Citation Envoyé par moijerem59 Voir le message
    Antek ? tu laisserais R4
    Réponse en #19.

  30. #29
    inviteb2c36586

    Re : Modification/ programmation attiny13

    Pardon je n avait pas compris cette fois ci si je comprend bien il ne reste plus qu'a calculer la valeur R4 avec cette datasheet
    http://www.atmel.com/images/doc2535.pdf

    Nom : Capture d'écran 2016-05-29 13.24.49.jpg
Affichages : 161
Taille : 77,4 Ko

  31. #30
    antek

    Re : Modification/ programmation attiny13

    Citation Envoyé par moijerem59 Voir le message
    Pardon je n avait pas compris cette fois ci si je comprend bien il ne reste plus qu'a calculer la valeur R4 avec cette datasheet
    http://www.atmel.com/images/doc2535.pdf
    Pièce jointe 315283
    En attendant la validation de la PJ

    Je ne vois que la limite extrême du courant par pin (40 mA).
    Donc R4 autour de 200 ohm est une bonne idée.

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. quelle est la difference entre programmation procedurale et la programmation orientee objet
    Par invite430abc62 dans le forum Programmation et langages, Algorithmique
    Réponses: 9
    Dernier message: 27/01/2016, 13h34
  2. programmation attiny13
    Par gepeto dans le forum Électronique
    Réponses: 6
    Dernier message: 13/01/2014, 13h58
  3. modification ou pas ??
    Par ibtihel dans le forum Technologies
    Réponses: 1
    Dernier message: 14/09/2010, 09h16
  4. [Biochimie] Modification de l'ADN
    Par invite2fa342ab dans le forum Biologie
    Réponses: 8
    Dernier message: 07/02/2010, 11h36
  5. modification
    Par inviteba9d98e8 dans le forum Électronique
    Réponses: 1
    Dernier message: 15/09/2005, 08h55
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...