IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

IHM déportée d'une application Qt dans une page Web


Sujet :

Qt

  1. #1
    Membre régulier
    Profil pro
    embedded software engineer
    Inscrit en
    Juin 2002
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : embedded software engineer

    Informations forums :
    Inscription : Juin 2002
    Messages : 181
    Points : 101
    Points
    101
    Par défaut IHM déportée d'une application Qt dans une page Web
    Bonjour,

    Je souhaite avoir un accès distant dans une page WEB à une application QT locale, quelle est solution que vous me conseiller?
    La solution doit être assez robuste.

    - applet java client vnc?
    - applet java client x11? (je sais pas si c'est possible).
    - autre...?

    Détails:
    Sur un système embarqué linux on souhaite développer une IHM.
    Choix imaginés: GTK,QT,web(javascript)....
    Le développement d'une IHM en QT me semble plus rapide à développer, simple, fexible(proche system), communication plus rapidement avec le hardware, dynamique affichage plus rapide que java/javascript.
    La puissance embarqué est faible(genre nokiaN900,Iphone).
    On choisit donc QT.
    Mais, je souhaite également accèder à cette application à distance au travers un browser. Comment faire?

    Est-ce clair?

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Points : 15 620
    Points
    15 620
    Par défaut
    Mais, je souhaite également accèder à cette application à distance au travers un browser.
    Si je comprend bien, tu souhaites créer une application sur embarqué (jusque là pas de problème avec Qt). Mais ensuite, tu souhaites accéder à cette même application sur le même appareil (serveur web local) ? Ou sur un autre appareil qui communiquerait avec le premier (communication peer-to-peer) ? Ou avoir une application embarqué + une application sur un serveur permettant d'accéder à distance sur celui-ci uniquement (applications client + serveur et/ou browser + serveur web) ?

    Dans le premier cas (serveur web local), il faut à priori installer/créer un serveur web embarqué. Ca ne doit pas être la solution la plus légère.

    Dans le second cas (communication peer-to-peer), il suffit simplement d'ajouter par exemple dans l'application un QTcpServeur (pour recevoir les connections) et un QTcpSocket (pour demander une connection). J'ai déjà fait ça sur réseau local (c'est relativement simple) mais jamais sur embarqué.

    Dans le troisième cas (applications client + serveur), il faut créer un client sur embarqué avec un QTcpSocket (qui sera installé sur chaque embarqué) et une application serveur avec un QTcpServeur (qui sera installé sur un seul ordinateur, qui servira donc de serveur et sur lequel tous les clients se connecteront)

    Dans le quatrième cas (browser + serveur web), le plus simple est d'installer un serveur LAMP par exemple et créer une application Qt qui fournira des données au serveur Apache (si nécessaire, tout dépend des fonctionnalités que tu souhaites ajouter : si c'est simplement pour centraliser des données, la base de données du LAMP sera suffisante et il ne sera pas nécessaire d'ajouter une application Qt)

    Bon courage

  3. #3
    Membre régulier
    Profil pro
    embedded software engineer
    Inscrit en
    Juin 2002
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : embedded software engineer

    Informations forums :
    Inscription : Juin 2002
    Messages : 181
    Points : 101
    Points
    101
    Par défaut
    c'est le premier cas et le dernier qui correspond à ce que je veux faire.

    cas concret de ce que je veux:
    dans une voiture nouvelle génération, le système embarqué contient un écran 7" tactile.
    L'interface utilisateur sur cet écran est développée avec QT (sans utilisation de QTcpxxx à priori).
    Maintenant pour des raisons de maintenance au garage, Le technicien se connecte sur la voiture avec une prise réseau(ethernet) avec un PC, et il souhaite afficher sur son PC la même interface que celle sur l'écran sur la console de la voiture.
    Comment faire cette interface déportée sans développer un second logiciel?
    Le PC n'a pas d'OS prédéfinit.

    Donc, d'après gbdivers pas de solution simple existe.

  4. #4
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Points : 15 620
    Points
    15 620
    Par défaut
    Comment faire cette interface déportée sans développer un second logiciel ?
    A mon avis, le problème est peut être là. Car cela veut dire que tu dois tout mettre sur l'embarqué, donc en particulier un serveur web (sur lequel le technicien pourra se connecter avec un navigateur). Il n'est probablement pas nécessaire d'installer un serveur web complet mais simplement que le programme Qt génère du code html et l'envoie à distance via une connection TCP (mais honnêtement, je ne vois pas trop la quantité de code qu'il faudrait ajouter et le travail que ça demanderait)

    Comment faire cette interface déportée sans développer un second logiciel?
    Le PC n'a pas d'OS prédéfinit.
    Si tu travailles avec Qt, ce n'est pas très difficile de créer une application portable qui sera utilisé par le technicien. Car, en pratique, si le technicien n'a pas installé un logiciel de diagnostic, il ne sera peut être pas non plus formé pour savoir comment se connecter à ton application (il lui faudra par exemple taper l'adresse ip du serveur embarqué).
    Donc, a partir du moment où il faut former le technicien (ou lui fournir un site internet d'explication), tu peux également lui donner un logiciel de diagnostic

  5. #5
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Citation Envoyé par trois_1 Voir le message
    Maintenant pour des raisons de maintenance au garage, Le technicien se connecte sur la voiture avec une prise réseau(ethernet) avec un PC, et il souhaite afficher sur son PC la même interface que celle sur l'écran sur la console de la voiture.
    Comment faire cette interface déportée sans développer un second logiciel?
    Le PC n'a pas d'OS prédéfinit.
    WRT ? http://www.developpez.net/forums/d95...untime-debute/ Tu as une interface avec Qt qui affiche des pages Web dans lesquelles tu peux intégrer des widgets natifs et interagir avec le matériel. Ce n'est pas prévu pour ce que tu fais mais il doit y avoir moyen d'étendre la lib. Tu as aussi ceci : http://qt.developpez.com/tutoriels/i...iciels-webkit/.

    Sinon, pourquoi développer deux logiciels ? Si les deux sont avec Qt, il suffit de l'embarquer et de faire des mises à jour en synchronisation avec le technicien. Qt est notamment prévu pour avoir un seul code de base pour s'exécuter sur beaucoup de plateformes. Maintenant, je ne connais pas vraiment le monde de l'embarqué, je suis peut-être complètement à côté de la plaque.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  6. #6
    Membre confirmé

    Inscrit en
    Décembre 2009
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 164
    Points : 490
    Points
    490
    Par défaut
    A mon avis, comme tu as déjà une application Qt qui marche sur sur ton périphérique, le plus simple serait d'ajouter un serveur dans cette appli pour accéder à ta couche métier. Tu peux alors garder ton interface, la recompiler pour un pc, et te connecter sur ton appli embarquée. Pour la configuration de ton périphèrique, ça se fera par messages. L'utilisation de QTcpServer et QTcpSocket et très simple.

  7. #7
    Membre régulier
    Profil pro
    embedded software engineer
    Inscrit en
    Juin 2002
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : embedded software engineer

    Informations forums :
    Inscription : Juin 2002
    Messages : 181
    Points : 101
    Points
    101
    Par défaut
    Merci avec retard.
    La solution que j'ai retenue et presque fini de développée est l'application QT locale recompilé fonctionner sous windows pour les "power users" et serveur web embarqué avec appleet java(client vnc)+ serveur vnc , pour les utilisateurs ponctuels.

    J'avais obligatoirement besoin d'une solution pour client purement web.
    et à défaut d'avoir une solution propre, j'utilise malheureusement java+vnc.

    J'aurais préféré une solution HTML5 ou flash...

  8. #8
    Membre confirmé

    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    532
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2011
    Messages : 532
    Points : 604
    Points
    604
    Par défaut
    Je cherche moi aussi à déporter mon IHM Qt sur une page web, est-ce qu'il y aurait la possibilité d'avoir un code-exemple de ce que vous avez fait pour réussir cela ?
    Si vous voulez suivre les différents championnats de football américain en France, en Europe et dans le Monde (en tout 32 pays différents), c'est sur www.fandefootus.fr

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/02/2010, 19h38
  2. Réponses: 5
    Dernier message: 31/07/2007, 16h34
  3. Réponses: 2
    Dernier message: 15/10/2006, 18h01
  4. Réponses: 3
    Dernier message: 08/07/2006, 19h59
  5. Réponses: 11
    Dernier message: 06/12/2005, 08h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo