Modifications

Aller à : navigation, rechercher

Atelier logiciel

7 078 octets ajoutés, 4 mai 2021 à 13:18
Unified Modeling Language (UML)
|ingrédients=logiciel,
|url=[http://fablabo.net/wiki/SCAO SCAO]
}}
==Définition==
L'atelier logiciel est l'un des [http://fablabo.net/wiki/SCAO#Les_ateliers_de_prototypage ateliers de prototypage] du SCAO.
===Pull-up and Pull-down resistors===
[https://www.electronics-tutorials.ws/logic/pull-up-resistor.html Pull-up and Pull-down resistors] are used to correctly bias the inputs of digital gates to stop them from floating about randomly when there is no input condition.
===Serveur de stockage en réseau (NAS)===
En référence à Planète Linux n°118, l'article intitulé "Installation d'un serveur de fichier".
Tout d'abord voici la définition de Wikipédia : "''Un [https://fr.wikipedia.org/wiki/Serveur_de_stockage_en_r%C3%A9seau serveur de stockage en réseau], également appelé stockage en réseau NAS, boîtier de stockage en réseau ou plus simplement NAS (de l'anglais Network Attached Storage), est un serveur de fichiers autonome, relié à un réseau, dont la principale fonction est le stockage de données en un volume centralisé pour des clients réseau hétérogènes.'' "
 
Ce NAS est installé au sein d'un réseau local constitué à partir de la freebox, il est constitué :
* d'un ordinateur simplifié
* du logiciel XigmaNAS.
 
=== Oscilloscope ===
L'achat est effectué sur le site en ligne Farnell pour le [https://fr.farnell.com/pico-technology/picoscope-2204a/oscilloscope-pc-10mhz-avec-awg/dp/2365425?ost=2365425 Picoscope 2204A].
 
La [http://www.farnell.com/datasheets/3162087.pdf datasheet du Picoscope 2204A].
 
[[fichier:Picoscope.png |thumb|center|upright=2 | Picoscope]]
 
==Installation logicielle==
Liste des installation et vérifications :
* [https://fablabo.net/wiki/Atelier_logiciel#Cr.C3.A9er_une_cl.C3.A9_USB_bootable_Ubuntu Créer une clé USB pour installer Ubuntu]
* booter sur la clé et installer Ubuntu
* [https://fablabo.net/wiki/Atelier_logiciel#Git_et_Git-hub Git]
* [https://fablabo.net/wiki/Atelier_logiciel#Libraries Libraries]
* [https://fablabo.net/wiki/Atelier_logiciel#Minicom Minicom]
* [https://fablabo.net/wiki/Atelier_logiciel#Les_logiciels_applicatifs Librecad]
* [https://fablabo.net/wiki/Atelier_logiciel#Les_logiciels_applicatifs Openscad]
* [https://fablabo.net/wiki/Atelier_logiciel#Les_logiciels_applicatifs Kicad]
* [https://fablabo.net/wiki/Atelier_logiciel#Les_logiciels_applicatifs Inkscape]
* [https://fablabo.net/wiki/Atelier_logiciel#Gestion_de_versions SCAO]
* [https://fablabo.net/wiki/Atelier_logiciel#Installation_de_l.27.C3.A9diteur_Atom Atom]
* [https://fablabo.net/wiki/Atelier_logiciel#Environnement_de_developpement Arduino IDE]
* [https://fablabo.net/wiki/Atelier_logiciel#Environnement_de_developpement Arduino cli]
* Créer les [https://fablabo.net/wiki/Atelier_logiciel#Cr.C3.A9er_un_alias alias]
* Vérifier les accès à fablabo et [https://fablabo.net/wiki/Atelier_logiciel#Personal_access_tokens_.28PAT.29 github].
 
==Personal access tokens (PAT)==
En référence à la version anglaise de Wikipédia, "''In computer systems, an [https://en.wikipedia.org/wiki/Access_token access token] contains the security credentials for a login session and identifies the user, the user's groups, the user's privileges, and, in some cases, a particular application. Typically one may be asked to enter the access token (e.g. 40 random characters) rather than the usual password (it therefore should be kept secret just like a password).''"
 
Pour obtenir un PAT, il faut suivre le lien suivant [https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ token-authentication-requirements-for-git-operations].
 
L'accès à Github s'effectue comme par le passé avec l'identifiant classique (Nom utilisateur + mot de passe).
 
Par contre, il faut prévoir un PAT nécessaire à l'exécution de certaine commande git comme :
* <code>'''git push origin master'''</code>
Mon PAT (Token for AIREL) est mémorisé dans un fichier personnel stocké sur une clé USB.
 
Si nécessaire, on peut effacer toutes les informations d'identification mises en cache dans git à l'aide de la commande suivante :
* <code>'''git config --global --unset credential.helper'''</code>
==Synchronisation==
L'[https://fr.wikipedia.org/wiki/Environnement_de_d%C3%A9veloppement environnement de développement] '''« intégré »''' (abrégé EDI en français ou [https://en.wikipedia.org/wiki/Integrated_development_environment IDE] en anglais, pour '''integrated development environment'''). Cet [https://en.wikipedia.org/wiki/Integrated_development_environment IDE] peut être réalisé à partir soit de :
* l'[https://blog.arduino.cc/?ie=UTF-8&oe=UTF-8&s=IDE&domains=&sitesearch= arduino IDE]
* l'[https://blog.arduino.cc/2020/03/13/arduino-cli-an-introduction/ arduino CLI] qui offre la possibilité d'utiliser l'éditeur de son choix, celui d'Eclipse [https://atom.io/ atom] en particulier. Après son Pour l'installer, choisir l'option '''"use the install script"''' du tutoriel [https://arduino.github.io/arduino-cli/latest/installation/ installation], voir le ensuite :
** [https://arduino.github.io/arduino-cli/ la documentation]
** [https://github.com/arduino/arduino-cli github]
* concernant le paragraphe 5 loop limiter au strict minimum le nombre de lignes de code en appelant les fonctions spécifiques qui se trouvent au paragraphe 3.
===Arduino forum===
Avant d'utiliser le forum, il est prudent de prendre connaissance du [https://forum.arduino.cc/index.php?topic=148850.0 How to use Arduino forum].
 
Ce document comporte 16 rubriques, les 5 premières sont essentielles, elles sont rappeler ci-dessous :
* 1. Register and '''sign in''' (en français connection, tandis que '''sign out''' veut dire déconnexion)
* 2. Choose an appropriate forum section - '''Attention''' cette étape est '''indispensable''' pour avoir accès au '''New Topic button''' [5] qui permet l'édition d'une requête.
* 3. Choose the correct language
* 4. Do some research before posting
* 5. Click on the New Topic button
* 8. You can add attachments (images should be no more than a couple of hundred K bytes
* 9. You can insert images.
 
===Gestion de versions ===
Un [https://fr.wikipedia.org/wiki/Logiciel_de_gestion_de_versions logiciel de gestion de versions] est un logiciel qui permet de stocker un ensemble de fichiers en conservant la chronologie de toutes les modifications qui ont été effectuées dessus. Il permet notamment de retrouver les différentes versions d'un lot de fichiers connexes.
Le besoin initial est le [https://plantuml.com/fr/activity-diagram-legacy diagramme d'activité] pour :représenter les fonctions logicielles.
Les logiciels sont nombreux et le plus souvent payants. Dans le cadre de ce projet:* le site [https://www.predictiveanalyticstoday.com/open-source-free-unified-modeling-language-uml-tools/ 40 open source, je mfree and top UML tools] permet d'oriente vers :orienter le choix* [https://app.lucidchart.com/documents#/dashboard lucidchart]qui est un logiciel propriétaire et accessible en ligne. Attention, il est gratuit mais dès que vous avez besoin d'une fonctionnalité particulière, c'est payant, bravo !* une alternative est [https://plantuml.com/fr/ plantuml]. 
Ce logiciel est disponible sous la forme d'un fichier [https://fr.wikipedia.org/wiki/JAR_(format_de_fichier) .jar (java archive)] qu'il faut [https://plantuml.com/fr/download télécharger].
En complément, il faut installer [https://www.graphviz.org/download/ Graphviz] :
* <code>'''sudo apt install graphviz'''</code>
 
Une autre alternative est [https://fr.wikipedia.org/wiki/Dia_(logiciel) Dia (wikipedia)] accessible sur le site [https://wiki.gnome.org/Apps/Dia Dia]. Dia est un logiciel libre de création de diagramme développé en tant que partie du projet GNOME.
 
Dia fait appel à des bibliothèques de symboles spécifiques à de nombreux domaines. Ces domaines sont principalement : électricité, électronique, circuits logiques, logiciel (graphes de flux), réseau, ordinateur, téléphone, UML, etc...
===Le langage de programmation===
Ce programme permet de remplacer le moniteur série de l'Arduino IDE.
Il est documenté sur Pour installer le paquet minicom :* voir [https://doc.ubuntu-fr.org/minicom le wiki ubuntu.fr]. Pour initialiser le port ttyACM0 (par exemple) et éviter l'erreur ''"ne peut ouvrir /dev/modem"'' :* <code>'''sudo minicom -D /dev/ttyACM0 -b 9600'''</code>
Pour le configurer :
* $ sudo apt-get install openscad
Pour obtenir une '''<big>version plus récente d'openscad</big>''', à partir du site [https://www.openscad.org/downloads.html#linux openscad] choisir, dans le paragraphe, ''"Other Linux"'' le téléchargement de ''The [https://appimage.org/ AppImage package''], 2 versions selon l'architecture sont proposées, prendre la '''X86(64bits)'''. Puis récupérer le fichier dans le répertoire Téléchargements et enfin le rendre exécutable (voir la [https://doc.ubuntu-fr.org/tutoriel/script_shell documentation Ubuntu]).
Prenons l'exemple de l'installation de l'IDE arduino-1.8.8
**reboot
**lancement arduino.
====Installation de l'éditeur Atom====
* Sur le site [https://atom.io/ atom] télécharger atom.amd64.deb
* Extraire les fichiers
* Installer atom en suivant la procédure du [https://flight-manual.atom.io/getting-started/sections/installing-atom/ flight manual]
* lancer atom en ligne de commande.
===Les logiciels applicatifs===
En compléments :
*Les schémas de la documentation sont réalisées à l'aide du logiciel '''[https://inkscape.org/fr/ Inkscape]''', qui fait l'objet de 2 sous-paragraphes (ci-dessous) :* le premier donne un exemple de son utilisation est traité ci-dessous* le second aborde les particularités des opérations booléene.
*La retouche des photos et les animations sont réalisés à l'aide du logiciel '''[https://www.gimp.org/ Gimp]''', par exemple pour réduire la taille du fichier d'une photo suivre la procédure :
**Lancer GIMP puis ouvrir le fichier .JPG et sélectionner le menu image,
** fichier - export - Export as PDF (ne pas utiliser "as image" car la qualité est mauvaise)
* inkscape : voir a)
====Inkscape - Opérations booléennes====
Les opérations booléennes (union, différence, intersection, exclusion et division) sont expliquées par un [http://write.flossmanuals.net/start-with-inkscape/boolean-operations/ tutoriel]. Elles sont accessibles à l'aide du menu '''"chemin (path)"'''.
 
Leur utilisation est délicate et demande une préparation correcte des 2 objets qui vont faire l'objet de l'opération booléenne. Dans le cas de l'opération différence, elle est effectuée selon le principe '''"dessous moins dessus"''' :
* le dessous est aussi appelé l'arrière plan
* le dessus est aussi appelé le premier plan.
Pour pouvoir gérer ces 2 plans sans ambiguïté, il est préférable de prévoir deux calques différents, chaque objet ayant son propre calque. Ainsi, il est possible à partir du menu '''"calque"''' de gérer le positionnement de l'objet :
* calque au premier plan
* calque à l'arrière plan.
Avant d'appliquer l'opération booléennes, il faut sélectionné les deux objet à l'aide d'une fenêtre.
===Les captures d'écran===
* '''impr-écr''' : copie de l'écran entier
* '''alt+impr-écr''' : copie de la fenêtre active
* '''ctrl+maj+impr''' : initie une capture d'une zone rectangulaire à tracer.
Pour plus de détails utiliser le lien [https://doc.ubuntu-fr.org/capture_d_ecran capture d'écran].
 
===Raccourcis clavier personnalisés===
Pour créer vos propres raccourcis clavier :
1 991
modifications

Menu de navigation