Besoin d'aide: Port série et DMX - Projet: Table de tir

Bonjour à tous,

Alors voila, j'ai un projet sur lequel je travail actuellement avec un ami.

Nous sommes entrain de créer une table de tir (pour feu d'artifice) avec plusieurs arduinos. Nous voulons utilisé le protocole DMX pour envoyer, depuis le pupitre principal, les ordres de tirs des boîtiers déportés.

Nous avons également créer une interface graphique qui lis un fichier CSV (exporté depuis un logiciel de simulation) pour créer un plan de tir.

Tout allait bien jusqu’à ce qu'on s'heurte à un gros problème: le port série.

Nous avons une arduino méga avec un shield DMX et nous utilisons la librairie DMXSerial. Seulement, nous avons besoin d'un port série sur lequel envoyer les ordres depuis le PC jusqu’à la table. Nous ne voulons pas "charger" tout le plan de tir sur la carte mais bel et bien en live (envois de la trame au moment du lancement de la 'ligne').

Est-il possible d'utiliser ET le port série pour le shield DMX, ET un autre port série pour envoyer les ordres de tir depuis le PC jusqu’à la carte Arduino (MEGA).

Merci d'avance pour votre aide,
Cordialement,

renzejo:
...

Est-il possible d'utiliser ET le port série pour le shield DMX, ET un autre port série pour envoyer les ordres de tir depuis le PC jusqu’à la carte Arduino (MEGA).

bonjour
une mega comporte 4 ports serie hard

Merci bien de ta réponse très rapide !
C'est ce qu'il me semblait bien, pour faire passer le pc par un autre port série, on doit utiliser un convertisseur il me semble, comment en choisir un ? Enfin, plutot, lequel choisir ?
J'en vois beaucoup mais en RS232. Or il me semble que le RS232 utilise du 12V, donc incompatible ...

renzejo:
Merci bien de ta réponse très rapide !
C'est ce qu'il me semblait bien, pour faire passer le pc par un autre port série, on doit utiliser un convertisseur il me semble, comment en choisir un ? Enfin, plutot, lequel choisir ?
J'en vois beaucoup mais en RS232. Or il me semble que le RS232 utilise du 12V, donc incompatible ...

tu a aussi l'option de rerouter le dmx sur le shield vers serial1 2 ou 3 et de conserver le serial0 mega pour la liaison vers le PC.
çà doit etre assez trivial
lien vers la doc de ton shield dmx?

A vrai dire, je l'ai acheté sur tindie et je trouve pas la doc, je vais chercher un peu :wink:

renzejo:
A vrai dire, je l'ai acheté sur tindie et je trouve pas la doc, je vais chercher un peu :wink:

bonnes photos recto-verso :sunglasses:

http://www.ebay.fr/itm/172166602876?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

J'ai trouver le même sur ebay, et il y a la descriptions ci dessus ainsi que la doc ci dessous:

Je viens de voir qu'il y a un système de jumper qui dit ceci:

The following settings are configurable via the onboard jumpers:
• Send data via TX or Digital pin 4
• Receive data via RX or Digital pin 3
• Hardware slave mode or Software Controlled Slave/Master via Digital pin 2 (Required for RDM)
• Enable / Disable shield

Donc en modifiant on peut peut-être libérer le port série ?

renzejo:
http://www.ebay.fr/itm/172166602876?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

J'ai trouver le même sur ebay, et il y a la descriptions ci dessus ainsi que la doc ci dessous:

http://www.dfrobot.com/index.php?route=product/product&product_id=984#.Vv-VX8exrkI

Je viens de voir qu'il y a un système de jumper qui dit ceci:

The following settings are configurable via the onboard jumpers:
• Send data via TX or Digital pin 4
• Receive data via RX or Digital pin 3
• Hardware slave mode or Software Controlled Slave/Master via Digital pin 2 (Required for RDM)
• Enable / Disable shield

Donc en modifiant on peut peut-être libérer le port série ?

je pense à priori que "ton probleme" est bien plus simple que ça :grin:
j'avais regardé apres tes explications de debut de journée

  • la lib serialdmx permet l'utilisation du serial1 du 2560 mega (avec modif du .cpp // bien commenté :sunglasses: )
  • le(ton) shield dmx diffuse sur les "cavaliers 3 points au centre " les signaux vers serial
  • tu repique simplement TX/RX DMX au centre "3 points" et tu repique simplement vers TX1/RX1
    montage photo rapide

Euuuuuuh ... A tes souhaits mdrr

A vrai dire, je suis pas débutant mais je suis loin d'être expert. Du coup, je vois pas trop quoi changer dans le DMXSerial.cpp :confused:

Pour le repiquage, il faut mettre uniquement le connecteur du centre des jumpers ?

En tout cas, merci de ton aide !

EDIT: J'ai trouver la ligne à décomenter, j'ai réussi a compiler avec le Serial et le DMXSerial. Reste plus qu'a trouver comment repiquer les jumpers :slight_smile:

renzejo:
EDIT: J'ai trouver la ligne à décomenter, j'ai réussi a compiler avec le Serial et le DMXSerial. Reste plus qu'a trouver comment repiquer les jumpers :slight_smile:

:grin:
c'est ce qu'il y a de plus simple 8)
tu vire les cavaliers TX/RX du shield DMX
tu fais une simple liaison physique entre centre TX/RX des options cavaliers vers TX1/RX1

tiens le forum au courant de tes essais :wink:

Merci infiniment de ton aide !
Je test ça demain et je vous tiens au courant :wink:

Effectivement, tout va bien, j'arrive a envoyer le channel et la valeur via le port série !
Merci de ton aide !!!!

renzejo:
Effectivement, tout va bien, j'arrive a envoyer le channel et la valeur via le port série !

ok
en fait ton mega sert juste à convertir/interpreter/transferer un enregistrement CSV reçu par serial0 vers DMX (serial1) ?
a part ça , il ne fait rien d'autre ?

oui c'est ça :slight_smile:

renzejo:
oui c'est ça :slight_smile:

Alors , "il" devrait s'en sortir :grin: