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> |