LinuxCNC tourne sur la carte BeagleBone Black

Discussion dans 'EMC2 / LinuxCNC' créé par Marc PELTIER, 9 Octobre 2013.

  1. Marc PELTIER

    Marc PELTIER habitué

    Messages:
    125
    Inscrit:
    1 Juin 2010
    Localité:
    89500
    Bonjour à tous !

    J'ai eu un peu de temps pour installer la dernière version de MachineKit sur ma BBB.

    MachineKit est une image, sur carte microSD de 4Go, d'une installation fonctionnelle de LinuxCNC version 2.6.? pre, sur Debian Wheezy 7.3., avec quelques configurations préparées pour les trois cartes de drivers pour BeagleBone Black disponibles sur le marché.

    J'ai téléchargé le fichier compressé de l'image (~ 1 Go) depuis le site http://bb-lcnc.blogspot.fr/p/machinekit_16.html, sur un PC windows 7, J'ai vérifié la checksum avec le logiciel md5sum, puis j'ai créée l'image sur une carte microSD de 4Go, avec le logiciel Win32diskimager.

    La carte SD a été ensuite insérée dans la BBB, celle-ci a été branchée sur une alim 5V 2A, sur une télé par un câble microHDMI - HDMI, et sur un hub USB pour pouvoir brancher en aval un clavier, une souris et éventuellement de la mémoire sur USB.

    A la mise sous tension, la BBB met assez longtemps pour booter sur Debian. Login : linuxcnc, password : linuxcnc, et c'est parti : on est dans un environnement graphique complet, sur un écran 1920x1080.
    Première chose, mettre en place un clavier français. Ensuite, explorer un peu : La racine des répertoires de la carte SD s'appelle linuxcnc, et elle contient un répertoire qui s'appelle aussi linuxcnc.

    J'ai mis du temps à comprendre que l'image comprend les sources non compilées, et j'ai pataugé longtemps.
    Voici la séquence de commande qui a finalement abouti :
    Depuis la racine de la carte SD:
    Code:
    cd linuxcnc
    cd src
    ./autogen.sh
    ./configure --with-platform=beaglebone --with-xenomai --with-posix --enable-emcweb
    make
    sudo make setuid
    cd ..
    cd ..
    . ./scripts/rip-environment
    linuxcnc
    
    La compilation après make prend beaucoup de temps, mais la dernière commande débouche sur un moment assez agréable : Un panneau de choix de configurations surgit. Les seules qui nous concernent sont dans la branche ARM. J'ai choisi BeBoPr+bridge, dont la configuration de broches semble être un standard naissant.
    L'écran d'accueil d'AXIS suit, puis le panneau AXIS familier, agrémenté de deux indicateurs de température (la configuration concerne une imprimante 3D).

    Bref, ça marche!!! :P :P J'ai simulé l'usinage de quelques exemples de G-Code fournis, sans problème, bien que rien ne soit branché à la BBB pour l'instant.

    Quelques bémols temporaires :
    1 - L'installation de Debian proposée a sans doute été tronquée pour rentrer avec LinuxCNC sur 4 Go, et ne comprend même pas un éditeur ni un visualisateur de fichier. A rajouter.
    2 - Je n'ai pas retrouvé StepConf wizard, mais c'est peut-être parce que la version de LinuxCNC est celle en développement (2.6 pre).

    Yeah!
     
    Dernière édition par un modérateur: 16 Avril 2015
  2. tranquille

    tranquille pilier

    Messages:
    3 307
    Inscrit:
    12 Avril 2008
    Localité:
    Aveyron - France
    Je suis ce post avec beaucoup d'attention mais je galère un peu
    Il me semble qu'il manque un synoptique de ta machine afin que je comprenne un petit peu ... le rôle des différentes cartes, les interfaces nécessaires, le type de moteur piloté, bref, un petit schéma à main levée me faciliterai la compréhension, si tu as une minute ... merci
     
  3. Marc PELTIER

    Marc PELTIER habitué

    Messages:
    125
    Inscrit:
    1 Juin 2010
    Localité:
    89500
    Ma machine, pour l'instant, est simplissime : la carte BBB, et c'est tout!
    Comme dit plus haut, cette carte est un ordinateur autonome, sur lequel on peut brancher un écran, un clavier et une souris, pour faire tourner une variété de Linux avec noyau temps réel, supportant LinuxCNC.
    Pour l'instant, j'en suis là, et ça marche, ce qui est assez stupéfiant pour moi qui ai connu les débuts de l'informatique !

    Mais la carte BBB n'est pas seulement un ordinateur : c'est aussi deux rangées de 46 broches, c'est à dire plein de signaux grâce auxquels LinuxCNC pourra commander tout ce qu'on veut.

    Mon intention initiale était d'implanter deux moteurs asservis en position, ce que j'essaierai, mais dans un deuxième temps. Dans l'immédiat, j'ai l'intention d'interfacer une carte RAMPS-FD aux broches de la BBB, directement par une trentaine de fils et des broches terminales mâles ou femelles, en suivant ce schéma :



    Edité le 15 avril : Attention, ce schéma concerne la RAMPS originale, qui fonctionne normalement sous 5V, et n'est pas compatible avec la BBB. Si vous voulez tenter cette réalisation, utilisez le schéma publié ce jour, plus loin dans le fil.

    Pour savoir ce qu'est la RAMPS-FD, voir ici : http://www.geeetech.com/wiki/index.php/Ramps-FD
    Cette carte regroupe 6 drivers 2A pour moteurs pas-à-pas, des canaux PWM, et des entrées analogiques pour thermistors, ou logiques pour fins de course. Elle est conçue pour les imprimantes 3D, mais elle peut aussi se voir comme une carte 6 axes. J'ai acheté la mienne 20€ sur ebay. Il faut rajouter les drivers embrochables, environ 4€ pièce. Autrement dit, tout ça est très économique, et, je pense, très très efficace.
    Je vous tiendrai au courant de mes progrès.

    BBB2RAMPS.png
     
    Dernière édition par un modérateur: 16 Avril 2015
  4. gtt38

    gtt38 nouveau

    Messages:
    36
    Inscrit:
    2 Avril 2010
    Moi j'ai enfin reussi a faire tourné des moteurs !!!
    Mais j'y ai passé toute la nuit !
    Je suis sur 2 Beaglebone avec 2 cape Xylotex Beaglecnc et 2 cartes chinoises differentes
    Merci a Jeff de Xylotex !!! Son systeme est super bien fait quand on comprends le truc..

    Beagle2.jpg

    Beagle1.jpg
     
  5. gtt38

    gtt38 nouveau

    Messages:
    36
    Inscrit:
    2 Avril 2010
    Dernière édition par un modérateur: 16 Avril 2015
  6. wika58

    wika58 Modérateur

    Messages:
    7 680
    Inscrit:
    17 Décembre 2006
    Localité:
    F-54560 Longwy <>Thionville
    Bonjour à tous,
    Je découvre seulement ce post super interessant qui court depuis 4 mois :oops: .
    Ca m'interrese bcp car j'ai une petite CNC qui tourne sous EMC2 sur un vieux PC que j'ai installer dans un pseudo-meuble à roulettes.
    Je n'y conais pas grand chose en Linux mais j'ai un de mes bon amis qui est informatien en systémes embarqués et qui me fait des applications.
    Et justement pour le moment, il est en train de developper autour d'une BBB une application de domotique/alarme...
    Il a d'ailleur developpé une carte interface...
    Et donc il connait le produit et pourrait m'aider à faire la migration de ma CNC. Et il y a peut-être des synergies possibles...

    Je vais donc suivre ce poste avec grand intérêt.

    Et un tout grand merci pour le partage.
     
  7. duredetrouverunpseudo

    duredetrouverunpseudo pilier

    Messages:
    1 969
    Inscrit:
    15 Janvier 2008
    Pourquoi se nrpas encore répandu ?

    La même chose avec mach3 et sa devient la révolution qu'il faut absolument avoir :lol:
     
  8. douardda

    douardda à définir

    Messages:
    307
    Inscrit:
    19 Septembre 2010
    Localité:
    Paris (75) / Saint-Pierre-sur-Erve (53)
    Syntax error!

    Ici on parle de logiciels libres qui tournent avec un OS libre sur des plate-formes matérielles (relativement) ouvertes...

    Alors, certes y'a moins bien, mais c'est plus cher :wink:

    David
     
  9. carlos78

    carlos78 pilier

    Messages:
    1 053
    Inscrit:
    23 Décembre 2010
    A part l'encombrement de la BBB, je me pose la question de savoir quel est l'interet de remplacer sur une CNC amateur le couple classique carte-mère de PC + carte video par une mini carte-mère ?
    L'idéal serait de faire tourner linuxcnc sur une tablette android du commerce ... Linux Ubuntu tourne déja sur tablette, Il suffit peut -être d'attendre la version temps réel.
    Sinon ce sujet est interessant.

    Carlos78
     
  10. gtt38

    gtt38 nouveau

    Messages:
    36
    Inscrit:
    2 Avril 2010
    En tout cas ça tourne j'ai le meme pilotage qu'avec un PC !!!
    J'ai réussi a faire fonctionner le tout mais je regrette une légère lenteur du systeme (linuxcnc met 2 fois plus de temps a se lancer que sur mon PC)
    Pour Mach3 je ne vois pas l'interet puisque Linuxcnc est 10x mieux.

    Mon systeme définitif sera sur un cape FPGA (j'attends sa sortie avec impatience !!) et je partirai sur une carte fille Mesa avec (par ex 7i47) En fait le cape FPGA remplacera une carte PCI de type 5i24 chez Mesa.

    Du coups je vends un de mes 2 capes port // si ca interesse quelqu'un, MP moi....
     
  11. coredump

    coredump pilier

    Messages:
    3 166
    Inscrit:
    8 Janvier 2007
    Localité:
    Côte d'azur
    L'interet est d'avoir plein d'entrées/sorties avec de faible temps de latence, et la possibilité d'expansion moins chere que les cartes pci/pcie.

    Sur un tablette aucune entrée sortie a part un USB (et encore...). Et comme linuxcnc ne supporte pas, et ne supportera jamais l'usb, la messe est dite.

    A part ca la carte beagle bone black est en rupture chez conrad et RS... Pas de réappro avant un certain temps...
     
  12. Marc PELTIER

    Marc PELTIER habitué

    Messages:
    125
    Inscrit:
    1 Juin 2010
    Localité:
    89500
    Bonjour à tous!

    Comme annoncé il y a un certain temps, j'ai interfacé, sur la carte BeagleBone Black (dite "BBB"), une carte pour imprimante 3D de type RAMPS-FD (6 axes pour moteurs pas-à-pas, 6 fins de courses, 4 entrées analogiques, 5 sorties PWM). La RAMPS-FD, très économique, est conçue comme "shield" d'une carte Arduino DUE, qui, comme la BBB, fonctionne sous 3,3V. Il est donc possible de connecter des signaux issus de la BBB à certaines broches de la RAMPS-FD, à condition d'avoir le bon schéma de câblage.

    Le problème est compliqué par le fait que les broches de la BBB sont multiplexées, et peuvent adopter une demi-douzaine de fonctionnalités différentes, en fonction d'un paramétrage par logiciel. La procédure est décrite ici, pour ceux que ça intéresse : https://learn.adafruit.com/introduction-to-the-beaglebone-black-device-tree/overview

    Pour me simplifier la vie, j'ai adopté le paramétrage d'une carte existante pour BBB, la BeBoPr+Bridge, qui dispose déjà d'une configuration opérationnelle pour LinuxCNC, présente sur la MachineKit de Charles SteinKueler, citée dans des posts précédents.

    Voici le résultat de mes analyses et synthèses concernant les brochages respectifs de BBB et RAMPS-FD :

    Muni de ces précieuses informations (petits veinards!), d'un fer à souder et de quelques connecteurs et fils colorés, on peut aboutir à ça :
    http://youtu.be/GQGVZTl_gy8

    Nota : Depuis cette réalisation, Charles Steinkueler a publié une "Cape" équivalente à la Ramps-FD, appelée "CRAMPS" pour brancher directement sur la BBB. La CRAMPS a les mêmes fonctionnalités que la Ramps-FD (dont elle est dérivée), mais son interface avec la BBB est plus complète, dans le sens où plus de signaux sont routés entre les deux cartes, avec notamment des entrées pour encodeurs, des sorties pour servos RC, le bus SPI, etc... Malheureusement, la carte CRAMPS n'est pas disponible sur le marché, et C. Steinkueler n'envisage pas de la commercialiser.
    Il sera donc préférable, à l'avenir, d'adopter le brochage de la CRAMPS plutôt que celui de la BeBoPr, mais ça fait beaucoup plus de fils à souder. J'envisage de créer un circuit souple simple face, qui permettra de transformer une Ramps-FD, économique et disponible sur ebay, en CRAMPS complète.
     

    Fichiers attachés:

    Dernière édition par un modérateur: 16 Avril 2015
  13. moissan

    moissan pilier

    Messages:
    8 756
    Inscrit:
    13 Mars 2012
    Localité:
    FR-16 angouleme
    cette carte BeagleBone Black est vraiment interressante avec ses broche d'entré sortie directe : encore plus riche que la prise d'imprimante des vieux PC

    tant qu'il reste des vieux PC disponible les vieux PC restent economique et simple , mais si il faut construire et vendre quelque chose de nouveau on ne peut pas y mettre une vieille carte mere de recuperation

    cette carte BeagleBone Black est vraiment la solution d'avenir , et vu le succes qu'elle a je pense qu'elle sera disponible longtemps , ou sera remplacé par des version suivantes compatible

    je me mefie beaucoup plus d'autre ordinateur grand public qui changent ou disparaissent trop vite : le temps de comprendre comment ça marche ce n'est deja plus disponible

    c'est vraiment un bonne chose que les programmeur de logiciel libre puisse utiliser un materiel independant !

    tant qu'il reste des vieux PC on peut utiliser linuxCNC en sachant que l'on poura garder le même linuxCNC avec une carte plus moderne pour les projet suivant
     
  14. coredump

    coredump pilier

    Messages:
    3 166
    Inscrit:
    8 Janvier 2007
    Localité:
    Côte d'azur
    Avenir c'est pas sûr, TI est notoirement connu pour ses délais de livraison exotiques et l'abandon en marche de composants. De plus ce genre de microcontroleur a une vie très courtes (quelques années au plus). On est plus a l'époque du pic 16F84.
    D'ailleurs les BBB sont presque en rupture de stock partout...
     
  15. moissan

    moissan pilier

    Messages:
    8 756
    Inscrit:
    13 Mars 2012
    Localité:
    FR-16 angouleme
    c'est vrai ... je vien de chercher un peu et c'est en rupture de stock partout ... trop de succès ou gros probleme ?

    j'aime bien olimex , et il ont plusieurs olinuxino ... carte du même genre bon pour linux et avec different prossesseur de marque differentes pour ne pas dépendre d'un seul
    https://www.olimex.com/Products/OLinuXino/open-source-hardware

    ça fait des carte un peu plus cher que le barbone black mais avec plus de connexion possible , donc ça peut même reduire le prix total du montage

    du genre plusieur port USB
    vrai prise VGA pour utiliser n'importe quel vieux moniteur au lieu du HDMI
    port suffisant pour connecter directement des ecran LCD a prix très faible quand on veut se limiter a un 7 pouce ou un 10 pouce pour une machine autonome

    helas en cherchant dans gogol pas de trace d'instalation de linuxCNC
     
    Dernière édition par un modérateur: 16 Avril 2015
Chargement...
Articles en relation Forum Date
Combien de Mo pour un dessin avec LinuxCNC EMC2 / LinuxCNC 8 Avril 2015
Probleme LinuxCNC Ferme Scupture faire a moitié EMC2 / LinuxCNC 7 Avril 2015
Des vagues sur l'axe y avec linuxCNC EMC2 / LinuxCNC 6 Mars 2015
(résolu) LinuxCNC Modification des raccourcis clavier EMC2 / LinuxCNC 6 Février 2015
Premiers contacts avec LinuxCNC, besoin d'aide... EMC2 / LinuxCNC 22 Janvier 2015

Partager cette page