arduino - lenselense.institutoptique.fr/liesse/2019/stage1/liesse_arduino.pdf · pc standard...

34
Paris-Saclay Bordeaux Saint-Étienne ARDUINO C’est quoi donc ? 1 Julien VILLEMEJANE

Upload: others

Post on 12-Jul-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

ARDUINO C’est quoi donc ?

1

Julien VILLEMEJANE

Page 2: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Qu’est-ce qu’une carte Arduino ?

• Microcontrôleur• Alimentation• Téléversement• Entrées / Sorties

Page 3: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Qu’est-ce qu’un microcontrôleur ?

• Processeur spécialisé• Entrées / Sorties réactives

Page 4: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Qu’est-ce qu’un microcontrôleur ?

• Processeur spécialisé• Entrées / Sorties réactives

Page 5: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Où sont-ils utilisés ?

• Système embarqué• Capteurs intelligents

Page 6: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Où sont-ils utilisés ?

• Système embarqué• Capteurs intelligents

Page 7: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Et par rapport à un PC ?

• Processeurs généralistes vs Processeurs embarqués

Page 8: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Et par rapport à un PC ?

• Processeurs généralistes vs Processeurs embarqués

PC standard ARDUINO Uno

Fréquence 2 GHz 16 MHz

Core / Architecture 4 / 64 bits 1 / 8 bits

Consommation 100 à 500 W < 1 W

Entrées/Sorties / 6 Analog / 13 Digital

Ports extension USB, PCI… SPI, I2C, RS232

RAM 4 Go 2 ko

Page 9: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Et par rapport à un PC ?

• Processeurs généralistes vs Processeurs embarqués

• Et combien de temps met une application à se lancer sur un PC ?• Est-ce une durée fixe ?

PC standard ARDUINO Uno

Fréquence 2 GHz 16 MHz

Core / Architecture 4 / 64 bits 1 / 8 bits

Consommation 100 à 500 W < 1 W

Entrées/Sorties / 6 Analog / 13 Digital

Ports extension USB, PCI… SPI, I2C, RS232

RAM 4 Go 2 ko

Page 10: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Revenons à Arduino

• Accès à des entrées/sorties réactives

• Grande communauté• Shields (extensions)

ARDUINO Uno

16 MHz

1 core / 8 bits

< 1 W

6 Analog / 13 Digital

SPI, I2C, RS232

2 ko

Page 11: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Comment ça marche une carte Arduino ?

• Programme• IDE = Interface de Développement• Téléversement

Page 12: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Comment ça marche une carte Arduino ?

• Programme• IDE = Interface de Développement• Téléversement

Page 13: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Mon premier programme Arduino

• Prise en main interface• Connexion USB• Programme Blink 1

2

3

Page 14: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter une sortie externe

• Cablage d’une LED sur D10

RLED = VARDUINO – VSEUIL / IMAX

• Programme Blink modifié

Page 15: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Câbler un bouton poussoir

• RBP pour protéger l’alimentation

ARDUINO

Récupérer une donnée numérique

Page 16: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Récupérer une donnée analogique

• Câblage potentiomètre

• CAN intégré – 10 bits

• Comment vérifier que la donnée est bien convertie ?

ARDUINO

Page 17: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Récupérer une donnée analogique

• Câblage potentiomètre• Affichage console + Traceur / Exemple : Basics/AnalogReadSerial

• CAN intégré – 10 bits

ARDUINO

Page 18: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Récupérer une donnée analogique

• Câblage potentiomètre• Affichage console + Traceur / Exemple : Basics/AnalogReadSerial

Page 19: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Contrôler la luminosité d’une LED

• Modulation de largeur d’impulsions• Exemple : Basics/Fade

• Quel est le signal appliqué sur la LED ?

Page 20: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Contrôler la luminosité d’une LED

• Modulation de largeur d’impulsions• Exemple : Basics/Fade

Page 21: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un bandeau de LEDs

• Transistor IRL540 ou BS170• Bandeau de LED

Page 22: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur à courant continu

• Une seule direction / Transistor

ARDUINO

• Et pour changer de sens de rotation ?

Page 23: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur à courant continu

• Deux directions / Pont en H / L293-D

Page 24: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur à courant continu

• Deux directions / Pont en H / L293-D

Page 25: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur pas à pas

• Pont en H / L293D• Driver / L297

Page 26: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur pas à pas

• Pont en H / L293D• Driver / L297

• Commande en Demi-pas

Page 27: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur brushless

• Transistors

http://www.energoelektronika.pl/do/ShowNews?id=1599

https://www.digikey.com/en/articles/techzone/2013/mar/an-introduction-to-brushless-dc-motor-control

Page 28: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur brushless

• Pont en H type L293D

Page 29: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur brushless

• Avec drivers de MOS

http://www.energoelektronika.pl/do/ShowNews?id=1599

https://www.digikey.com/en/articles/techzone/2013/mar/an-introduction-to-brushless-dc-motor-control

Page 30: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur brushless

• Avec drivers de MOS

http://www.energoelektronika.pl/do/ShowNews?id=1599

https://www.digikey.com/en/articles/techzone/2013/mar/an-introduction-to-brushless-dc-motor-control

Page 31: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Piloter un moteur brushless

• Utilisation du module Brushless 3 click MikroE• Commande en I2C

Page 32: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Communiquer en I2C

• Réseau de terrain sur 2 fils• Relation maitre/esclaves• Adressage des esclaves

Page 33: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Communiquer en I2C

• Exemple du TC1321 / DAC sur carte Microchip I2C • Bibliothèque WIRE

Page 34: ARDUINO - LEnsElense.institutoptique.fr/liesse/2019/Stage1/LIESSE_Arduino.pdf · PC standard ARDUINO Uno Fréquence 2 GHz 16 MHz Core / Architecture 4 / 64 bits 1 / 8 bits Consommation

Paris-Saclay BordeauxSaint-Étienne

Des tonnes de bibliothèques !!

• Brushless Servo• Stepper Driver / DRV8825