<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://peip-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Aflorea</id>
	<title>Wiki de bureau d&#039;études PeiP - Contributions de l’utilisateur [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://peip-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Aflorea"/>
	<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php/Sp%C3%A9cial:Contributions/Aflorea"/>
	<updated>2026-11-09T23:29:04Z</updated>
	<subtitle>Contributions de l’utilisateur</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10433</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10433"/>
		<updated>2019-05-25T12:08:46Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Limites pratiques du robot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:robot_andrei1.jpg|thumbnail]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;nolines&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:robot_andrei1.jpg&lt;br /&gt;
Fichier:robot_andrei2.jpg&lt;br /&gt;
Fichier:robot_andrei3.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites théoriques du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
* J&amp;#039;a appris après coup que le régulateur de tension que j&amp;#039;utilise pour passer de 9V à 5V est très inefficace et donc peu adapté à l&amp;#039;utilisation sur une batterie.&lt;br /&gt;
&lt;br /&gt;
==Limites pratiques du robot==&lt;br /&gt;
&lt;br /&gt;
Le robot ne fonctionne tout simplement pas; il y a un court-circuit quelque part dans la partie logique.&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai réalisé plusieurs tests afin d&amp;#039;essayer de déterminer ce qui n&amp;#039;allait pas:&lt;br /&gt;
*La résistance entre la sortie du régulateur de tension et la masse est &amp;gt;&amp;gt;0Ω : le court-circuit n&amp;#039;est donc pas très évident ; j&amp;#039;ai bien vérifié que toutes mes diodes et mes condensateurs soient dans le bon sens. Néanmoins, en branchant à une alimentation extérieure cette partie logique, j&amp;#039;obtenais un courant de ~350mA pour.. quelques millivolts de tension.&lt;br /&gt;
*Par la suite, j&amp;#039;ai trouvé un certain nombre d&amp;#039;endroits sont en contact direct avec la masse (alors qu&amp;#039;ils ne devraient pas l&amp;#039;être), nottament les pins 4,5,6,7 du NE555 &amp;quot;U6&amp;quot; (en haut sur le PCB).&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10431</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10431"/>
		<updated>2019-05-24T15:30:40Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Limites théoriques du robot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:robot_andrei1.jpg|thumbnail]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;nolines&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:robot_andrei1.jpg&lt;br /&gt;
Fichier:robot_andrei2.jpg&lt;br /&gt;
Fichier:robot_andrei3.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites théoriques du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
* J&amp;#039;a appris après coup que le régulateur de tension que j&amp;#039;utilise pour passer de 9V à 5V est très inefficace et donc peu adapté à l&amp;#039;utilisation sur une batterie.&lt;br /&gt;
&lt;br /&gt;
==Limites pratiques du robot==&lt;br /&gt;
&lt;br /&gt;
Le robot ne fonctionne tout simplement pas; il y a un court-circuit quelque part dans la partie logique.&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai réalisé plusieurs tests afin d&amp;#039;essayer de déterminer ce qui n&amp;#039;allait pas:&lt;br /&gt;
*La résistance entre la sortie du régulateur de tension et la masse est &amp;gt;&amp;gt;0Ω : le court-circuit n&amp;#039;est donc pas très évident. Néanmoins, en branchant à une alimentation extérieure cette partie logique, j&amp;#039;obtenais un courant de ~350mA pour.. quelques millivolts de tension.&lt;br /&gt;
*Par la suite, j&amp;#039;ai trouvé un certain nombre d&amp;#039;endroits sont en contact direct avec la masse (alors qu&amp;#039;ils ne devraient pas l&amp;#039;être), nottament les pins 4,5,6,7 du NE555 &amp;quot;U6&amp;quot; (en haut sur le PCB).&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10416</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10416"/>
		<updated>2019-05-24T14:30:52Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:robot_andrei1.jpg|thumbnail]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;nolines&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:robot_andrei1.jpg&lt;br /&gt;
Fichier:robot_andrei2.jpg&lt;br /&gt;
Fichier:robot_andrei3.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites théoriques du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;br /&gt;
* J&amp;#039;a appris après coup que le régulateur de tension que j&amp;#039;utilise pour passer de 9V à 5V est très inefficace et donc peu adapté à l&amp;#039;utilisation sur une batterie.&lt;br /&gt;
&lt;br /&gt;
==Limites pratiques du robot==&lt;br /&gt;
&lt;br /&gt;
Le robot ne fonctionne tout simplement pas; il y a un court-circuit quelque part dans la partie logique.&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai réalisé plusieurs tests afin d&amp;#039;essayer de déterminer ce qui n&amp;#039;allait pas:&lt;br /&gt;
*La résistance entre la sortie du régulateur de tension et la masse est &amp;gt;&amp;gt;0Ω : le court-circuit n&amp;#039;est donc pas très évident. Néanmoins, en branchant à une alimentation extérieure cette partie logique, j&amp;#039;obtenais un courant de ~350mA pour.. quelques millivolts de tension.&lt;br /&gt;
*Par la suite, j&amp;#039;ai trouvé un certain nombre d&amp;#039;endroits sont en contact direct avec la masse (alors qu&amp;#039;ils ne devraient pas l&amp;#039;être), nottament les pins 4,5,6,7 du NE555 &amp;quot;U6&amp;quot; (en haut sur le PCB).&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10412</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10412"/>
		<updated>2019-05-24T14:28:43Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:robot_andrei1.jpg|thumbnail]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites théoriques du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;br /&gt;
* J&amp;#039;a appris après coup que le régulateur de tension que j&amp;#039;utilise pour passer de 9V à 5V est très inefficace et donc peu adapté à l&amp;#039;utilisation sur une batterie.&lt;br /&gt;
&lt;br /&gt;
==Limites pratiques du robot==&lt;br /&gt;
&lt;br /&gt;
Le robot ne fonctionne tout simplement pas; il y a un court-circuit quelque part dans la partie logique.&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai réalisé plusieurs tests afin d&amp;#039;essayer de déterminer ce qui n&amp;#039;allait pas:&lt;br /&gt;
*La résistance entre la sortie du régulateur de tension et la masse est &amp;gt;&amp;gt;0Ω : le court-circuit n&amp;#039;est donc pas très évident. Néanmoins, en branchant à une alimentation extérieure cette partie logique, j&amp;#039;obtenais un courant de ~350mA pour.. quelques millivolts de tension.&lt;br /&gt;
*Par la suite, j&amp;#039;ai trouvé un certain nombre d&amp;#039;endroits sont en contact direct avec la masse (alors qu&amp;#039;ils ne devraient pas l&amp;#039;être), nottament les pins 4,5,6,7 du NE555 &amp;quot;U6&amp;quot; (en haut sur le PCB).&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_andrei3.jpg&amp;diff=10411</id>
		<title>Fichier:Robot andrei3.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_andrei3.jpg&amp;diff=10411"/>
		<updated>2019-05-24T14:27:30Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_andrei2.jpg&amp;diff=10408</id>
		<title>Fichier:Robot andrei2.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_andrei2.jpg&amp;diff=10408"/>
		<updated>2019-05-24T14:27:05Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_andrei1.jpg&amp;diff=10407</id>
		<title>Fichier:Robot andrei1.jpg</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Robot_andrei1.jpg&amp;diff=10407"/>
		<updated>2019-05-24T14:26:45Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10363</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10363"/>
		<updated>2019-05-24T13:13:02Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Limites pratiques du robot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites théoriques du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;br /&gt;
* J&amp;#039;a appris après coup que le régulateur de tension que j&amp;#039;utilise pour passer de 9V à 5V est très inefficace et donc peu adapté à l&amp;#039;utilisation sur une batterie.&lt;br /&gt;
&lt;br /&gt;
==Limites pratiques du robot==&lt;br /&gt;
&lt;br /&gt;
Le robot ne fonctionne tout simplement pas; il y a un court-circuit quelque part dans la partie logique.&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai réalisé plusieurs tests afin d&amp;#039;essayer de déterminer ce qui n&amp;#039;allait pas:&lt;br /&gt;
*La résistance entre la sortie du régulateur de tension et la masse est &amp;gt;&amp;gt;0Ω : le court-circuit n&amp;#039;est donc pas très évident. Néanmoins, en branchant à une alimentation extérieure cette partie logique, j&amp;#039;obtenais un courant de ~350mA pour.. quelques millivolts de tension.&lt;br /&gt;
*Par la suite, j&amp;#039;ai trouvé un certain nombre d&amp;#039;endroits sont en contact direct avec la masse (alors qu&amp;#039;ils ne devraient pas l&amp;#039;être), nottament les pins 4,5,6,7 du NE555 &amp;quot;U6&amp;quot; (en haut sur le PCB).&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10359</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10359"/>
		<updated>2019-05-24T13:04:01Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Limites du robot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites théoriques du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;br /&gt;
