Air-Cockpit
Air-Cockpit
Air-Cockpit
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Air-Cockpit

Echange et partage entre créateurs et réalisateurs de simulateurs de vol.
 
AccueilDernières imagesS'enregistrerConnexion
Aircokpit est définitivement transféré à sa nouvelle adresse http://www.aircockpit.com. Ce forum sera bientôt en lecture seule. Voir messages d'annonce dans les sujets ci-dessous. L'équipe AIRCOCKPIT
Le Deal du moment : -17%
(Black Friday) Apple watch Apple SE GPS + Cellular ...
Voir le deal
249 €

 

 Utiliser IOCP

Aller en bas 
4 participants
AuteurMessage
Kelt760




Nombre de messages : 285
Date d'inscription : 15/03/2008
Localisation : Saclay

Utiliser IOCP Empty
MessageSujet: Utiliser IOCP   Utiliser IOCP EmptyMer 11 Juin - 14:31

Bonjour

Ce post fait suite à https://air-cockpit.superforum.fr/cartes-d-interfaces-f3/questions-sur-le-carte-usb-servo-t337.htm

C'est vrai que les servos suivent avec un peu de retard/décalage...

J'ai donc essayé ce matin de plonger le nez dans IOCP, c'est pas de la tarte Utiliser IOCP 432809

D'abord, j'ai téléchargé le serveur sur OpenCockpits, mais il ne veut pas s'installer (erreur -en espagnol!- No se puede obtener acceso a la ubicacion de red \Modules ). Sur leur forum, en 2006, Ascanio dit que c'est la faute de l'installer et qu'il va en mettre une nouvelle version, mais apparemment, ça marche toujours pas partout... Avez-vous eu ce genre de message ?

En même temps, SIOC indique dans sa fenête qu'il est connecté au serveur IOCP, avec l'adresse IP de son propre PC (192.168.1.6 et non pas 127.0.0.0 comme on pourrait penser). Est-ce que cela veut dire que je n'ai pas besoin d'installer le serveur ? J'ai bien OPCPServer.dll dans les modules de FS9...

Ensuite, comment utiliser les numéros des variables IOCP? Il y a, dans le dossier Modules de FS9, un document "IOCPServer.html" qui donne leur nom, et un numéro. Suffit-il de faire une variable SIOC liée à ce numéro ?

Dans ce cas, à quoi sert le programme IOCservo.exe, qui dans son propre fichier ini, fait une relation entre les numéros des servos et des variables IOCP ??? Dans l'exemple SIOC de la doc de la carte USBServo, le servo est simplement lié à la variable 000 de SIOC, sans 'link". J'ai retrouvé cela dans d'autres exemples sur le net, mais je pige pas ???
Tout cela est bien obscur ; et quand viendront Widewiew ou FSXpand là dessus, je crains le pire
Utiliser IOCP 199933

Je suis preneur d'explications !!

Pierre
Revenir en haut Aller en bas
http://www.simubaron.new.fr
steph737

steph737


Nombre de messages : 725
Date d'inscription : 15/03/2008
Localisation : Antananarivo

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMer 11 Juin - 15:46

Tu m'étonnes que c'est pas clair, Pierre !

De ce que j'ai compris, iocp.dll est bien le serveur, un genre de fsuipc.dll en fait ! Il permet d'extraire des valeurs de FS et de les mettre dans des variables IOCP.

