Automate programmable PIC
Répondre à la discussion
Page 1 sur 7 12 3 4 5 6 DernièreDernière
Affichage des résultats 1 à 30 sur 188

Automate programmable PIC



  1. #1
    Thetimax

    Automate programmable PIC


    ------

    Bonsoir,

    Je souhaiterais realiser un automate pour gerer la fabrication d'un produit. Il disposerait d'un LCD et 4 touches (+/-, OK, retour) + une pour la tare?? il devra gerer:

    - 1 peson industriel signal 0-10v
    - 1 débimetre a impulsions
    - 4 sorties relais

    Cycle de fabrication:

    - activation relais 1 puis arrêt a la quantité programmée (debit metre)
    => Quantité eau
    - activation relais 2 jusqu'à la fin de la durée programmée
    => Temps de malaxage
    - activation relais 3 puis arret a la quantité programmée (peson)
    => Quantité produit
    - activation relais 4 fin de cycle
    => Vidange
    Avec la possibilité de répéter le cycle un certain nombre de fois.

    Je dispose de la plupart des composant et j'essaye d'en faire quelque chose depuis presque un an! (EasyPIC6, MPLAB, MikroC...) et biensur les cours de BIGONOFF que je suis des que j'ai l'occasion

    Coté prog, je ne sais pas comment commencer proprement...
    Etant novice dans la programmation, j'aurais besoins de vos conseils et votre aide... Merci d'avance et a bientot

    -----

  2. #2
    carcan

    Re : Automate programmable PIC

    Salut !

    un beau petit truc comme je les aime !!!

    As-tu déjà réalisé le hardware ?
    il te faut 16 I/O digitales, 1 entrée analogique, 1 entrée Timer (pour la mesure de fréquence du débitmètre), de l'EEPROM (mémorisation des paramètres), ... De mémoire, je pense que le PIC16F876 pourrait convenir (plein d'autres aussi mais celui là est hyper courant).

    J'ai peut être un design tout fait pour toi (j'ai des modules assez universels avec clavier 4 touches et LCD 2*16 que j'utilise assez souvent), faut que je regarde si il y a bien 4 sorties relais sur le print et la possibilité d'une entrée sur un timer.

    Tu as besoin de quelle résolution sur ton entrée analogique (le PIC a du 10bits, ce qui donne une réolution de 1mV pour 0-10V) ?

    Donne plus d'infos ...
    A+
    Laurent

  3. #3
    invite7a49d0d5

    Cool Re : Automate programmable PIC

    Bonjour Thetimax,

    commences par faire fonctionner un élément "seul"... le peson + LCD...
    puis un second "seul"...le débitmètre + LCD...
    puis...

    ça n'est qu'une suggestion...
    bonn'journée za toutes zé tous,
    vede
    ;O]
    ___________
    ...

  4. #4
    Qristoff
    Animateur Électronique

    Re : Automate programmable PIC

    Salut,
    Coté prog, je ne sais pas comment commencer proprement...
    Il faut que tu te trouves un modéle de programme vierge, avec les parties générales communes à tous programmes (tête de fichier, configuration, assignations, déclarations de variables, routines, etc...). Ainsi tu risqueras moins d'en oublier et ton fichier sera mieux structuré.
    J'en ai un en assembleur mais pas en C.
    Tu peux aussi récupérer une bibliothéque pour lcd, c'est courant et cela évite de réinventer l'eau chaude...
    Tout existe, il suffit de le trouver...!

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

    Re : Automate programmable PIC

    Bonjour!

    D'abord merci a tous pour vos conseils. Je suis d'accord pour utiliser du "tout fait" mais je voudrais que l'on m'explique pas a pas, a fin de comprendre parfaitement. Je comprend le fonctionnement des µC mais n'ayant personne dans mes connaissances pour me guider, je n'arrive a rien coté prog (par quoi commencer, les initialisations etc...). Je dispose d'un PIC 16F887 qui je pense fera l'affaire. Ce projet me tiens vraiment a cœur et j'ai bien l'intention, une fois fini, de le faire évoluer.
    Je ne me suis pas encore trop intéresse coté Hard car ce n'est pas vraiment ce qui m'inquiète le plus. Comme m'a demander Vede, j'ai testé le débitmètre avec un exemple de programme qui servait a l'origine a compter des points (avec modif du texte affiché... lol), pour le peson, je ne dispose pas encore de l'alim nécessaire... Je possède aussi d'un LCD 2x16.

    -Quel logiciel me conseillez vous? sachant que mon programmateur ne fonctionne apparemment pas sous MPLAB

  7. #6
    Thetimax

    Re : Automate programmable PIC

    ps: Je pense que la résolution de 10 bits pour le peson sera amplement suffisante car la charge maxi est de 300kg et la précision peut être de +/- 0.5Kg (ce qui serais pas mal!)

  8. #7
    invite7a49d0d5

    Cool Re : Automate programmable PIC

    re ;O]

    moi j'aime assez MikroC et MikroBasic...
    c'est pas "très pro" comparé à MPLab...
    mais facile à prendre en main...
    et gratuits (limités à 2Ko de code, cad de quoi voir venir...)...
    pour programmer c'est quoi ton programmateur (hard)?

  9. #8
    Thetimax

    Re : Automate programmable PIC

    Oui MikroC parait pas mal, en plus il y a les librairies integré! Mon prog est celui du EasyPIC6, Mikro ICD apparament...

  10. #9
    invite7a49d0d5

    Cool Re : Automate programmable PIC

    re ;O]

    tu l'a dit... avec toutes les librairies ya pratiquement plus rien à faire ;O]
    tu copies/colles les exemples de l'aide... et c'est parti ;O]
    en plus il "gére" ton EasyPic6 ICD...

    après à l'usage tu te rends compte que les librairies sont un peu "lentes"...
    si besoin de performance, faut mettre les mains dans le cambouis (la datasheet)...
    par exemple pour utiliser le module ADC ou PWM... à "grande" vitesse...

  11. #10
    Thetimax

    Re : Automate programmable PIC

    J'aimerais que l'on m'explique comment se servir de ces librairies! car tout le monde dit ca car de plus, le EasyPIC c'est pas mal mais c'est un peu le merdier pour un novice, je n'ai rien compris au depart...

  12. #11
    Thetimax

    Re : Automate programmable PIC

    D'ailleurs je viens de re sortir TCI

  13. #12
    invite7a49d0d5

    Cool Re : Automate programmable PIC

    vas dans l'aide > librairies...

    chacune est décrite en détails...

    avec exemple de code...

  14. #13
    Thetimax

    Re : Automate programmable PIC

    Oui je consulte regulierement mais c'est en anglais alors je pige pas tout :s

  15. #14
    Thetimax

    Re : Automate programmable PIC

    Que me conseillez vous comme composants pour l'alim du pic avec une alimentation type industriel LEGRAN 24Vc
    Et pour L'EEPROM?

    Merci

  16. #15
    Qristoff
    Animateur Électronique

    Re : Automate programmable PIC

    Salut,
    Citation Envoyé par Thetimax Voir le message
    Que me conseillez vous comme composants pour l'alim du pic avec une alimentation type industriel LEGRAN 24Vc
    Et pour L'EEPROM?

    Merci
    ne cours pas 36 liévres à la fois...
    Cela ne m'embête pas de te faire un schéma mais il faudrat être plus précis sur l'environnement.
    - datasheet ou référence de la source d'alimentation
    - datasheet ou référence des éléments à commander avec les relais
    - datasheet ou référence des capteurs et Lcd
    etc...sans rien oublier !
    Pour le MikoC, je laisse jouer Vede (c'est plus son domaine le C)
    Tout existe, il suffit de le trouver...!

  17. #16
    Thetimax

    Re : Automate programmable PIC

    Pour le moment je n'ai pas grand chose sous la main etant donné que je suis en deplacement...

    - Alim Legran 230Vac / 24Vdc 3A
    - Débitmètre a impulsion, il me semble que la tension d'impulsion dépend de celle d'entrée => 1 imp/L
    - PIC 16F887 DIP40
    - peson industriel 300Kg qui ressemble a celui ci:
    http://www.aazpesage.com/_upload/res...pesage_340.pdf
    - Pour les relais j'opterais pour des FINDER dont je trouverais la reference.
    Ils actionneront:

    N°1: Electrovanne 24Vdc environ 1A
    N°2: Contacteur triphasé environ 1A
    N°3: " "
    N°4: " " + Electrovanne 24Vdc 1A


    Je compte utiliser une interface qui comporterais les relais ainsi que leurs fusibles + fusible d'alimentation et des leds pour illuminer tout ca!

  18. #17
    Thetimax

    Re : Automate programmable PIC

    ps: pour le LCD c'est 2x16 sur 4bits...

  19. #18
    Thetimax

    Re : Automate programmable PIC

    Que pensez vous de ce debut de code?

    sbit LCD_RS at RB4_bit;
    sbit LCD_EN at RB5_bit;
    sbit LCD_D4 at RB0_bit;
    sbit LCD_D5 at RB1_bit;
    sbit LCD_D6 at RB2_bit;
    sbit LCD_D7 at RB3_bit;

    sbit LCD_RS_Direction at TRISB4_bit;
    sbit LCD_EN_Direction at TRISB5_bit;
    sbit LCD_D4_Direction at TRISB0_bit;
    sbit LCD_D5_Direction at TRISB1_bit;
    sbit LCD_D6_Direction at TRISB2_bit;
    sbit LCD_D7_Direction at TRISB3_bit;

    void main() {
    TRISB = 0;
    ANSEL = 0x04;
    TRISA = 0xFF;
    PORTC = 0;

    Lcd_Init();

    }



    Merci

  20. #19
    Qristoff
    Animateur Électronique

    Re : Automate programmable PIC

    Salut,
    - Pour les relais j'opterais pour des FINDER dont je trouverais la reference.
    Si tu comptes alimenter les électrovannes et les contacteurs par ton alim 24V Legrand, tu peux directement utiliser des transistors mos, ce sera plus compacte.
    Et pourquoi veux tu une interface ? Tout ne sera pas sur la même carte électronique ? (PIC, ampli et mos)
    Tout existe, il suffit de le trouver...!

  21. #20
    Thetimax

    Re : Automate programmable PIC

    Bonjour!

    Je souhaite réaliser une interface pour séparer l'électronique "sensible" a ce qui l'es moin (relais etc..). Cela parce qu il fonctionnera dans un environnement pas très clair pour ces choses la. Puis aussi pour que ces fameux relais et fusibles soit accessible aisément...

  22. #21
    Thetimax

    Re : Automate programmable PIC

    Bon j'ai reussi a recup des info sur le peson ce qui m'a permis de faire de test N'ayant pas la bonne alim pour l'alimenter, je n'ai pas les valeurs correctes. C'est un transfo 12Vdc 1000mA.
    Avec une charge d'environ 60Kg m'indique 3.2 mA...
    J'ai joint une photo de mon support de peson pour simuler une charge a l'aide de la vis puis son schéma électrique (désolé pour la qualité il viens d'un fax!)

    Voila...
    Images attachées Images attachées

  23. #22
    Thetimax

    Re : Automate programmable PIC

    Je viens de brancher le peson sur la carte easyPIC (Sur RA2 ) avec un programme d'exemple qui renvoi la valeur mesurée sur une diode, la diode change légèrement d'intensité lorsque je fais varier la charge. Que dois je rajouter a mon debut de code pour pouvoir afficher la valeur sur le lcd??

    Merci

  24. #23
    Thetimax

    Re : Automate programmable PIC

    sbit LCD_RS at RB4_bit;
    sbit LCD_EN at RB5_bit;
    sbit LCD_D4 at RB0_bit;
    sbit LCD_D5 at RB1_bit;
    sbit LCD_D6 at RB2_bit;
    sbit LCD_D7 at RB3_bit;

    sbit LCD_RS_Direction at TRISB4_bit;
    sbit LCD_EN_Direction at TRISB5_bit;
    sbit LCD_D4_Direction at TRISB0_bit;
    sbit LCD_D5_Direction at TRISB1_bit;
    sbit LCD_D6_Direction at TRISB2_bit;
    sbit LCD_D7_Direction at TRISB3_bit;



    void main()
    {
    TRISB = 0; //LCD
    PORTB = 0xFF;
    TRISB = 0xff;
    ANSEL = 0x04; //entrée AN
    ANSELH = 0;
    TRISA = 0xFF; //entrée CAN
    PORTC = 0; //sorties relais

    Lcd_Init();
    Lcd_Out(1, 1, "Kg:");

    }
    Que manque t'il?? j'ai du mal a comprendre comment je peut faire afficher la valeur a l'ecran...

    Merci

  25. #24
    invite7a49d0d5

    Cool Re : Automate programmable PIC

    Bonsoir,

    en fait t'as une tension 0-5VDC sur ton entrée ADC...
    et la conversion est en 10bits...
    ce qui donne des valeurs entre 0 et 1023...
    comme résultat de la conversion...

    pour afficher le poids avec ta valeur (0 @ 1023),
    il faut calculer et trouver la formule (règle de trois)
    pour "convertir" la tension en poids...
    en néspérant que cela soit linéaire...

    et pour afficher un nombre sur un LCD, il faut le convertir en code ASCII...
    comme l'explique l'ami DAUDET (que je salue) dans ce fil:
    http://forums.futura-sciences.com/el...decimal-2.html

    vede
    ;O]
    _____________
    ...

  26. #25
    Thetimax

    Question Re : Automate programmable PIC

    Merci pour cette reponse,

    Oui je confirme, la courbe est lineaire, j'ai pu l'observer sur un des schema du peson...
    Je n'ai pas de 10V a portée de main donc la valeur de mon peson est fausse (donc je n'obtiens pas de 5V mais quelques mV...

  27. #26
    Thetimax

    Re : Automate programmable PIC

    Peut tu m'expliquer? car sur post que tu m'a donner, je ne comprend pas vraiment. J'ai reussi a faire un programme avec des bouts d'autres prog (pour sonde de temp 1820ds) cela ne fonctionne pas tres bien mais je peut qd meme constater une legere variation.

    Merci par avance

  28. #27
    Thetimax

    Re : Automate programmable PIC

    Petite question a propos du branchement du peson:
    + exitation => 10V
    - exitation => -10V
    + signal => pin RA2
    - signal ????

    Merci!!

  29. #28
    invite7a49d0d5

    Cool Re : Automate programmable PIC

    re ;O]

    les sondes DS1820 n'envoient pas une tension en fonction de la température...
    elles zutilisent le protocole 1Wire... pour "envoyer" la température...
    mes zexpérimentations : http://vede.free.fr/electronique/ds18b20/

    pour le peson, attention, la plage "supportée" par l'entrée ADC du PIC est de 0-5VDC...
    il te faut "transformer" ton +/- 10VDC en 0-5VDC pour l'adapter à l'entrée ADC de ton PIC...

  30. #29
    Thetimax

    Re : Automate programmable PIC

    oui je sais bien pour la plage d'entrée, mais je n'ai pas d'alim alors je ne risque pas grand chose...

  31. #30
    Thetimax

    Re : Automate programmable PIC

    voici le code....

    sbit LCD_RS at RB4_bit;
    sbit LCD_EN at RB5_bit;
    sbit LCD_D4 at RB0_bit;
    sbit LCD_D5 at RB1_bit;
    sbit LCD_D6 at RB2_bit;
    sbit LCD_D7 at RB3_bit;

    sbit LCD_RS_Direction at TRISB4_bit;
    sbit LCD_EN_Direction at TRISB5_bit;
    sbit LCD_D4_Direction at TRISB0_bit;
    sbit LCD_D5_Direction at TRISB1_bit;
    sbit LCD_D6_Direction at TRISB2_bit;
    sbit LCD_D7_Direction at TRISB3_bit;

    const unsigned short TEMP_RESOLUTION = 9;
    char *text = "000.0000";
    unsigned temp;

    void Display_Temperature(unsigned int temp2write) {
    const unsigned short RES_SHIFT = TEMP_RESOLUTION - 8;
    char temp_whole;
    unsigned int temp_fraction;

    if (temp2write & 0x8000) {
    text[0] = '-';
    temp2write = ~temp2write + 1;
    }

    // Extract temp_whole
    temp_whole = temp2write >> RES_SHIFT ;

    // Convert temp_whole to characters
    if (temp_whole/100)
    text[0] = temp_whole/100 + 48;
    else
    text[0] = '0';

    text[1] = (temp_whole/10)%10 + 48; // Extract tens digit
    text[2] = temp_whole%10 + 48; // Extract ones digit

    // Extract temp_fraction and convert it to unsigned int
    temp_fraction = temp2write << (4-RES_SHIFT);
    temp_fraction &= 0x000F;
    temp_fraction *= 625;

    // Convert temp_fraction to characters
    text[4] = temp_fraction/1000 + 48; // Extract thousands digit
    text[5] = (temp_fraction/100)%10 + 48; // Extract hundreds digit
    text[6] = (temp_fraction/10)%10 + 48; // Extract tens digit
    text[7] = temp_fraction%10 + 48; // Extract ones digit

    // Print temperature on LCD
    Lcd_Out(2, 5, text);
    }
    void main() {

    {
    TRISB = 0; //LCD
    PORTB = 0xFF;
    TRISB = 0xff;
    ANSEL = 0x04; //entrée AN
    ANSELH = 0;
    TRISA = 0xFF; //entrée CAN
    PORTC = 0; //sorties relais
    C1ON_bit = 0; // Disable comparators
    C2ON_bit = 0;

    Lcd_Init(); // Initialize LCD
    Lcd_Cmd(_LCD_CLEAR); // Clear LCD
    Lcd_Cmd(_LCD_CURSOR_OFF); // Turn cursor off
    Lcd_Out(1, 1, " Poids: ");
    // Print degree character, 'C' for Centigrades
    Lcd_Chr(2,13,223); // Different LCD displays have different char code for degree
    // If you see greek alpha letter try typing 178 instead of 223

    Lcd_Chr(2,14,'C');

    //--- Main loop
    do {
    //--- Perform temperature reading
    ADC_Read(2); // Onewire reset signal
    // Issue command CONVERT_T
    Delay_us(120);

    // Issue command READ_SCRATCHPAD

    temp = ADC_Read(2);


    //--- Format and display result on Lcd
    Display_Temperature(temp);

    Delay_ms(500);
    } while (1);
    }


    }

Page 1 sur 7 12 3 4 5 6 DernièreDernière

Discussions similaires

  1. Automate programmable
    Par invitee11f8059 dans le forum Technologies
    Réponses: 4
    Dernier message: 04/09/2009, 13h54
  2. Automate programmable
    Par invitea96edd4e dans le forum Technologies
    Réponses: 6
    Dernier message: 25/12/2008, 12h17
  3. automate programmable
    Par invite13e724e8 dans le forum Électronique
    Réponses: 0
    Dernier message: 17/07/2008, 23h57
  4. Automate programmable
    Par inviteffb08c52 dans le forum Électronique
    Réponses: 11
    Dernier message: 15/05/2007, 09h56
  5. automate programmable
    Par invite4ce7f495 dans le forum Électronique
    Réponses: 4
    Dernier message: 25/12/2006, 23h16
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...