Ardu? No! ≫ Débuter avec Arduino

Débuter avec Arduino

Ardu? Programmer une carte Uno? Non pas vraiment. Il suffit de s'y mettre. Si on veut, on y arrive. C'est simplement une question de centre d'intérêt.

Dans ce tutoriel (tuto, initiation, cours, exposé,... appelez cela comme vous voulez), je vais m'intéresser à la programmation en C/C++ des cartes Arduino Uno, Nano, Méga. Beaucoup de choses qui sont dites ici fonctionneront sur d'autres cartes, mais je ne peux pas le garantir.

Image: Arduino est un assemblage de briques élémentaires

Écrire une application est un assemblage de briques élémentaires. Certains ont un besoin, récoltent du code à droite et à gauche, et tentent de le modifier pour l'adapter à leur besoin. Si cela fonctionne tant mieux, mais dans le cas contraire c'est difficile à dépanner. Quand on construit une maison, on pose d'abord les fondations avant de mettre la porte. Dans ce cours, je développerai les bases du langage avant d'attaquer le fonctionnement d'un moteur, je parlerai individuellement des composants avant de les regrouper.

J'ai vu des gens appeler à l'aide avec un projet quasiment fini, mais qui ne fonctionne pas, les différents composants n'ont pas été testés individuellement avant. Il faut au contraire tester un moteur, le deuxième, un bouton, tous les boutons, puis enfin, si tout fonctionne, on va gérer l'ensemble.

Ça sert à quoi?

Une carte Arduino comporte principalement un microcontrôleur. C'est un peu comme un ordinateur, en moins puissant. Il peut faire la même chose qu'un gros (calcul, affichage, mémorisation, entrées/sorties...) mais n'est pas dédié aux mêmes tâches. On l'utilisera surtout pour résoudre un besoin spécifique et on le verra comme un automate. Chez vous vous avez des objets qui comportent un microcontrôleur. Ce sont les objets informatisés qui ne sont pas très puissants. Tout sauf les ordinateurs, tablettes, téléphones portables. Nous allons en trouver dans:
- la machine à laver; le microcontrôleur reçoit des informations (niveau d'eau, choix du programme, température) et va donner des ordres en conséquence (faire tourner le moteur, remplir ou vider la cuve, chauffer)
- le compteur linky qui mesure et affiche la consommation ainsi que quelques autres données
- le réveil matin a affichage numérique
- la souris, le clavier de l'ordinateur
- l'imprimante
- les montres
- les mp3...

Il est difficile de dire ce qu'on peut lui demander ou pas, les puissances de calcul augmentent sans arrêt. L'ENIAC, le premier ordinateur pesait 30 tonnes, et faisait 5000 opérations par seconde. La Uno en fait 16 millions. J'ai connu les premiers ordinateurs familiaux (ZX80) qui disposaient de moins de mémoire qu'une Uno. Ce que vous allez demander à une Arduino, c'est principalement de faire la gestion entre des capteurs (interrupteurs, fins de course, température, vitesse du vent...) et des actionneurs (moteurs, leds, servomoteurs...). La limite avec les ordinateurs est floue, on peut utiliser des Arduino avec le wifi, on peut avoir des écrans graphiques couleur... Mais principalement une Arduino s'occupera d'une tâche bien précise.

Des réalisations que l'on voit passer peuvent être;
- gestion de la porte d'un poulailler
- compteur d'individus, de voiture
- gestion de la piscine
- gestion de lumières, principalement à leds
- gestion ce machine à commande numérique...

Forum

En cas de problèmes de compréhension, de programme qui ne fonctionne pas, il existe de nombreux forums d'entraide. Celui que je suis est le forum français d'Arduino. Si vous postez un message sur ce forum il est possible que je le lise. Presque à coup sûr si le titre m'indique que le problème vient de ces pages. Bien entendu, il faut s'inscrire.

Il n'y a qu'en cas de problème avec les pages (faute d'orthographe, lien qui ne fonctionne pas...) que vous devez m'adresser directement un message à Guyat Pecheux point fr

Les différentes parties

Différentes parties compose cette découverte du C et de l'arduino:
- Les bases permettent de commencer quand on débute dans ce monde. C'est un ensemble de page que je conseille de suivre dans l'ordre. La plus part du temps un petit exercice de programmation permet de tester ce qui est découvert. Les corrections peuvent être affichées
- Pour aller plus loin permet de compléter ses connaissances avec différents sujets. Ceux ci pourront être abordés ou pas suivant les besoins dans le désordre. Bien entendu ces pages s'appuient sur les acquis des bases

Sommaire