matematicas-bitbloq

9+3 font 12, je retire un…

Aujourd’hui nous allons découvrir les blocs de la section Mathématiques.
bloquesmates

Tu n’as pas assez de doigts pour compter ? Laisse faire bitbloq !

Pour réaliser les exemples, tu auras besoin de :

  • 1 x ZumBloq LED
  • 1 x ZumBloq Potentiomètre
  • 1 x ZumBloq Buzzer
  • 1 x ZumBloq Bouton
  • 1 x ZumBloq Capteur de luminosité
  • 1 x ZumBloq Joystick
  • 1 x ZumBloq Mini servo
  • 1 x ZumBloq LCD
  • Une carte contrôleur ZUM BT 328 ou une carte compatible avec Arduino UNO
  • Un câble USB

Le bloc chiffre

bloquenumero

C’est un des blocs que tu utiliseras le plus dans bitbloq. Ce bloc te permet d’écrire une valeur numérique, par exemple pour l’analyser dans le bloc si… exécuter, ou pour affecter directement un élément à une broche ou définir une durée, ou encore faire une opération… Ce bloc présente de nombreuses applications.

Exemple avec le bloc chiffre

Faire sonner le buzzer pendant 300 ms

ejemplobloquenumero

Nous avons utilisé le bloc chiffre pour que le buzzer sonne pendant 300ms. Le bloc chiffre est conçu pour des entiers. Cela signifie qu’il n’accepte pas les décimales. N’oublie pas cela quand tu feras des opérations.

Le bloc tableau (array)

bloquerray

Tu te souviens de comment nous utilisions ce bloc avec le joystick ? Ce bloc n’est rien d’autre qu’un contenant ou un vecteur qui regroupe trois variables distinctes. Par exemple, les coordonnées X,Y et la valeur du bouton de notre joystick, les heures, les minutes et les secondes d’une montre, etc. Quand tu travailles avec des tableaux, tu ne dois pas oublier une chose : le premier élément d’un tableau ne correspond pas au chiffre 1 mais au chiffre 0. Si tu veux accéder au premier élément d’un tableau, tu devras entrer un 0 au lieu d’un 1, si tu veux accéder au deuxième élément, tu devras entrer un 1 au lieu d’un 2, etc. Regarde le schéma suivant pour avoir les idées claires :
indicesvector

Et maintenant un exemple d’utilisation du bloc tableau :

Exemple avec le bloc tableau

Afficher les valeurs du joystick sur l’écran LCD

ejemplobloquearray

Ici, les valeurs X, Y et la valeur du bouton du Joystick, s’afficheront sur l’écran LCD. Grâce au bloc tableau tu pourras stocker ces informations d’une manière ordonnée et il sera toujours facile de les retrouver.

Le bloc aléatoire comprise entre… et…

bloquealeatorio

Ce bloc renvoie une valeur aléatoire comprise dans l’intervalle que nous avons défini.
bloqaletorioescrito

Obtenir des valeurs aléatoires peut être très utile. Tu peux par exemple créer une nouvelle version du jeu Jacques a dit avec ce bloc. Tu peux aussi faire danser un robot… Il existe de nombreuses possibilités !

Les blocs échelonner

mapear1 mapear2

Ces blocs servent à modifier l’intervalle de valeurs dont dispose un composant. Par exemple, le potentiomètre renvoie un entier entre 0 et 1023, le mini servo renvoie un entier entre 0 et 180, et une LED renvoie un entier entre 0 et 255. Donc si tu veux utiliser un potentiomètre avec un mini servo pour que le mini servo tourne selon un angle compris entre 0 et 180 degrés en fonction de la position du potentiomètre, l’idéal sera d’utiliser le bloc Échelonner pour synchroniser les deux intervalles.

Le premier bloc, nous permet d’échelonner une variable allant de 0 à 1023 selon l’intervalle souhaité. Le second bloc nous donne plus de possibilités, car nous pouvons sélectionner l’intervalle de la variable d’entrée ainsi que l’intervalle de sortie. Tu vas tout de suite comprendre pourquoi ce bloc est si utile :

Exemple avec le bloc échelonner

Échelonner les valeurs du potentiomètre pour les adapter à l’intervalle du mini servo (0-180 degrés)

ejemplomapeo

Ainsi l’intervalle de valeurs du potentiomètre (0-1023) est divisé en 180 parties pour qu’environ toutes les 6 valeurs du potentiomètre, le mini servo bouge d’un degré de plus. Sans l’échelonnement, il ne serait pas possible de contrôler correctement le mini servo avec le potentiomètre. Ce programme est équivalent à celui ci-dessous utilisant le bloc échelonner avancé :
bloque2

Le bloc des opérations +,-,X,/,^

Ce bloc te permet de réaliser des opérations mathématiques simples, comme les additions, les soustractions, les multiplications, les divisions et le calcul exponentiel.

Il peut s’utiliser avec le bloc chiffre ou pour réaliser des opérations avec des variables.

Exemple avec le bloc des opérations

Utiliser l’opérateur + pour que la LED s’allume quand la somme de la valeur détectée par le capteur de luminosité et du nombre 20 est inférieure à 100.

ejemplosuma

Autre bloc d’opérations mathématiques

raizcuadrada

Il existe un autre bloc nous permettant d’obtenir la racine carrée d’un nombre, son logarithme népérien, etc.

Exemple avec l’autre bloc d’opérations mathématiques

Concevoir un programme qui renvoie le logarithme décimal d’une variable.

Il peut être utile de réaliser des opérations mathématiques pour modifier certaines données. Par exemple, nous pouvons avoir besoin que le programme calcule le logarithme décimal de la valeur d’une variable.

bloquelogatirmo10

Nous obtenons ainsi le logarithme décimal de la valeur du moment du potentiomètre.

Bloc reste de…

bloquerestode

Tu te souviens quand tu posais tes divisions ? Tu obtenais souvent un reste, tu devais continuer la division et tu finissais par obtenir un nombre décimal. Ce bloc te renvoie le reste de la division. À quoi cela sert-il ? Voici un exemple :

Exemple avec le bloc reste de …

Concevoir un programme qui renvoie la valeur du reste de la division par 2 d’un chiffre aléatoire quand nous appuyons sur le bouton.

Si le chiffre est pair (c’est-à-dire que le reste est égal à 0), la LED s’allume. Si le chiffre est impair (le reste est égal à 1), le buzzer sonne.

ejemplorestode

Pour savoir si un chiffre est pair ou non, il faut le diviser par 2. Si le reste de la division est égal à 0, le chiffre est pair. Si le reste de la division est égal à 1, le chiffre est impair. Comme tu peux le voir, nous avons utilisé le bloc aléatoire pour générer une série aléatoire de chiffres compris entre 0 et 2000.

Maintenant tu connais tous les blocs de la section mathématiques. Tu penses peut-être que certains ne sont pas très utiles ou que tu ne réaliseras jamais d’opérations aussi compliquées. Mais, à mesure que tu seras de plus en plus à l’aise et que tu maîtriseras la programmation sur le bout des doigts, tu en voudras toujours plus… Tu verras !