clapping_music_for_robots
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
clapping_music_for_robots [2022/03/14 10:26] – Simon Deplat | clapping_music_for_robots [2022/03/14 11:15] (Version actuelle) – Simon Deplat | ||
---|---|---|---|
Ligne 92: | Ligne 92: | ||
Ce qui semble étrange, c'est que **cette méthode introduit une asymétrie de représentation des deux voix**. Une information supplémentaire est nécessaire pour situer la voix II : son décalage par rapport à l' | Ce qui semble étrange, c'est que **cette méthode introduit une asymétrie de représentation des deux voix**. Une information supplémentaire est nécessaire pour situer la voix II : son décalage par rapport à l' | ||
- | Ce n'est pas le cas avec la représentation "reconstruire" : | + | Ce n'est pas le cas avec la représentation "reconstruite" : |
{{ :: | {{ :: | ||
- | Les deux font pourtant référence au même objet. La première solution est efficiente en terme de calcul. La seconde est plus facile à comprendre pour les humains. | + | **Les deux font pourtant référence au même objet.** La première solution est efficiente en terme de calcul. La seconde est plus facile à comprendre pour les humains. |
Voici le code associé à cet algorithme, qui, à la place de servomoteurs, | Voici le code associé à cet algorithme, qui, à la place de servomoteurs, | ||
Ligne 170: | Ligne 170: | ||
=====Physiologie ?===== | =====Physiologie ?===== | ||
- | Pour aller encore plus loin, il faut noter que le duplicata de l'// | + | Pour aller encore plus loin, il faut noter que **le duplicata de l'// |
- | À ce stade, **il n'est même plus possible de représenter | + | Avec cet algorithme, **il n'est même plus possible de représenter |
< | < | ||
Ligne 180: | Ligne 180: | ||
Encore une fois pourtant, l' | Encore une fois pourtant, l' | ||
- | Cela nous questionne sur la réalité | + | Cela nous questionne sur **la définition |
+ | |||
+ | **Doit-elle être considérée comme un système de symbole | ||
+ | |||
+ | **La version " | ||
+ | |||
+ | À l' | ||
+ | |||
+ | < | ||
+ | int ledPin1 = 2; | ||
+ | int ledPin2 = 3; | ||
+ | |||
+ | int msBetweenBeats = 200; | ||
+ | |||
+ | int score[] = { 1, 0, 0, 1, 0, 0, 1, 0 }; | ||
+ | |||
+ | int currentBeat = 0; | ||
+ | |||
+ | int numberOfBeats; | ||
+ | |||
+ | int currentCycleRepetition = 0; | ||
+ | int numberOfCycleRepetitions = 4; | ||
+ | int currentCycle = 0; | ||
+ | |||
+ | void setup() { | ||
+ | Serial.begin(9600); | ||
+ | |||
+ | pinMode( ledPin1, OUTPUT ); | ||
+ | pinMode( ledPin2, OUTPUT ); | ||
+ | |||
+ | numberOfBeats = sizeof( score ) / sizeof( score[0] ); | ||
+ | |||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | |||
+ | Serial.println( score[ currentBeat + currentCycle ] ); | ||
+ | |||
+ | if( score[ currentBeat ] == 1 ) { | ||
+ | digitalWrite( ledPin1, HIGH ); | ||
+ | }; | ||
+ | |||
+ | if( score[ ( currentBeat + currentCycle ) % numberOfBeats ] == 1 ) { | ||
+ | digitalWrite( ledPin2, HIGH ); | ||
+ | }; | ||
+ | |||
+ | delay( msBetweenBeats / 4 * 3 ); | ||
+ | |||
+ | digitalWrite( ledPin1, LOW ); | ||
+ | digitalWrite( ledPin2, LOW ); | ||
+ | |||
+ | delay( msBetweenBeats / 4 ); | ||
+ | |||
+ | currentBeat = currentBeat + 1; | ||
+ | |||
+ | if( currentBeat == numberOfBeats ) { | ||
+ | |||
+ | currentBeat = 0; | ||
+ | currentCycleRepetition = currentCycleRepetition + 1; | ||
+ | |||
+ | if( currentCycleRepetition == numberOfCycleRepetitions ) { | ||
+ | currentCycleRepetition = 0; | ||
+ | currentCycle = currentCycle + 1; | ||
+ | |||
+ | if( currentCycle == numberOfBeats ) { | ||
+ | currentCycle = 0; | ||
+ | }; | ||
+ | }; | ||
+ | }; | ||
+ | } | ||
+ | </ |
clapping_music_for_robots.1647253606.txt.gz · Dernière modification : 2022/03/14 10:26 de Simon Deplat