Entrées analogiques sur Carte USB-Servo

Servos / USBKeys / Stepmotor, etc...

Re: Carte USB Servo

Messagede A320 hérétique » Mar 5 Fév 2013 23:59

D'accord avec Bob,
C'est moi qui ai traité du pb "carte usb non reconnue" avec OC, pb reconnu ; au détour il faut noter que je n'ai pas rencontré le pb avec les dernières cartes que j'ai acquises ; mais là, rien à voir.
Surement le curseur mal branché, sur le potentiomètre c'est la patte du milieu, et sur les cartes oc aussi ; sinon, un court circuit qque part, il faut vérifier avec un contrôleur que les 0 sont à 0, les Vcc à 3v et plus, et que les curseurs sont entre les 2.
Michel
http://www.myA320sim.com
Simu mixte P3D/FS2020, serveur P3Dv4/A320 FMGS (7700k et GTX 1070 sous W10 64), client P3Dv4/FS2020 (i9-12900K et RTX 3080 Ti sous W10 64), 3 vdp Optoma GT1080E, client A320 FMGS (2600k sous W10 64).
Avatar de l’utilisateur
A320 hérétique
 
Messages: 3354
Inscription: 2/09/12
Localisation: Pornic

Re: Carte USB Servo

Messagede SUIRE2 » Mer 6 Fév 2013 01:14

J'utilise un potentiomètre linéaire de 10 k de chez Farnell qui me semble être de bonne qualité. D'ailleurs, j'utilise les mêmes pour les commandes de Gaz, profondeur, ailerons, et direction , qui vont bien.
Je vais tester après demain un potentiomètre rotatif branché en direct sur la sortie J3 de la carte en faisant gaffe aux branchements +,- et curseur au milieu de J3.
Je ne pense pas que celà vienne du câble USB car je n'ai pas changé de câble et les 6 instruments de la carte USB servo fonctionnent correctement.
Quel offset vaut-il mieux utiliser pour la mixture, entre $0890 length2 et $0780 length4 ? y a-t-il une différence?
Merci à tous pour vos suggestions,
A+
Michel
SUIRE2
 
Messages: 86
Inscription: 21/12/09

Re: Carte USB Servo

Messagede stevelep » Mer 6 Fév 2013 01:44

L'offset $0780 est en lecture seul et nous dit si l'avion est équipé d'une mixture, donc ce n'est pas ce que tu cherches.

C'est bien l'offset $0890 de longueur 2 qu'il faut utiliser. Son "range" est de 0-16384
Donc il faut bien multiplier l'axe (0-254) par environ 64 pour calculer la valeur de mixture.
Tu dois corriger ton code SIOC avec le bon offset.

BOB

PS: avant que la mixture fonctionne, il faut que ton potentiomètre fasse varier la valeur
de ta variable axe_mixture de environ 0-254, sinon c'est que tu as un problème avec
la carte ou le branchement.
Avatar de l’utilisateur
stevelep
Administrateur du site
 
Messages: 2075
Inscription: 27/03/09
Localisation: LSGN Neuchâtel, Suisse

Re: Carte USB Servo

Messagede SUIRE2 » Jeu 7 Fév 2013 00:49

Bonsoir,
J'ai branché un potentiomètre rotatif linéaire de 10k directement à l'entrée In1 (J3 ) de la carte USB servo ( 20 cm de fils ). J'ai controlé les tensions aux bornes du potentiomètre soit 5V.J'ai mesuré entre masse ( borne à gauche de J3 ) et la borne milieu du potentiomètre ( curseur ou borne milieu de J3 ) et la tension varie de 0 à 5V avec le curseur du potentiomètre. Donc de ce côté là, çà a l'air de marcher.

Suivant les conseils de BOB j'ai mis l'offset $890 length 2, et j'ai testé sur l'IOCard test et oh miracle , quand je tourne le potentiomètre branché sur l'entrée analogique In1 (J3 ) les valeurs varient de 0 à 255. Ce qui m'inquiète un peu c'est que les 4 entrées vaient en même temps, alors qu(il n'y a rien de branché sur les 3 autres J4,J5 et J6.

Par contre sur l'IOCP Console, il ne se passe rien quand je tourne le potentiomètre en face des 2 variables
FS_MIXTURE et AXE_MIXTURE.
Dans le sioc. ini j'ai mis l'usb analogic à 1,26,et dans le sioc.ssi j'ai mis ceci :
VAR 1155 name AXE_MIXTURE,LINK USB_ANALOGIC, Device 1,Input 1,PosL1,PosC127,PosR255
&FS-MIXTURE=&AXE_MIXTURE*64
Et avec tout çà la sacrée commande de mixture ne bouge toujours pas.J'ai l'impression d'être presque au but.
Peut-être un problème de Device ou d'IDX ?( IDX 1 pour la carte USB Servo ).
Merci de vous occuper de mon cas.

