• Aide
  • Eurêkoi Eurêkoi

Livre

Arduino : apprenez à coder avec mBlock : projets robotiques, créatifs et scientifiques

Résumé

Une présentation des bases permettant d'acquérir les connaissances nécessaires afin de se lancer individuellement ou collectivement dans un projet technique ou artistique avec Arduino. ©Electre 2017


  • Éditeur(s)
  • Date
    • 2017
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (325 p.) ; 22 x 18 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-409-01107-8
  • Indice
    • 621.45 Microélectronique (transistors, composants, circuits intégrés)
  • Quatrième de couverture
    • Arduino

      Apprenez à coder avec mBlock

      Ce livre sur Arduino a pour objectif de transmettre au lecteur les ressources nécessaires pour apprendre à programmer une carte Arduino avec le langage visuel mBlock. Il s'adresse autant au néophyte qu'à l'informaticien souhaitant réaliser des projets de plus en plus élaborés tout en limitant l'apprentissage d'un langage informatique et en démythifiant les principes d'électronique et de mécanique.

      Dans la première partie du livre, les concepts de développement avec mBlock sont détaillés. Qu'il s'agisse de revenir à l'origine de la programmation visuelle, de faire le lien entre les algorithmes et les blocs, d'utiliser les bibliothèques de scripts de mBlock ou encore d'en étendre les fonctionnalités en détaillant la démarche de réalisation d'extensions, l'auteur livre au lecteur les bonnes pratiques qui lui permettront de développer un programme de qualité professionnelle et de faciliter ainsi sa mise au point.

      La seconde partie du livre se concentre sur la concrétisation de projets à réaliser avec Arduino en revenant également sur quelques notions fondamentales d'électronique et de mécanique. L'auteur y traite de plusieurs approches de réalisation selon que l'on utilise des platines (shields) déjà prêtes, comme la carte ESP8266. ou que l'on recycle ou achète des composants. Dans le courant de l'IoT, il propose également un pas-à-pas pour réaliser un projet créatif et donne les clés d'utilisation de mBlock pour programmer et administrer un objet connecté.

      Pour Finir, la dernière partie présente une approche d'enseignement de la programmation pour Arduino avec mBlock. L'auteur choisit de traiter cet enseignement par une approche ludique de la robotique, résultant du triptyque informatique/électronique/mécanique et tirée de son expérience.

      Au terme de la lecture de ce livre, vous serez ainsi en mesure d'exploiter les possibilités offertes par la programmation d'une carte Arduino avec mBlock, que ce soit dans un cadre individuel ou lors d'ateliers pédagogiques.


  • Tables des matières
      • Arduino

      • Apprenez à coder avec mBlock (projets robotiques, créatifs et scientifiques)

      • Avant-propos
      • Chapitre 1
        Développement et codage
      • 1. Au commencement était le verbe : les langages informatiques11
      • 2. L'art de programmer un ordinateur (Donald E. Knuth)13
      • 2.1 En ce temps-là13
      • 2.2 Saurez-vous calculer la date de Pâques du premier coup ?15
      • 3. La programmation textuelle : un frein à l'apprentissage ?17
      • 4. La programmation visuelle et les blocs21
      • 5. Aller plus vite et plus loin avec la programmation visuelle et la génération de code25
      • 6. Utiliser l'atelier mBlock pour développer des programmes pour l'Arduino27
      • 6.1 De Scratch à mBlock28
      • 6.2 De mBlock à Arduino32
      • 7. Les autres ateliers et outils de programmation visuelle37
      • 7.1 Ardublock37
      • 7.2 Blockly37
      • 8. Conserver ses données et choisir une solution de stockage local ou en « cloud »38
      • 8.1 Des fichiers locaux38
      • 8.2 Les structures de données pour le Web41
      • 8.3 Un stockage dans un nuage, petit ou grand41
      • 9. La loi du moindre effort : réutiliser et partager le code, utiliser des bibliothèques42
      • 10. Communiquer avec le reste du monde : les interfaces et protocoles43
      • 10.1 Multiplexage et protocoles courants (SPI, I2C)43
      • 10.2 Le protocole I2C44
      • 10.3 Le protocole SPI46
      • 10.4 Comment choisir entre I2C et SPI ?47
      • 10.5 Les autres protocoles : 1-Wire, 3-Wire et SMBus48
      • 10.5.1 1-Wire48
      • 10.5.2 3-Wire et MicroWire49
      • 10.5.3 SMBus49
      • Chapitre 2
        Algorithmes et blocs
      • 1. « Algorithme + structure de données = programme » (Nicklaus Wirth)51
      • 1.1 Les structures de contrôle52
      • 1.2 Structures conditionnelles dans Scratch54
      • 1.3 Structures répétitives dans Scratch55
      • 1.4 Les structures de données57
      • 1.5 Les types de données utilisés par l'Arduino57
      • 1.5.1 Les nombres57
      • 1.5.2 Les booléens58
      • 1.5.3 Les tableaux58
      • 1.5.4 Les chaînes de caractères58
      • 1.5.5 Les fonctions : void58
      • 1.5.6 Les constantes58
      • 1.6 Les structures de contrôle les plus utilisées59
      • 1.6.1 La structure conditionnelle59
      • 1.6.2 La structure répétitive60
      • 1.7 Les opérateurs61
      • 1.7.1 Les opérateurs de comparaison61
      • 1.7.2 Les opérateurs booléens61
      • 1.7.3 Les opérateurs composés62
      • 1.8 Les fonctions courantes62
      • 1.8.1 Entrées-sorties digitales62
      • 1.8.2 Entrées-sorties analogiques62
      • 1.9 Autres fonctions et librairies63
      • 2. Qualités et défauts des algorithmes (complexité, rapidité, « gloutonnerie »63
      • 2.1 Les critères de choix ou d'évaluation des algorithmes64
      • 2.2 De la gloutonnerie des algorithmes64
      • 3. Aller au-delà de Scratch : utiliser la bibliothèque de blocs de mBlock66
      • Chapitre 3
        Étendre les fonctionnalités de mBlock
      • 1. Utiliser et gérer des extensions67
      • 1.1 Les extensions de base69
      • 1.2 Les extensions évoluées ou spécifiques70
      • 1.3 Les extensions cachées85
      • 1.4 Les extensions manquantes86
      • 2. Créer ses propres extensions86
      • 2.1 Entrer dans la logique des extensions de mBlock87
      • 2.2 L'arborescence d'une extension88
      • 2.3 La structure d'un fichier de définition d'extension89
      • 2.4 Quelques règles de syntaxe utiles à garder présentes à l'esprit90
      • 2.5 La description de l'extension91
      • 2.6 La définition du ou des blocs92
      • 2.7 Une précision concernant les bibliothèques96
      • 2.8 La définition des options des menus déroulants97
      • 2.9 Les valeurs des menus et les valeurs par défaut97
      • 2.10 La traduction97
      • 2.11 Le fichier JavaScript98
      • 2.12 Créer une extension avec un éditeur de code98
      • 2.13 Une démarche de création d'une extension et son application98
      • 2.14 Application à un exemple simple102
      • 2.15 Faire évoluer une extension108
      • 3. Assembler des scripts dans l'IDE de l'Arduino113
      • Chapitre 4
        Applications à quelques petits projets
      • 1. L'Arduino comme base technique pour le prototypage117
      • 2. De la plaque d'expérimentation (« breadboard ») au circuit imprimé123
      • 3. Déployer à grande échelle et miniaturiser : l'ESP8266126
      • 4. Quelques projets courants128
      • 4.1 Commander un moteur avec un transistor et un pont en H128
      • 4.2 Piloter un servomoteur classique132
      • 5. Gérer des capteurs : distance, lumière, son, température134
      • 5.1 Un cas pratique d'utilisation d'un capteur : la mesure de distance136
      • 5.2 Asservir un servomoteur à un capteur138
      • 6. Des projets moins courants142
      • 6.1 Utiliser un accéléromètre142
      • 6.1.1 Qu'est-ce qu'un accéléromètre ?142
      • 6.1.2 Le fonctionnement d'un accéléromètre et d'un gyroscope144
      • 6.1.3 Les bases : la lecture des données RAW147
      • 6.1.4 Un pas plus loin : le quaternion et les angles d'Euler149
      • 6.1.5 Utilisation dans les montages et projets150
      • 6.1.6 Les extensions mBlock pour mettre en oeuvre un accéléromètre151
      • 6.2 Ajouter une base de temps155
      • 6.3 Stocker des données sur une carte SD161
      • Chapitre 5
        Conseils de Pro
      • 1. Définir des fonctions et des procédures165
      • 1.1 Les fonctions165
      • 1.2 Les procédures166
      • 2. Adopter une règle de nommage des variables et des objets (et s'y tenir !)172
      • 3. Gérer les versions de code172
      • 3.1 Les outils de gestion de version172
      • 3.2 Une métaphore arboricole ou ferroviaire173
      • 4. L'assemblage et l'intégration174
      • 5. Tester et détecter les bugs avant l'exécution : une check-list avant décollage175
      • 6. Tracer et commenter les algorithmes et le code177
      • 7. Ne jamais supposer que le microcontrôleur ou l'ordinateur sait quelque chose181
      • 8. Penser au pire, développer pour le meilleur182
      • 8.1 Penser au pire182
      • 8.2 Développer pour le meilleur184
      • 9. Autres proverbes utiles d'Henry Ledgard185
      • 10. Un exemple de problème : le rebond des boutons poussoirs et des détecteurs de contacts186
      • 10.1 Le problème186
      • 10.2 Les solutions187
      • 11. Cent fois sur le métier remettre son ouvrage188
      • 12. Gérer les bibliothèques190
      • 12.1 Chevrons et guillemets190
      • 12.2 Le cas particulier de mBlock191
      • Chapitre 6
        Un peu d'électronique et de mécanique bien utile
      • 1. Courants forts et courants faibles, moyenne et basse tension193
      • 2. Les robots montrent leurs muscules : des courants forts et des tensions élevées194
      • 3. Des signaux faibles196
      • 4. Séparer les deux mondes197
      • 5. Juste assez d'électronique pour faire marcher ses montages199
      • 5.1 L'alimentation d'une LED199
      • 5.2 Potentiomètre et poussoirs199
      • 5.3 Commande de puissance200
      • 5.4 Pont en H201
      • 5.5 Commande de servomoteur202
      • 5.6 Régulation de tension202
      • 5.7 Utiliser des schémas courants et réutilisables202
      • 6. La mécanique pour les non-mécaniciens204
      • 6.1 La transformation du mouvement204
      • 6.2 Roues et pignons, poulies et courroies, bielles et vérins205
      • 6.3 Couple moteur et coefficient de réduction206
      • Chapitre 7
        Les objets connectés et l'Internet des objets (loT)
      • 1. L'Internet des objets (loT. Internet of Things)207
      • 2. Sécuriser ses montages et contrôler les accès209
      • 2.1 Les objets connectés et leur environnement hostile209
      • 2.2 Sécuriser ses montages210
      • 2.3 Contrôler ses accès211
      • 2.4 Les loT avec Arduino212
      • 3. Relayer la valeur d'un capteur par Internet, un affichage ou un son212
      • 3.1 Un premier montage basé sur un serveur web214
      • 3.1.1 Le capteur de température215
      • 3.1.2 Le son215
      • 3.1.3 L'affichage216
      • 3.1.4 La communication par Internet216
      • 3.1.5 Affectation des pins217
      • 3.1.6 Script mBlock217
      • 3.1.7 Composants nécessaires219
      • 3.1.8 Bibliothèques nécessaires219
      • 3.1.9 La gestion du capteur219
      • 3.1.10 La communication par Internet221
      • 3.1.11 L'affichage LCD 16 x 2224
      • 3.2 Amélioration possible et évolution226
      • 4. Web-applications pour tablettes et portables226
      • 4.1 Blynk226
      • 4.1.1 Une extension mBlock pour Blynk228
      • 4.1.2 Application : éteindre et allumer une LED depuis Internet230
      • 4.2 ThingSpeak233
      • Chapitre 8
        Un beau projet pédagogique et créatif avec mBlock
      • 1. Introduction235
      • 2. Une idée de projet pédagogique et créatif235
      • 3. Une variante ludique238
      • 4. Une touche artistique238
      • 5. Mettre en pratique : le pas-à-pas d'un projet créatif, ludique et artistique240
      • 5.1 Une première approche240
      • 5.2 La liste des composants nécessaires240
      • 6. Affectation des composants aux ports de l'Arduino242
      • 7. Déclaration des variables244
      • 8. L'algorithme de traitement246
      • 8.1 Initialisation des variables248
      • 8.2 Algorithme de traitement des données mesurées par les capteurs248
      • 9. Finalisation et mise en route256
      • Chapitre 9
        Les projets pédagogiques et scientifiques
      • 1. Choisir un projet motivant, pédagogique et, si possible, « dans le courant »259
      • 2. Les stations de mesure264
      • 2.1 La mesure environnementale et climatique et le partage de ses données265
      • 2.2 Mesures et calculs267
      • 2.3 Horodatage (timestamp) ou estampillage des données268
      • 2.4 Stockage des données270
      • 2.5 Restitution des données272
      • Chapitre 10
        Une approche ludique par la robotique
      • 1. Quelques robots célèbres273
      • 1.1 Robbie274
      • 1.2 Gort274
      • 1.3 R2-D2 et C-3P0275
      • 1.4 WALL-E275
      • 1.5 Marvin276
      • 1.6 NAO, Roméo et Pepper276
      • 1.7 TARS277
      • 2. Les kits de découverte du marché278
      • 3. L'approche « maker » et le recyclage d'objets280
      • 4. 1 pile + 1 Arduino + quelques composants + 2 servomoteurs = un robot suiveur en ligne281
      • 4.1 Les capteurs281
      • 4.2 La logique de commande282
      • 4.3 Les actionneurs283
      • 4.4 L'architecture générale du robot283
      • 4.5 Le script mBlock284
      • 5. Simplifier pour expérimenter284
      • 6. La documentation utile : les pas à pas287
      • 7. ERA : les trois séquences d'un atelier de robotique ou de programmation : Enseigner, Réfléchir, Appliquer290
      • 7.1 Enseigner290
      • 7.2 Réfléchir292
      • 7.3 Appliquer293
      • 7.4 Mettre en oeuvre la démarche293
      • Chapitre 11
        Didactique de la programmation et apprentissage du numérique
      • 1. À chacun son parcours, à chacun son approche295
      • 2. Didactique de la programmation et apprentissage du numérique296
      • 3. Le travail en atelier de « coding » : autonomie et collaboration297
      • 3.1 Le codage individuel298
      • 3.2 Le codage collectif298
      • 3.3 Le « hackaton » et le « game jam » ou « game creation event »299
      • 3.4 Un exemple d'apprentissage par le jeu avec Code Combat299
      • 4. Un autre triptyque : parcours pédagogique - documents d'appui - outils300
      • 5. Encourager pour aller plus loin et développer l'expertise302
      • Chapitre 12
        Utiliser ce livre en s'adaptant à son public : des élèves aux « makers »
      • 1. Dans une salle de classe305
      • 2. Lors d'une formation à la robotique306
      • 3. Dans un atelier de codage306
      • 4. Chez soi ou dans un « Lab »308
      • 5. Suivre le développement de la technique et améliorer ses montages308
      • 6. Miser sur les librairies et les composants intégrés309
      • Index311

  • Origine de la notice:
    • Electre
  • Disponible - 621.45 MOL

    Niveau 3 - Techniques