Sauf qu'en plus si besoin il joue également le rôle de widefs sur un réseau intranet ! Les modules sioc sont des clients IOCP, on peut donc utiliser des variables IOCP "libres" pour passer des valeurs entre plusieurs programmes SIOC tournant sur plusieurs PC. Ca je l'ai déjà fait. ( mais on pourrait aussi le faire avec FSUIPC en utilisant des offsets libres...

Par contre, les variables issues du serveur IOCP ( sur FS donc ) , y'a une histoire de mappage de variables... as tu ouvert le programme VariableMAP.exe inclus dans le pack IOCPserver ? En cliquant sur le bouton "view MAP", une page html s'ouvre avec la liste de correspondance.

A chaque numéro d' "offset" IOCP est attribué une variable, ex : 13 c'est LANDING LIGHT, la différence avec FSUIPC c'est que l'on peut réattribuer les numéros aux valeurs de variables ( ou l'inverse ). Mais j'ai pas testé ! ( c'est pour cela qu'il n'y a pas un tableau de correspondance dans la doc mais un programme de lecture )

A priori tu n'as pas à utiliser IOCservo.exe, on peut très bien mettre tout ça dans SIOC, et utiliser les variables Link_IOCP d'une part et Link_USBservo de l'autre...enfin je crois !

Il y a beaucoup de programmes opencockpit qui ne sont plus nécessaires au fur et à mesure des versions de SIOC ( voir les dates de création .... )

Bon je trouve ça moi aussi assez compliqué, surtout si on mélange IOCP et FSUIPC, faut bien suivre ce qu'on fait !

Bon BOB va pas tarder à passer nous mettre tout ça au clair ! Utiliser IOCP 199933
Revenir en haut Aller en bas
http://steph737.blogspot.com
stevelep

stevelep


Nombre de messages : 512
Date d'inscription : 16/03/2008
Age : 50
Localisation : Neuchâtel LSGN, Suisse

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyJeu 12 Juin - 2:27

Hello,

En fait IOCP est très simple et paradoxalement les explications pour son fonctionnement
et son installation sont très ténues voire inexistante.

Je l'ai installé chez moi sans problème et sans trop de difficulté, ce qui fait que je me rappelle
plus bien comment j'ai fait ...

En résumé IOCP server est comme son nom l'indique un serveur qui s'installe dans le dossier
module de FS et est automatiquement lancé par FS car c'est un .dll (comme FSUIPC)
Ensuite certains programme (SIOC, OGS, IOCP_GPS, IOCP_Servo, RemoteJoy, GaugeComposer) sont des clients
qui se connectent (presque) tout seul au serveur et recoivent/transmettent les données de FS
(il n'y a pas besoin de programme comme WideFS).

IOCP utilise un protocole de transfert plus rapide et moins latent que FSUIPC.
Les données sont envoyée dur des "offset" IOCP configuré (mappé) dans le
variable map. Une bonne parties des variables de FS sont préprogrammé dans
ce mappage, mais on peux le modifier, changer les attribution ou en rajouter.
(il y a beaucoup de variable READ de base mais peu de variable WRITE)

Pour mon cockpit, j'utilise surtout les variable READ de base pour les gauges pour leurs fluidités
et j'ai programmé quelques variables WRITE sur des n° d'offset libres 1000, 1001, ...
il s'agit des boutons du GPS, de Flaps increment, -decrement entre autre. Des fonctions
que je n'arrivait pas à gérer facilement avec FSUIPC.

Pour les atteindre j'utilise simplement la variable SIOC "Link IOCP" qui est automatiquement
INOUT, t'envoie un code et ca le WRITE dans FS / tu READ l'offset est ca te donne la valeur
(comme FSUIPC INOUT en somme).

Pour tes servo, pas besoin de IOCPservo. juste un programme SIOC, je pense que ce programme
sert à faire marcher des servos sur un autre PC.

Voila, bon il est tard, pour les trucs d'installation je verrais demain ...

BOB
Revenir en haut Aller en bas
Kelt760




Nombre de messages : 285
Date d'inscription : 15/03/2008
Localisation : Saclay

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyJeu 12 Juin - 10:13

Merci pour ces explications, Bob.

Je pense avoir compris ; pour l'installation, je ne me rappelle pas l'avoir déjà installé, pourtant il est dans les 2 PC (dossier Modules de FS9).

J'ai réussi à faire tourner un servo selon les RPM, avec FSUIPC comme avec IOCP. En fait, je ne vois pas de différence de tonctionnement entre les 2. Mais dans les 2 cas, l servo ne réagit pas exactement comme l'aiguille du cadran sur FS : une fois le mouvement terminé, ils sont (presque) d'accord, mais pendant le mouvement, le servo paraît "en avance" sur l'aiguille de l'écran...

C'est pourtant simple : l'aiguille des RPM tourne sur environ 190°, comme le servo, il n'y a donc guère besoin de calculs, sauf divisier les PRM par 2,7 pour trouver la valeur du servo. Une idée pour ce décalage ?

Autre chose: depuis que j'ai activé (puis désactivé) IOCP dans SIOC.ini, et que j'ai branché la seconde carte servo (puis débranchée à nouveau), deux problèmes nouveaux sont apparus :

- d'une part, les entrées analogiques de la carte servo ne sont plus reconnues (pour les manettes de mixture, qui fonctionnaient parfaitement jusque là) ;

- d'autre part, dès que je lance SIOC ou USBCheck, le processeur est utliisé à 50% !!! Utiliser IOCP 759315 Utiliser IOCP 759315 Utiliser IOCP 759315

Piste éventuelle : malgré l'alim extérieure, en branchant la seconde carte servo, j'ai eu une fois un avertissement de pic de tension sur le port USB. C'est bizarre, car le servo fonctionne sur indifféremment sur les 2 cartes servo, et la master reliée à son USB Expansion fonctionne aussi parfaitement...

Je vais sans doute acheter un hub alimenté ; mais dans ce cas, comment relier les masses avec celle de l'alim externe?

FS, ça serait mieux sans PC Utiliser IOCP 199933
Revenir en haut Aller en bas
http://www.simubaron.new.fr
steph737

steph737


Nombre de messages : 725
Date d'inscription : 15/03/2008
Localisation : Antananarivo

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyJeu 12 Juin - 12:01

Pour l'histoire du servo qui va plus vite que la gauge écran, peut être que la programmation de la gauge inclus un "retard" pour faire plus réaliste... et qu'ils ont forcé la dose ! Ca peut pas être le servo qui est en avance, c'est forcément la gauge qui retarde !

Pour l'histoire des masses, elles seront liées dans le hub alimenté de toute façon , et puis c'est déjà le bazard sur les cartes opencockpit ( masse USB de l'expansion reliée à la masse alim externe sur la carte master... Claude t'en parlera mieux que moi )

Pour le reste je sais pas mais je ne pense pas que faire des branchements USB à chaud soit très bon dans le cas des cartes avec alim externes ( pas de problème pour les cartes USB keys ) vu que la partie "puissance" de ces cartes n'est pas découplée, me méfierait un peu ( normalement les cartes ports USB sont protégées mais comme c'est sur la carte mère....gaffe ! )
Revenir en haut Aller en bas
http://steph737.blogspot.com
cs200

cs200


Nombre de messages : 39
Date d'inscription : 03/05/2008
Age : 61

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMar 24 Juin - 15:22

Bonjour ,
Voila je ne comprend pas très bien ce que je dois faire.Pour le moment ,j'ai fais un programme pour mon trhottle.Je tourne sur le même PC (les cartes Usbservos, dcmoteur et 1 master carte sur une usb expention).Je lance SIOC.exe et tout tourne sans problème.Pour les entrées A/D j'ai fais correspondre les variables de mon programme avec les variables des fichiers INI (servos et dcmoteur).
J'aimerai mettre un deuxième pc pour voir comment ça marche.Le premier avec FS (sans cartes) et le deuxième avec les différentes cartes de mon throttle.J'ai bien mis les deux PC en résau ,mais ensuite ...

Merci
++
JeanMi
Revenir en haut Aller en bas
steph737

steph737


Nombre de messages : 725
Date d'inscription : 15/03/2008
Localisation : Antananarivo

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMar 24 Juin - 15:31

Alors ensuite 2 solutions :

1) classique : en utilisant WideFS qui permet le "partage" des offsets FSUIPC sur le réseau de PC. Pour SIOC ( comme pour tous les autres logiciels utilisant FSUIPC ), l'utilisation de WideFS est "transparente", cela permet de "voir" les offsets comme si il était sur le même PC que FS

2) IOCP qui fait à peu près la même chose mais gratuit.Ceci dit c'est limité à SIOC, alors que WideFS permet d'utiliser quantité de logiciels annexes déportés sur le 2 ème PC ( Active Sky, Ivao, FSnav, FSC, Navigation...) donc c'est rarement inutile de l'avoir !
Revenir en haut Aller en bas
http://steph737.blogspot.com
cs200

cs200


Nombre de messages : 39
Date d'inscription : 03/05/2008
Age : 61

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMar 24 Juin - 16:02

Lu ,
Merci.
J'ai WideFS ,mais il n'est pas encore installé.
Je dois avoir SIOC.EXE sur tous les PC pour faire touner les programmes ?.
J'aurai donc un Sioc.ssi différent sur chaque PC?
J'essaye de comprendre la ...
++
JeanMi
Revenir en haut Aller en bas
steph737

steph737


Nombre de messages : 725
Date d'inscription : 15/03/2008
Localisation : Antananarivo

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMar 24 Juin - 17:19

Non, si tu veux déplacer tes cartes sur un autre PC, tu mets ton programme SIOC et ton fichier .ssi sur le PC en question. Ensuite tu installe WideFS qui va permettre à SIOC sur ton PC client ( celui des cartes ) d'aller chercher les offsets FSUIPC dans FS ( sur le PC Serveur donc ).

Rien de compliquer, il faut bien lire la doc de WideFS pour configurer le réseau et les WideFS.ini serveur et client(s).

Maintenant si tu laisse des cartes sur le PC de FS, oui, tu auras besoin de laisser SIOC avec la partie du programme qui traite des entrées / sorties des cartes en question.

Sauf pour un système compliqué, il vaut mieux tout mettre ensemble parce que si certaines variables de cartes différentes interagissent ensembles, il va en plus falloir passer les variables sur le réseau ( soit en utilisant des offsets FSUIPC "libre" soit avec IOCP .... mieux vaut faire simple surtout au début, non ? )
Revenir en haut Aller en bas
http://steph737.blogspot.com
cs200

cs200


Nombre de messages : 39
Date d'inscription : 03/05/2008
Age : 61

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMar 24 Juin - 19:00

Lu ,
Oke je tente l'experience ,mais ce sera de toute façon compliqué ,alors ... vaux mieux y aller de suite.
Il y a une liste pour les variables libres fsuipc ?
Je commence à comprendre ,je crois :
je prend un exemple : sur le PC1 j'ai une Var xxxx qui vaut 100 ,sur le PC2 j'ai une var yyyy qui vaut 200.Pour additionner Var xxxx à Var yyyy sur le PC2 ,je dois ecrire sur le PC1 que Var xxxx est égale à un offset "libre" d'une certaine longueur en fonction de la valeur à passer.Sur le PC2 ,additionner la valeur de l'offset déclaré à V yyyy.Ce qui revient à dire ,que mes variables qui doivent être luent par les différents PC doivent êtres des offsets déclarés qui seront disponible via widefs.Autrement dit ,je dois faire une liste de "mes" offsets pour les utiliser et ne pas la perdre ....

Il n'y a donc pas un "serveur" à proprement parlé qui est capable de lire toutes les variables sur tous les PC.Sauf avec et c'est le but alors, SIOCServer et les offsets Sioc.

++
JeanMi
Revenir en haut Aller en bas
stevelep

stevelep


Nombre de messages : 512
Date d'inscription : 16/03/2008
Age : 50
Localisation : Neuchâtel LSGN, Suisse

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMar 24 Juin - 20:16

Oui ton explication est correcte.

Mais le plus simple reste de mettre toutes tes cartes Opencockpits sur le même PC avec
un seul gros programme SIOC. Ce PC déporté est relié au PC principal (FS) via
wideFS ou IOCP (ou les deux).

Cela t'évite de devoir faire du copier-coller avec les valeurs de tes variables SIOC
dans des offsets FSUIPC pour te les passer d'un à l'autre.

Crois moi c'est beaucoup plus simple.
SIOC demande peu de ressource donc un PC normal suffit.

BOB
Revenir en haut Aller en bas
cs200

cs200


Nombre de messages : 39
Date d'inscription : 03/05/2008
Age : 61

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMer 25 Juin - 7:31

Lu ,
Oké ,j'ai pris note.Merci.
Mais je dois quand même avoir plusieurs PC.Je dois afficher 1 ecran inboard/outboard C/O ,1 ecran inboard/outboard F/O ,1 pour le upper Eicas ,1 pour le lower Eicas et 2 pour les cdu.Je ne peux pas non plus faire supporter toutes les cartes par un seul PC ,500 Ma par usb c'est pas de trop.
Ce n'est pas un problème pour moi de gérer les variables et les offsets je suis très ordonné à ce nivau .Le tout était de comprendre comment cela fonctionne.
Juste encore une petite précision :
Pour les numéro d'offset perso ,je dois pointer le premier bit de l'offset.
Si je déclare un offset de longeur 2 en 7000 (2 bytes) ,le pointeur pour la variable suivante dois pointer sur 7002 pour ne pas écraser les 16 bits de 7000.
Si 7002 a une longeur de 4 ,l'offset suivant dois etre 7006.Si 7006 a une longueur de 4 ,l'offset suivant sera 700A and fellow
C'est correct ?
++
JeanMi
Revenir en haut Aller en bas
steph737

steph737


Nombre de messages : 725
Date d'inscription : 15/03/2008
Localisation : Antananarivo

Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP EmptyMer 25 Juin - 14:20

Je crois que oui, mais tu pourras confirmer tout ça avec FSinterrogate par exemple.

C'est assez évidemment que les cartes USBKey, pour un CDU par exemple , vont aller sur le PC où se trouve le CDU et la sortie video qui va avec.

Par contre, brancher des cartes Master sur différents PC revient à avoir autant de cartes USB expansion que de PC, ce n'est pas forcément très intéressant ni économique . Pour le 737, on peut tout faire (vraiment tout ) avec 6 cartes Master donc obligatoirement 2 USB expansion au minimum. Presque la moitié est pour l'overhead, cela peut être intéressant de séparer le système à ce niveau, comme ça on intègre directement l'USB expansion dans l'overhead et on n'a qu'un cable USB + l'alim à passer ( les gauges mises à part... )
Revenir en haut Aller en bas
http://steph737.blogspot.com
Contenu sponsorisé





Utiliser IOCP Empty
MessageSujet: Re: Utiliser IOCP   Utiliser IOCP Empty

Revenir en haut Aller en bas
 
Utiliser IOCP
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Air-Cockpit :: Réalisations électronique :: Programmations Pics , Sioc et autres-
Sauter vers: