Controle de sonar : Différence entre versions

De Wiki de Projets IMA
(Partie électronique)
(Rapport)
Ligne 85 : Ligne 85 :
  
 
= Rapport =
 
= Rapport =
 +
I) Cahier des charges
 +
 +
La carte FPGA mesure en permanence la distance avec l'obstacle le plus proche. La mesure de distance est basée sur la mesure du décalage entre l'émission d'un signal ultrason et sa réception, après rebond sur l'obstacle. La valeur de ce temps sera codée sur huit bits (1 octet). Le taux de rafraîchissement de la mesure sera fixé à 1 seconde. La vitesse du son sera considérée comme égale à 340 m/s
 +
 +
 +
II) Résolution du CDC partie numérique
 +
 +
Les différentes horloges
 +
 +
Nous avons décider pour facilité le câblage des différents composant du FPGA et de la propreté du signal de sortie de la partie analogique d’avoir une distance maximale de mesure de 1,80 m pour un mot de 254, en cas d’absence d’objet nous prendrons la valeur 255.
 +
Ainsi nous avons les relations suivantes
 +
 +
f=1/T
 +
 +
v=d/t
 +
 +
D’où      t=d/v=(2×1,8)/340=10,588 ms
 +
Où t est le temps totale que met l’onde pour faire l’aller-retour à une distance de 1,80m 
 +
Donc on a une résolution de (10,588×〖10〗^(-3))/255 =41.52 µs qui correspond a 7mm pour un bit d’écart
 +
Ainsi on a la fréquence d’entrée du compteur 8 bits qui nous donnera le mot image de la distance.
 +
 +
 +
f=1/T=1/(41.52 µs )≈2400
 +
 +
Nous allons donc diviser la fréquence par 2400 (U3, U4 et U6)
 +
Les autres diviseurs (U7, U8, U13 et U14) sont présents pour avoir une période 40khz pour le signal d’entrée de la partie analogique pour le module à ultrasons.
 +
Le compteur (U1) permet de diviser la fréquence pour avoir une période de 1s avec un petit temps à l’état haut.
 +
 +
liaison entre le MU et la nanobord
 +
 +
Le compteur (U11) permet de compter le nombre de période envoyé au MU est de s’arrêter à dix grâce aux NANDs et ANDs (U10, U12 et U15) information appelé « fin  transmission »  puis repart dans un OR avec l’information de « réinitialisation nouvelle séquence » la sortie commande la remise a zéro du compteur mais aussi dans la commande de la bascule  JK qui commande le blocage du compteur
 +
Table de vérité du blocage du compteur.
 +
 +
 +
[[Fichier:Tableverite.png]]
 +
[[Fichier:Formule.png]]
 +
[[Fichier:Chronogramme.png]]
 +
[[Fichier:Analogique.png]]

Version du 16 mai 2011 à 16:33

Sujet

Le sujet se trouve à la page http://rex.plil.fr/Enseignement/Systeme/Projet.IMA3/systeme009.html

Avancement du projet

Première Séance (06/05/2011)

Objectifs :

  • établir le cahier des charges technique
  • répartir les tâches au sein du binôme
  • brainstorming

Réalisations concrètes :

  • Tutoriel Altium effectué
  • Elaboration du compteur mesurant le temps sous Altium

Deuxième Séance (11/05/2011)

Objectifs :

  • Continuer la partie électronique en résolvant les derniers problémes
  • Commencer la partie informatique en élaborant la structure du programme et sous programmes

Réalisations concrètes :

Partie informatique :

  • Installation des librairies nécessaires pour piloter le servo moteur
  • Modification du programme c pour pouvoir entrer un angle en paramétre et ainsi placer le sonar à l'angle indiqué
  • Création du site Web 2.0 avec un champ texte pour entrer un angle et placer le sonar au bon angle, grâce à une intéraction entre le javascript et le programme c précédemment créé.

Partie électronique :

Troisième Séance (13/05/2011)

