deuxième version

This commit is contained in:
lea.jean 2022-02-16 18:17:14 +01:00
parent f9a0ddfb0a
commit 3e99fc594a
215 changed files with 3734 additions and 881 deletions

View file

@ -29,7 +29,7 @@ body.dark,
.dark h4,
.dark h5,
.dark h6 {
color: rgb(152, 166, 173);
color: #ffb92c;
}
.dark pre,

View file

@ -8,7 +8,7 @@ microsoft_clarity = ""
# Choose from `default`, `ocean`, `forest`, `dark`, `apogee`, `1950s`, `coffee`, `cupcake`, `strawberry`.
color_theme = "default"
# Enable users to switch between day and night mode?
day_night = true
day_night = false
# Font style.
# Choose from `default`, `classic`, or `playfair`.
@ -25,7 +25,7 @@ twitter = ""
# Diplay a logo in navigation bar rather than title (optional).
# To enable, place an image in `static/img/` and reference its filename below. To disable, set the value to "".
logo = "icon.png"
logo = "lyc.png"
# Enable global source code highlighting? true/false
# Documentation: https://sourcethemes.com/academic/docs/writing-markdown-latex/#highlighting-options

View file

@ -8,5 +8,5 @@ weight = 50 # Order that this section will appear in.
# This should be the username of a profile in your `content/authors/` folder.
# See https://sourcethemes.com/academic/docs/get-started/#introduce-yourself
author = "admin"
avatar_image= "MissGMPAvatar.png"
avatar_image= "Avatar.png"
+++

View file

@ -6,7 +6,7 @@ active = true # Activate this widget? true/false
weight = 60 # Order that this section will appear.
title = "Contact"
subtitle = "Vous pouvez me contacter par mail via cette adresse leajean2001@gmail.com ou via ce formulaire"
subtitle = ""
# Automatically link email and phone?
autolink = true

View file

@ -8,7 +8,7 @@ weight = 10 # Order that this section will appear.
title = "Academia"
# Hero image (optional). Enter filename of an image in the `static/img/` folder.
hero_media = "MissGMPAvatar.png"
hero_media = "Avatar.png"
[design.background]
# Apply a background color, gradient, or image.

View file

@ -62,94 +62,4 @@ subtitle = "COMPÉTENCES TECHNIQUES"
name = "CAO, CFAO et dessins techniques"
parcent = "80%"
subtitle = "MACHINES DE FABRICATION"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Fraiseuse et tour conventionnel"
parcent = "90%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Perceuse à colonne"
parcent = "90%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Fraiseuse CNC Carly Robot"
parcent = "90%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Centre d'usinage CNC"
parcent = "75%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Découpe laser"
parcent = "95%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Imprimante 3D à filament"
parcent = "95%"
subtitle = "LOGICIELS"
[[feature]]
icon = "draw-polygon"
icon_pack = "fas"
name = "Utiliser des logiciels de CAO et de CFAO (FreeCAD, Catia, SolidWorks, SolidEdge, OnShape, TopSolid)"
parcent = "90%"
[[feature]]
icon = "images"
icon_pack = "fas"
name = "Utiliser des logiciels de dessins et de manipulation d'images (Krita, GIMP, Inkscape)"
parcent = "90%"
[[feature]]
icon = "film"
icon_pack = "fas"
name = "Utiliser des logiciels de montage video et audio (Audacity, Filmora...)"
parcent = "90%"
[[feature]]
icon = "laptop-code"
icon_pack = "fas"
name = "Utiliser des logiciels de programmation (Sublime Text, Visual Studio Code, Processing, Arduino...)"
parcent = "90%"
subtitle2 = "LANGAGES INFORMATIQUES"
[[feature]]
icon = "code"
icon_pack = "fas"
name = "Code ISO / G-Code"
parcent = "75%"
[[feature]]
icon = "html5"
icon_pack = "fab"
name = "HTML/CSS"
parcent = "90%"
[[feature]]
icon = "python"
icon_pack = "fab"
name = "Python"
parcent = "80%"
[[feature]]
icon = "code"
icon_pack = "fas"
name = "C++ (Arduino)"
parcent = "50%"
+++

54
content/home/skills2.md Normal file
View file

@ -0,0 +1,54 @@
+++
# A Skills section created with the Featurette widget.
widget = "featurette" # See https://sourcethemes.com/academic/docs/page-builder/
headless = true # This file represents a page section.
active = true # Activate this widget? true/false
weight = 30 # Order that this section will appear.
title = "Compétences"
subtitle = "MACHINES DE FABRICATION"
# Showcase personal skills or business features.
#
# Add/remove as many `[[feature]]` blocks below as you like.
#
# For available icons, see: https://sourcethemes.com/academic/docs/widgets/#icons
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Fraiseuse et tour conventionnel"
parcent = "90%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Perceuse à colonne"
parcent = "90%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Fraiseuse CNC Carly Robot"
parcent = "90%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Centre d'usinage CNC"
parcent = "75%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Découpe laser"
parcent = "95%"
[[feature]]
icon = "tools"
icon_pack = "fas"
name = "Imprimante 3D à filament"
parcent = "95%"
+++

42
content/home/skills3.md Normal file
View file

@ -0,0 +1,42 @@
+++
# A Skills section created with the Featurette widget.
widget = "featurette" # See https://sourcethemes.com/academic/docs/page-builder/
headless = true # This file represents a page section.
active = true # Activate this widget? true/false
weight = 30 # Order that this section will appear.
title = "Compétences"
subtitle = "LOGICIELS"
# Showcase personal skills or business features.
#
# Add/remove as many `[[feature]]` blocks below as you like.
#
# For available icons, see: https://sourcethemes.com/academic/docs/widgets/#icons
[[feature]]
icon = "draw-polygon"
icon_pack = "fas"
name = "Utiliser des logiciels de CAO et de CFAO (FreeCAD, Catia, SolidWorks, SolidEdge, OnShape, TopSolid)"
parcent = "90%"
[[feature]]
icon = "images"
icon_pack = "fas"
name = "Utiliser des logiciels de dessins et de manipulation d'images (Krita, GIMP, Inkscape)"
parcent = "90%"
[[feature]]
icon = "film"
icon_pack = "fas"
name = "Utiliser des logiciels de montage video et audio (Audacity, Filmora...)"
parcent = "90%"
[[feature]]
icon = "laptop-code"
icon_pack = "fas"
name = "Utiliser des logiciels de programmation (Sublime Text, Visual Studio Code, Processing, Arduino...)"
parcent = "90%"
+++

42
content/home/skills4.md Normal file
View file

@ -0,0 +1,42 @@
+++
# A Skills section created with the Featurette widget.
widget = "featurette" # See https://sourcethemes.com/academic/docs/page-builder/
headless = true # This file represents a page section.
active = true # Activate this widget? true/false
weight = 30 # Order that this section will appear.
title = "Compétences"
subtitle = "LANGAGES INFORMATIQUES"
# Showcase personal skills or business features.
#
# Add/remove as many `[[feature]]` blocks below as you like.
#
# For available icons, see: https://sourcethemes.com/academic/docs/widgets/#icons
[[feature]]
icon = "code"
icon_pack = "fas"
name = "Code ISO / G-Code"
parcent = "75%"
[[feature]]
icon = "html5"
icon_pack = "fab"
name = "HTML/CSS"
parcent = "90%"
[[feature]]
icon = "python"
icon_pack = "fab"
name = "Python"
parcent = "80%"
[[feature]]
icon = "code"
icon_pack = "fas"
name = "C++ (Arduino)"
parcent = "50%"
+++

42
content/home/skills5.md Normal file
View file

@ -0,0 +1,42 @@
+++
# A Skills section created with the Featurette widget.
widget = "featurette" # See https://sourcethemes.com/academic/docs/page-builder/
headless = true # This file represents a page section.
active = true # Activate this widget? true/false
weight = 30 # Order that this section will appear.
title = "Compétences"
subtitle = "COMMUNICATION"
# Showcase personal skills or business features.
#
# Add/remove as many `[[feature]]` blocks below as you like.
#
# For available icons, see: https://sourcethemes.com/academic/docs/widgets/#icons
[[feature]]
icon = "comment-alt"
icon_pack = "fas"
name = "Former un public et transmettre des connaissances"
parcent = "75%"
[[feature]]
icon = "comments"
icon_pack = "fas"
name = "Informer un public et présenter un sujet"
parcent = "70%"
[[feature]]
icon = "edit"
icon_pack = "fas"
name = "Documenter (un projet par exemple) et rédiger une procédure"
parcent = "85%"
[[feature]]
icon = "file-video"
icon_pack = "fas"
name = "Communiquer à travers un montage vidéo ou un montage photo"
parcent = "85%"
+++

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

View file

