Bonjour Fredo et bravo pour ton initiative pour t'attaquer aux signaux complexes.
Bon. Ta vidéo publiée qui montre le pilotage du décodeur CDF va m'aider à voir si j'ai correctement piloté ce décodeur
dans le programme client, j'y reviendrais dans un message ultérieur. Pour l'instant je rédige juste une réponse rapide à ton message.
Voici comment tester le programme client en pilotant directement le feu:
- lancer CDM rail, lancer le serveur d'interface (interface/démarrer un serveur), puis lancer le serveur client. (comm IP/démarrer le serveur comm IP).
pas besoin de charger un LAY.
toutes les manipulations suivantes se font depuis le programme client "signaux_complexes".
- lancer le programme client signaux_complexes. Il doit afficher "client démarré".
- choisir le menu opérations/commande accessoires? une fenetre s'ouvre:
renseigner l'adresse de base du signal (et non pas de l'accessoire) dans ton cas, le signal est ) l'adresse 47.
Cocher la première ligne AD : çà permettra d'envoyer la commande OUT1 ou OUT2 de l'adresse 47
choisir si on pilote la sortie OUT1 ou OUT2 de l'adresse 47 en cliquant sur out1 ou out2
même chose pour l'adresse AD+1 soit 48.
laisser pulse décoché.
puis cliquer sur OK, le signal devrait changer d'aspect en fonction de la combinaison souhaitée.
Si çà fonctionne, c'est que le signal est piloté par l'intermédiaire du programme client ce qui est déja une bonne chose
Ensuite on verra pour la suite, mais pour piloter un signal CDM en automatique, tu dois écrire du code programme dans le programme client, ce qui signifie
qu'il faut installer DEVC++ évidemment pour pouvoir compiler ton code source.
Le pilotage du signal dans le programme client ne se fait pas à partir d'un actionneur, mais de l'environnement du feu CDM associé au programme client + les aiguillages. Je pense que ton problème réside dans le fait que tu n'as pas associé d'adresse complexe à ton signal: un signal physique complexe doit avoir une adresse CDM et déclarée dans CDM, et aussi une adresse complexe différente, qui sera utilisée pour piloter le feu, qui est l'adresse du décodeur (exemple 46 dans ton cas). Si tu ne fais pas çà, CDM va envoyer une commande au feu sur l'adresse 46 et le programme client aussi. Donc dans CDM, il faut mettre une "fausse adresse" ou adresse virtuelle sur ce signal sur laquelle rien n'est branché pour éviter le conflit. C'est le programme client qui fera la liaison entre l'adresse virtuelle de CDM et se chargera de piloter le signal complexe. Ensuite il faut écrire le code de pilotage de ton signal dans le programme source du client. (les exemples de pilotages de feux donnés ds le programme source c'est pour mon réseau)
Le programme signaux_complexes qui disparaît ?!

çà me fait pense à un antivirus qui déplace le fichier en quarantaine non?!
Bon c'est pas simple je sais

(mais ce sont des signaux complexes hein)
A bientot