Objectifs :

  • Avant la séance, avancer la partie informatique en continuant sur le site web :
    • Élaboration de la requête Ajax envoyée vers un script PHP qui récupère la distance mesurée par le sonar par scrutation et les renvoie vers la page Web 2.0(donnees.php)
    • Élaboration de la page Affichage.php qui récupère une série de distance et un angle. Cette page utilise GD en affichant un cercle vert ainsi que les axes X et Y en coordonnées cartésienne
    • Modification de la page Web 2.0 avec l'ajout un script sous javascript qui lance Affichage.php par une requête Ajax en ajoutant à l'adresse de l'url, les valeurs mesurées par le radar ainsi que l'angle associé
  • Test de toutes les pages créées chez nous et résolution des bugs si nécessaire

Réalisations concrètes :

Partie informatique :

  • Compilation du programme permettant de lire les données renvoyées par le sonar par la liaison série
  • Modification des pages Web 2.0 et donnees.php pour récupérer les données du sonar
  • Modification de la page Web 2.0 et affichage.php qui pour résoudre le problème de l'affiche de l'image permettant d'afficher la cible du radar qui ne s'affichait pas

Malheureusement, afficher le point devant indiqué la distance de l'obstacle par rapport au sonar a été plus difficile que l'on ne pensait et faute de temps, nous n'avons pas réussi à finir cette partie.

Partie électronique :

  • Réalisation des différentes horloges utiles
  • Création du signal pilotant le Module à ultrasons


Partie informatique

  • Machine utilisée : TUTUR01
  • /home/pifou/sonar/ contient entre autre fileaccess2.c qui selon un angle fait faire une rotation au robot de l'angle en question
  • /var/www contient :
    • web2.html : Page principale Web 2.0
    • prototype.js
    • donnes.php
    • affichage.php
  • Les commandes :
    • su (mdp : glopglop) : Mode superutilisateur
    • su www-data  : Permet de prendre l’identité de www-data
    • /root/serie : permet de lancer la liaison série
  • lancer correctement la page Web 2.0 :
  1. su www-data
  2. /root/serie
  3. lancer un navigateur internet et lancer la page http://localhost/web2.html
  4. entrer un angle
  5. l'image de la distance se lance

Partie électronique

  • Réalisation du bit de sortie permettant l'envois de l'octet
  • Réalisation du rafraîchissement toutes les secondes
  • Réalisation de la parte analogique + tests effectués

Schéma : Schema.png



Rapport

I) Cahier des charges

La carte FPGA mesure en permanence la distance avec l'obstacle le plus proche. La mesure de distance est basée sur la mesure du décalage entre l'émission d'un signal ultrason et sa réception, après rebond sur l'obstacle. La valeur de ce temps sera codée sur huit bits (1 octet). Le taux de rafraîchissement de la mesure sera fixé à 1 seconde. La vitesse du son sera considérée comme égale à 340 m/s


II) Résolution du CDC partie numérique

Les différentes horloges

Nous avons décider pour facilité le câblage des différents composant du FPGA et de la propreté du signal de sortie de la partie analogique d’avoir une distance maximale de mesure de 1,80 m pour un mot de 254, en cas d’absence d’objet nous prendrons la valeur 255. Ainsi nous avons les relations suivantes

f=1/T

v=d/t

D’où t=d/v=(2×1,8)/340=10,588 ms Où t est le temps totale que met l’onde pour faire l’aller-retour à une distance de 1,80m Donc on a une résolution de (10,588×〖10〗^(-3))/255 =41.52 µs qui correspond a 7mm pour un bit d’écart Ainsi on a la fréquence d’entrée du compteur 8 bits qui nous donnera le mot image de la distance.


f=1/T=1/(41.52 µs )≈2400

Nous allons donc diviser la fréquence par 2400 (U3, U4 et U6) Les autres diviseurs (U7, U8, U13 et U14) sont présents pour avoir une période 40khz pour le signal d’entrée de la partie analogique pour le module à ultrasons. Le compteur (U1) permet de diviser la fréquence pour avoir une période de 1s avec un petit temps à l’état haut.

liaison entre le MU et la nanobord

Le compteur (U11) permet de compter le nombre de période envoyé au MU est de s’arrêter à dix grâce aux NANDs et ANDs (U10, U12 et U15) information appelé « fin transmission » puis repart dans un OR avec l’information de « réinitialisation nouvelle séquence » la sortie commande la remise a zéro du compteur mais aussi dans la commande de la bascule JK qui commande le blocage du compteur Table de vérité du blocage du compteur.


Tableverite.png Formule.png Chronogramme.png Analogique.png