@ -9,6 +9,55 @@ date: "2022-02-01T00:00:00Z"
external_link:
image:
caption:
caption: Coupe transversale d'un poêle de masse Rocket "fixe", source [Wikipedia](https://fr.wikipedia.org/wiki/Fichier:Rocket-coupe-transversale.jpg)
focal_point:
Links :
- name : Documentation en ligne
url : https://projets.cohabit.fr/redmine/projects/projets-du-fablab/wiki/Rocket-Stove
---
## Le [Rocket Stove](https://en.wikipedia.org/wiki/Rocket_mass_heater)
Le poêle de masse rocket est un type de foyer à bois performant. Il est appelé ainsi à cause du son qu'il produit en fonctionnant, semblable à celui d'une tuyère de fusée.
||
|:---:|
|![Rocket Stove](/img/rocket.jpg "Coupe transversale d'un poêle de masse Rocket")|
|**Coupe transversale d'un poêle de masse Rocket "fixe", source [Wikipedia](https://fr.wikipedia.org/wiki/Fichier:Rocket-coupe-transversale.jpg)**|
Il s'agit d'un foyer semi-ouvert composé :
- d'un orifice d'alimentation permettant l'arrivée d'air et la mise en place du combustible
- d'une chambre de combustion isolée;
- d'une cheminée d'évacuation isolée.
L'isolation du foyer est ainsi responsable de l'excellente combustion du bois, produisant le son caractéristique d'une fusée.
## Le Habib'Stove
### Description
Librement inspirée, cette variante de conception du poêle vise à récupérer la chaleur évacuée vers la cheminée (serpentin en cuivre) pour pouvoir stocker cette énergie sous forme deau chaude et réguler un plancher chauffant. Pour simplifier la fabrication, le socle est moulé en béton réfractaire : ciment Fondu + perlite.
|||
|:---:|:---:|
|![Schéma descriptif du Habib'Stove](/img/Schema-description-habib-stove.png "Schéma descriptif du Habib'Stove")|![Schéma du parcours des flux](/img/Schema-flux-habib-stove.png "Schéma du parcours des flux du Habib'Stove")|
|**Schéma descriptif du Habib'Stove**|**Schéma du parcours des flux du Habib'Stove**|
### Réalisation
La structure en béton réfractaire se moule avec des morceaux de polystyrène. Pour cela, il convient de découper à la laser des guides en MDF d'épaisseur 8 mm, voire plus. Pour chaque forme, il faut deux guides identiques. Ensuite, on les maintient de part et d'autre d'un brut de polystyrène et on découpe au fil chaud en suivant la forme des guides. On découpe également à l'épaisseur souhaité si on n'a pas de brut de la bonne épaisseur.
|||
|:---:|:---:|
|![Découpe](/img/decoupe-hab2.gif "Morceau de polystyrène découpé par un fil chaud en suivant la forme des guides")|![Découpe](/img/decoupe-hab1.gif "Morceau de polystyrène découpé par un fil chaud en épaisseur")|
|**Morceau de polystyrène découpé par un fil chaud en suivant la forme des guides**|**Morceau de polystyrène découpé par un fil chaud en épaisseur**|
||||
|:---:|:---:|:---:|
|![Découpe](/img/guides3.png "Guides en MDF découpés à la découpe laser")|![Découpe](/img/poly-guides.png "Morceau de polystyrène découpé au fil chaud suivant la forme de guides")|![Découpe](/img/poly3.png "Morceaux de polystyrène découpés au fil chaud")|
|**Guides en MDF découpés à la découpe laser**|**Morceau de polystyrène découpé au fil chaud suivant la forme de guides**|**Morceaux de polystyrène découpés au fil chaud**|
La structure en béton réfractaire est stockée dans une boîte découpée à la laser dans du MDF 3mm. Les dessins des pièces de la boîte sont réalisés à partir d'un [générateur en ligne](https://www.festi.info/boxes.py/) puis modifiés suivant nos besoins sur Inkscape.
/photos/

View file

@ -10,7 +10,7 @@ date: "2022-02-01T00:00:00Z"
external_link:
image:
caption:
caption: Photo du musée du Fablab Coh@bit, by Léa JEAN
focal_point:
links :
@ -28,5 +28,4 @@ Cela consiste d'une part à la **formation** des adhérents ou étudiants aux **
D'autre part, il s'agit d'accompagner les adhérents dans leurs projets en les aidant dans l'utilisation des machines ou bien en leur apportant d'autres connaissances techniques par exemple dans le domaine de la mécanique ou sur la faisabilité de leur projet, si besoin.
Cette mission a principalement pour but de **transmettre des connaissances**.
La ligne directrice de cette mission est principalement la **transmission des connaissances**.

View file

@ -3,12 +3,95 @@ title: Projet défi - Distributeur de bonbons
summary: Conception et réalisation d'un distributeur de bonbons à partir d'un cahier des charges donné.
tags:
- gmp
date: "2021-12-01T00:00:00Z"
date: "2022-01-09T00:00:00Z"
# Optional external URL for project (replaces project detail page).
external_link:
image:
caption:
caption: Photo du distributeur de bonbons conçu et réalisé par Pierre CAILLAUD, Eneko CARRERE, Thomas FEUGAS, Rémi GONDOUIN, Théo GUEGAN, Lucas HUBERT et Léa JEAN
focal_point:
---
*Dates du projet : 21/10/2019 - 25/10/2019*
## Contexte
Le projet s'est déroulé dans le cadre de la formation **Génie Mécanique et Productique (GMP)**. Chaque groupe a quatre jours (hors temps de présentation) pour concevoir et réaliser un système suivant le cahier des charges donné en début de semaine. Le dernier jour, les groupes doivent faire une présentation de leur système à un jury.
## Cahier des charges
L'objectif est de fabriquer un **distributeur** capable de distribuer *un bonbon toutes les 4 secondes* à partir d'un stock de *minimum 20 bonbons*. Les dimensions du système ne doivent pas excéder *350x350x450 mm*. Le mouvement d'entrée atteint une vitesse de rotation de *30 tr/min*.
## Recherche de solution
Un brainstorming entre les membres de l'équipe est organisé durant lequel plusieurs solutions ont émergées.
### Solution 1
La première solution utilise une vis sans fin. Le bonbon est entrainé par la vis sans fin en rotation, voyageant dans son filet jusqu'à la sortie.
![Solution1](/img/sol1.jpg "Solution utilisant une vis sans fin")
L'avantage de ce système est qu'il est peut encombrant. En revanche, la roue sans fin est difficile à usiner et un problème de positionnement et d'orientation du bonbon peut survenir.
### Solution 2
La deuxième solution utilise une roue encochée. Cette dernière est enfermée dans un boitier. Le bonbon est pris dans l'encoche en entrée, la roue tourne et le bonbon est libéré en sortie.
![Solution2](/img/sol2.jpg "Solution utilisant une roue encochée")
Le système est un peu encombrant mais est simple et l'intervalle de temps de chute des bonbons est facilement ajustable.
### Solution 3
La troisième solution pensée fonctionne avec un système de bielle manivelle. Une tige poussoir est fixé au mécanisme bielle / manivelle. Ainsi, le bonbon est libéré puis poussé par la tige dans l'orifice de sortie tout en bloquant le bonbon suivant.
![Solution3](/img/sol3.jpg "Solution utilisant une bielle/manivelle")
Le mécanisme est facilement réalisable mais gérer la course du poussoir peut être une difficulté.
## Conception
Il convient de réaliser le dessin d'ensemble du système et les dessins de définition des pièces, notamment de la roue encochée et des arbres de trasmissions. Un dessin du sous-ensemble de transmission est également réalisé.
![Dessin d'ensemble](/img/dess-ens.jpg "Dessin d'ensemble du distributeur")
## Fabrication
### Roue à encoche
**Brut : 500x500 / contre-plaqué**
- Phase 100 : perceuse colonne / scie cloche 105 mm - Découpage d'un rond de Ø105 mm
- Phase 200 : perceuse à main / forêt Ø6mm - Perçage d'un trou centrale de Ø6 mm
- Phase 300 : scie sauteuse - Découpage de l'encoche
### Arbre 1
**Brut : longueur 150 mm diamètre 8 mm / acier**
Usinage au tour
- Phase 100 :
- Op 1 & 2 : outil à charioter dresser
- Op 3 : outil à chanfreiner
- Op 4 : outil à tronçonner
- Phase 200 :
- Op 1 & 2 : outil à charioter dresser
- Op 3 : outil à chanfreiner
### Assemblage
On assemble le système.
|||
| :--- | :--- |
| ![Assemblage](/img/assemblage1.jpg "Roue encochée et du système de transmission assemblés") | ![Assemblage](/img/distributeur.jpg "Distributeur assemblé") |
## Tests
Des tests sont effectués et le système est ajusté.
Des améliorations sont encore possibles :
- Pérennité : utiliser de l'aluminium
- Esthétique
- Stabilité
- Améliorer la coaxialité des perçages et utiliser des roulements pour fluidifier le système

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 MiB

View file

@ -1,15 +0,0 @@
---
title: Formation machines de fabrication
summary: Formation aux machines et aux logiciels utilisés au FabLab Coh@bit, et aide à leur utilisation.
tags:
- fab
- com-trans
date: "2021-09-01T00:00:00Z"
# Optional external URL for project (replaces project detail page).
external_link:
image:
caption:
focal_point:
---

View file

@ -4,7 +4,7 @@ summary: Programmation de dobots avec conception et fabrication d'un support et
tags:
- rob
- gmp
date: "2021-10-01T00:00:00Z"
date: "2022-02-08T00:00:00Z"
# Optional external URL for project (replaces project detail page).
external_link:
@ -13,3 +13,150 @@ image:
caption:
focal_point:
---
## Cahier des charges
Le projet s'est développé dans le cadre du semestre 4 du parcours robotique de l'IUT de Bordeaux, site de Gradignan. L'objectif est, à partir dun tableau recensant les coordonnées (base, position, orientation) des Kapla, de réaliser une structure avec ces mêmes Kapla.
Le matériel a disposition comprend :
- 1 convoyeur,
- 2 dobots Magician (robots 4 axes),
- des [Kapla](https://www.kapla.com/fr/) de dimensions 25x20x70 mm,
- 1 caméra Intel D435i RealSense Depth,
- 1 raspberry pi,
- et divers composants comme des servomoteurs Dynamixel MX-12W, etc...
Le cycle à suivre est celui-ci :
1. Prise d'un Kapla dans le magasin par le dobot 1
2. Dépose sur le convoyeur pour transfert vers le dobot 2
3. Reconnaissance du Kapla
4. Prise du Kapla par le dobot 2
5. Réalisation de la structure
L'effecteur des dobots est au choix : une pince pneumatique ou une ventouse.
## Planification
Pour une organisation optimale, une planification du projet est nécessaire. Il faut pour cela identifier les différentes tâches à réaliser et leur chronologie, les répartir entre les membres de l'équipe, et les répartir dans le temps de manière à respecter les jalons. Il convient alors d'établir un GANTT.
## Identification des problématiques et recherche de solutions
### Problématique 1 : l'orientation des Kapla
Dans le magasin, les Kapla ont tous la même orientation, et il faut que le Kapla puisse prendre n'importe quelle orientation suivant les besoins de la structure finale. Cependant, leffecteur du dobot ne peux pas effectuer de rotations suivant x et y, toutes les orientations ne sont donc pas possibles.
#### Recherche de solutions
Plusieurs solutions ont alors émergées. La première est de faire tomber le Kapla en fin de convoyeur dans une boîte avec une pente. En chutant le long de la pente, le kapla se retourne. Linconvénient est que le Kapla peut se coincer sil ne tombe pas directement dans la bonne position. Cette idée nest donc pas la plus appropriée. Pour passer outre ce problème, nous avons réfléchi à une solution semblable mais plus "sûre". Nous avons donc conçu une solution motorisée en forme de “L” permettant de retourner le Kapla en activant un moteur.
#### Choix de solution
Nous optons ainsi de développer la structure en “L” pour le système.
### Problématique 2 : détection du Kapla
Pour que le système fonctionne, les dobots doivent pouvoir trouver les Kapla pour les saisir.
#### Recherche de solutions
Nous avons donc pensé ici à trois solutions.
La première est de reposer le transport des Kapla sur lexactitude de répétition de mouvements des robots et du convoyeur dans le but de ne pas utiliser de capteur de détection, et de tester notre convoyeur et nos dobots de manière à ce que les Kaplas puissent être posés toujours aux mêmes endroits sur le convoyeur par le dobot 1 et récupéré toujours au même endroit par le dobot 2. Or cette solution est hasardeuse.
La deuxième est dutiliser un capteur de présence laser pour retourner linformation de la présence du Kapla en bout de convoyeur. Avec ce système, la récupéreration du Kapla par le dobot 2 se fait au même endroit.
La troisième est dutiliser une caméra et une intelligence artificielle de reconnaissance dimage et de détection de centre de gravité. En ayant le centre de gravité, nous pouvons déterminer précisément le point où le dobot 2 doit saisir le Kapla. Lavantage principal de ce système est de pouvoir déterminer la position du Kapla tant quil est dans le champ de vision de la caméra, et permet de corriger des erreurs de rotation au niveau de laxe Z.
#### Choix de solution
Le choix s'est d'abord porté sur la troisième solution, soit une détection par caméra, solution qui par manque de temps nas pas pu aboutir. Nous avons donc finalement opté pour le capteur de présence.
### Problématique 3 : lecture de fichier
Les Kaplas ne sont pas préalablement triés dans le fichier json fourni. La problématique qui se présente ici est donc l'ordre de pose des Kapla qui nous est inconnu.
#### Choix de solution
Il convient alors de réaliser un code de tri qui, après importation du fichier
json, renvoie le fichier dans l'ordre de dépose sur la zone de charge.
### Problématique 4 : choix de l'effecteur
Le choix nous est donné entre une ventouse ou une pince pneumatique comme effecteur des dobots. Ce choix influe sur la prise des Kapla. Ainsi, l'effecteur utilisé ici est une ventouse.
## Modélisation et réalisation de l'ensemble du système
### Structure en "L"
Dans le but de pouvoir changer l'orientation des Kapla suivant les besoin de la structure en Kapla finale, il convient de concevoir un système. Le système conçu ici est une structure en “L”. Ce nom lui vient de la forme principale de la forme de la structure qui vue de profil ressemble à un “L”.
|||
|:---:|:---:|
|![Dessin d'ensemble](/img/dess-ens-l.png "Dessin d'ensemble de la structure en L")|![Modélisation de l'ensemble](/img/L.png "Modélisation 3D de la structure en L sur OnShape")|
|**Dessin d'ensemble de la structure en "L"**|**Modélisation 3D de la structure en "L" sur OnShape**|
Le principe de sa structure est relativement simple. Un servomoteur Dynamixel MX-12W, commandé en angle, bascule de 90° lorsqu'on le lui demande. Le dobot 2 saisit le Kapla sur le convoyeur et le positionne à lintérieur du “L”. Ainsi, lorsque le Kapla est allongé, nous pouvons choisir si nous voulons le positionner au sol, en longueur ou en largeur. Le "L" dispose également dune encoche et dun côté plus long que lautre pour pouvoir positionner le Kapla debout. Ainsi, après avoir saisi le Kapla sur le convoyeur, la ventouse réalise une rotation suivant laxe z pour pouvoir positionner le Kapla dans la petite encoche.
![Structure en L](/img/structure-l.jpg "Structure en L fabriquée")
Le système est d'abord modélisé en 3D et assemblé sur le logiciel de CAO en ligne [*OnShape*](https://www.onshape.com/en/). Ensuite, le "L" et sa fixation au moteur sont imprimésen PLA avec des imprimantes 3D à filament. On utilise une découpeuse laser pour réaliser le socle en PMMA et on scie une tige en métal qui fixera le "L" à la fixation. Enfin, on assemble le tout : les pièce du socle sont emboités, la fixation est vissée au moteur et le moteur est vissé au socle, la tige s'insert dans la fixation et le "L".
### Support de la caméra
Dans le cas de la détection de Kapla par caméra, un support pour fixer cette dernière est nécessaire. Celui-ci se fixe sur le convoyeur et est conçu de manière à ce que la caméra donne une vue du dessus du convoyeur. Les dimensions sont pensées de manière à pouvoir fixer la caméra mais également de manière à ce que le support ne gène pas les dobots pendant leurs déplacements.
||||
|:---:|:---:|:---:|
|![Dessin de définition](/img/support-cam-kapla.png "Dessin de définition du support caméra")|![Modélisation de l'ensemble](/img/support-cam.png "Modélisation 3D du support caméra sur OnShape")|![Modélisation](/img/supp-cam-kapla.jpg "Support caméra fabriqué")|
|**Dessin de définition du support caméra**|**Modélisation 3D du support caméra sur OnShape**|**Support caméra fabriqué**|
Le support est d'abord modélisé sur OnShape puis fabriqué. Un morceau de tôle est découpé à la cisailleuse aux dimensions voulues. La plaque est ensuite percée à la perceuse à colonne. Certains trous serviront à visser le support au convoyeur, tandis que les autres serviront à visser la caméra au support. Enfin, on plie la tôle. Afin que le support ne fléchisse pas sous le poids de la caméra, un morceau de tôle est soudé par point en renfort.
### Ensemble du système
|||
|:---:|:---:|
|![Schéma de l'ensemble](/img/schema-ens-kapla.jpg "Schéma du système")|![Modélisation de l'ensemble](/img/ens-kapla.jpg "Modélisation 3D du système sur OnShape")|
|**Schéma du système**|**Modélisation 3D du système sur OnShape**|
## Programmation
### Programmation de la structure en "L"
Dans le but de réaliser la programmation du moteur dynamixel dans la structure, à laide dune Arduino, nous utilisons la librairie *ardyno* afin dimporter *“dynamixelMotor”*. La fonction *motor.goalPosition()* est ensuite utilisée pour set langle du moteur.
Par la suite, il nous est nécessaire de pouvoir exploiter ce programme avec des appellations dans un programme en python. On réalise donc une liaison port série afin de communiquer avec lArduino depuis un programme en python. Pour cela nous utiliserons la bibliothèque *pyserial* afin dimporter *“Serial”*. On pourra alors taper la commande *serial.Serial(port,baudrate,timeout)* afin de se connecter au port série de lArduino.
![L](/img/structure-l-vid2.gif "Structure en L en fonctionnement")
### Programmation de la caméra
Afin de faire une étude de la position du Kapla sur le convoyeur, il est possible d'utiliser utiliser une caméra et une intelligence artificielle de reconnaissance dimage et de détection de centre de gravité. Un logigramme est préalablement construit pour structurer le programme. En utilisant un code trouvé sur Internet permettant de régler le filtre en direct sur une image ou une vidéo, nous choisissons les valeurs en codage HSV les plus adaptées pour extraire seulement le Kapla de l'image.
Au lancement des programmes on observe lapparition de lignes vertes qui représentent les lignes verticales du Kapla, et de lignes rouges qui représentent les lignes horizontales du Kapla. Néanmoins, par faute de temps, le programme nest pas fini et on voit apparaître de nombreux problèmes sur la détermination des lignes. En achevant ce programme, il est possible de connaître les 4 coins du Kapla et de son centre.
Nos résultats sont les suivants :
![Résultats](/img/res-cam.jpg "Résultats obtenus par la programmation de la caméra")
### Capteur laser
Comme la caméra s'est avérée plus compliquée à utiliser et à intégrer que prévu dans la limite du temps imparti, nous avons donc utilisé le capteur pour détecter le Kapla en fin de course sur le convoyeur. Lorsque le capteur le détecte, le convoyeur s'arrête.
### Code du tri des Kapla
Afin de faciliter la prise et la pose des Kapla, on passe par une étape de tri de ces derniers. On a décidé de prendre les Kapla du plus en bas au plus en haut (en les prenant à terre) en remontant progressivement. Le tri se fait donc selon laxe z. On parcourt ainsi la liste des positions des Kapla en les sélectionnant avec le z le plus bas.
### Code principal
Le code dit principal est le code obtenu après lintégration de tous les morceaux de code séparés. Pour la logique globale qui en découle, on établit en amont un algorithme permettant de mieux comprendre la structure et l'algorithme de notre code. Pour le code principal, on intègre les différentes parties de code faites en amont et on les rassemble sous forme de fonctions que nous avons simplement à appeler dans le *main*.
![Logigramme](/img/logi-kapla.jpg "Logigramme du programme")
## Système final
|||
|:---:|:---:|
|![Photo du système](/img/kapla.jpg "Photo du système (vue de haut)")|![Photo du système](/img/kapla2.jpg "Photo du système (vue de côté)")|
|**Photo du système (vue de haut)**|**Photo du système (vue de côté)**|
Ci-dessous, une vidéo du système en fonctionnement à la fin du projet :
![Système en fonctionnement](/img/sys-kapla.gif "Système en fonctionnement")

View file

@ -1,9 +1,9 @@
---
title: Main articulée
summary: Lorem ipsum dolor sit amet consectetur adipisicing elit. Magnam, eius.
summary: Planification et mise en place du cahier des charges fonctionnel. (Projet inachevé cause COVID-19)
tags:
- gmp
date: "2021-12-01T00:00:00Z"
date: "2022-02-10T00:00:00Z"
# Optional external URL for project (replaces project detail page).
external_link:
@ -12,3 +12,72 @@ image:
caption:
focal_point:
---
## Contexte
Ce projet s'est déroulé dans le cadre des projets semestriels du département Génie Mécanique et Productique de l'IUT de Bordeaux, et évolue en lien avec le parcours robotique.
Dû au contexte de la crise sanitaire du COVID-19, seules la planification et la mise en place du cahier des charges fonctionnel ont été réalisées. La planification a malgré tout été menée comme si
## Présentation générale du projet
Le projet consiste à réaliser une **main articulée** dont l'objectif est de **démontrer différentes technologies de liaison utilisables pour les articulations**.
Les articulations seront purement mécaniques mais le système peut être amélioré par la motorisation de celui-ci.
## Planification
Afin d'organiser au mieux le projet, il faut le **planifier**. Il convient alors d'établir la **liste des tâches** à réaliser afin de mener à terme le projet, en définissant leurs antécedents (et donc leur chronologie) ainsi que leur durée.
On établit ensuite un **GANTT** et un **PERT**.
## Cahier des charges
On procède à une **analyse fonctionnelle**.
On établit une *bête à corne* qui illustre le besoin du système.
![Bête à corne](/img/bac.png "Bête à corne")
La main articulée devra :
- bouger selon les commandes de lutilisateur via des commandes extérieures à la main, commandes mécaniques mais qui peuvent évoluer sur des commandes électriques ;
- pouvoir être montrée à un public par lutilisateur.
Cependant, elle devra aussi sadapter aux contraintes des éléments environnants. Étant un démonstrateur, la main sera exposée et devra donc sadapter à un support, mais aussi à son public. En effet, les différentes technologies de liaisons devront être visibles. Par extension, elle devra aussi sadapter à lutilisateur, cest-à-dire, pouvoir être utilisée par ce dernier. Enfin, elle devra sadapter à lenvironnement dans lequel elle sera exposée.
On établit ainsi les fonctions de service et les fonctions contraintes du système, qu'on représente dans un *diagramme pieuvre*.
| **Fonctions de service** | **Contraintes dadaptation** |
| :--------------- | :--------------- |
| FS23 : Obéir aux commandes de lutilisateur | Ca1 : Sadapter au support |
| FS34 : Montrer la main au public | Ca2 : Sadapter à lutilisateur |
| | Ca3 : Sadapter au public |
| | Ca4 : Sadapter à lenvironnement |
![Diagramme pieuvre](/img/diag-pieuvre.png "Diagramme pieuvre")
On regroupe le **besoin fondamental**, les **fonctions services** et les **contraintes d'adaptation** dans un diagramme FAST.
![FAST](/img/FAST.png "FAST")
Contraintes générales :
- Le système doit être défini dans un format A4 ;
- Respecter les normes de sécurité ;
- Utiliser des technologies différentes ;
- Age minimum dutilisation : 11 ans ;
- Matériaux : utilisation de matières plastiques et dalliages d'aluminium ;
- Énergie : énergie mécanique uniquement ; en cas dévolution, énergie électrique : 24V max ;
- Masse : le système doit être facilement transportable.
Il est important décrire les **éléments environnants** au système.vLe projet étant un démonstrateur, il sera exposé dans un environnement sec et sera utilisé par plusieurs personnes lors des présentations.
On **caractérise** enfin les fonctions.
| **FS23 : Obéir aux commandes de l'utilisateur** | **Critères de l'action** | **Niveaux** | **Flexibilité** |
| :--------------- | :--------------- | :--------------- | :--------------- |
| Éléments environnants influents: Environnement, public, utilisateurs | Commander : Tension (fils) | A définir par des essais | Maxi |
| **FS34 : Montrer la main au public** | **Critères de l'action** | **Niveaux** | **Flexibilité** |
| :--------------- | :--------------- | :--------------- | :--------------- |
| Éléments environnants influents: Environnement, commandes, utilisateurs | Montrer : Liaisons | 7 | Mini |
| Éléments environnants influents: Environnement, commandes, utilisateurs |Résister à l'usure : Cycles dutilisation (tension/relâchement des fils)| 500/jour | Maxi |

View file

@ -35,34 +35,35 @@ La machine a directement été déplacée au Fablab pour pouvoir plus confortabl
Lorsque nous étions dans les locaux de Bordeaux Sciences Agro, nous avons contraint la pièce pour déboulonner au-dessous et pouvoir sortir le disque auquel la pièce est fixé, pour finalement pouvoir enlerver la vis plus facilement. Le risque d'abîmer plus la pièce a été pris car cette dernière ayant une forme simple et répétitive, nous avons jugé que ce n'était pas un problème pour la modélisation de celle-ci.
![/image/ La pièce à remplacer est coincée par la vis](ribo1.jpg)
![La pièce à remplacer est coincée par la vis](/img/ribo1.jpg "La pièce à remplacer est coincée par la vis")
Cependant, /explication de ce qui ne va pas et pourquoi ça n'a pas fonctionné/.
Les moyens sur place et le temps nous limitant, la décision a été prise d'amener la machine dans les locaux du Fablab afin de pouvoir prendre le temps d'extraire la pièce en essayant de ne pas trop endommager les vis.
Nous avons dévissé la pièce verte du carter ce qui nous a permis de sortir l'ensemble motorisé et ainsi de maintenir l'axe du rotor pour déboulonner au dessus de la pièce bleue (cf. photo 1). Nous avons ensuite détaché le ressort de la pièce bleue puis la pièce bleue de l'axe du rotor (cf. photo 2 & 3).
Nous avons dévissé la pièce verte du carter ce qui nous a permis de sortir l'ensemble motorisé et ainsi de maintenir l'axe du rotor pour déboulonner au dessus de la pièce bleue. Nous avons ensuite détaché le ressort de la pièce bleue puis la pièce bleue de l'axe du rotor.
/images/
![Ensemble motorisé](/img/ribo2.jpg "Ensemble motorisé")
![Pièce bleue et pièce à remplacer extraites](/img/ribo3.jpg "Pièce bleue et pièce à remplacer extraites (vue du dessus à gauche et du dessous à droite)")
La pièce à remplacer n'étant plus fixée à la machine et les éléments autour ayant été limités, nous avons une meilleure vision de la manière de procéder pour l'extraction de cette pièce et cette opération sera menée de manière plus confortable avec moins de risques d'endommager une pièce.
Après observation, il a été constaté que le pas de vis est endommagé. La vis a été sciée et la pièce libérée.
/image de la pièce libérée/
![Pièce à remplacer](/img/ribo4.jpg "Pièce à remplacer")
Pour remplacer la vis endommagée, ses dimensions ont été prises. Nous avons pu ensuite en commander de nouvelles.
/image dessin vis et nouvelles vis/
![Vis](/img/visribo.jpg "Dessin de définition de la vis (à gauche) et nouvelles vis commandée (à droite)")
## Modélisation de la pièce à remplacer
Il s'agit d'une pièce qui sera très contrainte et qui doit résister en fatigue. Le département SGM de l'IUT de Bordeaux nous a ainsi fourni des bruts de polyéthylène.
/image/
![Brut](/img/brutribo.jpg "Bruts fournis par le département SGM")
Il convient de d'abord modéliser sur FreeCAD la pièce après avoir pris les mesures nécessaires sur la pièce existante.
/image/
![Modélisation](/img/piece-poly-V2.png "Modélisation de la pièce à remplacer avec FreeCAD (vue du dessus à gauche et de dessous à droite)")
La première modélisation n'a pas été faite de manière optimale. Ainsi, après avoir reçu des conseils d'une personne expérimentée, une deuxième modélisation de la pièce plus propre est entreprise puis le paramétrage de l'usinage est effectué.

View file

@ -17,18 +17,36 @@ links:
url: https://projets.cohabit.fr/redmine/projects/projets-du-fablab/wiki/Scanner_3D
---
### Description
A partir des pièces d'un scanner 3D déjà réalisé auparavant, on réalise un système permettant de prendre plusieurs photos de manière régulière et à la même distance d'un objet. A terme, avec un logiciel, on va pouvoir construire le modèle 3D de l'objet à partir de ces photos.
Jai décidé de garder la plaque tournante du système d'origine, mais aussi de concevoir un nouveau support pour l'appareil photo et puis de programmer lArduino de manière à ce que la plaque tourne d'un certain incrément toutes les tant de secondes, la photo sera prise pendant ce laps de temps (par exemple, la plaque va tourner de 15° toutes les 10 secondes).
### Réalisation
Pour commencer, jai démonté le scanner 3D, puis modélisé sur FreeCAD le support de l'appareil photo.
Le support était au départ composé d'un corps à imprimer, d'une plaque pour supporter l'appareil photo, qui serait fixée au corps grâce à des chevilles en bois, et de deux tubes pour stabiliser la plaque aux extrémités. Après réflexion, jai décidé de ne mettre quun seul tube car suffisant. Ce dernier serait renforcé par un pied.
Jai imprimé le corps en PLA et découpé à la découpe laser la plaque de MDF 10 mm. Jai ensuite percé les trous qui permettront de fixer la plaque au corps avec une perceuse à colonne. Le trou traversant au milieu de la plaque va permettre de fixer l'appareil photo à plaque. Il a été placé par rapport à la position du trou déjà présent en-dessous de l'appareil photo. Jai ensuite scié un tube de métal de diamètre 8 mm.
||||
|:---:|:---:|:---:|
|![Support](/img/piece1.jpg "Corps imprimé en PLA")|![Support](/img/piece2.jpg "Corps imprimé en PLA")|![Support](/img/plaque2.jpg "Plaque support en MDF")|
|**Corps imprimé en PLA**|**Corps imprimé en PLA**|**Plaque support en MDF**|
Il y a un décalage de hauteur d'environ 6-7 mm entre l'appareil photo et la plaque support, donc pour qu'il soit parallèle à cette dernière, jai découpé de petites cales (dessinées sur Inkscape) de 3 mm que jai collées ensemble. La cale a ensuite été collée sur la plaque support.
Pour garder le tube droit, jai modélisé et imprimé un pied. Puis jai modélisé et imprimé une pièce qui s'encastre dans le tube et la plaque support pour assurer un maintien entre les deux pièces mais pour également garder l'ensemble démontable.
|||
|:---:|:---:|
|![Support](/img/piece-scanner3d.jpg "Pièce qui s'encastre dans le tube")|![Support](/img/pied.jpg "Pied support assemblé")|
|**Pièce qui s'encastre dans le tube**|**Pied support assemblé**|
Après avoir assemblé les pièces du support caméra ensemble, jai ensuite assemblé ce dernier avec la plaque tournante.
||||
|:---:|:---:|:---:|
|![Support](/img/support2.jpg "Ensemble plaque tournante/support assemblés")|![Support](/img/scanner.jpg "Ensemble plaque tournante/support assemblés")|![Support](/img/support3.jpg "Ensemble plaque tournante/support assemblés")|
|**Ensemble plaque tournante/support assemblés**|**Ensemble plaque tournante/support assemblés**|**Ensemble plaque tournante/support assemblés**|

View file

@ -17,10 +17,50 @@ links:
url: https://projets.cohabit.fr/redmine/projects/projets-du-fablab/wiki/Support_de_boisson
---
## Contexte
L'objectif est de réaliser un support de boisson pour une personne en situation de handicap. Le support sera fixé à un fauteuil roulant et démontable. Le support ne doit cependant pas être trop haut pour pouvoir passer en dessous des tables. Il accueillera un gobelet et sera accompagné d'une paille.
Le modèle du fauteuil du demandeur possède des rails en-dessous de laccoudoir, jai donc eu lidée dutiliser ces rails pour fixer le support au fauteuil.
Le modèle du fauteuil du demandeur possède des rails en-dessous de laccoudoir, il est alors possible dutiliser ces rails pour fixer le support au fauteuil.
## Description du système
Le système est composé de deux pièces : la première est bloc qui va glisser dans le rail de l'accoudoir gauche, et la seconde portera le gobelet. La seconde pièce sera encastrée dans la première grâce à un système de rail.
Les mesures utiles à la conception ont été prises directement sur le fauteuil du demandeur.
Jai modélisé les pièces sur FreeCAD puis les ai imprimées avec une imprimante 3D à filament. Ensuite plusieurs rencontres ont eu lieu avec le demandeur pour tester le prototype et plusieurs modifications et améliorations ont été faites.
Les mesures utiles à la conception ont été prises directement sur le fauteuil du demandeur. La modélisation des pièces est faite sur le logiciel de CAO [FreeCAD](https://www.freecadweb.org/?lang=fr).
## Première version
||||
|:---:|:---:|:---:|
|![Modélisation](/img/porte-gobelet.png "Modélisation du porte-gobelet")|![Modélisation](/img/support-boisson-ensemble.png "Modélisation de l'ensemble")|![Modélisation](/img/Rails.jpg "Modélisation du rail")|
|**Modélisation du porte-gobelet (vue isométrique)**|**Modélisation de l'ensemble (vue isométrique)**|**Modélisation du rail (vue isométrique)**|
Les premiers prototypes sont imprimés en PLA avec une imprimante 3D à filament, sans remplissage à l'intérieur pour gagner du temps sur l'impression et économiser le fil. Plusieurs rencontres ont lieu avec le demandeur pour tester les prototypes et ajuster les dimensions. Par ailleurs, les bords et les coins sont arrondis pour éviter de se blesser.
|||
|---:|:---:|
|![Prototype](/img/proto2.jpg "Première version")|![Prototype](/img/proto1.jpg "Première version")|
|**Première version du prototype imprimé en PLA**|
## Deuxième version
Le système de fixation entre les deux pièces est très hyperstatique et cela augmente les risques de défaut de fabrication qui compliquent l'assemblage. On remplace alors les deux rails par une seule en forme de queue d'aronde.
||
|:---:|
|![Prototype](/img/proto3.jpg "Deuxième version")|
|**Deuxième version du prototype imprimé en PLA**|
La deuxième version du prototype est d'abord imprimé en plus petit (à droite sur la photo) pour vérifier l'assemblage des deux pièces, puis en taille réelle pour s'assurer des bonnes dimensions des rails.
Le système fonctionne, cependant il y a un risque qu'il se démonte involontairement au niveau de l'accroche entre les deux blocs.
## Troisième version
On modifie le système d'assemblage entre les deux blocs.
||
|:---:|
|![Prototype](/img/proto4.jpg "Troisième version")|
|**Troisième version du prototype imprimé en PLA**|
Le système fonctionne, est plus équilibré et plus solide au niveau de l'assemblage.

View file

@ -13,3 +13,9 @@ image:
caption:
focal_point:
---
Avec la crise sanitaire due au Covid-19, se réunir pour étudier est devenu plus difficile, pourtant beaucoup d'étudiants ont des lacunes ou des difficultés. Un groupe d'étudiants, soutenu par les professeurs, ont donc décidé de **mettre en place un tutorat** entre étudiants au sein du département GMP de l'IUT de Bordeaux. L'objectif est de s'entraider dans les études, de se réunir et de créer un lien entre les différentes promotions du département (1ère et 2ème année FI, 1ère et 2ème année apprentis, LP...).
Une page Moodle avec des sondages pour orienter notre axe de travail, et des ressources pour les étudiants a été créée. Une prise de contact avec les différentes promotions a également été effectuée.
Ainsi des séances de tutorat ont été organisées, ainsi qu'une séance de rencontre LP et 2èmes années FI pour s'enrichir et se renseigner. Des cours vidéos et des fiches d'aides pour des cours spécifiques mais également de méthodes de travail ont également été réalisées.

3
data/academia.toml Normal file
View file

@ -0,0 +1,3 @@
# academia
version = "4.3.1"

96
data/assets.toml Normal file
View file

@ -0,0 +1,96 @@
# Versioning and Subresource Integrity (SRI) for academia's JavaScript and CSS dependencies
# When updating the version of an asset below, please also update the corresponding SRI.
# How to update the SRI for an entry:
# echo -n "sha512-" && curl --silent "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS_CHTML" | openssl dgst -sha512 -binary | openssl enc -base64 -A
# Or, the SRI for the appropriate asset can be copied from https://cdnjs.com/ .
# JavaScript
[js.jQuery]
version = "3.4.1"
sri = "sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
url = "https://cdnjs.cloudflare.com/ajax/libs/jquery/%s/jquery.min.js"
[js.highlight]
version = "9.15.6"
sri = "sha256-aYTdUrn6Ow1DDgh5JTc3aDGnnju48y/1c8s1dgkYPQ8="
url = "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/%s/highlight.min.js"
[js.mathJax]
version = "2.7.4"
sri = "sha256-GhM+5JHb6QUzOQPXSJLEWP7R73CbkisjzK5Eyij4U9w="
url = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/%s/MathJax.js?config=TeX-AMS_CHTML-full"
[js.isotope]
version = "3.0.6"
sri = "sha256-CBrpuqrMhXwcLLUd5tvQ4euBHCdh7wGlDfNz8vbu/iI="
url = "https://cdnjs.cloudflare.com/ajax/libs/jquery.isotope/%s/isotope.pkgd.min.js"
[js.imagesLoaded]
version = "4.1.4"
sri = "sha256-lqvxZrPLtfffUl2G/e7szqSvPBILGbwmsGE1MKlOi0Q="
url = "https://cdnjs.cloudflare.com/ajax/libs/jquery.imagesloaded/%s/imagesloaded.pkgd.min.js"
[js.autotrack]
version = "2.4.1"
sri = "sha512-HUmooslVKj4m6OBu0OgzjXXr+QuFYy/k7eLI5jdeEy/F4RSgMn6XRWRGkFi5IFaFgy7uFTkegp3Z0XnJf3Jq+g=="
url = "https://cdnjs.cloudflare.com/ajax/libs/autotrack/%s/autotrack.js"
[js.gmaps]
version = "0.4.25"
sri = "sha256-7vjlAeb8OaTrCXZkCNun9djzuB2owUsaO72kXaFDBJs="
url = "https://cdnjs.cloudflare.com/ajax/libs/gmaps.js/%s/gmaps.min.js"
[js.leaflet]
version = "1.2.0"
sri = "sha512-lInM/apFSqyy1o6s89K4iQUKg6ppXEgsVxT35HbzUupEVRh2Eu9Wdl4tHj7dZO0s1uvplcYGmt3498TtHq+log=="
url = "https://cdnjs.cloudflare.com/ajax/libs/leaflet/%s/leaflet.js"
[js.fancybox]
version = "3.2.5"
sri = "sha256-X5PoE3KU5l+JcX+w09p/wHl9AzK333C4hJ2I9S5mD4M="
url = "https://cdnjs.cloudflare.com/ajax/libs/fancybox/%s/jquery.fancybox.min.js"
[js.fuse]
version = "3.2.1"
sri = "sha256-VzgmKYmhsGNNN4Ph1kMW+BjoYJM2jV5i4IlFoeZA9XI="
url = "https://cdnjs.cloudflare.com/ajax/libs/fuse.js/%s/fuse.min.js"
[js.mark]
version = "8.11.1"
sri = "sha256-4HLtjeVgH0eIB3aZ9mLYF6E8oU5chNdjU6p6rrXpl9U="
url = "https://cdnjs.cloudflare.com/ajax/libs/mark.js/%s/jquery.mark.min.js"
[js.instantsearch]
version = "2.10.2"
sri = "sha256-gFCtPk/sonctyfwYOgjrPoWApQ0rqB6ezBBZ7p32yGc="
url = "https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/%s/instantsearch.min.js"
[js.anchor]
version = "4.1.1"
sri = "sha256-pB/deHc9CGfFpJRjC43imB29Rse8tak+5eXqntO94ck="
url = "https://cdnjs.cloudflare.com/ajax/libs/anchor-js/%s/anchor.min.js"
[js.mermaid]
version = "8.0.0"
sri = "sha256-0w92bcB21IY5+rGI84MGj52jNfHNbXVeQLrZ0CGdjNY="
url = "https://cdnjs.cloudflare.com/ajax/libs/mermaid/%s/mermaid.min.js"
# CSS
[css.fontAwesome]
version = "5.6.0"
sri = "sha384-aOkxzJ5uQz7WBObEZcHvV5JvRW3TUc2rNPA7pe3AwnsUohiw1Vj2Rgx2KSOkF5+h"
url = "https://use.fontawesome.com/releases/v%s/css/all.css"
[css.academicons]
version = "1.8.6"
sri = "sha256-uFVgMKfistnJAfoCUQigIl+JfUaP47GrRKjf6CTPVmw="
url = "https://cdnjs.cloudflare.com/ajax/libs/academicons/%s/css/academicons.min.css"
[css.leaflet]
version = "1.2.0"
sri = "sha512-M2wvCLH6DSRazYeZRIm1JnYyh22purTM+FDB5CsyxtQJYeKq83arPe5wgbNmcFXGqiSH2XR8dT/fJISVA1r/zQ=="
url = "https://cdnjs.cloudflare.com/ajax/libs/leaflet/%s/leaflet.css"
[css.fancybox]
version = "3.2.5"
sri = "sha256-ygkqlh3CYSUri3LhQxzdcm0n1EQvH2Y+U5S2idbLtxs="
url = "https://cdnjs.cloudflare.com/ajax/libs/fancybox/%s/jquery.fancybox.min.css"
[css.instantsearch]
version = "2.9.0"
sri = "sha256-ZtmLe16p4jS4/2wPwwH6NzJt460SJzgLmhKrYo5yn7g="
url = "https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/%s/instantsearch.min.css"
[css.instantsearchTheme]
version = "2.10.2"
sri = "sha256-uL8LUd3zkI/lXvc/Hv/oOu8ld6RJcOZiUY/8c+I+3/o="
url = "https://cdnjs.cloudflare.com/ajax/libs/instantsearch.js/%s/instantsearch-theme-algolia.min.css"
[css.highlight]
version = "9.15.6"
sri = "" # No SRI as highlight style is determined at run time.
url = "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/%s/styles/%s.min.css"

15
data/fonts/classic.toml Normal file
View file

@ -0,0 +1,15 @@
# Font style metadata
name = "Classic"
# Optional Google font URL
google_fonts = "Lato:400,700|Open+Sans|Roboto+Mono"
# Font families
heading_font = "Lato"
body_font = "Open Sans"
nav_font = "Lato"
mono_font = "Roboto Mono"
# Font size
font_size = "20"
font_size_small = "16"

15
data/fonts/default.toml Normal file
View file

@ -0,0 +1,15 @@
# Font style metadata
name = "Default"
# Optional Google font URL
google_fonts = "Open+Sans:400,700|Roboto:400,400italic,700|Roboto+Mono"
# Font families
heading_font = "Open Sans"
body_font = "Roboto"
nav_font = "Roboto"
mono_font = "Roboto Mono"
# Font size
font_size = "20"
font_size_small = "16"

15
data/fonts/rose.toml Normal file
View file

@ -0,0 +1,15 @@
# Font style metadata
name = "Rose"
# Optional Google font URL
google_fonts = "Cutive+Mono|Lora:400,700|Roboto:400,700"
# Font families
heading_font = "Lora"
body_font = "Roboto"
nav_font = "Lora"
mono_font = "Cutive Mono"
# Font size
font_size = "20"
font_size_small = "16"

21
data/i18n/languages.yaml Normal file
View file

@ -0,0 +1,21 @@
"ca": "Català"
"da": "Dansk"
"de": "Deutsch"
"el": "Ελληνικά"
"en": "English"
"es": "Español"
"eu": "Euskara"
"fr": "Français"
"hu": "Magyar"
"id": "Bahasa Indonesia"
"it": "Italiano"
"ja": "日本語"
"ko": "한국어"
"nl": "Nederlands"
"pl": "Polski"
"pt": "Português"
"ro": "Română"
"ru": "Русский"
"tr": "Türkçe"
"vi": "Tiếng Việt"
"zh": "中文 (简体)"

58
data/page_sharer.toml Normal file
View file

@ -0,0 +1,58 @@
# Page Sharer
# Documentation: https://sourcethemes.com/academic/docs/customization/#page-sharer
[[buttons]]
id = "twitter"
url = "https://twitter.com/intent/tweet?url={url}&text={title}"
title = "Twitter"
icon_pack = "fab"
icon = "twitter"
enable = true
[[buttons]]
id = "facebook"
url = "https://www.facebook.com/sharer.php?u={url}&t={title}"
title = "Facebook"
icon_pack = "fab"
icon = "facebook-f"
enable = true
[[buttons]]
id = "email"
url = "mailto:?subject={title}&body={url}"
title = "Email"
icon_pack = "fas"
icon = "envelope"
enable = true
[[buttons]]
id = "linkedin"
url = "https://www.linkedin.com/shareArticle?url={url}&title={title}"
title = "LinkedIn"
icon_pack = "fab"
icon = "linkedin-in"
enable = true
[[buttons]]
id = "whatsapp"
url = "https://web.whatsapp.com/send?text={title}%20{url}"
title = "WhatsApp"
icon_pack = "fab"
icon = "whatsapp"
enable = true
[[buttons]]
id = "weibo"
url = "https://service.weibo.com/share/share.php?url={url}&title={title}"
title = "Weibo"
icon_pack = "fab"
icon = "weibo"
enable = true
[[buttons]]
id = "reddit"
url = "https://reddit.com/submit?url={url}&title={title}"
title = "Reddit"
icon_pack = "fab"
icon = "reddit-alien"
enable = false

View file

@ -0,0 +1,12 @@
# Publication types.
# Each item in the list corresponds to an item in the language packs.
types = [ "pub_uncat",
"pub_conf",
"pub_journal",
"pub_preprint",
"pub_report",
"pub_book",
"pub_book_section",
"pub_thesis",
"pub_patent"
]

19
data/themes/1950s.toml Normal file
View file

@ -0,0 +1,19 @@
# Theme metadata
name = "1950s"
# Is theme light or dark?
light = true
# Primary
primary = "#EF525B"
# Menu
menu_primary = "#24C2CB"
menu_text = "#fff"
menu_text_active = "#00828B"
menu_title = "#fff"
# Backgrounds
background = "#EAE7D6"
home_section_odd = "#EAE7D6"
home_section_even = "#EAE7D6"

18
data/themes/apogee.toml Normal file
View file

@ -0,0 +1,18 @@
# Theme metadata
name = "Apogee"
# Is theme light or dark?
light = false
# Primary
primary = "#EAF04E"
# Menu
menu_primary = "#312450"
menu_text = "#F2BE4E"
menu_text_active = "#FFE1A0"
menu_title = "#E0A526"
# Home sections
home_section_odd = "#5e42a6"
home_section_even = "#5e42a6"

19
data/themes/coffee.toml Normal file
View file

@ -0,0 +1,19 @@
# Theme metadata
name = "Coffee"
# Is theme light or dark?
light = true
# Primary
primary = "#795548"
# Menu
menu_primary = "#795548"
menu_text = "rgba(255,255,255,0.6)"
menu_text_active = "rgba(255,255,255,1)"
menu_title = "#fff"
# Backgrounds
background = "hsla(16, 24%, 85%, 1)"
home_section_odd = "hsla(16, 24%, 85%, 1)"
home_section_even = "hsla(16, 24%, 80%, 1)"

18
data/themes/dark.toml Normal file
View file

@ -0,0 +1,18 @@
# Theme metadata
name = "Dark"
# Is theme light or dark?
light = false
# Primary
primary = "hsl(339, 90%, 68%)"
# Menu
menu_primary = "rgb(20, 22, 34)"
menu_text = "rgba(255,255,255,0.6)"
menu_text_active = "rgba(255,255,255,1)"
menu_title = "#fff"
# Home sections
home_section_odd = "hsla(231, 15%, 18%, 1)"
home_section_even = "hsla(231, 15%, 16%, 1)"

17
data/themes/default.toml Normal file
View file

@ -0,0 +1,17 @@
# Theme metadata
name = "Default"
# Is theme light or dark?
light = true
# Primary
primary = "#60aaf3"
# Menu
menu_primary = "#fff"
menu_text = "#8c9eff"
menu_text_active = "#ffb92c"
menu_title = "#2b2b2b"
# Home sections
home_section_odd = "rgb(255, 255, 255)"
home_section_even = "rgb(247, 247, 247)"

18
data/themes/forest.toml Normal file
View file

@ -0,0 +1,18 @@
# Theme metadata
name = "Forest"
# Is theme light or dark?
light = true
# Primary
primary = "#4caf50"
# Menu
menu_primary = "#4caf50"
menu_text = "#fff"
menu_text_active = "#1b5e20"
menu_title = "#fff"
# Home sections
home_section_odd = "rgb(255, 255, 255)"
home_section_even = "rgb(247, 247, 247)"

18
data/themes/ocean.toml Normal file
View file

@ -0,0 +1,18 @@
# Theme metadata
name = "Ocean"
# Is theme light or dark?
light = true
# Primary
primary = "#3f51b5"
# Menu
menu_primary = "#3f51b5" # 500
menu_text = "#fff"
menu_text_active = "#8c9eff" # A100
menu_title = "#fff"
# Home sections
home_section_odd = "rgb(255, 255, 255)"
home_section_even = "rgb(247, 247, 247)"

18
data/themes/rose.toml Normal file
View file

@ -0,0 +1,18 @@
# Theme metadata
name = "Rose"
# Is theme light or dark?
light = true
# Primary
primary = "rgb(251, 191, 183)"
# Menu
menu_primary = "rgb(247, 247, 247)"
menu_text = "#000"
menu_text_active = "rgb(25, 25, 25)"
menu_title = "#000"
# Home sections
home_section_odd = "#FFF"
home_section_even = "rgb(234, 242, 250)"

View file

@ -0,0 +1,18 @@
# Theme metadata
name = "Strawberry"
# Is theme light or dark?
light = true
# Primary
primary = "#ff3860"
# Menu
menu_primary = "#ff3860"
menu_text = "#fff"
menu_text_active = "rgb(208, 255, 56)"
menu_title = "#fff"
# Home sections
home_section_odd = "#fff"
home_section_even = "#fff"

View file

@ -26,16 +26,18 @@
{{ end }}
{{ $avatar := (.Resources.ByType "image").GetMatch "*avatar*" }}
<div class="media author-card" itemscope itemtype="http://schema.org/Person">
{{ with $avatar }}
{{ if $avatar }}
{{ $avatar_image := $avatar.Fill "250x250 Center" }}
<img class="portrait mr-3" src="{{ $avatar_image.RelPermalink }}" itemprop="image" alt="Avatar">
{{else}}
<img src="{{ printf "/img/leebit.png" | relURL }}" alt="Profil" height="80" width="80">
{{ end }}
<div class="media-body" style="display:flex; flex-direction:column; justify-content:center;">
<h5 class="card-title" itemprop="name"><a href="{{$profile_url}}">{{.Params.name}}</a></h5>
{{ with .Params.role }}<h6 class="card-subtitle">{{. | markdownify | emojify}}</h6>{{end}}
{{ with .Params.bio }}<p class="card-text" itemprop="description">{{. | markdownify | emojify}}</p>{{end}}
<ul class="network-icon" aria-hidden="true">
<div class="media-body">
<h5 class="card-title" style="display:flex; justify-content:center;" itemprop="name"><a href="{{$profile_url}}">{{.Params.name}}</a></h5>
{{ with .Params.role }}<h6 class="card-subtitle" style="display:flex; justify-content:center;">{{. | markdownify | emojify}}</h6>{{end}}
{{ with .Params.bio }}<p class="card-text" style="display:flex; justify-content:center;" itemprop="description">{{. | markdownify | emojify}}</p>{{end}}
<ul class="network-icon" style="display:flex; justify-content:center;" aria-hidden="true">
{{ range .Params.social }}
{{ $pack := or .icon_pack "fas" }}
{{ $pack_prefix := $pack }}

View file

@ -12,7 +12,7 @@
Site réalisé à partir du thème :
<a href="https://themes.gohugo.io/themes/academia-hugo/" target="_blank" rel="noopener">Academia Hugo</a>.
</p>
<p style="text-align:center;">Code source modifié par <i style="color:#6abdd8;">Léa JEAN</i> et <i style="color:#6abdd8;">Habib BELARIBI</i>.</p>
<p style="text-align:center;">Code source modifié par <i style="color:#ffb92c;">Léa JEAN</i> et <i style="color:#ffb92c;">Habib BELARIBI</i>.</p>
</div>
<div class="col-md-6">
<ul class="list-inline network-icon text-right mb-0">

View file

@ -25,7 +25,8 @@
{{end}}
<div class="mb-3">
<form name="contact" method="POST" {{ $post_action | safeHTMLAttr }}>
<img src="img/lea.png" alt="Dessin de Léa JEAN" />
<!--form name="contact" method="POST" {{ $post_action | safeHTMLAttr }}>
<div class="form-group form-inline">
<label class="sr-only" for="inputName">{{ i18n "contact_name" }}</label>
<input type="text" name="name" class="form-control rounded-0 w-100" id="inputName"
@ -43,7 +44,7 @@
</div>
<button type="submit"
class="btn btn-outline-primary px-3 py-2">{{ i18n "contact_send" | default "Envoyer" }}</button>
</form>
</form-->
</div>
{{end}}

View file

@ -8,7 +8,7 @@
{{ end }}
{{ with $page.Content }}
<div style="text-align:justify;">{{ . }}</div>
<div style="text-align:justify; color:white;">{{ . }}</div>
{{ end }}
{{/* Call-to-action link */}}
@ -44,7 +44,7 @@
</p>
{{ end }}
<p class="mb-0" style="color:#6abdd8; font-size:85%">
<p class="mb-0" style="color:#ffb92c; font-size:85%">
<i class="fas fa-exclamation-circle"></i><i> Tous les dessins (hors section "Réalisations") ont été réalisés par <a href="https://www.instagram.com/sakki_ryuuketsu/" target="_blank" rel="noopener">Léa JEAN</a>.</i>
</p>

View file

@ -42,7 +42,7 @@
<meta name="theme-color" content="#fc6f5c">
<meta name="theme-color" content="#60aaf3">
@ -83,7 +83,7 @@
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.76e69f7370e1e1222344c0109d841c44.css">
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.9972e892666a05bd315bf8453ba138a8.css">
@ -170,7 +170,7 @@
<div class="container">
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/icon.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/lyc.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/">Léa Jean</a>
@ -339,10 +339,6 @@
<li class="nav-item">
<a class="nav-link js-dark-toggle" href="#"><i class="fas fa-moon" aria-hidden="true"></i></a>
</li>
</ul>
</div>
@ -367,6 +363,10 @@
<h2>Latest</h2>
<ul>
<li><a href="/portfolios/lea-jean/project/main/">Main articulée</a></li>
<li><a href="/portfolios/lea-jean/project/kapla/">Construction d&#39;une structure de Kapla</a></li>
<li><a href="/portfolios/lea-jean/project/acc-fablab/">Accueil du public (FabLab)</a></li>
<li><a href="/portfolios/lea-jean/project/habibstove/">Habib&#39;Stove</a></li>
@ -379,13 +379,9 @@
<li><a href="/portfolios/lea-jean/project/support-boisson/">Support de boisson adaptable à un fauteuil roulant</a></li>
<li><a href="/portfolios/lea-jean/project/robocup/">Ambassadrice RoboCup 2021</a></li>
<li><a href="/portfolios/lea-jean/project/main/">Main articulée</a></li>
<li><a href="/portfolios/lea-jean/project/distributeur/">Projet défi - Distributeur de bonbons</a></li>
<li><a href="/portfolios/lea-jean/project/tpe/">TPE - Siège éjectable</a></li>
<li><a href="/portfolios/lea-jean/project/robocup/">Ambassadrice RoboCup 2021</a></li>
</ul>
@ -475,7 +471,7 @@
Site réalisé à partir du thème :
<a href="https://themes.gohugo.io/themes/academia-hugo/" target="_blank" rel="noopener">Academia Hugo</a>.
</p>
<p style="text-align:center;">Code source modifié par <i style="color:#6abdd8;">Léa JEAN</i> et <i style="color:#6abdd8;">Habib BELARIBI</i>.</p>
<p style="text-align:center;">Code source modifié par <i style="color:#ffb92c;">Léa JEAN</i> et <i style="color:#ffb92c;">Habib BELARIBI</i>.</p>
</div>
<div class="col-md-6">
<ul class="list-inline network-icon text-right mb-0">

View file

@ -42,7 +42,7 @@
<meta name="theme-color" content="#fc6f5c">
<meta name="theme-color" content="#60aaf3">
@ -83,7 +83,7 @@
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.76e69f7370e1e1222344c0109d841c44.css">
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.9972e892666a05bd315bf8453ba138a8.css">
@ -173,7 +173,7 @@
<div class="container">
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/icon.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/lyc.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/">Léa Jean</a>
@ -342,10 +342,6 @@
<li class="nav-item">
<a class="nav-link js-dark-toggle" href="#"><i class="fas fa-moon" aria-hidden="true"></i></a>
</li>
</ul>
</div>
@ -544,7 +540,7 @@
Site réalisé à partir du thème :
<a href="https://themes.gohugo.io/themes/academia-hugo/" target="_blank" rel="noopener">Academia Hugo</a>.
</p>
<p style="text-align:center;">Code source modifié par <i style="color:#6abdd8;">Léa JEAN</i> et <i style="color:#6abdd8;">Habib BELARIBI</i>.</p>
<p style="text-align:center;">Code source modifié par <i style="color:#ffb92c;">Léa JEAN</i> et <i style="color:#ffb92c;">Habib BELARIBI</i>.</p>
</div>
<div class="col-md-6">
<ul class="list-inline network-icon text-right mb-0">

View file

@ -42,7 +42,7 @@
<meta name="theme-color" content="#fc6f5c">
<meta name="theme-color" content="#60aaf3">
@ -83,7 +83,7 @@
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.76e69f7370e1e1222344c0109d841c44.css">
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.9972e892666a05bd315bf8453ba138a8.css">
@ -173,7 +173,7 @@
<div class="container">
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/icon.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/lyc.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/">Léa Jean</a>
@ -342,10 +342,6 @@
<li class="nav-item">
<a class="nav-link js-dark-toggle" href="#"><i class="fas fa-moon" aria-hidden="true"></i></a>
</li>
</ul>
</div>
@ -482,7 +478,7 @@
Site réalisé à partir du thème :
<a href="https://themes.gohugo.io/themes/academia-hugo/" target="_blank" rel="noopener">Academia Hugo</a>.
</p>
<p style="text-align:center;">Code source modifié par <i style="color:#6abdd8;">Léa JEAN</i> et <i style="color:#6abdd8;">Habib BELARIBI</i>.</p>
<p style="text-align:center;">Code source modifié par <i style="color:#ffb92c;">Léa JEAN</i> et <i style="color:#ffb92c;">Habib BELARIBI</i>.</p>
</div>
<div class="col-md-6">
<ul class="list-inline network-icon text-right mb-0">

View file

@ -42,7 +42,7 @@
<meta name="theme-color" content="#fc6f5c">
<meta name="theme-color" content="#60aaf3">
@ -83,7 +83,7 @@
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.76e69f7370e1e1222344c0109d841c44.css">
<link rel="stylesheet" href="/portfolios/lea-jean/css/academia.min.9972e892666a05bd315bf8453ba138a8.css">
@ -173,7 +173,7 @@
<div class="container">
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/icon.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/"><img src="/portfolios/lea-jean/img/lyc.png" alt="Léa Jean"></a>
<a class="navbar-brand" href="/portfolios/lea-jean/">Léa Jean</a>
@ -342,10 +342,6 @@
<li class="nav-item">
<a class="nav-link js-dark-toggle" href="#"><i class="fas fa-moon" aria-hidden="true"></i></a>
</li>
</ul>
</div>
@ -477,7 +473,7 @@
Site réalisé à partir du thème :
<a href="https://themes.gohugo.io/themes/academia-hugo/" target="_blank" rel="noopener">Academia Hugo</a>.
</p>
<p style="text-align:center;">Code source modifié par <i style="color:#6abdd8;">Léa JEAN</i> et <i style="color:#6abdd8;">Habib BELARIBI</i>.</p>
<p style="text-align:center;">Code source modifié par <i style="color:#ffb92c;">Léa JEAN</i> et <i style="color:#ffb92c;">Habib BELARIBI</i>.</p>
</div>
<div class="col-md-6">
<ul class="list-inline network-icon text-right mb-0">

File diff suppressed because one or more lines are too long

View file

Before

Width:  |  Height:  |  Size: 924 KiB

After

Width:  |  Height:  |  Size: 924 KiB

BIN
public/img/FAST.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

BIN
public/img/L.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 KiB

BIN
public/img/P1010256.JPG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 MiB

BIN
public/img/Rails.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

BIN
public/img/Rails.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 518 KiB

BIN
public/img/assemblage1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

BIN
public/img/bac.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

BIN
public/img/brutribo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 KiB

BIN
public/img/decoupe-hab1.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

BIN
public/img/decoupe-hab2.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 MiB

BIN
public/img/dess-ens-l.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

BIN
public/img/dess-ens.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
public/img/diag-pieuvre.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 MiB

After

Width:  |  Height:  |  Size: 64 KiB

BIN
public/img/ens-kapla.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

BIN
public/img/guides3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

After

Width:  |  Height:  |  Size: 204 KiB

BIN
public/img/kapla2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

BIN
public/img/lea.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
public/img/leebit.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 565 KiB

BIN
public/img/logi-kapla.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
public/img/lyc.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

BIN
public/img/piece1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
public/img/piece2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

BIN
public/img/pied.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
public/img/plaque2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

BIN
public/img/poly-guides.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 MiB

BIN
public/img/poly3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

BIN
public/img/proto1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 KiB

BIN
public/img/proto2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 KiB

BIN
public/img/proto3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 KiB

BIN
public/img/proto4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

BIN
public/img/res-cam.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 MiB

After

Width:  |  Height:  |  Size: 163 KiB

BIN
public/img/ribo2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 KiB

BIN
public/img/ribo3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

BIN
public/img/ribo4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 356 KiB

BIN
public/img/rocket.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

BIN
public/img/scanner.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

BIN
public/img/sol1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

BIN
public/img/sol2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

BIN
public/img/sol3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 MiB

BIN
public/img/structure-l.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Some files were not shown because too many files have changed in this diff Show more