* J&amp;#039;a appris après coup que le régulateur de tension que j&amp;#039;utilise pour passer de 9V à 5V est très inefficace et donc peu adapté à l&amp;#039;utilisation sur une batterie.&lt;br /&gt;
&lt;br /&gt;
==Limites pratiques du robot==&lt;br /&gt;
&lt;br /&gt;
Le robot ne fonctionne tout simplement pas; il y a un court-circuit quelque part dans la partie logique.&lt;br /&gt;
&lt;br /&gt;
J&amp;#039;ai réalisé plusieurs tests afin d&amp;#039;essayer de déterminer ce qui n&amp;#039;allait pas:&lt;br /&gt;
*La résistance entre la sortie du régulateur de tension et la masse est &amp;gt;&amp;gt;0Ω : le court-circuit n&amp;#039;est donc pas très évident. Néanmoins, en branchant à une alimentation extérieure cette partie logique, j&amp;#039;obtenais un courant de ~350mA pour.. quelques millivolts de tension.&lt;br /&gt;
*Un certain nombre de pins étaient en contact direct avec la masse&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10357</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10357"/>
		<updated>2019-05-24T12:54:38Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Plaque imprimée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : Lors de la création du plan de masse, Fritzing a décidé de le relier à deux résistances; j&amp;#039;ai donc dû gratter le cuivre autour des contacts des deux résistances.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10148</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10148"/>
		<updated>2019-05-09T14:17:25Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé, et il n&amp;#039;y a pas de code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10147</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10147"/>
		<updated>2019-05-09T13:39:17Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10146</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10146"/>
		<updated>2019-05-09T13:38:32Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10145</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10145"/>
		<updated>2019-05-09T13:38:16Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note : j&amp;#039;ai du limer quelques petites parties du chassis ; un trou était trop serré pour laisser passer l&amp;#039;interrupteur, et les supports empêchaient le passage du moteur.&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10143</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10143"/>
		<updated>2019-05-09T13:34:45Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png | &amp;#039;&amp;#039;La pièce formant la base du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_moyen.png | &amp;#039;&amp;#039;Le &amp;quot;shield&amp;quot; du robot&amp;#039;&amp;#039;&lt;br /&gt;
Fichier:Decoupe_petits.png | &amp;#039;&amp;#039;Les pièces de soutien&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Decoupe_petits.png&amp;diff=10142</id>
		<title>Fichier:Decoupe petits.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Decoupe_petits.png&amp;diff=10142"/>
		<updated>2019-05-09T13:32:43Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Decoupe_moyen.png&amp;diff=10141</id>
		<title>Fichier:Decoupe moyen.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Decoupe_moyen.png&amp;diff=10141"/>
		<updated>2019-05-09T13:32:22Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10140</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10140"/>
		<updated>2019-05-09T13:31:46Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode = &amp;quot;slideshow&amp;quot;&amp;gt;&lt;br /&gt;
Fichier:Decoupe_gros.png&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10139</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10139"/>
		<updated>2019-05-09T13:25:37Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Decoupe_gros.png]]&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Decoupe_gros.png&amp;diff=10138</id>
		<title>Fichier:Decoupe gros.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Decoupe_gros.png&amp;diff=10138"/>
		<updated>2019-05-09T13:24:32Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10137</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10137"/>
		<updated>2019-05-09T13:22:48Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Chassis */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
&lt;br /&gt;
Le chassis du robot est composé d&amp;#039;une plaque en plexi d&amp;#039;épaisseur 4 mm à la base, une plaque de plexi 3mm en tant que &amp;quot;bouclier&amp;quot; et de quelques morceaux de plexi afin de stabiliser le tout.&lt;br /&gt;
Le plexi a été déoupé au laser selon des fichiers svg que j&amp;#039;ai produit.&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10066</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10066"/>
		<updated>2019-04-04T16:24:28Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Plaque imprimée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10065</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10065"/>
		<updated>2019-04-04T16:24:10Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Plaque imprimée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
 [[ fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10064</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10064"/>
		<updated>2019-04-04T16:23:08Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Plaque imprimée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_AF.zip]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_AF.zip&amp;diff=10063</id>
		<title>Fichier:BE IMA AF.zip</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_AF.zip&amp;diff=10063"/>
		<updated>2019-04-04T16:22:24Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : Changer en .fzz pour ouvrir avec Fritzing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Changer en .fzz pour ouvrir avec Fritzing&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10062</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10062"/>
		<updated>2019-04-04T16:04:19Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Plaque imprimée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
Schéma de production :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_PCB.png&amp;diff=10061</id>
		<title>Fichier:BE IMA PCB.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_PCB.png&amp;diff=10061"/>
		<updated>2019-04-04T16:03:29Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : Aflorea a téléversé une nouvelle version de Fichier:BE IMA PCB.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10060</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10060"/>
		<updated>2019-04-04T15:51:27Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Remarques */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
=Chassis=&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10059</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10059"/>
		<updated>2019-04-04T15:28:43Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Plaque imprimée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_PCB.png|700px]]&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_PCB.png&amp;diff=10058</id>
		<title>Fichier:BE IMA PCB.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_PCB.png&amp;diff=10058"/>
		<updated>2019-04-04T15:28:06Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_Schema.png&amp;diff=10057</id>
		<title>Fichier:BE IMA Schema.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:BE_IMA_Schema.png&amp;diff=10057"/>
		<updated>2019-04-04T15:25:46Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : Aflorea a téléversé une nouvelle version de Fichier:BE IMA Schema.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10056</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10056"/>
		<updated>2019-03-29T13:12:41Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Limites du robot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png]. Je n&amp;#039;obtiendrai donc pas forcément un signal continu, à moins de :&lt;br /&gt;
** demander gentiment aux copains de modifier le code de leur émetteur&lt;br /&gt;
** essayer d&amp;#039;allonger la durée d&amp;#039;une impulsion (avec un filtre et un comparateur peut-être ?)&lt;br /&gt;
: Je me rabatterai sur la première solution.&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10055</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10055"/>
		<updated>2019-03-29T13:09:54Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Limites du robot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;br /&gt;
