Age : 48 Localisation : Montreal, QC, Canada Nombre de messages : 128 Date d'inscription : 28/06/2012
Sujet: protocole xpressnet (implementation) Ven 3 Mai 2013 - 1:27
Salut,
attention c'est plutot "bas-niveau"
je suis en train de me faire un PCO (Panneau de Controle Optique), à l'aide d'un Arduino. Le PCO va se comporter comme un throttle Xpressnet.
Je mettrais des photos plus tard, mais j'arrive maintenant à communiquer avec ma centrale, elle me dit bonjour, j'arrive visiblement a lui dire de couper le courant. Elle ne me renvoit plus d'erreur (genre "j'arrive pas a lire ce que tu m'as envoyé") Bref, ca commence a ressembler a quelque chose.
Par contre je n'arrive pas a envoyer une commande pour faire tourner un moteur d'aiguille. Est ce que quelqu'un pourrait me dire ou je merde.
Pour piloter un switch motor qui devrait etre a l'adresse 39 j'envois la commande
J'ai essayé plusieurs combinaisons, mais j'ai pas encore essayé brutalement toutes les combinaisons.
Est ce que quelqu'un aurait un dump de commande Xpressnet? ou mieux saurait me dire ce que j'ai loupé?
Merci
jpp38 membre s'en étant allé
Age : 76 Localisation : Grenoble Nombre de messages : 412 Date d'inscription : 03/11/2009
Sujet: Re: protocole xpressnet (implementation) Ven 3 Mai 2013 - 8:15
Bonjour ,
1) a priori pour activation, ce devrait être:
0x52 0x09 0x8E
Autrement dit, le bit D1 (bit3 du 3eme octet) devrait être à 1 et non à 0. Dans certaines versions de la doc. Xpressnet (celle quej'utilise en partiulcier), il y avait une erreur sur ce point.
N'oublie pas de remettre l'impulsion à zéro après (encore que, avec les servos, je ne sais pas).
2) Il est possible aussi qu'il faille décaler ton adresse module de 1 (parce que ça part de 0, avec les centrales Lenz par exemple, mais pas avec les centrales Roco, qui partent de 1). Donc à essayer.
Et donc ça serait 0x52 0x08 0x8E
Bonne journée.
JP
lebricolo93 Membre
Age : 58 Localisation : Noisy le grand Nombre de messages : 119 Date d'inscription : 16/05/2008
Sujet: Re: protocole xpressnet (implementation) Ven 3 Mai 2013 - 11:13
Bonjour bon ben je propose mon tiercé egalement mais dans mon cas c'est un multiple En effet pour les aiguillages il faut envoyer deux ordres un pour demarrer l'impulsion et le suivant pour l'arreter
pour devie un aiguillage a l'adressee 39 on demarre l'impulsion 0x52 0x09 0x8d 0xd6 une pause on arrete l'impulsion 0x52 0x09 0x85 0xde
pour le faire revenir a sa position initiale 0x52 0x09 0x8c 0xd7 pause 0x52 0x09 0x84 0xdf
Alors comme l'a dit JPP38, pour lenz les addresses commence a 0 donc l'addresse 39 c'est en réalite l'addresse 38 pour Lenz
donc le deuxieme octet contient la partie entiere de l'addresse divise par 4 soit 38 / 4 = 9 pour le troisieme les bit 1 et 2 c'est le modulo 4 de l'addresse ( ici 38 ) qui permet de determine quelle aiguille sur le groupe de 4 est impacte le bit 3 permet de declencher ou arreter l'impulsion le bit 0 determine si l'aiguille est devie ou pas et on ajout 128 a tout cela
j'espere que j'ai ete clair j'ai fait les explications de memoire donc elle sont donc peut être inexact notament sur les numeros des bit du troisieme octet par contre les valeur hexa viennent de mon prog, et cette partie fonctionne en principe
cordialement jl
jpp38 membre s'en étant allé
Age : 76 Localisation : Grenoble Nombre de messages : 412 Date d'inscription : 03/11/2009
Sujet: Re: protocole xpressnet (implementation) Ven 3 Mai 2013 - 13:01
A posteriori d'accord avec JL
J'ai attaqué les problèmes de "peupliers" un peu trop tôt ce matin.
JP
patrick Membre
Age : 55 Localisation : ici Nombre de messages : 2807 Date d'inscription : 18/01/2008
Sujet: Re: protocole xpressnet (implementation) Ven 3 Mai 2013 - 14:25
nzin a écrit:
je suis en train de me faire un PCO (Panneau de Controle Optique), à l'aide d'un Arduino.
Nicolas, on dit: TCO (Tableau de Contrôle Optique)
Ceci-dit, je crois que tu as là des pistes de solutions pour ton problème...
nzin Membre
Age : 48 Localisation : Montreal, QC, Canada Nombre de messages : 128 Date d'inscription : 28/06/2012
Sujet: Re: protocole xpressnet (implementation) Sam 4 Mai 2013 - 15:28
Merci,
je vais revoir ca, mais je crois que j'ai un probleme ailleurs alors. Je vais sniffer ce que fait ma Lokmauss.
nzin Membre
Age : 48 Localisation : Montreal, QC, Canada Nombre de messages : 128 Date d'inscription : 28/06/2012
Petit post, je n'ai pas continué pour le moment, mais sinon petit partage d'experience. Voici a quoi ressemble mon oscilloscope (un DSO Nano V2, ca coute ~ 100$ https://www.sparkfun.com/products/10244):
Je trouve ca tres pratique. Patrick aussi apparemment :-)
nzin Membre
Age : 48 Localisation : Montreal, QC, Canada Nombre de messages : 128 Date d'inscription : 28/06/2012
Sujet: Re: protocole xpressnet (implementation) Mer 8 Mai 2013 - 3:44
Aaaah ca marche!
C'etait mon pin de commande qui n'envoyait plus de "1" pour dire au RS485 de se mettre en mode emission (ou alors je l'ai grillé :-) ). J'envoye avec un autre pin. J'avais aussi un petit bug: sur ma lokmauss c'est l'aiguillage 38, mais au niveau informatique faut communiquer l'adresse 37
Ma lokmauss envoye 2 impulsions pour demander a un aiguillage de tourner: 52 9 8B puis 52 9 83
(activation/desactivation)
J'ai testé avec ces 2 sequences, ou juste la premiere, mes decodeurs Cobalt acceptent les 2. Mais bon je vais mettre les 2, au cas ou.
C'est bon ca, c'est bon!
patrick Membre
Age : 55 Localisation : ici Nombre de messages : 2807 Date d'inscription : 18/01/2008
Sujet: Re: protocole xpressnet (implementation) Mer 8 Mai 2013 - 16:44
Voilà une bonne nouvelle!
nzin Membre
Age : 48 Localisation : Montreal, QC, Canada Nombre de messages : 128 Date d'inscription : 28/06/2012
Sujet: Re: protocole xpressnet (implementation) Sam 11 Mai 2013 - 0:44
Voilà ce que ça donne
Pour léser sonnés qui tomberaient un jour sur ce poste et qui ne voudraient pas partir de zero, j ai mis mon code sur gît hub: https://github.com/nzin/xpressnet_arduino
Et il y a mon schéma de montage:
Contenu sponsorisé
Sujet: Re: protocole xpressnet (implementation)
protocole xpressnet (implementation)
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum