한국   대만   중국   일본 
MIL-STD-1553 ? Wikipedia Aller au contenu

MIL-STD-1553

Un article de Wikipedia, l'encyclopedie libre.

MIL-STD-1553 est une norme decrivant un bus de communication largement utilise en avionique militaire et spatiale [ 1 ] . Elle a egalement ete adoptee par l' OTAN sous l'appellation STANAG 3838.

Historique [ modifier | modifier le code ]

Elle a ete developpee sous l'egide du DoD americain a partir de 1968. La premiere version MIL-STD-1553A a ete publiee le . La version actuelle est la MIL-STD-1553B datant du .

Couche physique [ modifier | modifier le code ]

Topologie [ modifier | modifier le code ]

Le MIL-STD-1553 decrit un bus de donnees serie multiplexe (half-duplex) . La connexion est realisee par l'intermediaire d'une paire torsadee blindee par bus.

Le standard definit la presence de deux bus (A et B) afin d'assurer la redondance, mais seulement un bus est actif a chaque instant.

Il y a trois types d'equipements connectes au bus :

  • Le gerant de bus ou ≪ Bus Controller ≫ (BC) qui orchestre les differents echanges sur le bus ,
  • Les abonnes ou ≪ Remote Terminal ≫ (RT) qui utilisent le bus pour communiquer. Il peut y en avoir jusqu'a 31 (limitation liee a l'adressage) ,
  • Les moniteurs de bus ou ≪ Bus Monitor ≫ (BM) qui ecoutent le bus. Il peut y en avoir plusieurs ou aucun .
Topologie d'un bus MIL-STD-1553
Topologie d'un bus MIL-STD-1553

Support [ modifier | modifier le code ]

Chaque paire blindee doit repondre a plusieurs caracteristiques [ 2 ]  :

  • La capacite entre les 2 fils ne doit pas exceder 30  pF/ft (soit 98,4  pF/m ),
  • Le nombre de torsions (rotation de 360° des 2 fils) ne doit pas etre inferieur a 4/ft (soit 13/m),
  • L' impedance caracteristique (Z 0 ) doit etre comprise entre 70  Ω et 85  Ω pour une frequence sinusoidale de 1  MHz ,
  • L'attenuation ne doit pas exceder 1,5  dB/100ft (soit 4,92  dB/100m ),
  • Le blindage du cable doit couvrir plus de 75 % de ce dernier.
  • Les 2 extremites du cable doivent etre ≪ bouchees ≫ par des resistances egales a l' impedance caracteristique du cable Z 0 ±2 %.
Bouchon en extrémité d'une paire blindée d'un bus MIL-STD-1553
Bouchon en extremite d'une paire blindee d'un bus MIL-STD-1553

Encodage des bits [ modifier | modifier le code ]

L'encodage utilise est de type Manchester II biphase  :

Encodage d'un bit MIL-STD-1553
Encodage d'un bit MIL-STD-1553

Niveaux electriques [ modifier | modifier le code ]

Les niveaux electriques dependent du couplage utilise, avec un transformateur ou en direct, et sont differents en emission ou en reception.

Voir ces parametres specifiques dans les paragraphes lies au couplage .

Temps et vitesse [ modifier | modifier le code ]

La vitesse de transmission est de 1  Mbit/s [ 3 ]  :

  • La stabilite a court terme (< 1  s ) doit etre inferieure a 0,01 %,
  • La stabilite a long terme doit etre inferieure a 0,1 %,
  • Les temps de montee, de descente ainsi que la duree du demi-bit dependent si le terminal est en reception (lecture) ou s'il est en emission (ecriture) sur le bus.
Temps caractéristiques d'un bit MIL-STD-1553
Temps caracteristiques d'un bit MIL-STD-1553
Mode Bit rate 1bit time 1/2bit time Fall/Rise time
Reception MHz ± 0,01 % μs ± 150  ns 0,5  μs ± 150  ns Le signal peut etre sinusoidal
Emission μs ± 25  ns 0,5  μs ± 25  ns de 100 a 300  ns

Couplages [ modifier | modifier le code ]

Couplage en direct [ modifier | modifier le code ]

Couplage en direct d'un équipempent sur un bus MIL-STD-1553
Couplage en direct d'un equipempent sur un bus MIL-STD-1553

