Ajout de la gestion du joystick au niveau de JEDICUT

1
J'ai demandé d'ajouter la gestion du joystick au niveau de JEDICUT à Jerome tout en proposant de l'aider dans la programmation. il m'a suggéré de créer un post afin que tout le monde y participe.
l'utilisation d'un joystick usb est une solution très économique par rapport à l'utilisation d'un joystick avec une électronique dédié.
L'utilisation d'un joystick est très pratique pour la mise à zero des axes, la mise en axes avant découpe,...
Je vous propose de m'aider pour la conception et le design de l'interface homme machine (formulaire windows) qui servira pour la configuration du joystick au niveau de JEDICUT.
Comment vous voyez la gestion du joystick?

Re: Ajout de la gestion du joystick au niveau de JEDICUT

5
Salut,

Comme indiqué sur le forum, je n'ai plus de PC pour l'instant :'( Dès qu'il sera réparé je finirai le changement de compilateur puis travaillerai sur la chauffe qui est en attente depuis longtemps.

L'IHM semble sympa mais je ne la comprends pas. Peux tu expliquer ? A quoi servent tout ces boutons ? Et plus important, sais tu quels drivers utiliser et comment interfacer cette interface avec ce driver ?

Concernant les fichiers .ini, tu peux générer ton propre fichier dans un premier temps. Tu développes avec quoi ?
Pour l'envoi des ordres aux moteurs, Jedicut utilise des plugins qui sont en partie documentés, et totalement open source : https://www.jedicut.com/developper-des- ... r-jedicut/
Jerome

Re: Ajout de la gestion du joystick au niveau de JEDICUT

7
Jerome a écrit : ven. juin 09, 2017 8:21 am L'IHM semble sympa mais je ne la comprends pas. Peux tu expliquer ? A quoi servent tout ces boutons ? Et plus important, sais tu quels drivers utiliser et comment interfacer cette interface avec ce driver ?
Bonjour,
Au fait je maîtrise le VB.net mais comme JEDICUT est developpé en DELPHI, j'ai fais cette interface sur DELPHI 7.
L'interface que j'ai faite est sensée être intégré dans JEDICUT, dans la Partie gestion manuelle.
Image
pour la gestion du joystick c'est simple :
On doit configurer:
- Deux axes : un axe pour les X et un autre pour les Y;
- Un bouton pour activer/désactiver les axes X1 et Y1;
- Un bouton pour activer/désactiver les axes Y2 et Y2;
- Un bouton pour choisir la Vitesse (rapide/lente);
- Un bouton Arrêt reprise;
Concernant l'utilité du joystick, je pense qu'il y'a des personnes qui ont développé une interface électronique pour gérer l'utiliser alors que en l'intégrant à JEDICUT, il suffit d'un simple joystick pour l'utiliser.

Re: Ajout de la gestion du joystick au niveau de JEDICUT

8
Salut Samko,

Tu as l'air de maitriser ton sujet, ça fait plaisir ;)

Peux tu faire une petite appli indépendante, utilisant l'extension de communication de Jedicut de ton choix, et utilisant ton IHM ? Dès que ça fonctionne, soit j'intègrerai ton code dans Jedicut, ou peut être, nous pourrions faire un nouveau type d'extension qui serait publié sur GitHub, dédié au contrôle par Joystick.

Qu'en penses tu ?
Jerome

Re: Ajout de la gestion du joystick au niveau de JEDICUT

10
Salut,

Il n'y a pas une procédure, mais plusieurs qui doivent être appelé.

Dans Jedicut, il y un une fenêtre modale qui est synchronisée avec l'exécution d'un thread qui tourne en parallèle. Ce thread, lorsqu'on l'exécute, fait appel au plugin choisi par l'utilisateur.

1 : on initialise le plugin :

Code : Tout sélectionner

InitialiserChauffeEtCommunication($378, ParametreChauffe, ParametreCommunication, MateriauActifDll);
2 : On alimente les moteurs :

Code : Tout sélectionner

MoteurOnOff(true);
3 : On émet les ordres de rotation en bouclant sur le tableau qui a été précalculé :

Code : Tout sélectionner

EmettreBit( ArrayOrdresMoteur.ArrayOrdres[i].bitRotation,
                                  ArrayOrdresMoteur.ArrayOrdres[i].bitSens,
                                  ArrayOrdresMoteur.ArrayOrdres[i].vitesse,
                                  ArrayOrdresMoteur.ArrayOrdres[i].chauffe);
4 : On coupe l'alimentation des moteurs :

Code : Tout sélectionner

MoteurOnOff(false);
Voilà ce qui se passe pour chaque découpe. Pour un déplacement géré avec un Joystick, il faut changer ça puisque la fenêtre modale avec la barre de progression n'est plus utile (peut être une fenêtre adaptée au contrôle manuel ?).

Désolé pour le temps de réponse, mais mon PC portable sur lequel je code est toujours indisponible (je ne trouve pas de batterie de remplacement), donc j'ai du vérifier sur un autre PC...
Jerome
`); }); })(jQuery, window, document, phpbb);