1.11.9

News

Page  1 sur 3  > >>

2019-01-16
Catégorie : Arduino
Posté par : xavier
Un Circuit imprimé pour plusieurs sketches
2018-06-07
Catégorie : Arduino
Posté par : xavier
Des pistes pour developper un projet a base d'Arduino
2017-09-23
Catégorie : Expositions
Posté par : xavier

Les 4/5 Novembre 2017, au parc Savoie Expo de Chambéry (Savoie), se tiendra l'exposition Savoie Modelisme.

CMS - 1.11.9 - Bartolome
 

Sonorisation CDM-Rail V2.0

 En cours de rédaction !!!!

Cette nouvelle version devrait permettre la compatibilité avec les derniers OS Windows, depuis XP.

Elle s'appuie sur VB2010 et le framework .Net 3.5, utilise la Dll NCalc qui définit notament la syntaxe des formules évaluées.

Pour commencer, une vue générale de CDM-Rail dans son environnement:

Attention : Testé uniquement sur PC XP et Seven avec le framework DotNet 3.5

Objectif:

Dévelopé en Visual Basic DotNet, ce client fonctionne en lien avec CDM-Rail avec lequel il communique en TCP/IP grace au protocole IPC: Demonstration

Pour mutltiplier le nombre de sources sonores, il faudra disposer d'autant de PC en réseau, chacun faisant tourner un client IPC_FixSound dédié à la zone qu'il anime.

Une maquette est disponible ICI sous forme de MSI contenant le programme et la bibliotheque de sons pour Windows XP.

Le MSI inclue mon layout Monfatraz Geneloz V2. Les tests ont été effectués en simulation avec avec le contexte Test, comme dans la vidéo de Démonstration.

Lien avec CDM-Rail

Ce client CDM peut recevoir de CDM-Rail, après abonnement, les informations suivantes:

Ax = Actionneurs (AACT) dont il ne traite que les fronts montants.

Tx = Appareils (ATNT)

Sx = Signaux (ASIG)

Dx = Detecteurs (ADET)

Ex = Trains (TSXY)

Cx = Commandes Dcc (TDCC)

Actions

Les actions disponibles sont :

- Sonores

- Transmission de commandes à destination d'un Arduino (conditions simples ou complexes)

- Gestion de variables intermédiaires pour les conditions complexes.

Actions sonores

La syntaxe des actions sonores est la suivante: <Fonction>-<Son>.wav

  • STS (Son Train Single) = Démarrage du son lié au train (qui sera joué une seule fois)

  • STT (Son Train Toggle) = Demande de démarrage / arrêt du son  lié au train (effectif en fin de boucle)

  • ST0 (Son Train Stop) = Demande d'arrêt du son lié au train (effectif en fin de boucle)

  • ST1 (Son Train Start) = Démarrage du son lié au train (qui sera joué en boucle)

  • SFS (Son Fixe Single) = Démarrage du son indépendant du train (qui sera joué une seule fois)

  • SFT (Son Fixe Toggle) = Demande de démarrage / arrêt du son indépendant du train (effectif en fin de boucle)

  • SF0 (Son Fixe Stop) = Demande d'arrêt du son indépendant du train (effectif en fin de boucle)

  • SF1 (Son Fixe Start) = Démarrage du son indépendant du train (qui sera joué en boucle)

Les sons sont impérativement au format wav et dans les répertoires specifiés dans la configuration

Exemple : STS-Annonce => Démarrage du fichier "Annonce.wav" contenu dans le repertoire lié au <train>

Exemple : SFA-Annonce => Démarrage du fichier "Annonce.wav" contenu dans le repertoire Annonce

Il est possible de jouer plusieurs sons ou effectuer plusieurs actions simultanement (separés par ";") ou de les enchainer (separés par "+")

Actions Arduino I2C

La syntaxe des actions Arduino I2C est la suivante: AR-<Fonction>-<Parametre1>-<Parametre2>-<Parametre3>

I2C :  Adresse du module I2C - Port - Valeur

Exemple : AR-I2C-5-18-0

Actions Arduino Signalisation
La syntaxe des actions Arduino Signalisation est la suivante: AR-<Feux>-<Valeur>

Exemple : AR-U122-05

Le carré est demandé pour le signal 122 (voir configuration des signaux)

Actions de conditions complexes

La syntaxe RES<n>-<valeur> permet de définir les variables intermédiaires prises en compte pour les conditions complexes (niveau 2).

Exemple : RES1-0

_______________________________________________________________________________

L'écran comporte plusieurs onglets :

__________________________________________

IPC:

Il affiche les formules de niveau 1 et 2 avec les actions correspondantes

Les formules de niveau 1 sont definies dans le fichier Formule.txt

Les formules de niveau 2 sont définies dans le fichier ResFormule.txt

La syntaxe utilisée est de la forme suivante:

<Trigger>!<Formule>|<Action>[;<Action>][+<Action>]|

<Trigger> définit l'élément déclancheur. exemple : A10

Il n'y a pas de Trigger au niveau 2 dont la syntaxe sera de la forme <Formule>|<Action>[;<Action>][+<Action>]|

<Formule> définit la formule évalué. exemple : Floor(T13=2)&Floor(T14>1)