Ce couplage impose diverses contraintes :

  • Le blindage du coupleur doit etre connecte aux blindages du bus,
  • Toutes les jonctions de bus doivent etre recouvertes par le blindage de maniere continue a plus de 75 %,
  • Des resistances d'isolement doivent etre places entre le bus et le terminal, au plus proche ou a l'interieur du terminal, leur valeur doit etre de R = 55Ω ± 2 %,
  • La longueur de la derivation ne doit pas exceder Lmax = 1ft (soit 0,304 8  m ),
  • L'impedance en entree du terminal soumis a un signal carre de frequence comprise entre 75  kHz et 1  MHz doit etre superieure a 2kΩ,
  • Le rapport du transformateur d'isolation doit etre de Ni = 1:1,
  • Les niveaux electriques entre les 2 lignes (A et B) de la paire blindee doivent etre les suivants :
Niveau Ligne A <> Ligne B
En reception
Ligne A <> Ligne B
En emission
HIGH de +1,2  V a +20  V de +6  V a +9  V
LOW de -20  V a -1,2  V de -9  V a -6  V

Couplage par transformateur [ modifier | modifier le code ]

Couplage via un transformateur d'un équipempent sur un bus MIL-STD-1553
Couplage via un transformateur d'un equipempent sur un bus MIL-STD-1553

Ce couplage impose diverses contraintes :

  • Le blindage du coupleur doit etre connecte aux blindages du bus,
  • Toutes les jonctions de bus doivent etre recouvertes par le blindage de maniere continue a plus de 75 %,
  • Des resistances d'isolement doivent etre places entre le bus et le transformateur de couplage, leur valeur doit etre de R = 0,75 x (Z0) ± 2 %,
  • Le rapport du transformateur de couplage doit etre de Nc = 1:1,41 ±3 %, le plus grand nombre de spires est du cote des resistances d'isolement (autrement dit, transformateur abaisseur du point de vue du terminal),
  • L'impedance de sortie en circuit ouvert du transformateur de couplage soumis a une sinusoide de tension 1  V (RMS) et de frequence comprise entre 75  kHz et 1  MHz doit etre superieure a 3kΩ,
  • Le taux de rejection de mode commun du transformateur de couplage doit etre superieur a 45dB a 1  MHz ,
  • La longueur de la derivation ne doit pas exceder Lmax = 20ft (6,09  m ),
  • L'impedance en entree du terminal soumis a un signal carre de frequence comprise entre 75  kHz et 1  MHz doit etre superieure a 1kΩ,
  • Le rapport du transformateur d'isolation doit etre de Ni = 1:1.
  • Les niveaux electriques entre les 2 lignes (A et B) de la paire blindee doivent etre les suivants :
Niveau Ligne A <> Ligne B
En reception
Ligne A <> Ligne B
En emission
HIGH de +0,86  V a +14  V de +18  V a +27  V
LOW de -14  V a -0,86  V de -27  V a -18  V

Couche liaison de donnees [ modifier | modifier le code ]

Mots [ modifier | modifier le code ]

Structure d'un mot MIL-STD-1553
Structure d'un mot MIL-STD-1553

Les mots de 16 bits sont encapsules dans 20 bits decomposables en trois parties [ 4 ]  :

  • Les bits 1 a 3 premiers servent de synchronisation ,
  • Les bits 4 a 19 (16 bits) composent le mot proprement dit,
  • Le bit 20 est un bit de parite .

Ordre de transmission des bits [ modifier | modifier le code ]

Dans un mot, les bits sont transmis en commencant par le bit nomme "bit time n°1" de poids fort, les autres suivent par ordre de force decroissante (bit time n o  2, bit time n o  3, etc.) jusqu'au bit time n o  20 [ 5 ] .

De la meme maniere, si une donnee est codee sur plus de 16 bits, et qu'on doit utiliser plusieurs mots pour la transmettre, c'est le mot contenant les bits de poids fort qui doit etre emis en premier.

Synchronisation [ modifier | modifier le code ]

La synchronisation est realisee par une violation du code Manchester sur les premiers 3 bits de la trame.

Elle consiste a placer le bus au niveau HIGH pendant le temps equivalent a 1,5 bit puis au niveau LOW durant le 1,5 bit restant (≪ front descendant ≫), ou inversement (≪ front montant ≫) en fonction du type de mot (voir ci-dessous).

Parite [ modifier | modifier le code ]

Le bit de parite est utilise pour verifier que le mot n'a pas ete altere pendant la transmission [ 6 ] .

La parite est definie comme etant impaire (odd) . Si le nombre de bits d'Information a "1" est paire, le bit de parite sera a "1". A l'inverse si ce nombre est impaire il sera mis a "0".

