• Aucun résultat trouvé

[PDF] Support de cours microcontroleur Arduino | Cours gratuit

N/A
N/A
Protected

Academic year: 2021

Partager "[PDF] Support de cours microcontroleur Arduino | Cours gratuit"

Copied!
54
0
0

Texte intégral

(1)

ARDUINO ET NOUS…

(2)
(3)
(4)

Qu’est-ce qu’Arduino?

Open-Source Electronics Prototyping

(5)

Qu’est-ce qu’Arduino?

• Plateforme

– Environnement de développement (IDE) – Différentes cartes

– Shields

– Librairies pour hardware (shields, sensors, …)

• Prototypage

– Idéal pour développer rapidement un projet unique

• Open-Source

– Schémas des cartes disponible, même pour duplication – Code de l’IDE disponible

– Grosse communauté (projet lancé en 2005)

(6)

Sondage

• Qui a des notions d’électronique?

(7)

Qu’est-ce qu’Arduino?

• Plateforme

– Environnement de développement (IDE) – Différentes cartes

– Shields

(8)

Qu’est-ce qu’Arduino?

• Plateforme

– Environnement de développement (IDE) – Différentes cartes

– Shields

(9)
(10)
(11)

I

ntegrated Development Environment

• Un programme pour:

– Programmer le microcontrôleur • Codage • Compilation • Transfert du programme • Communiquer via port série

– Pour toutes les cartes Arduino (même les clones)

• Multiplateforme

• Nécessite cependant certains drivers de port

série

(12)

Qu’est-ce qu’Arduino?

• Plateforme

– Environnement de développement (IDE) – Différentes cartes

– Shields

(13)
(14)
(15)
(16)

Les cartes – Résumé

• La collection officielle arduino.cc

– http://www.arduino.cc/en/Main/Products

• Les autres officielles (Arduino at heart)

– http://www.arduino.cc/en/ArduinoAtHeart/Produ

cts

• Les clones, et autres…

• Ou les trouver?

– Internet (Arduino.cc, Aliexpress, ...) – Makilab

(17)

Qu’est-ce qu’Arduino?

• Plateforme

– Environnement de développement (IDE) – Différentes cartes

– Shields

(18)
(19)

Les shields

• Format standard

• Empilable (sous certaines précautions)

• Ajout rapide de fonctionnalités

– GSM, Ethernet, WiFi, Moteur, GPS,…

• Transformation rapide en contrôleur de

machines complexes

– Imprimantes 3D RepRap, BQ,… via un shield RAMPS

(20)

Shield Ramps 1.4

En combinaison avec l’Arduino Mega Permet de contrôler une imprimante 3D: - 5 Moteurs pas à pas (3 axes, 2 extrudeurs) - Mesures de température des têtes

- Chauffe de 2 têtes d’extrusion - Lit Chauffant

(21)

Qu’est-ce qu’Arduino?

• Plateforme

– Environnement de développement (IDE) – Différentes cartes

– Shields

(22)
(23)
(24)

Bibliothèque et documentation

• Fournisseur du shield ou du composant

http://playground.arduino.cc/

https://learn.adafruit.com/category/learn-arduino

http://arduino.stackexchange.com/

• Google, …

(25)

Qu’est-ce qu’Arduino?

• Plateforme • Prototypage

– Idéal pour développer rapidement un projet unique • Open-Source

– Schémas des cartes disponible, même pour duplication – Code de l’IDE disponible

– Grosse communauté (projet lancé en 2005) • Electronique

(26)
(27)

Prototypes

http://www.instructables.com/id/Arduino-Projects/

http://playground.arduino.cc/projects/ideas

• …

(28)

Qu’est-ce qu’Arduino?

• Plateforme • Prototypage

– Idéal pour développer rapidement un projet unique • Open-Source

– Schémas des cartes disponible, même pour duplication – Code de l’IDE disponible

– Grosse communauté (projet lancé en 2005) • Electronique

(29)

Electronique

• Notions de base

– Loi d’Ohm – Entrées/Sorties – Digitale/analogique – Composants

(30)

Loi d’Ohm

• Loi d’Ohm : U = RI

• Habituellement U est imposé (5V; 3,3V) – Attention, certains capteurs ne supportent que 3,3V

• En pratique sur l’Arduino, si R est trop faible I peut endommager le microcontrôleur (max 40 mA sur le UNO)

• On ne peut pas alimenter directement n’importe quel composant sans risque.

(31)

Loi d’Ohm

• Cas pratique: Led + Résistance

• LED:

– Chute de tension imposée – Courant max

• Résistance

– Courant dépend de la tension

(32)

Loi d’Ohm

• Cas pratique: Led + Résistance

• LED:

– Chute de tension imposée – Courant max

• Résistance

– Courant dépend de la tension

(33)

Entrée/Sortie

• Input/Output (par rapport au

microcontrôleur)

– Peut être digitale

• 0 ou 1, en réalité 0-5V – Peut être analogique

• valeur variant entre 0 et 255 (out) (0 et 1023 in) sur 8 (10) bits pour une valeur variant entre 0 et 5V

5 V 0 V

5 V 0 V

(34)

Entrée/Sortie

• Entrée Digitale:

