| Ligne 155 : |
Ligne 155 : |
| | Pour faire sonner une clochette, il sera nécessaire d'utiliser un servo moteur, une clochette, une alimentation supplémentaire et un support/pied. | | Pour faire sonner une clochette, il sera nécessaire d'utiliser un servo moteur, une clochette, une alimentation supplémentaire et un support/pied. |
| | | | |
| | + | ''' VIDEO ''' |
| | ==== Choix du matériel ==== | | ==== Choix du matériel ==== |
| | | | |
| Ligne 302 : |
Ligne 303 : |
| | | | |
| | Pour interagir avec la peluche, il sera nécessaire de posséder une peluche et deux relais (dans notre cas). | | Pour interagir avec la peluche, il sera nécessaire de posséder une peluche et deux relais (dans notre cas). |
| | + | |
| | + | ''' VIDEO ''' |
| | | | |
| | ==== Choix du matériel ==== | | ==== Choix du matériel ==== |
| Ligne 408 : |
Ligne 411 : |
| | void stopRenard(){ | | void stopRenard(){ |
| | digitalWrite( RENARD_ACTIVE, LOW ); | | digitalWrite( RENARD_ACTIVE, LOW ); |
| | + | } |
| | + | </syntaxhighlight> |
| | + | |
| | + | === Activer un relais === |
| | + | |
| | + | Pour activer un matériel électronique, il sera nécessaire d'utiliser un relais. |
| | + | Dans notre cas, nous allons simplement allumer une lampe. |
| | + | |
| | + | ''' VIDEO ''' |
| | + | |
| | + | ==== Choix du matériel ==== |
| | + | |
| | + | * Pour le relais, nous avons choisis le Power Switch Tail, qui est un relais protégé par un boîtier (disponible sur le [https://shop.mchobby.be/breakout/1289-power-switch-tail-240v-ac-3232100012899.html shop]) |
| | + | |
| | + | ==== Code ==== |
| | + | |
| | + | Premièrement, il sera nécessaire d'ajouter dans l'entête : |
| | + | <syntaxhighlight lang="c"> |
| | + | ... |
| | + | |
| | + | // ### ZONE HACK ### |
| | + | |
| | + | // -- Relais -- |
| | + | #define RELAIS 12 |
| | + | |
| | + | ... |
| | + | </syntaxhighlight> |
| | + | |
| | + | Dans la fonction setup : |
| | + | <syntaxhighlight lang="c"> |
| | + | void setup() { |
| | + | ... |
| | + | |
| | + | // ### ZONE HACK ### |
| | + | |
| | + | // Initialiser le relais |
| | + | pinMode( RELAIS , OUTPUT ); |
| | + | } |
| | + | </syntaxhighlight> |
| | + | |
| | + | Dans les différentes phases, on va définir que uniquement l'alarme 1 possède l'activation du relais et les autres possèdent la mélodie. |
| | + | |
| | + | <syntaxhighlight lang="c"> |
| | + | /* |
| | + | * Alarme qui commence à sonner |
| | + | */ |
| | + | void alarmeStart( int alarmePos ){ |
| | + | // Hack relais |
| | + | if( alarmePos == 0) |
| | + | activerRelais(); |
| | + | // Sonnerie |
| | + | else |
| | + | activerMelodie(); |
| | + | } |
| | + | |
| | + | /* |
| | + | * Pendant que l'alarme sonne, répéter une étape |
| | + | */ |
| | + | void alarmePulse( int alarmePos ){ |
| | + | // Hack relais |
| | + | if( alarmePos == 0){} |
| | + | // Sonnerie |
| | + | else |
| | + | jouerMelodie(); |
| | + | } |
| | + | |
| | + | /* |
| | + | * Alarme qui cesse de sonner |
| | + | */ |
| | + | void alarmeStop( int alarmePos ){ |
| | + | // Hack relais |
| | + | if( alarmePos == 0) |
| | + | stopRelais(); |
| | + | // Sonnerie |
| | + | else |
| | + | arreterMelodie(); |
| | + | } |
| | + | </syntaxhighlight> |
| | + | |
| | + | * '''activerRelais();''' dans cette fonction, il faudrait simplement activer le relais. |
| | + | * '''stopRelais();''' dans cette fonction, il faudrait simplement stopper le relais. |
| | + | |
| | + | <syntaxhighlight lang="c"> |
| | + | /* |
| | + | * Exemple servo moteur |
| | + | */ |
| | + | void activerRelais(){ |
| | + | digitalWrite( RELAIS , HIGH); |
| | + | } |
| | + | void stopRelais(){ |
| | + | digitalWrite( RELAIS , LOW); |
| | + | } |
| | + | </syntaxhighlight> |
| | + | |
| | + | === Activer un relais === |
| | + | |
| | + | Pour activer un matériel électronique, il sera nécessaire d'utiliser un relais. |
| | + | Dans notre cas, nous allons simplement allumer une lampe. |
| | + | |
| | + | ''' VIDEO ''' |
| | + | |
| | + | ==== Choix du matériel ==== |
| | + | |
| | + | * Pour le relais, nous avons choisis le Power Switch Tail, qui est un relais protégé par un boîtier (disponible sur le [https://shop.mchobby.be/breakout/1289-power-switch-tail-240v-ac-3232100012899.html shop]) |
| | + | |
| | + | ==== Code ==== |
| | + | |
| | + | Premièrement, il sera nécessaire d'ajouter dans l'entête : |
| | + | <syntaxhighlight lang="c"> |
| | + | ... |
| | + | |
| | + | // ### ZONE HACK ### |
| | + | |
| | + | // -- Relais -- |
| | + | #define RELAIS 12 |
| | + | |
| | + | ... |
| | + | </syntaxhighlight> |
| | + | |
| | + | Dans la fonction setup : |
| | + | <syntaxhighlight lang="c"> |
| | + | void setup() { |
| | + | ... |
| | + | |
| | + | // ### ZONE HACK ### |
| | + | |
| | + | // Initialiser le relais |
| | + | pinMode( RELAIS , OUTPUT ); |
| | + | } |
| | + | </syntaxhighlight> |
| | + | |
| | + | Dans les différentes phases, on va définir que uniquement l'alarme 1 possède l'activation du relais et les autres possèdent la mélodie. |
| | + | |
| | + | <syntaxhighlight lang="c"> |
| | + | /* |
| | + | * Alarme qui commence à sonner |
| | + | */ |
| | + | void alarmeStart( int alarmePos ){ |
| | + | // Hack relais |
| | + | if( alarmePos == 0) |
| | + | activerRelais(); |
| | + | // Sonnerie |
| | + | else |
| | + | activerMelodie(); |
| | + | } |
| | + | |
| | + | /* |
| | + | * Pendant que l'alarme sonne, répéter une étape |
| | + | */ |
| | + | void alarmePulse( int alarmePos ){ |
| | + | // Hack relais |
| | + | if( alarmePos == 0){} |
| | + | // Sonnerie |
| | + | else |
| | + | jouerMelodie(); |
| | + | } |
| | + | |
| | + | /* |
| | + | * Alarme qui cesse de sonner |
| | + | */ |
| | + | void alarmeStop( int alarmePos ){ |
| | + | // Hack relais |
| | + | if( alarmePos == 0) |
| | + | stopRelais(); |
| | + | // Sonnerie |
| | + | else |
| | + | arreterMelodie(); |
| | + | } |
| | + | </syntaxhighlight> |
| | + | |
| | + | * '''activerRelais();''' dans cette fonction, il faudrait simplement activer le relais. |
| | + | * '''stopRelais();''' dans cette fonction, il faudrait simplement stopper le relais. |
| | + | |
| | + | <syntaxhighlight lang="c"> |
| | + | /* |
| | + | * Exemple servo moteur |
| | + | */ |
| | + | void activerRelais(){ |
| | + | digitalWrite( RELAIS , HIGH); |
| | + | } |
| | + | void stopRelais(){ |
| | + | digitalWrite( RELAIS , LOW); |
| | } | | } |
| | </syntaxhighlight> | | </syntaxhighlight> |