Ce mecanisme simpliste ne permet pas de se premunir contre l'alteration de 2 bits puisque dans ce cas on retombe sur la parite impaire.

Mot de commande [ modifier | modifier le code ]

Mot de commande MIL-STD-1553
Mot de commande MIL-STD-1553
Sync [ modifier | modifier le code ]

La synchronisation forme un ≪ front descendant ≫.

RT address [ modifier | modifier le code ]

Ce champ permet d'adresser le mot a un terminal en particulier, chaque terminal ayant une adresse unique. Les 5 bits permettent 32 adresses, cependant l'adresse ≪ 11111 ≫ est reservee pour contacter l'ensemble des terminaux (≪ broadcast ≫), c'est pourquoi il ne peut il y avoir que 31 terminaux connectes au bus.

T/R (Transmit/Receive) [ modifier | modifier le code ]

Si le bit vaut :

  • 0 → on previent le terminal qu'il doit recevoir des donnees.
  • 1 → on demande au terminal d'envoyer des donnees.
Sub-address or mode [ modifier | modifier le code ]

Les 5 bits permettent 32 combinaisons :

  • les combinaisons ≪ 00000 ≫ et ≪ 11111 ≫ sont reservees comme ≪ mode ≫ et permettent de dire au terminal que le champ ≪ Data word count or mode code ≫ doit etre interprete comme un ≪ mode code ≫,
  • les 30 autres sont interpretees comme ≪ Subaddress ≫ et permettent de s'adresser a un des 30 sous-ensembles que peut compter un terminal.
Data word count or mode code [ modifier | modifier le code ]
Data word count [ modifier | modifier le code ]

Il s'agit :

  • du nombre de mots que va recevoir le terminal si ≪ T/R ≫ vaut 0,
  • du nombre de mots que doit envoyer le terminal si ≪ T/R ≫ vaut 1.

Les 5 bits permettent d'envoyer de 1 a 32 donnees, la valeur 0 correspond a 32 mots de donnees envoyees. Il ne peut pas y avoir plus de 32 mots de donnees envoyees a la suite dans un seul echange.

Mode code [ modifier | modifier le code ]

Pour les combinaisons :

  • de ≪ 00000 ≫ a ≪ 01111 ≫ ne necessitent pas de reponse du terminal, mais le bit ≪ T/R ≫ doit etre place a 1,
  • de ≪ 10000 ≫ a ≪ 11111 ≫ necessitent une reponse composee d'un seul mot de donnees de la part du terminal.
