Wiki » Historique » Révision 9
« Précédent |
Révision 9/46
(diff)
| Suivant »
Baptiste Pelouas, 03/01/2015 12:08
Wiki¶
Présentation¶
Le principe de base¶
Un peu de géométrie (niveau collège/lycée): la triangulation...
[cf. http://fr.wikipedia.org/wiki/Résolution_d'un_triangle]
Deux angles et le côté commun
!Resolve_triangle_with_c_alpha_beta.png!
On considère un triangle dont un côté c et les deux angles α et β qui le bordent sont connus. Le dernier angle s'obtient par complément à π et les deux autres côtés par la loi des sinus :
a = \frac {c\sin\alpha}{\sin(\alpha+\beta)}
b = \frac {c\sin\beta}{ \sin(\alpha+\beta)}
\gamma = \pi-\alpha-\beta\,
S = \frac12 c2 \, \frac{\sin\alpha\sin\beta}{\sin(\alpha+\beta)}
Vue de dessus, le point focal de la webcam {A}, l'axe de rotation du faisceau laser (plan) {B} et un point sur l'objet {C}, forme un triangle.
Les données connues:
- distance: dist(AB)
- angles: ang(CAB) et ang(ABC) (! tout les 2 inférieurs a Pi/2 !)
Les inconnues:
- distances: dist(AC) et dist(BC)
- angle: ang(ACB)
Le calcul:
- ang(ACB) = Pi - ang(CAB) - ang(ABC)
- soit H la projection de C sur [AB], donc
Le résultat escompté¶
- un nuage de points 3D coloré (format .ply)
- ? un maillage 3D (coloré)? (format .stl)
Les composants¶
- un plateau circulaire ou l'on pose l'objet a scanner, dont on pilote l'angle de rotation.
- un laser (rouge classe 1 voir 2) plan vertical, dont on pilote l'angle de rotation.
- une webcam pour visualiser le trait(rouge) déformé émis par le laser sur l'objet.
- un arduino Uno (actuellement: un YABBAS), et divers composants électroniques pour piloter les objets ci-dessus, et faire la liaison avec le logiciel de traitement.
- une alimentation de pc ( 5 Volt principalement utilisé)
- un logiciel de traitement pour effectuer les calculs ( et calibrations ), et fournir le résultat. Écrit en JAVA (au vu de mes compétences en programmation et de l'espoir d'une portabilité accru).
Mis à jour par Baptiste Pelouas il y a presque 10 ans · 9 révisions