J'ai reconstitué un conservateur de cap avec un ancien dans lequel j'ai installé un moteur pas à pas.Je voudrai configurer la carte stepper dans le sioc.ini Que dois-je mettre dans les parenthèses pour déclarer la carte à la place de USBstepper=0,0 ? ( je n'ai pas encore branché la carte, ni la prise USB sur mon Hub )
Merci
SUIRE2
 
Messages: 86
Inscription: 21/12/09

Re: Carte USB Servo

Messagede stevelep » Jeu 7 Fév 2013 00:53

Ok on y est presque.

Ce qui m'inquiète un peu c'est que les 4 entrées vaient en même temps, alors qu(il n'y a rien de branché sur les 3 autres J4,J5 et J6

Non vu qu'il n'y a rien de branché, les valeurs des autres entrées ne sont pas utilisables.
c'est normal.

Peut-tu mettre une copie d'écran de ton sioc.exe
le texte de ton sioc.ini
et de ton code sioc

PS: tu as 2 cartes servos: est-tu sûr que celle où tu as branché le pot est bien la 26 et pas la 24 ?

Merci

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

Re: Carte USB Servo

Messagede SUIRE2 » Jeu 7 Fév 2013 12:54

Salut BOB,
Merci pour ta réponse,
Je pense que je suis sur la bonne carte USB Servo la n°1, car quand je regarde le IOCards USB test, dans la fenètre en haut à droite, j'ai le coix entre le "device 2216 et 2132, et le potentiomètre ne réagit qu'avec la 2216. J'avoue que je m'y perds avec tous ces "devices" :
Pour moi j'ai la correspondance pour les 2 USB servos entre :
IDX1 <> Device26 <> carte 2216 et
IDX2 <> Device24 <> carte 2132 comme tu pourras le voir sur la fenêtre SIOC.exe ( Si j'arrive à te l'envoyer sur le forum en .jpeg )
Bon , je te transmet les sioc.ini et sioc.ssi : çà je sais le faire...
Code: Tout sélectionner
[ fichero de configuracion para el SIOC ver. 3.7 ]
[ Configuration file for SIOC ]


[************** SIOC ***************]

[ Puerto del servidor IOCP ]
[ IOCP port ]
IOCP_port=8092

[ Tiempo de respuesta máximo de los paquetes IOCP ]
[ IOCP Timeout ]
IOCP_timeout=4000

[ Arranque minimizado en la barra ]
[ Start minimized in tray ]
Minimized=No

[ Retraso necesario para las variables toggles (Project Magenta)]
[ Deley needed for var. toggles (Project Magenta) ]
toggle_delay=20

[ Fichero de configuracion ]
[ Configuration File ]
CONFIG_FILE=.\sioc.ssi


[************** IOCARDS MODULE ***************]

[ Desactivar el módulo de las IOCards ]
[ Disable IOCards module ]
IOCard_disable=No

[ Usar puerto LPT en las IOCards ]
[ Use LPT port in IOCards ]
IOCard_LPT=No


[------------- CARDS CONFIG -------------]

[ IOCard Master ]
[...............]

[ Spanish : ]

[ MASTER=(Indice device),(Tipo),(Número de tarjetas),(Número device) ]

[ Indice Device: Índice usado en la variable SIOC como device, para indicar a que tarjeta se hace referencia ]
[ Se usa 0 en el caso de que sólo haya una tarjeta y no se tenga en cuenta el número de device, por defecto un script en SIOC cuando no se pone parámetro DEVICE, se hace referencia al índice 0]

[ tipo = 0 : Emulador de Master Card ]
[ tipo = 1 : Tarjeta Master conectada al puerto paralelo directamente ]
[ tipo = 2 : Tarjeta Master conectada al puerto paralelo mediante cable de compatibilidad ]
[ tipo = 3 : Placa de expansión por puerto paralelo ]
[ tipo = 4 : Tarjeta USBExpansion usada ]
[ tipo = 5 : Modulo MCP de Opencockpits ]
[ tipo = 6 : Tarjeta USBOutputs ]
[ tipo = 7 : Modulo EFIS de Opencockpits ]
[ tipo = 8 : Modulo Radio COM de Opencockpits ]
[ tipo = 9 : Modulo Radio NAV de Opencockpits ]
[ tipo = 10 : Modulo Radio ADF de Opencockpits ]
[ tipo = 11 : Modulo Radio ATC de Opencockpits ]


[ Número de tarjetas = Número de placas Master usadas, 1 a 4 para uso de placas de expansión, 1 para conexión de placa Master directa o del Emulador ]

[ Número de device = 0 en el caso del Emulador o primera tarjeta USB detectada, Dirección del puerto paralelo (por ejemplo $0378), o número de dispositivo USB ]

[ Por ejemplo para una Master conectada al puerto paralelo : ]
[ MASTER=0,1,1,$0378 ]

[ Un ejemplo de 2 USBExpansion conectadas con 3 y 2 placas Master ]
[ MASTER=0,4,3,22 ]
[ MASTER=1,4,2,24 ]

[ Un ejemplo de conexión a simulador ]
[ MASTER=0,0,1,0 ]


[ English : ]

[ MASTER=(Device index),(Type),(Number of cards),(Device number) ]

[ Device index : Index used in SIOC variable like device, this is the card used for SIOC sentence ]
[ Use 0 for only one card, for this value you not need specify Device number. If you not use DEVICE parameter in a definition in SIOC script, the default index used is 0]

[ type = 0 : Master Card Emulator ]
[ type = 1 : Master Card connected directly to parallel port ]
[ type = 2 : Master Card connected throught compatibility cable to parallel port ]
[ type = 3 : Expansion Card connected throught parallel port ]
[ type = 4 : USBExpansion Card used ]
[ type = 5 : Opencockpits MCP module ]
[ type = 6 : USBOutputs Card used ]
[ type = 7 : Opencockpits EFIS module ]
[ type = 8 : Opencockpits Radio COM module ]
[ type = 9 : Opencockpits Radio NAV module ]
[ type = 10 : Opencockpits Radio ADF module ]
[ type = 11 : Opencockpits Radio ATC module ]

[ Number of Cards = Master cards connecteds, 1 to 4 for expansion cards, 1 for a Master card directly connected or Emulator ]

[ Number of device = 0 for Emulator or first USB card detected, parallel port address, device number for specifies USBexpansion card ]

[ For example, a Master Card connected directly to parallel port : ]
[ MASTER=0,1,1,$0378 ]

[ For example, two USBExpansion cards connected with 3 and 2 Master cards used ]
[ MASTER=0,4,3,22 ]
[ MASTER=1,4,2,24 ]

[ For example, use of Master card emulator ]
[ MASTER=0,0,1,0 ]

[ Use the first USBExpansion card connected with only one Master Card attached ]
[ Esta definición es para usar la primera tarjeta USBExpansion que se encuentre instalada que además llevará conectada una placa Master ]

[MASTER=3,6,1,252]
[MASTER=0,4,1,0]
[MASTER=0,4,1,0]
MASTER=0,4,1,22


[ Others Cards / Otras tarjetas ]
[...............................]

[ Spanish : ]

[ Nombre_de_tarjeta=(Indice device),(Número device) ]

[ Indice Device: Índice usado en la variable SIOC como device, para indicar a que tarjeta se hace referencia ]
[ Se usa 0 en el caso de que sólo haya una tarjeta y no se tenga en cuenta el número de device, por defecto un script en SIOC cuando no se pone parámetro DEVICE, se hace referencia al índice 0]

[ Número de device = 0 para usar primera tarjeta USB de este tipo detectada ó número de dispositivo USB ]


[ English : ]

[ Name_of_card=(Device index),(Device number) ]

[ Device index : Index used in SIOC variable like device, this is the card used for SIOC sentence ]
[ Use 0 for only one card, for this value you not need specify Device number. If you not use DEVICE parameter in a definition in SIOC script, the default index used is 0]

[ Number of device = 0 for first USB card of this type detected, or device number for a specifies device ]

[ Ejemplo de dos USBServos en indices 0 y 1, y números de devices 17 y 23 ]
[ Example of two USBServos for index 0 and 1, and device number 17 and 23 ]

[ USBServos=0,17 ]
[ USBServos=1,23 ]


USBStepper=0,0
USBKeys=0,0
USBServos=1,26
USBServos=2,24
USBRelays=0,0
USBDCmotor=0,0

[ Para los ejes analógicos se usan los números de devices de las tarjetas donde están alojados ]
[ For analogic axles, you use the device number of cards what allow the axles ]

USBAnalogic=1,26


[************** FSUIPC MODULE ***************]

[ Desabilitar lectura de las FSUIPC ]
[ FSUIPC disable mode yes/no ]
FSUipcdisable=No

[ Refresco recepción FSUIPC ]
[ FSUIPC refresh ]
FSUipcRefresh=50


[************** IOCP CLIENTS MODULES ***************]

[ Retraso para inicializacion una vez conectado el cliente en milisegundos ]
[ Delay for initialization when client has been connected in mseconds ]
IOCPini_delay=3000

[************** IOCP CLIENT MODULE #0 ***************]

[ Desactivar el módulo cliente IOCP ]
[ Disable IOCP client module ]
IOCPclient0_disable=Yes

[ IP del servidor donde debe de conectar el cliente ]
[ IOCP client host name ]
IOCPclient0_host=localhost

[ Puerto de envio del protocolo IOCP cliente ]
[ IOCP client port ]
IOCPclient0_port=8090


[************** IOCP CLIENT MODULE #1 ***************]

[ Desactivar el módulo cliente IOCP ]
[ Disable IOCP client module ]
IOCPclient1_disable=Yes

[ IP del servidor donde debe de conectar el cliente ]
[ IOCP client host name ]
IOCPclient1_host=localhost

[ Puerto de envio del protocolo IOCP cliente ]
[ IOCP client port ]
IOCPclient1_port=8099


[************** SOUND MODULE ***************]

[ Ficheros de sonido ]
[ Sound Files ]

[ Desactivar el módulo de sonido ]
[ Disable Sound module ]
Sound_disable=yes

[ Volumen general de los sonidos 0-100 ]
[ Master Volume 0-100 ]
Volume=100


[ put '*' first filename for loop Sound ]
[ anteponer '*' en el fichero para bucle continuo de sonido]

[ Sound=wav_file,frequency,volume,pan ]
[ frequency=100 to 100000 0=original -1=current ]
[ volume=0 to 100, -1=current ]
[ pan=-100 (left) to +100 (right) 0=center -1=current ]

[ Sound=Fichero_wav,frecuencia,volumen,balance ]
[ frecuencia=100 hasta 100000 0=original -1=Por defecto ]
[ volumen=0 hasta 100 -1=Volumen por defecto ]
[ balance=-100 (Izquierda) hasta +100 (Derecha) 0=centro -1=Por defecto ]

[ #1 ]
Sound=APDis.wav,-1,-1,-1

[ #2 ]
Sound=*outermk.wav,-1,-1,-1

[ #3 ]
Sound=*hello.wav

[************** KEYBOARD EMULATOR MODULE ***************]

[ Nombre exacto de la ventana donde se enviarán las teclas ]
[ Name of window for key send ]
[window = "Project Magenta Glass Cockpit - Build 396" ]

window =a.txt - Bloc de notas


[ Asignación de teclas ]
[ assign youe keys ]

#1=\B\A
#2=B
#3=C
#4=D
#5=E
#6=F
#7=G
#8=H
#9=I
#10=J
#11=K
#12=L
#13=M
#14=N
#15=O
#16=P
#17=Q
#18=R
#19=S
#20=T
#21=U
#22=V
#23=W
#24=X
#25=Y
#26=Z
#27=1
#28=2
#29=3
#30=4
#31=5
#32=6
#33=7
#34=8
#35=9
#36=0
#37=<
#38=,
#39=.
#40=-
#41=*
#42=+
#43=//
#44=/0
#45=/1
#46=/A
#47=
#48=
#49=
#50=
#51=
#52=
#53=
#54=
#55=
#56=
#57=
#58=
#59=
#60=
#61=
#62=
#63=
#64=
#65=
#66=
#67=
#68=
#69=
#70=
#71=
#72=
#73=
#74=
#75=
#76=
#77=
#78=
#79=
#80=
#81=
#82=
#83=
#84=
#85=
#86=
#87=
#88=<a
#200=<b

[ End of File ]



Et pour mon code :
Code: Tout sélectionner
// *****************************************************************************
// * Config_SIOC ver 4.01   -     By Manuel Velez    -    www.opencockpits.com
// *****************************************************************************
// * FileName : sioc.txt
// * Date : 07/02/2013



Var 0000, name INIT, Value 0     // Variable d'initialisation
{
  &GEAR = 16383         // Train sorti
}

Var 0010, name GEAR, Link FSUIPC_INOUT, Offset $0BE8, Length 4     // Commande du train

Var 0011, name L_GEAR_POS, Link FSUIPC_IN, Offset $0BF4, Length 4     // Position du train gauche
{
  IF &L_GEAR_POS = 16383
  {
    &L_GEAR_LED = 1   
    &GEAR_TRANS_LED = 0   
  }
  ELSE
  {
    IF &L_GEAR_POS >= 1
    {
      &L_GEAR_LED = 0   
      &GEAR_TRANS_LED = 1   
    }
    ELSE
    {
      &L_GEAR_LED = 0   
      &GEAR_TRANS_LED = 0   
    }
  }
}

Var 0012, name R_GEAR_POS, Link FSUIPC_IN, Offset $0BF0, Length 4     // Position du train droit
{
  IF &R_GEAR_POS = 16383
  {
    &R_GEAR_LED = 1   
    &GEAR_TRANS_LED = 0   
  }
  ELSE
  {
    IF &R_GEAR_POS >= 1
    {
      &R_GEAR_LED = 0   
      &GEAR_TRANS_LED = 1   
    }
    ELSE
    {
      &R_GEAR_LED = 0   
      &GEAR_TRANS_LED = 0   
    }
  }
}

Var 0013, name NOSE_GEAR_POS, Link FSUIPC_IN, Offset $0BEC, Length 4     // Position train avant
{
  IF &NOSE_GEAR_POS = 16383     // Train avant sorti
  {
    &NOSE_GEAR_LED = 1         // LED  verte train avant allumée
    &GEAR_TRANS_LED = 0         // Voyant transit éteint
  }
  ELSE     // Le train avant n'est pas sorti
  {
    IF &NOSE_GEAR_POS >= 1     // Le train avant en transit
    {
      &NOSE_GEAR_LED = 0         // LED verte Train avant éteinte
      &GEAR_TRANS_LED = 1         // Voyant transit allumé
    }
    ELSE
    {
      IF &NOSE_GEAR_POS = 0     // Train avant rentré
      {
        &NOSE_GEAR_LED = 0         // LED verte train avant éteinte
        &GEAR_TRANS_LED = 0         // Voyant transit éteint
      }
    }
  }
}

Var 0016, name GEAR_SW, Link IOCARD_SW, Input 2     // Inter du levier de train
{
  IF &GEAR_SW = 1     // Si l'inter est fermé
  {
    &GEAR = 16383         // Le train est sorti
  }
  ELSE     // Autrement
  {
    &GEAR = 0         // Le train est rentré
  }
}

Var 0030, name FUEL_SELECT, Link FSUIPC_INOUT, Offset $0AF8, Length 2     // Sélecteur de réservoirs

Var 0035, name FUEL_SELECT_OF, Link IOCARD_SW, Input 19     // Inter fuel selecteur
{
  IF &FUEL_SELECT_OF = 1
  {
    &FUEL_SELECT = 0   
  }
}

Var 0036, name FUEL_SELECT_GH, Link IOCARD_SW, Input 23     // Selecteur fuel gauche
{
  IF &FUEL_SELECT_GH = 1
  {
    &FUEL_SELECT = 2   
  }
}

Var 0037, name FUEL_SELECT_DT, Link IOCARD_SW, Input 18     // Sélecteur fuel droit
{
  IF &FUEL_SELECT_DT = 1
  {
    &FUEL_SELECT = 3   
  }
}

Var 0040, name POMPE_ESSENCE, Link FSUIPC_INOUT, Offset $3104, Length 1     // Pompe électrique
{
  &POMPE_ESSENCE = &POMPE_ESS_01   
}

Var 0045, name POMPE_ESS_01, Link IOCARD_SW, Input 27     // Inter pompe électrique
{
  &POMPE_ESSENCE = &POMPE_ESS_01   
}

Var 0050, name INTER_BAT, Link FSUIPC_OUT, Offset $3102, Length 1
{
  &INTER_BAT = &INTER_BAT01   
}

Var 0055, name INTER_BAT01, Link IOCARD_SW, Input 15
{
  &INTER_BAT = &INTER_BAT01   
}

Var 0060, name INTER_ALT, Link FSUIPC_INOUT, Offset $3101, Length 1
{
  &INTER_ALT = &INTER_ALT01   
}

Var 0065, name INTER_ALT01, Link IOCARD_SW, Input 32
{
  &INTER_ALT = &INTER_ALT01   
}

Var 0070, name CONT_MAG, Link FSUIPC_INOUT, Offset $0892, Length 2     // Contacteur magnéto + Demarreur

Var 0075, name MAG_SW0, Link IOCARD_SW, Input 24     // Contacteur sur 0
{
  IF &MAG_SW0 = 1
  {
    &CONT_MAG = 0   
  }
}

Var 0080, name MAG_SWR, Link IOCARD_SW, Input 25     // Contacteur position R
{
  IF &MAG_SWR = 1
  {
    &CONT_MAG = 1   
  }
}

Var 0085, name MAG_SWL, Link IOCARD_SW, Input 26     // Contacteur position L
{
  IF &MAG_SWL = 1
  {
    &CONT_MAG = 2   
  }
}

Var 0090, name MAG_SWB, Link IOCARD_SW, Input 21     // Contacteur position Both
{
  IF &MAG_SWB = 1
  {
    &CONT_MAG = 3   
  }
}

Var 0095, name START, Link IOCARD_SW, Input 22     // Contacteur sur Démarrage
{
  IF &START = 1
  {
    &CONT_MAG = 4   
  }
}

Var 0100, name RECH_CARBU, Link FSUIPC_INOUT, Offset $0784, Length 4     // Commande réchauf.Carbu
{
  &RECH_CARBU = &RECH_CARBU01   
}

Var 0110, name RECH_CARBU01, Link IOCARD_SW, Input 20     // Inter Réchauffage carbu
{
  &RECH_CARBU = &RECH_CARBU01   
}

Var 0200, name FLAPS, Link FSUIPC_INOUT, Offset $0BDC, Length 4     // Position des volets

Var 0205, name FLAPS_UP_SW, Link IOCARD_SW, Input 3, Type 1     // Volets position rentrés
{
  IF &FLAPS_UP_SW = 1     // Inter posit.volets rentrés; inter fermé
  {
    &FLAPS = &FLAPS - 5000
  }
}

Var 0210, name FLAPS_DN_SW, Link IOCARD_SW, Input 4, Type 1     // Volets Position sortis
{
  IF &FLAPS_DN_SW = 1     // Inter fermé
  {
    &FLAPS = &FLAPS + 5000
  }
}

Var 0220, name FLAPS_IN, Link FSUIPC_IN, Offset $0BE0, Length 4     // Position volets
{
  IF &FLAPS_IN > 0
  {
    IF &FLAPS_IN <= 1638
    {
      &FLAPS_LED1 = 1   
    }
  }
  ELSE     // Sinon
  {
    &FLAPS_LED1 = 0   
  }
  IF &FLAPS_IN > 1638
  {
    IF &FLAPS_IN <= 3276
    {
      &FLAPS_LED2 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED2 = 0   
  }
  IF &FLAPS_IN > 3276
  {
    IF &FLAPS_IN <= 4915
    {
      &FLAPS_LED3 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED3 = 0   
  }
  IF &FLAPS_IN > 4915
  {
    IF &FLAPS_IN <= 6553
    {
      &FLAPS_LED4 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED4 = 0   
  }
  IF &FLAPS_IN > 6553
  {
    IF &FLAPS_IN <= 8192
    {
      &FLAPS_LED5 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED5 = 0   
  }
  IF &FLAPS_IN > 8192
  {
    IF &FLAPS_IN <= 9830
    {
      &FLAPS_LED6 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED6 = 0   
  }
  IF &FLAPS_IN > 9830
  {
    IF &FLAPS_IN <= 11469
    {
      &FLAPS_LED7 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED7 = 0   
  }
  IF &FLAPS_IN > 11469
  {
    IF &FLAPS_IN <= 13108
    {
      &FLAPS_LED8 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED8 = 0   
  }
  IF &FLAPS_IN > 13108
  {
    IF &FLAPS_IN <= 14746
    {
      &FLAPS_LED9 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED9 = 0   
  }
  IF &FLAPS_IN > 14746
  {
    IF &FLAPS_IN <= 16383
    {
      &FLAPS_LED10 = 1   
    }
  }
  ELSE
  {
    &FLAPS_LED10 = 0   
  }
}

Var 0240, name FLAPS_LED1, Link IOCARD_OUT, Output 15     // LED n° 1 FLAPS

Var 0245, name FLAPS_LED2, Link IOCARD_OUT, Output 16     // LED Flaps n°2

Var 0250, name FLAPS_LED3, Link IOCARD_OUT, Output 17     // LED Flaps n°3

Var 0255, name FLAPS_LED4, Link IOCARD_OUT, Output 18     // LED Flaps n°4

Var 0260, name FLAPS_LED5, Link IOCARD_OUT, Output 19     // LED Flaps n°5

Var 0265, name FLAPS_LED6, Link IOCARD_OUT, Output 20     // LED Flaps n°6

Var 0270, name FLAPS_LED7, Link IOCARD_OUT, Output 21     // LED Flaps n°7

Var 0275, name FLAPS_LED8, Link IOCARD_OUT, Output 22     // LED Flaps n°8

Var 0280, name FLAPS_LED9, Link IOCARD_OUT, Output 23     // LED Flaps n°9

Var 0285, name FLAPS_LED10, Link IOCARD_OUT, Output 24     // LED Flaps n°10

Var 0300, name PARK_BRAKE, Link FSUIPC_INOUT, Offset $0BC8, Length 2     // Brake 0 = Off  1 = ON
{
  &PARK_BRAKE = &PARK_BRAKE01   
}

Var 0310, name PARK_BRAKE01, Link IOCARD_SW, Input 33     // Parking Brake
{
  &PARK_BRAKE = &PARK_BRAKE01   
}

Var 0550, name TACHY, Link FSUIPC_IN, Offset $0898, Length 2     // Tachy
{
  L0 = DIV &TACHY ,128
  L1 = L0 * 3.3
  L2 = L1 + 70
  &SERVO2 = L2   
}

Var 0555, name SERVO2, Link USB_SERVOS, Device 1, Output 1, PosL 122, PosC 401, PosR 680     // Tachymètre

Var 0580, name BADIN, Link FSUIPC_IN, Offset $02BC, Length 2     // BADIN
{
  L0 = DIV &BADIN ,128
  L1 = L0 * 2     // Calcul de la pente servo
  L2 = L1 + 330     // Calcul de l'interception servo
  &SERVO4 = L2   
}

Var 0590, name SERVO4, Link USB_SERVOS, Device 1, Output 2, PosL 182, PosC 391, PosR 600     // Jauge Badin

Var 0600, name VARIO, Link FSUIPC_IN, Offset $02C8, Length 4     // Offset Vario
{
  L0 = &VARIO * 0.7895     // FSUIPC Conversion, L0=Vs
  L0 = ABS L0     // L0 sans signe
  L2 = L0   
  IF L0 <= 1000     // Secteur du bas
  {
    L1 = L2 * 0.085     // (85 pas/1000 valeurs )= 0,085
  }
  ELSE     // C'est une valeur plus grande
  {
    L2 = L0 - 1000     // L2a seulement valeur poursecteur suivant
    IF L0 <= 2000     // 2 ième secteur
    {
      L1 = L2 * 0.052     // 52 pas sur 1000 valeurs =0,052
      L1 = L1 + 85     // Ajouter les pas des autres secteurs
    }
    ELSE
    {
      L2 = L0 - 2000     // L2 a seulement valeur pour sect. suivant
      IF L0 <= 4000     // 3.secteur
      {
        L1 = L2 * 0.028     // (56/2000)=0.028
        L1 = L1 + 137     // Ajout des pas des autres sect. 52+85
      }
      ELSE
      {
        L2 = L0 - 4000     // L2 seulmt sect suiv val 1000 ,1000, 2000
        IF L0 <= 6000     // 4.secteur
        {
          L1 = L2 * 0.035     // 70/2000=0.035
          L1 = L1 + 193     // Ajouter des pas aux autres sect 56+52+85
        }
        ELSE     // En dehors des limites
        {
          L1 = 263         // Position max
        }
      }
    }
  }
  IF &VARIO < 0     // Si Vs est négative
  {
    &VSI = 607 - L1     // Soustraire du centre
  }
  ELSE
  {
    &VSI = 607 + L1     // Sinon ajouter au centre
  }
}

Var 0620, name VSI, Link USB_SERVOS, Device 1, Output 3, PosL 345, PosC 607, PosR 870     // Servo Vario

Var 0640, name HORIZON_INCLIN, Link FSUIPC_IN, Offset $057C, Length 4     // Offset d'inclinaison
{
  L0 = &HORIZON_INCLIN * 8.38E-008
  IF L0 > 40     // Limite d'angle à 40° max
  {
    L0 = 40   
  }
  IF L0 < -40
  {
    L0 = -40   
  }
  L1 = L0 * 2.8     // Calcul en degrés pour le servo
  &HORIZON_INCL01 = L1 + 795
}

Var 0650, name HORIZON_INCL01, Link USB_SERVOS, Device 1, Output 4, PosL 695, PosC 767, PosR 893     // Inclinaison

Var 0660, name HORIZ_PENTE, Link FSUIPC_IN, Offset $0578, Length 4     // Offset de pente
{
  L0 = &HORIZ_PENTE * 8.38E-008     // Conversion en angle
  IF L0 > 40     // Limite de l'angle à 20° max
  {
    L0 = 40   
  }
  IF L0 < -40     // Limite de l'angleà -20° max
  {
    L0 = -40   
  }
  L1 = L0 * 3     // Calcul en d° pour le servo
  &HORIZ_PENTE01 = L1 + 975
}

Var 0670, name HORIZ_PENTE01, Link USB_SERVOS, Device 1, Output 5, PosL 746, PosC 822, PosR 916     // PENTE

Var 0700, name P_ESSENCE, Link FSUIPC_IN, Offset $08F8, Length 4     // Offset Pression d'Essence
{
  L0 = DIV &P_ESSENCE ,128
  L1 = L0 * -12     // Calcul de la pente du servo
  L2 = L1 + 900     // Calcul interception servo Donne le 0
  &P_ESSENCE01 = L2   
  L2 = LIMIT 878 ,612 ,0
}

Var 0710, name P_ESSENCE01, Link USB_SERVOS, Device 2, Output 2, PosL 800, PosC 745, PosR 612     // Pression essence

Var 0730, name TURN, Link FSUIPC_IN, Offset $037C, Length 4     // Maquette
{
  L0 = &TURN * -1
  &TURN01 = L0 + 450
  &TURN01 = LIMIT 0 ,1023 ,0
}

Var 0735, name TURN01, Link USB_SERVOS, Device 1, Output 6, PosL 220, PosC 350, PosR 600     // Jauge maquette

Var 0750, name BILLE, Link FSUIPC_IN, Offset $036E, Length 4, Type 1     // Bille
{
  L0 = &BILLE * 1.2126
  &BILLE01 = L0 + 496
}

Var 0755, name BILLE01, Link USB_SERVOS, Device 2, Output 1, PosL 728, PosC 844, PosR 960     // Jauge bille

Var 1000, name GEAR_TRANS_LED, Link IOCARD_OUT, Output 11     // LED Rouge " Train en transit "

Var 1001, name L_GEAR_LED, Link IOCARD_OUT, Output 12     // LED verte Train gauche

Var 1002, name R_GEAR_LED, Link IOCARD_OUT, Output 13     // LED Verte Train droit

Var 1003, name NOSE_GEAR_LED, Link IOCARD_OUT, Output 14     // LED Verte Train avant

Var 1100, name ENG_THROTTLE, Link FSUIPC_OUT, Offset $088C, Length 2     // Offset de gaz

Var 1110, name POT_THROTTLE, Link IOCARD_ANALOGIC, Input 1, PosL 0, PosC 127, PosR 255     // Commande de gaz
{
  &ENG_THROTTLE = &POT_THROTTLE * 64
}

Var 1120, name PAL, Link FSUIPC_OUT, Offset $0BBA, Length 2     // Offset de palonnier

Var 1125, name PALONNIER, Link IOCARD_ANALOGIC, Input 2, PosL 0, PosC 127, PosR 255     // Commande de palonnier
{
  IF &PALONNIER < 110     // Pour faciliter le centrage
  {
    IF &PALONNIER > 98
    {
      &PALONNIER = 0   
    }
  }
  IF &PALONNIER > 110
  {
    L2 = &PALONNIER - 110
    &PAL = L2 * -50
    IF &PAL < -16383
    {
      &PAL = -16383   
    }
  }
  IF &PALONNIER < 98
  {
    L1 = 98 - &PALONNIER
    &PAL = L1 * 50
    IF &PAL > 16383
    {
      &PAL = 16383   
    }
  }
}

Var 1130, name PROF, Link FSUIPC_OUT, Offset $0BB2, Length 2     // Offset de profondeur

Var 1135, name PROFONDEUR, Link IOCARD_ANALOGIC, Input 3, PosL 0, PosC 127, PosR 255     // Commande de profondeur
{
  IF &PROFONDEUR < 110     // Pour faciliter le centrage
  {
    IF &PROFONDEUR > 98
    {
      &PROF = 0   
    }
  }
  IF &PROFONDEUR > 110
  {
    L2 = &PROFONDEUR - 110
    &PROF = L2 * -300
    IF &PROF < -16383
    {
      &PROF = -16383   
    }
  }
  IF &PROFONDEUR < 98
  {
    L1 = 98 - &PROFONDEUR
    &PROF = L1 * 300
    IF &PROF > 16383
    {
      &PROF = 16383   
    }
  }
}

Var 1140, name AILER, Link FSUIPC_OUT, Offset $0BB6, Length 2     // Offset d'Ailerons

Var 1145, name AILERONS, Link IOCARD_ANALOGIC, Input 4, PosL 0, PosC 127, PosR 255     // Commande d'ailerons
{
  IF &AILERONS < 110     // Pour faciliter le centrage
  {
    IF &AILERONS > 98
    {
      &AILER = 0   
    }
  }
  IF &AILERONS > 110
  {
    L2 = &AILERONS - 110
    &AILER = L2 * -200
    IF &AILER < -16383
    {
      &AILER = -16383   
    }
  }
  IF &AILERONS < 98
  {
    L1 = 98 - &AILERONS
    &AILER = L1 * 200
    IF &AILER > 16383
    {
      &AILER = 16383   
    }
  }
}

Var 1150, name FS_MIXTURE, Link FSUIPC_OUT, Offset $0890, Length 2     // Commande de mixture

Var 1155, name AXE_MIXTURE, Link USB_ANALOGIC, Device 1, Input 1, PosL 1, PosC 127, PosR 255     // Mixture
{
  &FS_MIXTURE = &AXE_MIXTURE * 64
}


Je vais tenter le SIOC .exe :
[img][img]http://img15.hostingpics.net/thumbs/mini_943088SIOC.jpg[/img][/img]

Merci pour tout,
Michel
SUIRE2
 
Messages: 86
Inscription: 21/12/09

Re: Carte USB Servo

Messagede stevelep » Jeu 7 Fév 2013 17:17

Salut,

Modifie le n° de IDX pour l'analogique seulement

USBAnalogic=10,26

Dans ton SIOC corrige le DEVICE 10


Var 1155, name AXE_MIXTURE, Link USB_ANALOGIC, Device 10, Input 1, PosL 1, PosC 127, PosR 255 // Mixture

Dans ton image du SIOC, FSUIPC n'est connecté, ça n'est pas normal.
Vérifie ça.

Ensuite débranche l'autre carte Servo et refait les tests avec le programme de test
et regarde si ça fonctionne.

Ensuite lance le SIOC et regarde dans la fenêtre si c'est bien la bonne carte (26) qui est branchée

Va dans la console du SIOC et regarde les variables 1150 et 1155 si elles bouges avec le potentiomètre

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

Re: Carte USB Servo

Messagede SUIRE2 » Ven 8 Fév 2013 01:03

Bonsoir BOB,
J'ai fait ce que tu me conseillait, malgré tout sans résultat :

- J'ai modifié le n° de l'IDX dans leSIOC.ini en mettant USBanalogic10,26 et remplacé dans le SIOC.ssi le device 1 par le 10.
- J'ai vérifié dans la fenêtre du SIOC.exe le FSUIPC me donne : FSUIPC status : OK
- J'ai débranché la 2ième carte servo, et j'ai constaté que dans l'IOCard test, les numéros étaient inversés : la carte n°2 était la 2216, et la n°1 la 2132. J'ai donc vérifié l'action du potentiomètre sur chacune des cartes après avoir débranché la prise USB sur l'une puis sur l'autre. D'ailleurs en rebranchant la prise USB sur la n°2 le numèro de la carte est devenu 2636.
On a donc : Carte n° 1 : IDX n°1 <> Device 26 <> n° carte 2132
Carte n° 2 : IDX n°2 <> Device 24 <> n° carte 2636
Le potard fonctionne sur chacune des 2 entrées n°1 de chaque carte.
Par contre les 2 variables de mixture restent à 0 sur l'IOCP Console quand le potard bouge.

J'avoue ne pas trop comprendre d'où vient la panne.

Bonne nuit et merci pour ton aide.
Michel
SUIRE2
 
Messages: 86
Inscription: 21/12/09

Re: Carte USB Servo

Messagede stevelep » Ven 8 Fév 2013 12:19

Hello,

Il doit y avoir une petite erreur quelque part dans la config qui nous à echappé murrouge
Si la carte fonctionne avec le programme de test, c'est forcément un problème de
configuration.

Il faudrait envisager un contact avec skype et teamviewer pour que je puisse voir ton écran
et dialoguer en direct. Cela permet de résoudre ce genre de problème en quelques minutes
et nous évite des dizaines de post en questions-réponses

Est-ce que tu as un compte skype et le programme de contrôle à distance teamviewer (gratuit) ?

mon pseudo skype est stevelep

Je suis là ce weekend .

BOB

PS: ôte moi d'un doute: tu utilises bien SIOC.monitor pour checker les cartes ?
Car dans ce programme il apparait les n° de device USB a 2 chiffres (26)
Si tu as des n° à 4 chiffres c'est que tu dois utiliser un programme obsolète ...???
Regarde le manuel page 6 tu as bien la grande fenêtre comme sur la photo ?
Avatar de l’utilisateur
stevelep
Administrateur du site
 
Messages: 2075
Inscription: 27/03/09
Localisation: LSGN Neuchâtel, Suisse

Re: Carte USB Servo

Messagede SUIRE2 » Sam 9 Fév 2013 01:09

Salut BOB,
Suivant tes conseils j'ai installé Skype sur mon ordinateur fixe, et teamviewer sur le portable sur lequel est installé FS9 et les SIOC.
Dis moi, comment on procède pour t'envoyer les identifiants et mot de passe, et entrer en communication. N° de tel.?
Lorsque j'ai eu des problèmes de FS qui ne répondait plus du tout cet été, les gars de HAIDF d'Orly, mon installé la version précédente de SIOC.exe, la ver 3.7 B1 parce que d'après eux, la V4.01 contenait quelques Buggs.Je ne sais pas si celà a de l'importance mais jusque-là tous mes bouts de codes fonctionnent; il serait peut-être utile de passer à une version plus récente , la 4.01 ou la 4.2? pour avoir le SIOC.monitor.
Je n'utilise pas SIOC.monitor pour tester les cartes,et pour cause, je n'ai pas le bouton sur la fenêtre SIOC. exe ver3,7,mais j'utilise l'IOCards USB Test Ver 0,2 Béta pour relays et Servos. Mais çà a l'air de marcher correctement. C'est exactement la fenêtre indiquée en page 5 de "OPENCOCKPITS IOCards USB SERVOS INSTALLATION AND USERS MANUAL".( ancienne impression )
Merci pour ton aide
Cordialement,
Michel
SUIRE2
 
Messages: 86
Inscription: 21/12/09

PrécédenteSuivante

Retourner vers Autres cartes Opencockpits





Qui est en ligne

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