Mode code Fonction Bit T/R Broadcast
autorise?
Detail
00000 Dynamic bus control 1 Non Le terminal doit repondre par un mot de statut en placant le bit 18 (≪ Dynamic bus acceptance flag ≫) :
≪ 1 ≫ pour accepter le test,
≪ 0 ≫ pour refuser (ou si la fonction n'est pas implementee).
00001 Synchronise (without data word) 1 Oui Le terminal doit se synchroniser (reset de l'horloge interne et/ou lancement d'une sequence de synchronisation) et repondre par un mot de statut.
00010 Transmit status word 1 Non Le terminal doit renvoyer le dernier mot de statut qu'il a precedemment transmis.
00011 Initiate self test 1 Oui Le terminal doit initier une sequence de test et repondre par un mot de statut.
00100 Transmitter shutdown 1 Oui Le controleur ne doit envoyer cette commande au terminal que sur un des 2 bus redondes.
Le terminal doit inhiber son transmetteur sur l'autre bus et repondre par un mot de statut sur le bus reste actif.
00101 Override transmitter shutdown 1 Oui Annule la commande ≪ transmitter shutdown ≫.
Le terminal doit repondre par un mot de statut.
00110 Inhibit terminal flag bit 1 Oui Le terminal doit placer le bit 19 (≪ Terminal flag ≫) a ≪ 0 ≫ dans les mots de statut qu'il renvoie (afin d'inhiber le fait qu'il soit en defaut) et doit repondre par un mot de statut.
00111 Override inhibit terminal flag bit 1 Oui Annule la commande ≪ inhibit terminal flag bit ≫.
Le terminal doit repondre par un mot de statut.
01000 Reset remote terminal 1 Oui Apres avoir transmis un mot de statut, le terminal doit se reinitialiser.
10000 Transmit vector word 1 Non Le terminal doit repondre par un mot de statut, puis transmettre un mot de donnees contenant l'information ≪ service request information ≫ lorsque le bit du mot de statut eponyme n'est pas suffisant.
10001 Synchronise (with data word) 0 Oui En plus du mot de commande, le terminal recoit un mot de donnees qui contient des informations liees a la synchronisation.
Le terminal doit se synchroniser (reset de l'horloge interne et/ou lancement d'une sequence de synchronisation) et repondre par un mot de statut.
10010 Transmit last command 1 Non Le terminal doit repondre par un mot de statut, puis transmettre un mot de donnees contenant l'information les bits 4 a 19 du dernier mot de commande recu.
10011 Transmit BIT word 1 Non Le terminal doit repondre par un mot de statut, puis transmettre un mot de donnees contenant le resultat du BIT (Built In Test) si le terminal contient un telle fonction.
10100 Selected transmitter shutdown 0 Oui Idem que la commande ≪ transmitter shutdown ≫, mais lorsque le nombre de bus redondes est superieur a 2. Le numero du bus sur lequel il faut inhiber le transmetteur est contenu dans le mot de donnees qui suit la commande.
Le terminal doit repondre par un mot de statut.
10101 Override selected transmitter shutdown 0 Oui Annule la commande ≪ selected transmitter shutdown ≫. Le numero du bus sur lequel il faut desinhiber le transmetteur est contenu dans le mot de donnees qui suit la commande.
Le terminal doit repondre par un mot de statut.

Mot de donnees [ modifier | modifier le code ]

Mot de données MIL-STD-1553
Mot de donnees MIL-STD-1553
Sync [ modifier | modifier le code ]

La synchronisation forme un ≪ front montant ≫.

Data [ modifier | modifier le code ]

Ce champ correspond a la donnee codee sur 16 bits.

Mot d'etat (ou mot de statut) [ modifier | modifier le code ]

Mot d'état MIL-STD-1553
Mot d'etat MIL-STD-1553
Sync [ modifier | modifier le code ]

Idem que pour le mot de commande , la synchronisation forme un ≪ front descendant ≫.

RT address [ modifier | modifier le code ]

Idem que pour le mot de commande .

Message error [ modifier | modifier le code ]

Doit etre place a 1 pour signaler qu'un mot de donnees de la trame recue n'etait pas conforme (parite, nombre de bits, etc.) ou que la commande recue n'est pas conforme.

Instrumentation [ modifier | modifier le code ]

Doit etre place a 0 dans la majorite des cas. Il peut etre utilise pour differencier les mots de statut des mots de commande.

Service request [ modifier | modifier le code ]

Permet au terminal de specifier qu'il attend une action specifique definie a l'avance de la part du controleur en placant le bit a 1.

Broadcast command received [ modifier | modifier le code ]

Doit etre place a 1 pour signaler que la commande precedente etait de type ≪ broadcast ≫.

Busy [ modifier | modifier le code ]

Doit etre place a 1 par le terminal pour dire qu'il est incapable de traiter les donnees recues.

Subsystem flag [ modifier | modifier le code ]

Doit etre place a 1 si le terminal souhaite declarer qu'un de ses sous-systemes est en panne et que les donnees ne pourront ≪ peut-etre ≫ pas etre traitees correctement.

Dynamic bus acceptance flag [ modifier | modifier le code ]

Permet de repondre a la commande ≪ Dynamic bus control ≫ en placant le bit a 1.

Terminal flag [ modifier | modifier le code ]

Doit etre place a 1 si le terminal souhaite se declarer en defaut. Doit etre inhibe (place a 0) si le terminal recoit commande ≪ Inhibit terminal flag bit ≫.

Trames [ modifier | modifier le code ]

Les trames sont composees d'echanges de mots entre le BC et les RTs.

Lorsqu'un meme BC ou RT transmet plusieurs mots qui se suivent, il n'y a pas d'espacement ou de gap entre eux.

Le temps de reponse a un mot d'un RT doit etre compris entre 4 μs et 12 μs.

Le gap entre les trames doit etre d'au moins 4 μs.

Pour les 2 temps cites ci-dessus, la duree est mesuree entre la transition HIGH/LOW du milieu du 20 e  bit du mot precedent et la transition HIGH/LOW du champ Sync du mot suivant (au milieu du 2 e  bit).

Le timeout de non-reponse est de 14 μs, en partant de la transition HIGH/LOW du milieu du 20 e  bit du dernier mot.

Si une nouvelle commande est recue avant que le RT n'ait repondu a la ou aux precedentes, la derniere recue prevaut sur toutes les autres.

Transfert BC → RT [ modifier | modifier le code ]

Deroulement :

Transfert BC → RT sur un bus MIL-STD-1553
Transfert BC → RT sur un bus MIL-STD-1553

Transfert RT → BC [ modifier | modifier le code ]

Deroulement :

Transfert RT → BC sur un bus MIL-STD-1553
Transfert RT → BC sur un bus MIL-STD-1553

Transfert RT → RT [ modifier | modifier le code ]

Deroulement :

Transfert RT → RT sur un bus MIL-STD-1553
Transfert RT → RT sur un bus MIL-STD-1553

Echanges ≪ mode code ≫ [ modifier | modifier le code ]

Les echanges se font sur le meme principe que les transferts, avec ou sans donnees.

Echanges ≪ broadcast ≫ [ modifier | modifier le code ]

Les echanges se font sur le meme principe que les transferts, sauf qu'il n'y a pas de mot d'etat a la fin envoye par un RT, ceci afin d'eviter que tous les RTs tentent de le faire simultanement.

Exemple d'un transfert RT → BC [ modifier | modifier le code ]

L'image ci-dessous donne un exemple des concepts expliques dans les sections precedentes.

Ainsi on peut voir une demande de transmission (puisque le bit 6 ou T en violet est a 1 dans le mot de commande ) faite au RT adresse avec le numero 0x03.

Les derniers 5 bits (verts) du mot de commande contiennent le nombre de mots a transmettre par le RT , ici 0x01, ce qui correspond effectivement au mot de donnees (en turquoise, valeur 0x02) unique suivant le mot d'etat .

On remarque la difference d'amplitude du signal entre la demande du BC et la reponse du RT . Cette difference est a mettre sur le compte de la position de l'observation electrique sur le bus. Nous sommes ici plus loin du BC que du RT . Le BC est donc recu avec une amplitude moindre que le RT .

Exemple pour un Transfer RT à BC, avec un mot de données
Exemple pour un Transfer RT a BC, avec un mot de donnees

Avantages/Inconvenients [ modifier | modifier le code ]

Avantages [ modifier | modifier le code ]

  • Il est deterministe puisqu'il possede un gerant de bus,
  • Il est robuste aux perturbations,
  • Le mecanisme du mot d'etat permet a l'equipement destinataire de verifier que le transfert a bien ete realise,
  • Il existe un manuel definissant les modalites d'implantation, de qualification et de test : MIL-HDBK-1553.

Inconvenients [ modifier | modifier le code ]

  • Dans l'avionique moderne, il commence a montrer ses limites de par son relatif faible debit et ses possibilites d'adressage,
  • Il n'y a pas de somme de controle (hormis la parite ) permettant de verifier l'integrite de donnees,
  • Complexite du couplage sur le bus,
  • Les transitions liees a l'encodage Manchester II biphase entraine un spectre frequentiel eleve pouvant perturber d'autres equipements si le blindage n'est pas suffisant.

Anecdotes [ modifier | modifier le code ]

  • L'adresse des RT est lue une seule fois lors de leur mise sous tension. Cette regle est la consequence de pertes d'adresse survenues dans les premieres versions du bus. Ces pertes d'adresse etaient dues aux vibrations engendrees par l'usage des armes de bord sur des helicopteres de combat.
  • Ce bus est utilise dans le metro londonien [ 7 ] .
  • Ce bus est utilise dans certains satellites de telecommunication et d'observation [ 8 ] .

Systemes similaires [ modifier | modifier le code ]

DIGIBUS (ou Digibus ) est l'equivalent francais de la norme MIL-STD-1553 [ 9 ]

Il est similaire a la norme MIL-STD-1553,  il possede la meme notion de controleur de bus, de terminal distant, de moniteur et la meme vitesse de transmission.

La difference principale est que DIGIBUS separe physiquement les donnees et les commandes. [1]

' GJV289A est l'equivalent chinois de la norme MIL-STD-1553 et GOST R 52070-2003 est l'equivalent russe / sovietique de MIL-STD-1553. [2]

References [ modifier | modifier le code ]

  1. ESA MilBus Mil-STD-1553
  2. corot p33/34
  3. corot p5
  4. corot p5/6
  5. corot p3
  6. corot p8
  7. corot p1
  8. OBCDH
  9. ≪  DIGIBUS  ≫, sur www.nexeya.com (consulte le )

Liens externes [ modifier | modifier le code ]