ajout des fichiers
This commit is contained in:
commit
2a4b9952fe
7 changed files with 442 additions and 0 deletions
270
.gitignore
vendored
Normal file
270
.gitignore
vendored
Normal file
|
@ -0,0 +1,270 @@
|
||||||
|
|
||||||
|
# Created by https://www.gitignore.io/api/latex
|
||||||
|
# Edit at https://www.gitignore.io/?templates=latex
|
||||||
|
|
||||||
|
### LaTeX ###
|
||||||
|
## Core latex/pdflatex auxiliary files:
|
||||||
|
*.aux
|
||||||
|
*.lof
|
||||||
|
*.log
|
||||||
|
*.lot
|
||||||
|
*.fls
|
||||||
|
*.out
|
||||||
|
*.toc
|
||||||
|
*.fmt
|
||||||
|
*.fot
|
||||||
|
*.cb
|
||||||
|
*.cb2
|
||||||
|
.*.lb
|
||||||
|
|
||||||
|
## Intermediate documents:
|
||||||
|
*.dvi
|
||||||
|
*.xdv
|
||||||
|
*-converted-to.*
|
||||||
|
# these rules might exclude image files for figures etc.
|
||||||
|
# *.ps
|
||||||
|
# *.eps
|
||||||
|
# *.pdf
|
||||||
|
|
||||||
|
## Generated if empty string is given at "Please type another file name for output:"
|
||||||
|
.pdf
|
||||||
|
|
||||||
|
## Bibliography auxiliary files (bibtex/biblatex/biber):
|
||||||
|
*.bbl
|
||||||
|
*.bcf
|
||||||
|
*.blg
|
||||||
|
*-blx.aux
|
||||||
|
*-blx.bib
|
||||||
|
*.run.xml
|
||||||
|
|
||||||
|
## Build tool auxiliary files:
|
||||||
|
*.fdb_latexmk
|
||||||
|
*.synctex
|
||||||
|
*.synctex(busy)
|
||||||
|
*.synctex.gz
|
||||||
|
*.synctex.gz(busy)
|
||||||
|
*.pdfsync
|
||||||
|
|
||||||
|
## Build tool directories for auxiliary files
|
||||||
|
# latexrun
|
||||||
|
latex.out/
|
||||||
|
|
||||||
|
## Auxiliary and intermediate files from other packages:
|
||||||
|
# algorithms
|
||||||
|
*.alg
|
||||||
|
*.loa
|
||||||
|
|
||||||
|
# achemso
|
||||||
|
acs-*.bib
|
||||||
|
|
||||||
|
# amsthm
|
||||||
|
*.thm
|
||||||
|
|
||||||
|
# beamer
|
||||||
|
*.nav
|
||||||
|
*.pre
|
||||||
|
*.snm
|
||||||
|
*.vrb
|
||||||
|
|
||||||
|
# changes
|
||||||
|
*.soc
|
||||||
|
|
||||||
|
# comment
|
||||||
|
*.cut
|
||||||
|
|
||||||
|
# cprotect
|
||||||
|
*.cpt
|
||||||
|
|
||||||
|
# elsarticle (documentclass of Elsevier journals)
|
||||||
|
*.spl
|
||||||
|
|
||||||
|
# endnotes
|
||||||
|
*.ent
|
||||||
|
|
||||||
|
# fixme
|
||||||
|
*.lox
|
||||||
|
|
||||||
|
# feynmf/feynmp
|
||||||
|
*.mf
|
||||||
|
*.mp
|
||||||
|
*.t[1-9]
|
||||||
|
*.t[1-9][0-9]
|
||||||
|
*.tfm
|
||||||
|
|
||||||
|
#(r)(e)ledmac/(r)(e)ledpar
|
||||||
|
*.end
|
||||||
|
*.?end
|
||||||
|
*.[1-9]
|
||||||
|
*.[1-9][0-9]
|
||||||
|
*.[1-9][0-9][0-9]
|
||||||
|
*.[1-9]R
|
||||||
|
*.[1-9][0-9]R
|
||||||
|
*.[1-9][0-9][0-9]R
|
||||||
|
*.eledsec[1-9]
|
||||||
|
*.eledsec[1-9]R
|
||||||
|
*.eledsec[1-9][0-9]
|
||||||
|
*.eledsec[1-9][0-9]R
|
||||||
|
*.eledsec[1-9][0-9][0-9]
|
||||||
|
*.eledsec[1-9][0-9][0-9]R
|
||||||
|
|
||||||
|
# glossaries
|
||||||
|
*.acn
|
||||||
|
*.acr
|
||||||
|
*.glg
|
||||||
|
*.glo
|
||||||
|
*.gls
|
||||||
|
*.glsdefs
|
||||||
|
|
||||||
|
# gnuplottex
|
||||||
|
*-gnuplottex-*
|
||||||
|
|
||||||
|
# gregoriotex
|
||||||
|
*.gaux
|
||||||
|
*.gtex
|
||||||
|
|
||||||
|
# htlatex
|
||||||
|
*.4ct
|
||||||
|
*.4tc
|
||||||
|
*.idv
|
||||||
|
*.lg
|
||||||
|
*.trc
|
||||||
|
*.xref
|
||||||
|
|
||||||
|
# hyperref
|
||||||
|
*.brf
|
||||||
|
|
||||||
|
# knitr
|
||||||
|
*-concordance.tex
|
||||||
|
# TODO Comment the next line if you want to keep your tikz graphics files
|
||||||
|
*.tikz
|
||||||
|
*-tikzDictionary
|
||||||
|
|
||||||
|
# listings
|
||||||
|
*.lol
|
||||||
|
|
||||||
|
# makeidx
|
||||||
|
*.idx
|
||||||
|
*.ilg
|
||||||
|
*.ind
|
||||||
|
*.ist
|
||||||
|
|
||||||
|
# minitoc
|
||||||
|
*.maf
|
||||||
|
*.mlf
|
||||||
|
*.mlt
|
||||||
|
*.mtc[0-9]*
|
||||||
|
*.slf[0-9]*
|
||||||
|
*.slt[0-9]*
|
||||||
|
*.stc[0-9]*
|
||||||
|
|
||||||
|
# minted
|
||||||
|
_minted*
|
||||||
|
*.pyg
|
||||||
|
|
||||||
|
# morewrites
|
||||||
|
*.mw
|
||||||
|
|
||||||
|
# nomencl
|
||||||
|
*.nlg
|
||||||
|
*.nlo
|
||||||
|
*.nls
|
||||||
|
|
||||||
|
# pax
|
||||||
|
*.pax
|
||||||
|
|
||||||
|
# pdfpcnotes
|
||||||
|
*.pdfpc
|
||||||
|
|
||||||
|
# sagetex
|
||||||
|
*.sagetex.sage
|
||||||
|
*.sagetex.py
|
||||||
|
*.sagetex.scmd
|
||||||
|
|
||||||
|
# scrwfile
|
||||||
|
*.wrt
|
||||||
|
|
||||||
|
# sympy
|
||||||
|
*.sout
|
||||||
|
*.sympy
|
||||||
|
sympy-plots-for-*.tex/
|
||||||
|
|
||||||
|
# pdfcomment
|
||||||
|
*.upa
|
||||||
|
*.upb
|
||||||
|
|
||||||
|
# pythontex
|
||||||
|
*.pytxcode
|
||||||
|
pythontex-files-*/
|
||||||
|
|
||||||
|
# tcolorbox
|
||||||
|
*.listing
|
||||||
|
|
||||||
|
# thmtools
|
||||||
|
*.loe
|
||||||
|
|
||||||
|
# TikZ & PGF
|
||||||
|
*.dpth
|
||||||
|
*.md5
|
||||||
|
*.auxlock
|
||||||
|
|
||||||
|
# todonotes
|
||||||
|
*.tdo
|
||||||
|
|
||||||
|
# vhistory
|
||||||
|
*.hst
|
||||||
|
*.ver
|
||||||
|
|
||||||
|
# easy-todo
|
||||||
|
*.lod
|
||||||
|
|
||||||
|
# xcolor
|
||||||
|
*.xcp
|
||||||
|
|
||||||
|
# xmpincl
|
||||||
|
*.xmpi
|
||||||
|
|
||||||
|
# xindy
|
||||||
|
*.xdy
|
||||||
|
|
||||||
|
# xypic precompiled matrices
|
||||||
|
*.xyc
|
||||||
|
|
||||||
|
# endfloat
|
||||||
|
*.ttt
|
||||||
|
*.fff
|
||||||
|
|
||||||
|
# Latexian
|
||||||
|
TSWLatexianTemp*
|
||||||
|
|
||||||
|
## Editors:
|
||||||
|
# WinEdt
|
||||||
|
*.bak
|
||||||
|
*.sav
|
||||||
|
|
||||||
|
# Texpad
|
||||||
|
.texpadtmp
|
||||||
|
|
||||||
|
# LyX
|
||||||
|
*.lyx~
|
||||||
|
|
||||||
|
# Kile
|
||||||
|
*.backup
|
||||||
|
|
||||||
|
# KBibTeX
|
||||||
|
*~[0-9]*
|
||||||
|
|
||||||
|
# auto folder when using emacs and auctex
|
||||||
|
./auto/*
|
||||||
|
*.el
|
||||||
|
|
||||||
|
# expex forward references with \gathertags
|
||||||
|
*-tags.tex
|
||||||
|
|
||||||
|
# standalone packages
|
||||||
|
*.sta
|
||||||
|
|
||||||
|
### LaTeX Patch ###
|
||||||
|
# glossaries
|
||||||
|
*.glstex
|
||||||
|
|
||||||
|
# End of https://www.gitignore.io/api/latex
|
BIN
compte_rendu/compte_rendu.pdf
Normal file
BIN
compte_rendu/compte_rendu.pdf
Normal file
Binary file not shown.
59
compte_rendu/compte_rendu.tex
Normal file
59
compte_rendu/compte_rendu.tex
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
\documentclass[]{report}
|
||||||
|
|
||||||
|
\usepackage[french]{babel}
|
||||||
|
|
||||||
|
\usepackage{geometry} % Required for adjusting page dimensions
|
||||||
|
|
||||||
|
\geometry{
|
||||||
|
top=2cm, % Top margin
|
||||||
|
bottom=2cm, % Bottom margin
|
||||||
|
left=2cm, % Left margin
|
||||||
|
right=2cm, % Right margin
|
||||||
|
includehead, % Include space for a header
|
||||||
|
includefoot, % Include space for a footer
|
||||||
|
%showframe, % Uncomment to show how the type block is set on the page
|
||||||
|
}
|
||||||
|
|
||||||
|
% Title Page
|
||||||
|
\title{Projet double :\\ Asservissement "rigide" de drone}
|
||||||
|
\author{Joanne \bsc{Steiner}, Hugo \bsc{Levy-{}-Falk}}
|
||||||
|
\date{2019}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\maketitle
|
||||||
|
|
||||||
|
\begin{abstract}
|
||||||
|
\end{abstract}
|
||||||
|
|
||||||
|
\tableofcontents
|
||||||
|
|
||||||
|
\chapter{Introduction}
|
||||||
|
|
||||||
|
Le campus de Metz de CentraleSupélec dispose
|
||||||
|
|
||||||
|
Les quadricoptères Bebop 2 (Parrot) dont nous disposons sur le campus sont des drones
|
||||||
|
« nerveux », au sens où ils sont capables d’effectuer des mouvements rapides (changements de
|
||||||
|
direction brusques, accélérations et freinages brutaux).
|
||||||
|
Piloter ces drones en intérieur est délicat, il faut y aller doucement pour éviter de percuter un mur,
|
||||||
|
d’autant plus que les turbulences générées par le drone lui-même le perturbent quand on est en
|
||||||
|
intérieur. Or y aller doucement revient à sous-exploiter les capacités de ces drones.
|
||||||
|
La solution sur laquelle nous travaillons se base sur un asservissement visuel du drone. Le drone
|
||||||
|
détecte une cible dans l’image (cf démo que vous avez peut-être vue), et peut déduire de la forme de
|
||||||
|
cette cible dans l’image sa position par rapport à la cible. L’idée est de contrôler le drone pour qu’il
|
||||||
|
se place en face de la cible, à une distance fixée. Ainsi, si l’on bouge la cible (on l’avance, on la
|
||||||
|
tourne), le drone se déplace pour toujours lui faire face, à la bonne distance.
|
||||||
|
Aujourd’hui, cette démo est opérationnelle, mais le contrôleur est « prudent », le drone bouge assez
|
||||||
|
lentement pour faire face à la cible quand celle-ci est déplacée par un opérateur. L’objet du projet
|
||||||
|
est d’appliquer des techniques d’automatique pour rendre cet asservissement le plus « rigide »
|
||||||
|
possible, comme si une barre invisible rigide liait le drone à la cible.
|
||||||
|
La prise en main du drone, la perception de la cible sur les images, se feront à partir d’un projet
|
||||||
|
existant, sous ROS/Linux (le projet est l’occasion d’apprendre à utiliser cet environnement
|
||||||
|
robotique standard). L’étude réalisée consistera à travailler sur la qualité de l’asservissement en
|
||||||
|
appliquant une approche automatique du problème.
|
||||||
|
Les développements se feront sous ROS/Linux, en python (ou C++ si vous le souhaitez). La finalité
|
||||||
|
du projet dépasse le cadre de cette démo, puisque le contrôle « rigide » du drone selon un critère
|
||||||
|
visuel est également souhaitable pour la navigation dans les couloirs, dans les escaliers, sujets qui
|
||||||
|
sont à l’étude dans d’autres projets qui se focalisent sur le traitement d’image plus que sur une
|
||||||
|
approche rigoureuse de l’asservissement.
|
||||||
|
|
||||||
|
\end{document}
|
BIN
reunions/reu_1/cr_reu_1.pdf
Normal file
BIN
reunions/reu_1/cr_reu_1.pdf
Normal file
Binary file not shown.
51
reunions/reu_1/template_Article.tex
Normal file
51
reunions/reu_1/template_Article.tex
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
\documentclass[a4paper]{article}
|
||||||
|
\usepackage{geometry} % Required for adjusting page dimensions
|
||||||
|
|
||||||
|
\geometry{
|
||||||
|
top=1cm, % Top margin
|
||||||
|
bottom=1.5cm, % Bottom margin
|
||||||
|
left=2cm, % Left margin
|
||||||
|
right=2cm, % Right margin
|
||||||
|
includehead, % Include space for a header
|
||||||
|
includefoot, % Include space for a footer
|
||||||
|
%showframe, % Uncomment to show how the type block is set on the page
|
||||||
|
}
|
||||||
|
|
||||||
|
%opening
|
||||||
|
\title{Compte rendu de la réunion du Mercredi 30 Janvier 2019}
|
||||||
|
\author{Présents : Joanne Steiner, Jean-Louis Gutzwiller, Hugo Levy-Falk}
|
||||||
|
\date{}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\maketitle
|
||||||
|
M. Gutzwiller nous a reçu dans son bureau pour la première réunion du projet double sur l'asservissement rigide de drones. Nous avons évoqué les problématiques liées à l'asservissement ainsi que les modalités du déroulement du projet.
|
||||||
|
|
||||||
|
\section{Asservissement}
|
||||||
|
|
||||||
|
Nous utiliserons probablement un correcteur PID pour l'asservissement. Une des principales difficulté consiste à caractériser le comportement du drone, en particulier en ce qui concerne le diagramme de Bode en phase. Il nous faut caractériser la réaction du drone, mais également de la mesure. Nous avons établi une liste de questions auxquelles répondre dans la suite.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item Combien de boucles d'asservissement la régulation du drone comporte-t-elle ?
|
||||||
|
\item Ces boucles sont-elles indépendantes ?
|
||||||
|
\item Si non, comment les rendre indépendantes ?
|
||||||
|
\item Pour les rendre indépendantes, nous avons besoin de savoir quelles mesures sont à notre disposition.
|
||||||
|
\item Les communications réseau induisent des retards aléatoires. Comment gérer l'arrivée de données obsolètes ?
|
||||||
|
\item L'absence de données ?
|
||||||
|
\item Plus généralement comment les prendre en compte dans la régulation afin de ne pas risquer d'avoir un système instable ? \footnote{M. Gutzwiller nous a fait remarquer à ce propos l'existence de la correction P I Retard, qui semble à première vue adaptée à ce problème.} On pourra se rendre compte de l'existence d'un retard pur dans la boucle si la pente à l'origine du diagramme de phase n'est pas nulle.
|
||||||
|
\item La fréquence d'échantillonnage des mesures est-elle constante ?
|
||||||
|
\item Si non, comment le prendre en compte dans l'asservissement ou la rendre constante ?
|
||||||
|
\item L'influence de la discrétisation est-elle importante sur la stabilité ici ?
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
Dans un premier temps on fera probablement l'hypothèse de la linéarité du système autour d'un point de fonctionnement. Si le temps le permet il pourra être intéressant de se pencher sur l'aspect non linéaire du problème.
|
||||||
|
|
||||||
|
\section{Déroulement du projet}
|
||||||
|
|
||||||
|
M. Gutzwiller souhaite des réunions régulières, idéalement toutes les 2 séances de projet, ces réunions devront être planifiées par nous. Un compte rendu envoyé par mail devra suivre chaque réunion.
|
||||||
|
|
||||||
|
Le rapport doit être avancé en temps réel et envoyé par mail avant chaque réunion. Il faut également donner un ordre du jour avec les questions à aborder pour chaque réunion.
|
||||||
|
|
||||||
|
La dernière séance de projet est le 29/05/2019, la semaine suivante semble adaptée pour planifier la soutenance. Elle prendra la forme d'une présentation orale supportée par un diaporama.
|
||||||
|
|
||||||
|
\end{document}
|
51
reunions/reu_2/cr_reu_7_fevrier.tex
Normal file
51
reunions/reu_2/cr_reu_7_fevrier.tex
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
\documentclass[a4paper]{article}
|
||||||
|
\usepackage{geometry} % Required for adjusting page dimensions
|
||||||
|
|
||||||
|
\geometry{
|
||||||
|
top=1cm, % Top margin
|
||||||
|
bottom=1.5cm, % Bottom margin
|
||||||
|
left=2cm, % Left margin
|
||||||
|
right=2cm, % Right margin
|
||||||
|
includehead, % Include space for a header
|
||||||
|
includefoot, % Include space for a footer
|
||||||
|
%showframe, % Uncomment to show how the type block is set on the page
|
||||||
|
}
|
||||||
|
|
||||||
|
%opening
|
||||||
|
\title{Compte rendu de la réunion du Jeudi 7 Janvier 2019}
|
||||||
|
\author{Présents : Hervé Frezza-Buet, Joanne Steiner, Hugo Levy-Falk}
|
||||||
|
\date{}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\maketitle
|
||||||
|
M. Frezza-Buet nous a reçu dans son bureau pour afin
|
||||||
|
|
||||||
|
\section{Asservissement}
|
||||||
|
|
||||||
|
Nous utiliserons probablement un correcteur PID pour l'asservissement. Une des principales difficulté consiste à caractériser le comportement du drone, en particulier en ce qui concerne le diagramme de Bode en phase. Il nous faut caractériser la réaction du drone, mais également de la mesure. Nous avons établi une liste de questions auxquelles répondre dans la suite.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item Combien de boucles d'asservissement la régulation du drone comporte-t-elle ?
|
||||||
|
\item Ces boucles sont-elles indépendantes ?
|
||||||
|
\item Si non, comment les rendre indépendantes ?
|
||||||
|
\item Pour les rendre indépendantes, nous avons besoin de savoir quelles mesures sont à notre disposition.
|
||||||
|
\item Les communications réseau induisent des retards aléatoires. Comment gérer l'arrivée de données obsolètes ?
|
||||||
|
\item L'absence de données ?
|
||||||
|
\item Plus généralement comment les prendre en compte dans la régulation afin de ne pas risquer d'avoir un système instable ? \footnote{M. Gutzwiller nous a fait remarquer à ce propos l'existence de la correction P I Retard, qui semble à première vue adaptée à ce problème.} On pourra se rendre compte de l'existence d'un retard pur dans la boucle si la pente à l'origine du diagramme de phase n'est pas nulle.
|
||||||
|
\item La fréquence d'échantillonnage des mesures est-elle constante ?
|
||||||
|
\item Si non, comment le prendre en compte dans l'asservissement ou la rendre constante ?
|
||||||
|
\item L'influence de la discrétisation est-elle importante sur la stabilité ici ?
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
Dans un premier temps on fera probablement l'hypothèse de la linéarité du système autour d'un point de fonctionnement. Si le temps le permet il pourra être intéressant de se pencher sur l'aspect non linéaire du problème.
|
||||||
|
|
||||||
|
\section{Déroulement du projet}
|
||||||
|
|
||||||
|
M. Gutzwiller souhaite des réunions régulières, idéalement toutes les 2 séances de projet, ces réunions devront être planifiées par nous. Un compte rendu envoyé par mail devra suivre chaque réunion.
|
||||||
|
|
||||||
|
Le rapport doit être avancé en temps réel et envoyé par mail avant chaque réunion. Il faut également donner un ordre du jour avec les questions à aborder pour chaque réunion.
|
||||||
|
|
||||||
|
La dernière séance de projet est le 29/05/2019, la semaine suivante semble adaptée pour planifier la soutenance. Elle prendra la forme d'une présentation orale supportée par un diaporama.
|
||||||
|
|
||||||
|
\end{document}
|
11
reunions/reu_2/prise_note_reu_2
Normal file
11
reunions/reu_2/prise_note_reu_2
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
Retard < 100ms
|
||||||
|
Position du drone par rapport à la cible en x,y. Pb angulaire
|
||||||
|
Mesure de l'angle du drone vis à vis d'une cible.
|
||||||
|
- calibrer la caméra pour avoir un angle
|
||||||
|
Pb de trouver la fonction de transfetr du drone
|
||||||
|
En intérieur, accélération sans prendre en compte les frottements
|
||||||
|
Commande couple sur les moteurs (4 moteurs)
|
||||||
|
On a Vz, Vy, Vx et rotation selon z Rz
|
||||||
|
Commandes en X et Y en accélération, en Z linéaire (voir bebop autonomy)
|
||||||
|
Framerate ~ 10Hz freq ech pour les mesures ~ 5Hz
|
||||||
|
Regarder demo_teleop
|
Loading…
Reference in a new issue