pb transpondeur sur ivao

Questions de programmation / Offset FSUIPC et IOCP

pb transpondeur sur ivao

Messagede dogness » Jeu 31 Déc 2009 00:31

Bonsoir,
je rencontre un pb sur l'utilisation du transpondeur sur ivao .Après la programmation sioc j'ai voulu faire un test mais la rien ne se passe . ai-je oublié quelque chose au code merci de m'apporter votre aide.



Code: Tout sélectionner
Var 1051, Link IOCARD_ENCODER, Input 41, Aceleration 1, Type 1
{
  IF V1051 = 1
  {
    V1050 = V1050 + 1
  }
  IF V1050 = 8
  {
    V1050 = 0   
  }
}

Var 1053, Link IOCARD_ENCODER, Input 42, Aceleration 1, Type 1
{
  IF V1053 = 1
  {
    V1052 = V1052 + 1
  }
  IF V1052 = 8
  {
    V1052 = 0   
  }
}

Var 1055, Link IOCARD_ENCODER, Input 52, Aceleration 1, Type 1
{
  IF V1055 = 1
  {
    V1054 = V1054 + 1
  }
  IF V1054 = 8
  {
    V1054 = 0   
  }
}

Var 1057, Link IOCARD_ENCODER, Input 48, Aceleration 1, Type 1
{
  IF V1057 = 1
  {
    V1056 = V1056 + 1
  }
  IF V1056 = 8
  {
    V1056 = 0   
  }
}

Var 1060, Link IOCARD_DISPLAY, Digit 42, Numbers 4     // affichage XPDR

Var 1070, Link FSUIPC_OUT, Offset $0354, Length 2     // Offset XPDR

Var 1080, Link SUBRUTINE
{
  L0 = V1050 * 1000
  L1 = V1052 * 100
  L0 = L0 + L1
  L1 = V1054 * 10
  L0 = L0 + L1
  L0 = L0 + V1056
  V1070 = TOBCD L0
  V1060 = L0   
}

Var 1081, Link FSUIPC_INOUT, Offset $7B93, Length 1     // ident ivao

Var 1082, Link FSUIPC_INOUT, Offset $7B91, Length 2     // mode transpondeur

Var 1083, Link IOCARD_SW, Input 44     // xpdr standby
{
  IF V1083 = 1
  {
    V1082 = 1   
  }
}

Var 1084, Link IOCARD_SW, Input 39     // mode charly
{
  IF V1084 = 1
  {
    V1082 = 0   
  }
}

Var 1085, Link IOCARD_SW, Input 40     // ident ivao
{
  IF V1085 = 1
  {
    V1081 = 1   
  }
}

Merci
Arnaud
dogness
 

Re: pb transpondeur sur ivao

Messagede ganlhi » Jeu 31 Déc 2009 10:10

Dans les préférences d'IVAp, as-tu coché la case qui autorise la communication IVAp/FSUIPC ? Elle n'est pas cochée par défaut. :)
Guilhem

Image
Avatar de l’utilisateur
ganlhi
 
Messages: 734
Inscription: 19/04/09
Localisation: Castelnaudary

Re: pb transpondeur sur ivao

Messagede stevelep » Jeu 31 Déc 2009 11:56

Salut Dogness,

Je me permet de te donner quelques astuces pour ton code SIOC:

- tu peux utiliser des noms à la place des n° de variable V0012 (fonction NAME)
(cela facilite grandement la compréhension du code surtout si tu le publies dans le forum)

- tu as spécifié, TYPE 1 pour tes encoders, cela suppose que tu utilises des encoders
à décalage de phase avec une carte spéciale pour les décoder
Est-ce bien le cas ?

Type There are three types of encoders:

0 (default): rotary switch simulating an encoder.

1 : two out of phase signals encoder (requires Encoders card).

2: Gray type encoders directly connected to Master card inputs.




- Ton code pour l'encoder est un peu bizarre, il ressemble plus à un interrupteur, qu'a un encoder
et il ne va pas dans les négatifs.

Var 1051, Link IOCARD_ENCODER, Input 41, Aceleration 1, Type 1
{
IF V1051 = 1
{
V1050 = V1050 + 1
}
IF V1050 = 8
{
V1050 = 0
}
}



tu peux utiliser la fonction ROTATE qui te fera varier la valeur entre les limites (0-7)
automatiquement et intègrer la variable de l'encodeur (V=1051) au lieu de faire
V1050 = V1050 + 1.

Var 1051, Name xpd_bouton1, Link IOCARD_ENCODER, Input 41, Aceleration 1, Type 1
{
&xpd_1 = ROTATE 0 ,7 ,&xpd_bouton1
}

avec cette unique ligne de code ta variable xpd_1 (c'est un exemple) prend la
valeur de ton bouton de transpondeur n° 1 (positive ou négative +1/-1)
qui va être cyclée et limitée autom. entre 0 et 7

Cela t'évite des IF ... etc

IF V1083 = 1
{
V1082 = 1
}


Tu peux simplement mettre V1082 = V1083

Voila, sinon c'est bien, continue, tu y es presque, ca va marcher

Bonne Année

BOB
Avatar de l’utilisateur
stevelep
Administrateur du site
 
Messages: 2075
Inscription: 27/03/09
Localisation: LSGN Neuchâtel, Suisse

Re: pb transpondeur sur ivao

Messagede dogness » Jeu 31 Déc 2009 15:38

merci,
ce n'est pas si facile surtout avec peu de temps mais merci de m'apporter vos corrections.
Arnaud
dogness
 


Retourner vers Programmation Sioc





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 36 invités