&lt;br /&gt;
* Les capteurs TSOP transforment le signal infra-rouge reçu en un signal electrique. Un problème surgit alors à cause du fait que les émetteurs infrarouges des autres robots ne transmettent pas un signal continu, mais plutôt des données[https://i.stack.imgur.com/fyUIE.png].&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10054</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10054"/>
		<updated>2019-03-28T15:49:08Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10053</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10053"/>
		<updated>2019-03-28T15:48:21Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable| 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_monostable | 555 monostable] qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10052</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10052"/>
		<updated>2019-03-28T15:47:28Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable| 555 astable] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10051</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10051"/>
		<updated>2019-03-28T15:46:56Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un [[https://fr.wikipedia.org/wiki/NE555#Fonctionnement_astable| 555 astable]] (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10050</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10050"/>
		<updated>2019-03-28T15:00:33Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur. Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10049</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10049"/>
		<updated>2019-03-28T14:55:49Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Résumé */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10048</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10048"/>
		<updated>2019-03-28T14:41:52Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Schéma final */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px|Schéma global du circuit]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10047</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10047"/>
		<updated>2019-03-28T14:39:42Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Schéma final */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
Malheureusement, à cause des puces permettant la miniaturisation des portes logiques, le schéma est assez illisble.&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10046</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10046"/>
		<updated>2019-03-28T14:37:50Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Fonctionnement schématique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10045</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10045"/>
		<updated>2019-03-28T14:32:10Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les 47 ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10044</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10044"/>
		<updated>2019-03-28T14:31:31Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|350px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les xx ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10043</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10043"/>
		<updated>2019-03-28T14:31:08Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
[[Fichier:dia_temporel.png|500px|thumb|right|Diagramme temporel de la logique de S]]&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les xx ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Dia_temporel.png&amp;diff=10042</id>
		<title>Fichier:Dia temporel.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Dia_temporel.png&amp;diff=10042"/>
		<updated>2019-03-28T14:28:36Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10041</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10041"/>
		<updated>2019-03-28T14:01:42Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 475µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les xx ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~475µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10040</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10040"/>
		<updated>2019-03-28T13:12:17Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Résumé */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser de microcontrôleur.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 470µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les xx ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~470µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10039</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10039"/>
		<updated>2019-03-28T13:08:09Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser d&amp;#039;informatique.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v ≈ 470µs&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 astable (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les xx ms.&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives.&lt;br /&gt;
* ces impulsions sont envoyées au pin &amp;quot;TRIGGER&amp;quot; du sonar, ce qui déclenche l&amp;#039;acquisition.&lt;br /&gt;
* l&amp;#039;acquisition provoque une mise à 5V du pin &amp;quot;ECHO&amp;quot; du sonar.&lt;br /&gt;
* le signal du pin &amp;quot;ECHO&amp;quot; est inversé et :&lt;br /&gt;
** est fourni en entrée d&amp;#039;un 555 monostable qui produit un pic positif pendant ~470µs.&lt;br /&gt;
** est comparé à la sortie du 555 susnomé à l&amp;#039;aide d&amp;#039;une porte logique ET.&lt;br /&gt;
* la comparaison est enfin transmise à un dernier 555 monostable qui produit alors le signal désiré.&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10038</id>
		<title>Monome2018-7</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Monome2018-7&amp;diff=10038"/>
		<updated>2019-03-28T12:54:17Z</updated>

		<summary type="html">&lt;p&gt;Aflorea : /* Réalisation de la logique du sonar : */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Résumé=&lt;br /&gt;
&lt;br /&gt;
Dans ce TP j&amp;#039;ai voulu créer un robot prédateur, mais ce sans utiliser d&amp;#039;informatique.&lt;br /&gt;
Le comportement du robot est donc contrôlé intégralement grâce à son circuit imprimé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Circuit=&lt;br /&gt;
Le circuit est la partie la plus importante de ce robot.&lt;br /&gt;
==Fonctionnement schématique==&lt;br /&gt;
===Logique===&lt;br /&gt;
Logiquement, le robot a 3 entrées et 3 sorties :&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Entrées&lt;br /&gt;
!Sorties&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
*Capteur TSOP Frontal (&amp;quot;Cf&amp;quot;)&lt;br /&gt;
*Capteur TSOP Droit (&amp;quot;Cd&amp;quot;)&lt;br /&gt;
*Capteur Ultrason (&amp;quot;S&amp;quot; comme Sonar)&lt;br /&gt;
|&lt;br /&gt;
*Moteur Droit (&amp;quot;Md&amp;quot;)&lt;br /&gt;
*Moteur Gauche (&amp;quot;Mg&amp;quot;)&lt;br /&gt;
*LED d&amp;#039;Attaque (&amp;quot;A&amp;quot;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Les TSOP sont actifs bas, c&amp;#039;est à dire que leur tension tombe à 0V sur le pin &amp;quot;Out&amp;quot; lorsqu&amp;#039;ils captent un signal[[#Limites du robot|(*)]]. On utilise donc  &amp;quot;¬C&amp;quot; (la négation de &amp;quot;C&amp;quot;) pour représenter le moment où les capteurs captent effectivement quelque chose.&lt;br /&gt;
* &amp;quot;S&amp;quot; correspond à &amp;quot;il y a quelque chose à moins de 8 cm&amp;quot;. Or, le sonar n&amp;#039;est pas fait pour détecter si la cible est à 8cm; plutôt, il envoie un signal électrique dont la durée est égale au temps que met l&amp;#039;onde pour parcourir l&amp;#039;aller retour entre l&amp;#039;émetteur/récepteur et la cible. Normalement, ce signal est décodé par un Arduino pour trouver la distance exacte. Pusique je ne souhaite pas utiliser d&amp;#039;Arduino, il me faut donc créer un circuit permettant de détecter si la durée t du signal est supérieure à t ≈ 475µs correspondant à une distance de 8cm.&lt;br /&gt;
* La LED d&amp;#039;attaque représente l&amp;#039;attaque du robot lorsqu&amp;#039;il estime que la proie est assez proche.&lt;br /&gt;
&lt;br /&gt;
Le robot est également équipé d&amp;#039;une LED Erreur (&amp;quot;Err&amp;quot;) qui s&amp;#039;active en cas de situation &amp;quot;impossible&amp;quot; (cette LED ne devrait donc &amp;#039;&amp;#039;normalement&amp;#039;&amp;#039; pas s&amp;#039;allumer).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center; width: 300px; display: inline-table;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;7&amp;quot;| Table de vérité&lt;br /&gt;
|-&lt;br /&gt;
! ¬Cf&lt;br /&gt;
! ¬Cd&lt;br /&gt;
!  S&lt;br /&gt;
!&lt;br /&gt;
! Mg&lt;br /&gt;
! Md&lt;br /&gt;
!  A&lt;br /&gt;
|-&lt;br /&gt;
|0||0||0||||0||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||0||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|0||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|0||1||1||&lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|Erreur&lt;br /&gt;
|-&lt;br /&gt;
|1||0||0||||1||1||0&lt;br /&gt;
|-&lt;br /&gt;
|1||0||1||||1||1||1&lt;br /&gt;
|-&lt;br /&gt;
|1||1||0||||1||0||0&lt;br /&gt;
|-&lt;br /&gt;
|1||1||1||||1||1||1&lt;br /&gt;
|}  =&amp;gt;  &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;display: inline-table; text-align: center;&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Equations :&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Mg&amp;#039;&amp;#039;&amp;#039;||=|| ¬Cf + ¬Cd&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Md&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.(Cd+S)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;||=||¬Cf.S&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Err&amp;#039;&amp;#039;&amp;#039;||=||Cf.S&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Réalisation de la logique du sonar :====&lt;br /&gt;
&lt;br /&gt;
Comme énoncé précedemment, le sonar envoie un signal dont la durée est égale au temps que met l&amp;#039;ultrason pour parcourir l&amp;#039;aller-retour entre l&amp;#039;émetteur/récepteur et la cible, donc &amp;#039;&amp;#039;t = 2d/v&amp;#039;&amp;#039;. Mais je désire obtenir un signal qui :&lt;br /&gt;
* est haut lorsqu&amp;#039;il y a un objet à moins de 8cm (soit &amp;#039;&amp;#039;t &amp;lt; 2*(8cm)/v&amp;#039;&amp;#039;).&lt;br /&gt;
* est bas sinon (&amp;#039;&amp;#039;t &amp;gt; 2*(8cm)/v&amp;#039;&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
Pour ce faire :&lt;br /&gt;
* un 555 (nommé &amp;quot;PULSE&amp;quot;) sert à produire des impulsions &amp;#039;&amp;#039;négatives&amp;#039;&amp;#039; toutes les xx ms&lt;br /&gt;
* ce signal est inversé afin d&amp;#039;obtenir des impulsions positives&lt;br /&gt;
&lt;br /&gt;
===Schéma final===&lt;br /&gt;
Au final, le schéma éléctrique est le suivant :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:BE_IMA_Schema.png|1500px]]&lt;br /&gt;
&lt;br /&gt;
==Plaque imprimée==&lt;br /&gt;
&lt;br /&gt;
=Remarques=&lt;br /&gt;
*Il n&amp;#039;y a pas besoin de capteur TSOP à gauche; en effet, le robot tourne à gauche tant qu&amp;#039;il ne détecte pas de proie à droite ou devant lui, il n&amp;#039;y a donc pas besoin de vérifier si il y a une proie ou pas à gauche.&lt;br /&gt;
==Limites du robot==&lt;/div&gt;</summary>
		<author><name>Aflorea</name></author>
	</entry>
</feed>