<Action> définit chaque action résultant de l'évaluation positive de la formule. exemple : SFT-Avertisseur

Il est possible de jouer plusieurs sons ou effectuer plusieurs actions simultanement (separés par ";") ou de les enchainer (separés par "+")

En haut, la communication avec CDM-Rail. Apres avoir choisi le port de communication, le message est envoyé vers l'Arduino.

En bas, la communication avec Arduino (Validation en cours). Apres avoir choisi le port de communication, le message est envoyé vers l'Arduino.

Exemple : A10!Floor(T13=2)&Floor(T14>1)|SFA-Annonce+SFA-Train+STA-Annonce+SFA-VoieC|

Au changement d'état de l'actionneur 10, si l'aiguillage 13 est en position 2 & l'aiguillage 14 est en position >1, alors les sons suivants sont enchainés ...

Jingle SNCF + "Le train " + Numero du train + " Va entrer en gare voie" + "C"

Exemple : (RES1+RES2)+(RES1*RES2)|AR-I2C-5-18-0;SF1-PN|

Si les variables intermediares RES1 et RES2 sont telles que (RES1+RES2)+(RES1*RES2), alors la commande AR-I2C-5-18-0 est envoyée sur l'USB et le son SF1-PN (cloche de passage a niveau) est joué en boucle infinie.

Paysage:

Permet d'ajouter des sons (vert clair : joué une fois, vert sombre : joué en boucle)

Les sons disponibles sont définis dans le fichier Paysage.txt

__________________________________________

CDM:

Il affiche les informations recues de CDM (6 premiers tableaux), un par abonnement possible, ainsi que le résultat de l'évaluation de niveau 1 (7eme tableau à droite)

__________________________________________

Config Signaux:

Cet onglet permet de configurer les signaux, afin de les rendre utilisable avec les action Arduino Signalisation

Protocole utilisé entre ce programme et l'Arduino :

Les commandes disponibles, transmises par USB à l'Arduino sont de 2 type

Configuration des signaux : S : Setting du signal Snnn-ii-t-oo

nnn = Module I2C

t = Type de cible

oo = Offset

Valeur

Cible SNCF

 

0

A

 

1

B

2

C

3

D

4

E

5

F

6

G

7

H

Pilotage des signaux : U : Mise a jour I2C Unnn-vv

vv = Valeur signal

Valeur

Signal

0

Voie Libre

1

Pre Avertissement

2

Avertissement

3

Sémaphore sans arrêt

4

Sémaphore

5

Carré

6

Ralentissement 30

7

Ralentissement 60

8

Ralentissement 160

9

Rappel Ralentissement 30

10

Rappel Ralentissement 60

En complément, il est possible d'afficher la configuration actuelle de tous les signaux ...

Affichage de la configuration actuelle: L : Liste

Le Sketch, le schéma et les CI seront bientôt disponibles ici.

__________________________________________

Utilisation:

Les signaux disponibles sont définis dans l'EEPROM de l'arduino qui doit donc être préalablement programmé et connecté.

Une vidéo viendra prochainement illustrer le fonctionnement de cet onglet.

__________________________________________

Test Sons:

Permet de tester les sons predéfinis à titre de démonstration.

_______________________________________________________________________________

Menu

Help:

Une aide en ligne modifiable est disponible. Si vous avez effetué des changements, il sera nécessaire de confirmer si vous souhaitez les conserver ou non lors de la fermeture de l'interface.

_______________________________________________________________________________

Mise en route:

La mise en route de CDM-Rail avec la communication IP est un préalable.

Au démarrage, on essaie d'établir la connexion avec CDM en utilisant les paramètres par défaut. Si cette communication est établie, le fond passe en vert. Sinon, il passe en rouge. Il est alors possible de relancer la communication avec le bouton "Reset".

Verifiez le nom du PC et le port utilisés dans la communication IPC : par défaut XBD-PC & 9999. (elles sont definies dans le fichier .CONFIG)

Une fois la connexion établie avec CDM-Rail, la demande d'abonnement aux Actionneurs s'affiche. Il faut la valider avec le bouton : "IPC Send"

On passe alors automatiquement à l'onglet Paysage.

Les messages reçus de CDM-Rail mettent alors à jour les tableaux correspondants dans l'onglet CDM.

Il est possible de changer les abonnement en cochant ceux désirés, enregistrant la configuration avec le bouton Save. Notez que la ligne de commande IPC indique la syntaxe IPC correspondant!

Il est possible de modifier les formules "Condition Simple" ou "Condition Complexe" en double cliquant sur le tableau correspondant. Une fenêtre permet alors de modifier le contenu du fichier correspondant, de verifier la syntaxe puis de sauvegarder ou non les modifications. (un fichier de sauvegarde est disponible au cas où : *.bck !)

Le bouton "Reload" permet de prendre en compte les modifications précédentes.

Le fichier IPC_FxSound.exe.config permet de configurer l'application. Attention au respect de la syntaxe XML. Les variables les plus interessantes sont:

CdmIP, CdmPort et SoundDir

Previous page: Sonorisation CDM-Rail V1  Page suivante : Sonorisation Pure Data