– Bouton poussoir

– Bouton à position fixe

• Sortie Digitale:

– LED – Relais

(35)

Entrée/Sortie

• Entrée Analogique

– Potentiomètre

– Résistance Photo sensible

– Lecture d’un niveau variable (humidité, température, …)

• Sortie analogique (PWM)

– LED atténuée

(36)

Entrée/Sortie

• Sortie PWM

– Une sortie digitale utilisé pour simuler un signal analogique en moyenne temporelle.

(37)

Composants de base

• Résistance, potentiomètre, etc.

– Limiter le courant, fournir des valeurs analogiques

• Boutons

– Faire changer une entrée digitale

• Leds, écrans LCD,…

• En pratique: Vérifier les branchements avant de

mettre sous-tension

(38)

• Moteur

– Pas à pas

• Chaque pas est un alignement • 64 pas/tour (5,625°/pas)

– Carte d’interface

• Transistors de puissance • 500mA/canal

(39)
(40)

Installation de l’IDE

• Download:

– http://www.arduino.cc/en/Main/Software

• Tutoriel:

(41)

Premiers pas…

• Programme de base: deux boucles (bare

minimum)

– Une étape d’initialisation exécutée 1 fois (setup) – Une boucle courante exécutée à l’infini (loop)

(42)

Premiers pas

• Programmation C: – Fonctions • Syntaxe – Commentaires : // ou /* */ • Structures

– If, then, else – While

• Variables

– Int

– Booléens – string

(43)

Premiers pas…

• Breadboard

– Connexions sans soudure – Par ligne

(44)

Premiers pas…

• Breadboard

– Connexions sans soudure – Par ligne (numéro/polarité)

(45)

Cas pratique

Challenge:

• Allumer/éteindre une LED

• Avec un bouton poussoir

(46)

Cas pratique

• Matériel?

• Carte Arduino

• Breadboard

• LED

• Résistances

• Bouton

(47)

Cas pratique

• Schéma électrique?

• Une entrée => Bouton

– Variantes? Avec ou sans résistance

• Une sortie LED

(48)

Premiers pas

• Connections électriques du bouton

(49)

Pull-Up

• Evite une entrée flottante

(50)

Câblage LED?

(51)

Cas Pratique

• Code?

• Choix des entrée/sortie et lien dans le code

– Variables,

(52)

Premier pas

• La librairie de base contient les codes de base

pour la plupart des fonctions

(53)

Code exemple

• /* Button

Turns on and off a light emitting diode(LED) connected to digital pin 13, when pressing a pushbutton attached to pin 2. The circuit:

* LED attached from pin 13 to ground * pushbutton attached to pin 2 from +5V * 10K resistor attached to pin 2 from ground

* Note: on most Arduinos there is already an LED on the board attached to pin 13.

created 2005

by DojoDave <http://www.0j0.org> modified 30 Aug 2011

by Tom Igoe

This example code is in the public domain. http://www.arduino.cc/en/Tutorial/Button */

// constants won't change. They're used here to // set pin numbers:

const int buttonPin = 2; // the number of the pushbutton pin const int ledPin = 13; // the number of the LED pin

// variables will change:

int buttonState = 0; // variable for reading the pushbutton status void setup() {

// initialize the LED pin as an output: pinMode(ledPin, OUTPUT);

// initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT);

} void loop(){

// read the state of the pushbutton value: buttonState = digitalRead(buttonPin); // check if the pushbutton is pressed. // if it is, the buttonState is HIGH: if (buttonState == HIGH) {

// turn LED on: digitalWrite(ledPin, HIGH); }

else { // turn LED off: digitalWrite(ledPin, LOW); }

}

Commentaires / Header

Initialisation, par défaut la led 13, pour être conforme au cablage précédent: ledPin = 9; buttonPin = 7

(54)

Plus loin

• Faire clignoter la LED

• Allumer/Eteindre progressivement

• Mettre un délai

Références

Documents relatifs

De la représentation filmique faite par le documentaire, à la représentation de soi que travaille l’habitant quand il vient affirmer ses propos face à la caméra, en passant par

Ainsi, grâce à leur intense activité, à la motivation de leurs adeptes mais aussi à leur souci affiché de vivre dans leur temps, les Durville ont-ils contribué à

Parce que cette pièce sera en quelque sorte une première — première pour laquelle il était assuré que l’écriture eût pour destination la scène et le livre — servira

Environ 700 dinars poids et divisions datés, dont certains fragmentaires, ont été publiés et un peu plus de 100 dirhams poids (7 dans la collection de la BNU).. Il semble que

Ainsi, identifier dans tel ou tel objet culturel de telle ou telle forme langagière le message d’une certaine espérance, donc combler un horizon d’attente, c’est

We will also asso- ciate statistical prioritization to more classical test selection criteria like transition coverage and state coverage in order to improve the quality of

Les positions socialistes et marxistes classiques voient dans l'avènement des TIC une possible nouvelle forme d'exploitation du travail (ce qui sera nommé « digital labor » mais qui

In this paper, we propose PAbAC, a novel privacy preserving Attribute-based framework, that com- bines Attribute Based Encryption (ABE) and At- tribute Based Signature (ABS)