Pages

samedi 29 février 2020

Utilisation basique de Folium sous Python

Folium est une librairie (ou module) Python permettant de travailler en cartographie, à partir de OpenStreetMap. On peut ainsi, avec juste quelques lignes de code, afficher dans une page Web une carte avec des options.

Par exemple, ces trois lignes :

Donnent cela :

Vous ne le voyez pas, mais on est centré sur la Tour Eiffel ! Si Si !!!

Détails sur ce script :
  • ligne 1 : On importe le module folium (à condition qu'il soit déjà installé, bien sur, sinon, voir partie correspondante ci-dessous...)
  • ligne 2 : on crée la carte sous une variable en instanciant un objet et en incluant les coordonnées GPS en degrés décimaux
  • ligne 3 : on demande à folium d'enregistrer la carte "sous". Ici, c'est ma clef USB f: et dans le répertoire SNT à la racine. Pour ouvrir la carte, on clique dessus comme un raccourci Web, cela ouvre votre navigateur par défaut.
Note : Si vous utilisez Edupython, folium est déjà intégré.
 Si Folium n'est pas sur le système, voici comment faire avec Thonny (C'est la méthode PIP mais simplifiée dans Thonny)  :

Aller dans "Outils" et "Gérer les plugins" :
Cette fenêtre apparaît : En théorie, folium n'est pas dans la liste à gauche :
Saisir folium puis cliquer sur le bouton :

C'est bien ce que l'on cherche ! On clique sur "Installer" :
Et voilà ! folium est installé, on peut fermer la fenêtre !

 Il est possible de changer le zoom de la carte en ajoutant un argument lors de la création :
L'argument saisi donne un certain zoom, bien sûr, on peut le changer...


Alors, j'avais pas raison ???? C'est bien la Tour Eiffel !

Pour le montrer à la Terre entière, on va ajouter un marqueur. Cela est on ne peut plus facile !

On veut ceci :
 on saisi la ligne 3 entre la 2 et la 4 :
On a bien les mêmes coordonnées mais là, c'est pour le marqueur.
Bien sûr, on peut autant de marqueurs que l'on veut...

On peut aussi ajouter une légende au marqueur :
 Il a juste fallu changer la ligne 3 avec :


Folium permet également de tracer des itinéraires :
 Le script correspondant :


Il est possible également d'automatiser l'ouverture de la carte à l'excution du script en insérant juste deux lignes :

  •  en ligne 2, on importe le module webbrowser qui gère la navigation Web
  •  en ligne 13, on demande au module d'ouvrir le fichier HTML, avec le navigateur par défaut,  correspondant à la carte, c'est tout !
 A vous de jouer !

jeudi 27 février 2020

Utiliser simplement une jauge de masse et un HX711

Cet article présente, le plus simplement possible, l'utilisation d'une jauge de masse et d'un module HX711.
Ce module est un pont de Wheatstone (non présenté dans cet article) couplé à un convertisseur analogique-numérique de 24 bits.

Aspect physique :

En règle générale, les produits "asiatiques" sont comme ceci (image Banggood) :
Le fabricant Sparkfun propose ce modèle :
 Et DFROBOT celui-ci :

Le montage de test de cet article :

Et pour faire joli (et pour mettre en conditions réelles), j'ai imprimé des pièces à partir de ce modèle :

Mon montage :




La librairie que j'ai utilisée est ici : https://github.com/bogde/HX711
 
Le programme ci-dessous est la version très édulcorée du fichier full_example.ino disponible avec la librairie.
 
 

Ce fichier est téléchargeable ici

Le programme est assez simple et le commentaires sont suffisants pour comprendre le principe.
Cependant, des explications sont nécessaires pour la ligne 16 :

