Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

[Help] Pilotage de moteur en position via Raspberry-Arduino
#1

Bonjour à tous,

Mon projet consiste à créer une machine qui permet de personnaliser des mugs en écrivant un texte dessus. Pour ça j'ai conçu un système d'axe sur lequel un stylo est accroché, et un centreur sur lequel le mug est fixé et qui peut tourner. Ainsi en combinant les mouvements de rotation du mug et de translation du stylo je peux écrire sur toute sa surface.

Seulement voilà, vient la partie programmation. J'ai choisi d'utiliser un Raspberry Pi 4 pour servir de cerveau. Celui-ci me permettra via Inkscape de transformer un mot en vecteur puis en Gcode. Je dois ensuite transmettre les données à un Arduino MEGA qui pilote pas moins de 7 moteurs (le système globale comporte plus de sous système mais c'est celui d'écriture qui m'intéresse ici)

Mon problème est que je ne trouve pas comment transmettre une série d'information de la Raspberry vers l'Arduino afin de piloter mes moteurs en position. J'ai compris comment dire à un moteur de s'allumer ou s'éteindre, mais ici je dois demander à plusieurs moteurs de faire X et Y degrés en même temps, puis X' et Y' degrés... Jusqu'à la fin de l'écriture.

Pour résumer:
   - Comment piloter des moteurs en position via un Raspberry connecté à un Arduino ?
   - Comment m'assurer que les tâches seront réalisées en même temps pour certaines, une fois la tâche précédente terminée pour d'autres ?

Merci pour vos réponses!
Répondre
#2

Superbe projet.

Il manque quelques informations : quel type de moteurs, nombre d'axes nécessitants des mouvements coordonnés ?

Le Gcode permet de piloter des axes de façons coordonnés :
Listes des codes : https://reprap.org/wiki/G-code/fr

Il existe un certain nombre de cartes permettant de dérouler du Gcode (souvent sur 4 axes max).
Par exemple : https://boutique.semageek.com/fr/1475-sh...-grbl.html

Jean-Francois Rousval
Répondre
#3

Merci!

J'utilise des moteurs NEMA 17. Pour les axes, j'en ai deux pour le traceur (un pour l'approche du stylo, un pour le déplacement du stylo le long du mug) et un axe de rotation sur le mug. Au final cela me fait deux axes à coordonner, trois si on compte le recul du stylo pour réaliser des formes non fermées.

Je connais le fonctionnement du Gcode pour avoir déjà usiné avec des CNC. Il doit bien exister un moyen de le faire sans passer par une carte? Ou alors la carte reste la solution la plus simple? (j'ai déjà un peu dépassé mon budget ^^')

J'ai surtout un problème de parallélisation car l'Arduino ne permet pas de réaliser plusieurs tâches non synchronisées en même temps. J'aimerais que le système globale puisse faire une routine pendant que le système d'écriture opère. Le plus simple serait d'utiliser deux Arduino je suppose, mais ne peut on pas trouver un code qui permet de faire cette parallélisation?
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)