1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

dsDRO

Discussion dans 'Electronique spécifique CNC' créé par MaX-MoD, 28 Décembre 2007.

  1. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    dsDRO
    Chose promise, chose due!
    Et quitte à faire les choses, autant les faire bien!

    [​IMG]


    Intro:


    dsDRO est un interface DRO (Digital ReadOut). Un DRO est un affichage sur machine outil de la position de l'outil.
    Il est réalisé autour d'un dsPIC et fera l'interface entre les règles digitales chinoises et un PC (écran LCD possible dans le futur).


    Les caractéristiques:



    Il y a:
    • 3 ports pour Pieds A Coulisse digitaux
    • 1 port utilisable soit pour un PAC, soit pour un encodeur quadrature (par exemple, pour un diviseur etc.)
    • Une entrée pour une fourche optique ou un capteur Hall pour mesurer la vitesse de rotation d'une broche
    • Un port d'extensions, pour le LCD et les prochaines évolutions!

    Interfaces supportés:
    • Interface "2x24 bits"
    • interface 7 BCD
    • Interface PAC castorama

    Affichage des positions :
    • Affichage sur un programme dédié: dsView
    • Affichage sur un écran LCD 4*20 ou graphique (cela viendra après que dsDRO soit complètement opérationnel sur PC)

    et bien sûr il y aura un bootloader pour upgrader le firmware si une nouvelle fonction est apparue entre temps, ou qu'un bug a été corrigé :)


    Si il y a des personne qui veulent participer, vous êtes les bienvenues :wink:


    Avancement de la V1: 100%


    La première version de dsDRO est terminée. La plus part des fonctions prévues sont implémentées et testées, d'autres viendront par la suite.

    • Interface PC : OK
    • Initialisation de l'horloge, ports, etc. FAIT
    • Communication bas niveau (E/S série): FAIT
    • Capture des données des règles, protocole 2*24: 100% a tester
    • Capture des données des règles, protocole 7BCD: 100% a tester
    • Capture des données des règles, protocole "casto": OK
    • Capture d'interface TTL : 0%
    • Capture de la vitesse de la broche: 100% à valider
    • Entrée encodeur quadrature: 100%
    • Gestion bas niveau des menus: OK
    • Menus: 100%
    • Mise en forme des données pour les afficher:OK
    • Sauvegarde de la configuration en mémoire non volatile : OK
    • Alimentation (1.5V/-1.5V) des règles: Terminé. à valider
    • Interface 1.5V/5V entre règle et PIC: Terminé. à valider
    • dispositif permettant de forcer les sortie DATA et CLOCK des règles pour modifier leur mode de fonctionnement: Terminé. à valider
    • Routage de la carte mère: TERMINE
    • Routage des cartes filles (interface règle=>TTL) : TERMINE

    Page du projet


    Toutes les informations utiles sont sur origo.
    Il y a un serveur SVN pour récupérer les fichiers sources du code du dsPIC et du projet KiCAD pour le PCB.
    La doc est encore un peu pauvre, elle doit recevoir encore pas mal de pages.
    http://dsdro.origo.ethz.ch/wiki/doc




    Assembler sa carte


    La V1.0 est prête.
    Les derniers fichiers (Firmware et dsView) seront bientôt à disposition. http://dsdro.origo.ethz.ch/download

    Un dossier de construction est commencé, mais pas encore fini:

    http://dsdro.origo.ethz.ch/wiki/doc#toc0


    Bêta-testeurs


    Pour signaler un bug ou proposer une amélioration, il y a un système de gestion intégré à Origio:
    http://dsdro.origo.ethz.ch/issues


    Photos


    [​IMG]

    Proto de la version finale, à 30F4011. Il manque le connecteur d'extension​


    Max
     
  2. romteb

    romteb Administrateur

    Messages:
    1 908
    Inscrit:
    23 Octobre 2006
  3. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    dsDRO
    Ca avait l'air d'intéresser pas mal de monde, et comme ça risquait de m'être utile un jour ben je me suis lancé :wink:

    Je vais peut être aussi dépoussiérer ma platine 18F4550 USB.
    J'ai quelques trucs là dessus, je verrais ce que je peux en faire... vu que le port série est en voie de disparition :sad:

    et même si ça fait le 3e projet que je mène de front, ça me permet de ne pas rester tout le temps sur le même projet, ça me gonfle au bout d'un moment.

    A+
    Max
     
  4. nektarfl

    nektarfl Compagnon

    Messages:
    837
    Inscrit:
    19 Novembre 2007
    Localité:
    POMMEUSE (77)
    dsDRO
    Je sens que ton projet pourrait être intéressant, mais certains termes m'échappent (OK, en électronique, j'ai à chaque fois décroché aux transistors :oops: ) Si tu pouvais expliquer le but final (avec des mots français pour que le nul que je suis puisse comprendre le pourquoi du comment) je pense que ça aiderait.

    1) qu'est-ce qu'une interface DRO?
    2) qu'est-ce qu'un dsPIC? ou un PIC?

    BCD : Binaire Codé Décimal?

    3) qu'est-ce qu'un C30?

    Ensuite, tu codes ... quel langage pour quel processeur/machine?

    Comme tu le vois, je te soutiens moralement dans ton projet, mais j'avoue que là, mon neurone a vraiment du mal! :lol:
     
  5. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    dsDRO
    Les DRO (pour Digital ReadOut) sont sont des afficheurs digitaux, principalement pour les coordonnées d'une machine outil.
    Le but est d'utiliser des pieds à coulisse électroniques, qui possèdent une sortie série de la position mesurée, et d'afficher les différentes coordonnées X,Y et Z (et même l'angle d'un axe A si on veut) sur un ordi ou un écran LCD plus grand et lisible que les afficheurs LCD des règles elles-même.

    une famille de microcontrôleurs vendu par Microchip, très performante et facile à programmer, en langage C (C30 est le compilo de Microchip)

    si je me souviens bien, oui :meganne:

    en C (C30) sur un PC et pour un microcontrôleur (petite bébête à 28-40+ pattes qu'on soude sur un circuit imprimé)

    hmm, oui je comprends, je vais essayer de faire le ménage dans tout ça demain (enfin ce midi)
    ah, et fait bien gaffe à ton neurone, il est important celui-là^^

    Max
     
  6. wika58

    wika58 Modérateur

    Messages:
    10 369
    Inscrit:
    17 Décembre 2006
    Localité:
    F-54560 / Lorraine
    dsDRO
    Super Max-MoD,

    C'est bien les gens qui tiennent leurs promesses :wink:

    Comme mes prédécesseurs, je ne peu t'aider dans ce domaine... :???: ... mais je te soutien de toute mes forces pour que tu ailles au bout de ce projet....:wink:
    ... et que je puisse en profiter pour l'installer sur ma fraiseuse. :lol: :lol: :lol:

    Je suis en train d'installer 3 PàC montés en règles sur les 3 axes et je prévois déjà le câblage pour alimenter les PàC et rappatrier les infos... :roll:

    D'avance merci pour cette réalisation que tu vas partager. :smt038

    Pourrais-tu déjà faire une liste du matériel qu'il faudra pour réaliser cet interface DRO afin que je commence à chercher le matos... :wink:
     
  7. wika58

    wika58 Modérateur

    Messages:
    10 369
    Inscrit:
    17 Décembre 2006
    Localité:
    F-54560 / Lorraine
  8. nektarfl

    nektarfl Compagnon

    Messages:
    837
    Inscrit:
    19 Novembre 2007
    Localité:
    POMMEUSE (77)
    dsDRO
    Merci pour ces explications Max-Mod, je comprends maintenant bien mieux l'idée du projet, c'est de réaliser une visu 3D sur une machine. Je me sens désormais moins inutile car ayant, dans le passé programmé en objective C (NeXT et mac osX)
    La programmation devant alors traduire une valeur en une série de bits pour que l'afficheur allume les diodes correspondant à la valeur affichée (voire même autre chose en cas de besoin)

    Il est vrai que je n'ai jamais tenté de lire les valeurs qui étaient envoyées à partir d'un pied à coulisse numérique (est-ce un format numérique, ou une suite de caractères ASCII?)

    A priori, si un système de comptage permet de récupérer le passage de la broche en une position (par interruptions ?) Le calcul d'une vitesse de rotation doit pouvoir être faisable (si une horloge est aussi intégrée au système) mais peut-être cela complique-t-il l'idée initiale.
     
  9. wika58

    wika58 Modérateur

    Messages:
    10 369
    Inscrit:
    17 Décembre 2006
    Localité:
    F-54560 / Lorraine
    dsDRO
    La détection de rotation broche est très simple à faire avec un capteur opto... 8-)

    Le microcontrôleur a une horloge interne. Peut-être pas hyperprécise, mais la précision que l'on recherche sur la vitesse de broche... :roll:
    Si on fait un développement autour d'un PIC, pour la vitesse de broche, il faut juste une entrée supplémentaire et un bout de soft (que je suis incapable d'écrire ...) mais toute la gestion de l'afficheur ou de la liason vers le PC est déjà faite.

    C'est pour cela que je "suggérais" cette option supplémentaire (qui pourrait être faite dans une phase II du projet mais qui serait prévue dès le début au niveau du HW...) :roll:
     
  10. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    dsDRO
    alors les règles ont des protocoles de transmission série synchrone (comprendre une pin d'horloge et une pin de donnée) particulière.
    Elles sont décrites sur Yadro.de

    La liste du matériel requis est assez sommaire:
    -Un PC :P
    -Un pic programmé.
    -un quartz (4 à 7.37MHZ)
    -un MAX232 et ses condensateurs associés
    -une prise DB9
    -Des optocoupleurs seront peut-être à prévoir dans certains car car la masse des PAC est reliée au + de leur pile
    -de quoi faire un alim -1.5V (ou 1.5V dans le cas ou la masse de la machine est isolée de la masse du PIC)
    -De quoi monter la sortie à 1.5V à 5V (transistors/chip dédié?)
    -Des condensateurs au tantale (entre 1 et 10µF devraient suffire) pour se passer des piles dans les PAC
    -une source de courant 5V (à vue de nez, moins de 500mA), comme par exemple récupérée d'un port USB d'un PC


    La vitesse de la broche (je l'avais oubliée celle-la) aura son entrée dédiée.
    et en ce qui concerne l'horloge d'un PIC, avec un Quartz elle est hyper précise!
    La partie soft est simple, je vais peut-être même commencer par ça, car je serais en mesure de ne tester que ça, j'ai pas (encore) de PAC digital...

    Bien sur les suggestions sont bienvenues :wink:

    Je publierais le code actuel dans quelques temps, je dois d'abord commenter, nettoyer tout ça, etc.
    Mais je vous préviens de suite, la programmation sera très proche du silicone! (comprendre, il faut pas mal connaître l'HW du PIC)
    Je m'efforce de faire un code qui fasse le plus abstraction possible des manipulations de registres du PIC, pour avoir une évolutivité plus simple.

    A+
    Max
     
  11. legelbe

    legelbe Compagnon

    Messages:
    804
    Inscrit:
    7 Juillet 2007
    Localité:
    gelbique ( comines )
    dsDRO
    coucou, votre projet m'interesse au plus haut point. neanmoin, je suis une huitre en electronique :wink: . mais je ne demande qu'a apprendre. je suivrai donc ce fil avec interet......
     
  12. Pierreg60

    Pierreg60 Compagnon

    Messages:
    2 590
    Inscrit:
    1 Novembre 2006
    Localité:
    F-57700 Moselle
    dsDRO
    coucou, votre projet m'intéresse au plus haut point. néanmoins, je suis une huitre en électronique Wink . mais je ne demande qu'a apprendre. je suivrai donc ce fil avec intérêt......

    ben oui moi aussi.......
     
  13. wika58

    wika58 Modérateur

    Messages:
    10 369
    Inscrit:
    17 Décembre 2006
    Localité:
    F-54560 / Lorraine
    dsDRO
    Génial Max-MoD,

    Je vais commencer à rassembler tout ça. :roll:
    Dommage qu'on ne soit pas du même coin car des PAC j'en ai quelques'un (installés ou en attente de montage...).
    Et là, j'aurais pu t'aider et participer au projet...

    Pour le PIC, qu'elle référence ?

    Une question complémentaire:
    Le PC que je compte installer près de mes machines est un petit portable (HP Omnibook 6000) que mon amis est en train de me préparer sous Linux.
    Dans ton projet, qu'as-tu prévu du côté PC?
    Une aplication Windows (en C) ?
    C'est normalement portable sur Linux... :?:

    Je sais que certains sur ce forum sont intéressés par les applications de CNC sous Linux... :roll:
     
  14. MaX-MoD

    MaX-MoD Compagnon

    Messages:
    2 306
    Inscrit:
    17 Avril 2007
    Localité:
    Annecy (74)
    dsDRO
    oui on est quant même assez loin l'un de l'autre :lol:

    pour le PIC, c'est à peu près comme tu veux dans la famille des pic 16bits...
    il faut pas mal de mémoire, aussi le 30F4012 me semble bien proportionné.
    j'en vois déjà qui soureint à la lecture de cette dernière ligne, mais je connais bien plus sur les 30F et C30 que les usuels 16F87x :)

    coté PC, il faut juste un terminal série (même les MAC doivent en avoir un :P ), sinon je ferais une appli GTK linux portable sur win mac etc, vu qu'il y a apparemment des libs. RS232 itou itou :-D
    mais pour l'appli PC, je suis un gros noob alors ça risque de prendre du temps :wink:
    Je conaissais mieux Visual Basic mais c'est windaube uniquement (c'est caca tout plein et pas geek dutout)

    A+
    Max
     
  15. Doctor_itchy

    Doctor_itchy Modérateur

    Messages:
    3 554
    Inscrit:
    20 Avril 2007
    dsDRO
    hello

    je suis ton popost de pret

    pour moi si tu peu faire un truc autonome donc avec 3 axe et 3ecran lcd par axe , avec option habituelle pour remise a zero de l'axe , cotation en pouçe/millimetre , paver numerique pour rajouter une valeur sur un des axe ,ect

    voila le miminum a faire pour interesser tout le monde et moi en premier :lol:

    avec si possible entree pour regle chinoise et encodeur a quadrature !! commutable !!

    se serais le top

    (ps je suis occuper a router les pcb pour les carte servo , normalement la semaine prochaine je devrais commençer les tests ^^
     
Chargement...
Articles en relation
  1. david 007
    Réponses:
    0
    Affichages:
    1 306

Partager cette page