La valeur "895" n'a pas été trouvée par hazard, celle-ci est déterminée par tests succéssifs.
Au départ, on lance le programme, balance à vide (juste avec son montage imprimé) et on lit la valeur en console. Celle-ci peut sembler aberante mais c'est normal, la balance n'est pas tarée. Il faut utiliser des objets, au préalable, pesés. Ainsi, on en connait les masses.
Il suffit de poser un objet sur la balance, et de lire la valeur en console. Ensuite, on change la valeur de la ligne 16, en plus, ou en moins, par tâtonnement (attention, il faut téléverser à chaque fois (et penser à retirer l'objet à chaque téléversement)).
Une fois que la masse affichée est au plus prêt de la masse de l'objet connue, le réglage est terminé. On peut obtenir facilement une précision de +/- 1g.

Vous trouverez sur Internet d'autres possibilités : utiliser la console série et entrer des valeurs à la volée ou utiliser +- pour augmenter ou diminuer le coefficient. Il y a aussi le montage avec un potentiomètre qui tare en temps réel en utilisant une entrée analogique (à venir) .

Exemples :




mardi 28 janvier 2020

Utilisation basique de Thunkable pour créer une appli Android ou iOs

Le site internet Thunkable permet, à l'instar de AppInventor2, de créer des applications mobiles. Son usage est très légèrement différent mais iOs est pris en charge. L'exécution des applications sur l'appareil mobile peut se faire via une appli tierce. On retrouve le codage façon "Scratch" déjà vu au collège.



Pour se connecter à un compte existant ou créer un compte, c'est ici :

Il est possible de se connecter directement avec un compte google.
Pour se connecter, cliquer sur LogIn et vous obtenez cet écran :
Si vous voulez tester sur iOs ET Android, choisissez le bouton bleu...

On obtient ceci :

Pas besoin de créer un compte si vous avec une boite mail Gmail et/ou un compte Google...
Ici, on prend le cas de Google :

Il vous reste à vous connecter avec votre compte Google….

Vous êtes connecté et vous arrivez sur cet écran :

Ici, vous pouvez créer une nouvelle application, ouvrir une application existante ou encore voir des exemples.

Cliquons sur "Create New App" et nommons notre projet :
On clique sur "Create"



Encore une fois, une vidéo vaut de longs discours :


On voit bien la structure de notre IHM :
Maintenant, la partie codage :

Et maintenant ?

On va tester notre application sur notre smartphone préféré ! Pour cela, cliquer sur Live Test (procédure à ne faire qu'une fois par smartphone)

Important : au premier lancement de l'appli, il faut s'identifier avec le même compte que sur Thunkable. Cela permet de synchroniser les projets. Par la suite, l'appli ouvre le dernier projet en date.

Démonstration sur un Android :


Démonstration sur iOs :


Bon, ben....ça fonctionne !!!

Cerise sur le gâteau, si vous avez l'appli toujours ouverte et que vous modifiez une propriété dans votre projet, cette modification est visible en temps réel. 

Installation sur les appareils (détaillées plus tard)

Android :

 iOs :
La même appli sur deux OS différents !!!


dimanche 15 décembre 2019

Utilisation basique de draw.io

Cet article fait suite à un ancien article présentant rapidement draw.io.
Ici nous allons utiliser les fonctions basiques d'ouverture, d'enregistrement et d'export en image. Les fonctions avancées seront expliquées lors d'un prochain article...

1.Allons sur draw.io...

2.Choix de la langue et du support d'enregistrement... 
 
Choix de la langue :

 Choix du support d'enregistrement (ici, on enregistre sur le réseau ou sur clé USB):
 3.Création d'un nouveau document...


 4.Les outils et les modules supplémentaires...
Les outils de base peuvent suffire mais il est possible d'importer des modules supplémentaires :

 On choisit les modules à insérer et on clique sur Appliquer
Par exemple, les Clipart on été ajoutés :
5.Enregistrement d'un document... 
Tout au long de l'édition d'un document, draw.io propose de l'enregistrer 
 Et voici ce que donne un clic sur la ligne rose :

Enregistrer un document revient à le télécharger..... le fichier sera au format .drawio

6.Ouverture d'un document sur un autre poste ou à la maison ou depuis un autre support...
Ouvrir un document ne se fait pas naturellement par double clic de souris, ce n'est pas si simple. Il faut aller sur le site draw.io et suivre une des deux procédures suivantes :

Procédure 1 : on se connecte au site pour une nouvelle cession
On choisi le fichier et le travail apparaît...




Procédure 2 : via le menu Fichier


 ou bien

Si un document est déjà ouvert, ce message apparaît :

Choisir l'option qui vous convient....
Si je choisis la deuxième, une nouvelle page de navigateur s'ouvre :

7.Exporter un document sous forme d'image (pour communiquer facilement par exemple)...

 

Et après :

Et voilà !

Des questions ? Même procédure : le formulaire de contact....