Modifications pour le document Commutateur d' antenne
Modifié par Jean-Yves Dupertuis le 27-08-2014, 11:07
modifié par Jean-Yves Dupertuis
sur 18-07-2014, 14:30
sur 18-07-2014, 14:30
modifié par Jean-Yves Dupertuis
sur 25-07-2014, 11:26
sur 25-07-2014, 11:26
Commentaire de modification :
modification des images en texte
Résumé
-
Propriétés de la Page (1 modifications, 0 ajouts, 0 suppressions)
-
Pièces jointes (0 modifications, 6 ajouts, 0 suppressions)
Détails
- Propriétés de la Page
-
- Contenu
-
... ... @@ -1,3 +1,8 @@ 1 +{{box cssClass="floatinginfobox" title="**Contents**"}} 2 +{{toc /}} 3 +{{/box}} 4 + 5 + 1 1 = Commutation d'antenne via raspberry - py = 2 2 3 3 Ce commutateur va permettre via internet de modifier l' antenne reliée au TX de la station EM. ... ... @@ -18,20 +18,66 @@ 18 18 19 19 20 20 21 -[[image:PremFenetre.jpg]] 26 +(% height="656" width="809" %) 27 +|=|= 28 +|((( 29 +== **__Première fenêtre__** == 30 +)))| 31 +|((( 32 +Le premier programme que j’ai écrit, commu01.py, est un programme 33 +qui m’a aidé à réaliser des zones dans la fenêtre. Ce programme 34 +dispose de 3 zones. Une zone pour le titre, une pour l’image et la 35 +dernière n’est pas utilisée. J’utilise aussi la zone de l’image pour 36 +dessiner. Actuellement, l’image représente le boîtier du commutateur 37 +avec le fonctionnement interne dessiner dessus. Sur cette image, 38 +j’ai décidé d’afficher la position du commutateur en dessinant une ligne 39 +du point commun au canal actif. Pour quitter le programme, l’utilisateur 40 +utilisera la touche q du clavier.Le code du programme est annexé 41 +à la fin du document.\\ 42 +)))|[[image:http://212.74.133.122:81/xwiki/bin/download/Hardware/SwitchAntenna/com_1.jpg?width=1580||alt="com_1.jpg"]] 43 +|((( 44 +== **__Utilisation de la fenêtre__** == 45 +)))| 46 +|La première modification que j’ai faite dans mon programme est la modification du canal sélectionner sur l’image. J’ai donc choisi, qu’à l’aide du clavier, l’utilisateur pourra faire bouger la sortie. Pour le faire, 47 +il pourra utiliser les touches a, b, c et d du clavier. La fenêtre en elle-même n’a pas changé. Pour faire bouger le commutateur, j’utilise Pygame pour dessiner des lignes. Il demande un point de départ, un point d’arrivée et une épaisseur. J’ai donc noté les coordonnées des points A, B, C et D lors de la création de l’image et j’ai finalement utilisé ces coordonnées dans le programme. Une fois une touche pressée, je 48 +supprime l’ancienne ligne en affichant l’image pardessus et je redessine la nouvelle ligne aux nouvelles coordonnées. Le code du programme (commu02.py) est annexé à la fin du document.|[[image:com_2.jpg]] 49 +|((( 50 +== **__Zone d’aide__** == 51 +)))| 52 +|Comme le changement de canal fonctionne, j’ai décidé d’ajouter une zone d’aide. Cette zone contiendra les différentes commandes que l’utilisateur peut utilisé. J’ai placé cette zone sur la droite de l’image ce qui m’a fait redéfinir l’emplacement de l’image dans la zone centrale et la position des lignes à afficher. Le code du programme (commu03.py) est annexé à la fin du document.|[[image:com_3.jpg]] 53 +|((( 54 +== Boutons d’indication == 55 +)))| 56 +| L’étape suivante dans l’amélioration de mon programme est d’afficher sur des « boutons » l’état de chaque sorties. Ces « boutons » sont représentés par des carrés noirs. Une sortie active a un vu vert dans son carré alors qu’une sortie inactive a une croix rouge.J’appel ces indicateurs « boutons » car, prochainement, l’utilisateur pourra utiliser la souris pour activer une sortie. Pour le moment, les commandes se font encore au clavier. Le code du programme (commu04.py) est annexé à la fin du document. 57 +\\\\Après avoir utiliser les boutons comme indicateurs, j’ai décidé de rendre possible le changement d’état à la souris. Maintenant, il est donc possible de cliquer sur une case pour l’activer. Le code du programme (commu05.py) est annexé à la fin du document.|[[image:com_4.jpg]] 58 +| | 22 22 60 +== Finalisation [[image:com_5.jpg]] == 23 23 62 +La finalisation du projet c’est fait par la création d’une classe pour les boutons de commande. Cette classe crée une case vide avec 24 24 25 - [[image:ZoneAide.jpg]]64 +les attributs image, pos, port, etat et rect. L’attribut pos représente les coordonnées du coin supérieur gauche de la case. 26 26 66 +L’attribut port représente le n° du GPIO qui sera attribué à cette case. Les numéros des GPIO sont stockés dans le tableau appelé canal. 27 27 68 +Il faut donc créer la case avec l’argument canal[...] pour le port. Le tableau contient 8 infos donc il est possible de créer jusqu'à 8 cases. 69 +Vous trouverez ci-dessous l’organisation du tableau. 28 28 29 -[[image:BoutonIndication.jpg]] 30 30 72 +[[image:com_6.jpg]] 31 31 32 -[[image:ClassGpio.jpg]] 74 +Par exemple, en créant une case à l’aide de la classe avec l’argument canal[0] pour le port, le GPIO 4 (pin 7) sera assigné à l’objet. 75 +La classe dispose d’une seule méthode. Cette méthode est utilisée pour changer l’état du port. En changeant l’état, la méthode se 33 33 77 +charge aussi d’afficher une indication dans la case. Cette image d’indication est à envoyer en argument. Pour mon cas, j’utilise un 34 34 79 +vu vert pour une sortie active et une croix rouge pour une sortie inactive.Ce programme, commu06.py, est annexé en fin de document.\\ 80 + 81 + 82 + 83 + 84 + 85 + 35 35 On a ajouté un LCD fournit par //HB9FOX //qui permet de commuter directement sur le module la bonne Antenne. 36 36 37 37 **IMPORTANT !!** Pour ce faire le raspberry - py doit fonctionné et le programme lancé ! ... ... @@ -79,8 +79,6 @@ 79 79 80 80 [[image:cableCommAnt.jpg]] 81 81 82 - 83 - 84 84 = Programmation Python = 85 85 86 86 Voici le code source, vous pouvez le copier directement dans un IDLE Python 2.7. ... ... @@ -99,9 +99,8 @@ 99 99 100 100 == Source : == 101 101 102 - 103 - 104 -{{{# auteur : Gilliand Loris 151 +{{box}} 152 +##{{{# auteur : Gilliand Loris 105 105 # date : 02.06.14 106 106 # version 0.8 107 107 # ... ... @@ -378,17 +378,15 @@ 378 378 pygame.draw.line(zone2,noir,startline,endline,2) 379 379 screen.blit(zone2,(0,150)) 380 380 pygame.display.update() 381 -}}} 429 +}}}## 430 +{{/box}} 382 382 383 - 384 384 [[Fichier Py>>attach:commu08.py]] 385 385 386 386 387 -=== Distributions sans et avec LCD === 435 +=== Distributions 'source' sans et avec LCD === 388 388 389 389 [[Distribution_sans_LCD.rar>>attach:Distribution.rar]] 390 390 391 391 392 392 [[Distribution_lcd.rar>>attach:Distribution_lcd.rar]] 393 - 394 -
- com_1.jpg
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Dupertuis - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +8.9 KB - Contenu
- com_2.jpg
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Dupertuis - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +7.7 KB - Contenu
- com_3.jpg
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Dupertuis - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +10.8 KB - Contenu
- com_4.jpg
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Dupertuis - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +13.2 KB - Contenu
- com_5.jpg
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Dupertuis - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +1.3 KB - Contenu
- com_6.jpg
-
- Auteur
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Dupertuis - Taille
-
... ... @@ -1,0 +1,1 @@ 1 +21.0 KB - Contenu