Outils pour utilisateurs

Outils du site


tpqt

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
tpqt [2020/01/29 14:05]
bvandepo
tpqt [2021/04/13 14:51]
bvandepo
Ligne 1: Ligne 1:
  
-{{http://homepages.laas.fr/bvandepo/files/iut/tp_pic/warning.jpeg}}+{{https://bvdp.inetdoc.net/files/iut/tp_pic/warning.jpeg}}
 <color red> <color red>
 POUR ACCEDER A L'INTEGRALITE DU SUJET DE TP: POUR ACCEDER A L'INTEGRALITE DU SUJET DE TP:
Ligne 13: Ligne 13:
 </color> </color>
  
-Polycopié du courshttps://homepages.laas.fr/bvandepo/files/iut/tp_pic/cours_preparation_pic_qt_six.pdf+<color red> 
 +Si vous êtes en chez vous, et que vous n'arrivez pas à vous connecter via SSH et VNC à une salle de TP, se connecter (en cliquant en haut à droite sur s'identifier) en tant que  utilisateur=app, mot de passe=app 
 +</color>
  
-et:   {{https://homepages.laas.fr/bvandepo/files/iut/tp_qt/cours_POO_intro9_2019.pdf}} 
  
 +<color red>
 +Si vous êtes en chez vous, et que vous arrivez à vous connecter via SSH et VNC à une salle de TP, se connecter (en cliquant en haut à droite sur s'identifier) en tant que :  utilisateur=dist, mot de passe=dist
 +</color>
 +
 +
 +
 +
 +Polycopié du cours: https://bvdp.inetdoc.net/files/iut/cours_preparation_pic_qt_2021_complet_numbered.pdf
 +
 +et:   https://bvdp.inetdoc.net/files/iut/cours_POO_intro_complet_2021_numbered.pdf
  
  
Ligne 43: Ligne 54:
      
 Le résultat de cette analyse est que vous devez utiliser les numéros de ports 2700 et 2701 pour échanger des informations depuis le PC. Le résultat de cette analyse est que vous devez utiliser les numéros de ports 2700 et 2701 pour échanger des informations depuis le PC.
 +
 +
 +Le schéma suivant récapitule l'ensemble des matériels et logiciels que nous allons utiliser dans cette série de TP. Les différents éléments seront expliqués au fur et à mesure. <color red>A chaque étape, vous devez être capable d'identifier les portions utilisées et leur rôle. Vous devrez remplir les cases jaunes sur la feuille distribuée lors du TP.</color>
 +
 +
 +{{https://bvdp.inetdoc.net/files/iut/tp_pic/schemareseauPIC-2018-au-en-horizontal.png}}
 +
 +
 +
 +
 ====Utilisation de l'application BroadcastReceiver sur les PC étudiant==== ====Utilisation de l'application BroadcastReceiver sur les PC étudiant====
 L'application que vous devez développer vous est fournie dans un premier temps afin que vous la voyez fonctionner et sachiez ce que vous devez faire. Une application fonctionnant sur le PC et simulant le PIC est également fournie pour faciliter le développement et permettre aux étudiants n'ayant pas terminé le programme sur le PIC de faire ce TP. L'application que vous devez développer vous est fournie dans un premier temps afin que vous la voyez fonctionner et sachiez ce que vous devez faire. Une application fonctionnant sur le PC et simulant le PIC est également fournie pour faciliter le développement et permettre aux étudiants n'ayant pas terminé le programme sur le PIC de faire ce TP.
      
 +<ifauth @app>  
 +Récupérer les fichiers nécessaires, et dezipper: https://bvdp.inetdoc.net/files/iut/td_fifo/install_qt5_windows/QTbroadcastreceiveretudiantEtBinairesWindowsQT5.zip
 +
 +</ifauth>
 +
 +<ifauth @au,@en,@dist>   
 Récupérer les fichiers nécessaires en saisissant dans une console: Récupérer les fichiers nécessaires en saisissant dans une console:
 +  echo 'commence'
   cd ~/   cd ~/
-  wget  http://homepages.laas.fr/bvandepo/files/iut/tp_qt/binaries.zip+  wget  https://bvdp.inetdoc.net/files/iut/tp_qt/binaries.zip
   unzip binaries.zip    unzip binaries.zip 
   rm binaries.zip   rm binaries.zip
Ligne 54: Ligne 82:
   ./testenlocal.sh     ./testenlocal.sh  
   echo 'fini'   echo 'fini'
 +</ifauth>
 +
  
  
Ligne 75: Ligne 105:
 </ifauth> </ifauth>
  
- + 
 + 
 +<ifauth @app> 
 +===Configuration du script pour le test en local=== 
 +Dans le dossier dezippé, configurer l'application BroadcastReceiver en éditant le script « testenlocal.bat » (click droit,  modifier) pour configurer l'IP et les ports UDP en émission et en réception. La syntaxe est la suivante: 
 +  start broadcastReceiver.exe IP_destination port_UDP_émission port_UDP_réception paramètres_optionnels_de_réglages_de_la_fenêtre 
 +par exemple:  
 +  start broadcastreceiver 192.168.1.100 27016 27017 10 40 500 130    
 + 
 +===Configuration du script pour simupic=== 
 +Dans le dossier dezippé, configurer l'application simupic en éditant le script « testsimu.bat » (click droit,  modifier) pour configurer l'IP et les ports UDP en émission et en réception. La syntaxe est la suivante: 
 +  start  simupic.exe ipachanger port1achanger port2achanger paramètres_optionnels_de_réglages_de_la_fenêtre 
 +par exemple:  
 +  start  simupic.exe ipachanger port1achanger port2achanger 2 25 700 80    
 + 
 +</ifauth> 
 + 
 + 
 +<ifauth @au,@en,@dist>  
 ===Utilisation de simupic=== ===Utilisation de simupic===
 Saisir dans la console: Saisir dans la console:
 +  echo 'commence'
   cd ~/binaries   cd ~/binaries
-  ./simupic     +  ./simupic    
- +  echo 'fini'  
 +</ifauth> 
  
  
Ligne 96: Ligne 146:
  
 <ifauth @prof> <ifauth @prof>
 +Note pour la Migration de qt4 vers qt5:
 +
 +
 +https://wiki.qt.io/Transition_from_Qt_4.x_to_Qt5
 +
 +http://www.yourownlinux.com/2015/04/sed-command-in-linux-append-and-insert-lines-to-file.html
 +
  
  
 </ifauth> </ifauth>
  
-  echo commence+<ifauth @au,@en,@dist> 
 +   
 +  echo 'commence'
   cd ~/   cd ~/
-  wget  http://homepages.laas.fr/bvandepo/files/iut/tp_qt/QTbroadcastreceiveretudiantAU2ET3.zip+  wget  https://bvdp.inetdoc.net/files/iut/tp_qt/QTbroadcastreceiveretudiantAU2ET3.zip
   unzip QTbroadcastreceiveretudiantAU2ET3.zip   unzip QTbroadcastreceiveretudiantAU2ET3.zip
   rm QTbroadcastreceiveretudiantAU2ET3.zip   rm QTbroadcastreceiveretudiantAU2ET3.zip
Ligne 109: Ligne 168:
   echo "Migration qt4 vers qt5"   echo "Migration qt4 vers qt5"
   sed -i '/QT += network/ a QT += widgets' broadcastreceiver.pro     sed -i '/QT += network/ a QT += widgets' broadcastreceiver.pro  
-  find . -name "*.*" -exec sed -i 's,#include <QtGui>","#include <QtWidgets>",g' {} \;+  sed -i 's/#include <QtGui>/#include <QtWidgets>/g' receiver.cpp
   qmake broadcastreceiver.pro   qmake broadcastreceiver.pro
   qtcreator broadcastreceiver.pro &   qtcreator broadcastreceiver.pro &
-  echo fini+  echo 'fini'
      
 <color red>   <color red>  
 Important: COCHER la configuration DEBUG  puis Cliquer sur Configurer le projet. Important: COCHER la configuration DEBUG  puis Cliquer sur Configurer le projet.
 </color> </color>
 +</ifauth>
  
 +==Ouverture du projet ==
 +POUR OUVRIR LE PROJET avec QTCreator après l'avoir récupéré, vous devrez Copier/coller dans une console:
  
 +  echo 'commence'
 +  cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
 +  qtcreator broadcastreceiver.pro  &
 +  echo 'fini'
  
 +<ifauth @au,@en,@dist>  
 ==Initialisation du système de gestion de version en local== ==Initialisation du système de gestion de version en local==
 POUR LA PREMIERE SEANCE UNIQUEMENT!, Copier/coller dans une console: POUR LA PREMIERE SEANCE UNIQUEMENT!, Copier/coller dans une console:
-  echo commence+ 
 +  echo 'commence'
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
   git init   git init
Ligne 129: Ligne 196:
   git commit -m'initial version'   git commit -m'initial version'
   gitk &   gitk &
-  echo fini+  echo 'fini'
  
 Vous pouvez ensuite fermer l'outils gitk qui permet de voir les changements entre les différentes versions. Vous pouvez ensuite fermer l'outils gitk qui permet de voir les changements entre les différentes versions.
-  +</ifauth>  
      
  
Ligne 138: Ligne 205:
 ===Structure du projet=== ===Structure du projet===
    
-Le projet est constitué des fichiers sources d'une application graphique sous QT. Votre code sera saisi dans l'implémentation de la fenêtre principale, à l'intérieur du fichier Sources->receiver.c. <color #FF0000>. Les définitions des méthodes et objets de la fenêtre principale sont quant à elles faites dans le fichier receiver.h. Ce sont les deux seuls fichiers que vous aurez à modifier jusqu'à nouvel ordre. </color> Pour information le projet contient également: +Le projet est constitué des fichiers sources d'une application graphique sous QT. Votre code sera saisi dans l'implémentation de la fenêtre principale, à l'intérieur du fichier Sources->receiver.cpp. <color #FF0000>. Les définitions des méthodes et objets de la fenêtre principale sont quant à elles faites dans le fichier receiver.h. Ce sont les deux seuls fichiers que vous aurez à modifier jusqu'à nouvel ordre. </color> Pour information le projet contient également: 
    .pro      fichier décrivant le projet QT, les règles de compilation, les librairies à utiliser etc...    .pro      fichier décrivant le projet QT, les règles de compilation, les librairies à utiliser etc...
   main.cpp       fichier décrivant le programme principal, qui se contente de lancer la fenêtre principale.   main.cpp       fichier décrivant le programme principal, qui se contente de lancer la fenêtre principale.
Ligne 171: Ligne 238:
      
  
-{{http://homepages.laas.fr/bvandepo/files/iut/tp_pic/validation.png}} Une fois les réponses validées, mettre à jour le suivi de version en saisissant dans une console: +{{https://bvdp.inetdoc.net/files/iut/tp_pic/validation.png}} Une fois les réponses validées, mettre à jour le suivi de version en saisissant dans une console: 
-  echo commence+ 
 +  echo 'commence'
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
   git commit -a -m'emission'   git commit -a -m'emission'
   gitk &    gitk & 
-  echo fini+  echo 'fini'
  
  
Ligne 207: Ligne 275:
  
      
-{{http://homepages.laas.fr/bvandepo/files/iut/tp_pic/validation.png}} Une fois les réponses validées, mettre à jour le suivi de version en saisissant dans une console:+{{https://bvdp.inetdoc.net/files/iut/tp_pic/validation.png}} Une fois les réponses validées, mettre à jour le suivi de version en saisissant dans une console:
   echo commence   echo commence
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
Ligne 233: Ligne 301:
  
        
-{{http://homepages.laas.fr/bvandepo/files/iut/tp_pic/validation.png}} Une fois les réponses validées, mettre à jour le suivi de version en saisissant dans une console:+{{https://bvdp.inetdoc.net/files/iut/tp_pic/validation.png}} Une fois les réponses validées, mettre à jour le suivi de version en saisissant dans une console:
   echo commence   echo commence
   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant   cd ~/QTbroadcastreceiveretudiantAU2ET3/QTbroadcastreceiveretudiant
Ligne 252: Ligne 320:
   - les définitions des boutons pour les leds 1 et 2   - les définitions des boutons pour les leds 1 et 2
   - les méthodes associées  dans la partie private slots:    - les méthodes associées  dans la partie private slots: 
-Dans le fichier receiver.c, implémenter les fonctions correspondant à l'appui sur les boutons (appel de **sendUDP(i)** ) et ajouter dans la méthode constructeur de la fenêtre: +Dans le fichier receiver.cpp, implémenter les fonctions correspondant à l'appui sur les boutons (appel de **sendUDP(i)** ) et ajouter dans la méthode constructeur de la fenêtre:
   - la construction des objets boutons (new)   - la construction des objets boutons (new)
   - la connexion de l'événement « click sur les boutons » au slots correspondants   - la connexion de l'événement « click sur les boutons » au slots correspondants
   - le placement des boutons sur la fenêtre (button1Layout->addWidget...)   - le placement des boutons sur la fenêtre (button1Layout->addWidget...)
 +</ifauth>
 ===Gestion du Timer sur le PC=== ===Gestion du Timer sur le PC===
  
Ligne 264: Ligne 332:
   - Décommenter la création de **commutTimerButton** et de **Timer** ainsi que les implémentations de **void Receiver::commutTimer()** et de **void Receiver::on_timer_Event()**   - Décommenter la création de **commutTimerButton** et de **Timer** ainsi que les implémentations de **void Receiver::commutTimer()** et de **void Receiver::on_timer_Event()**
   - Tester votre application avec Simupic   - Tester votre application avec Simupic
-</ifauth>+ 
 + 
 +{{https://bvdp.inetdoc.net/files/iut/tp_pic/validation.png}} 
tpqt.txt · Dernière modification: 2021/04/14 17:12 de bvandepo