A la découverte du Raspberry Pi : avant-propos
Publié le 13 février 2014On peut comprendre pourquoi l’annonce du Raspberry Pi a laissé pas mal de monde sceptique. Un ordinateur de la taille d’une carte de crédit, vendu à 35 €, c’était trop beau pour être vrai. C’est pour cela qu’avant même de sortir d’usine, le Raspberry Pi croulait déjà sous les commandes.
Pendant des mois, la demande a largement dépassé l’offre, et la liste d’attente pour ces micro-ordinateurs s’allongeait de jour en jour. Hormis pour le prix, pourquoi une foule de passionnés était-elle prête à attendre si longtemps ? Mais avant de découvrir ce qui rend le Raspberry Pi si fantastique, parlons un peu du public auquel il est destiné.
En 2006, Eben Upton et ses collègues de l’université de Cambridge ont remarqué que les aspirants à un diplôme en informatique avaient moins d’expérience que ceux des années 1990. Ils ont attribué ce recul, entre autres facteurs, à « l’émergence chez les particuliers du PC et des consoles de jeu qui ont remplacé les Amiga, BBC Micro, Spectrum ZX et Commodore 64, des machines avec lesquelles la génération précédente avait appris à programmer ». Le fait que l’ordinateur soit devenu si important pour tous les membres du foyer peut aussi décourager les jeunes de s’aventurer dans ce domaine, à cause du risque d’endommager un outil important pour toute la famille. Mais récemment, les technologies qui ont permis aux téléphones mobiles et tablettes de devenir de moins en moins chers et de plus en plus puissants, ont projeté le Raspberry Pi dans le monde des cartes « ultra-économiques-mais-super-faciles-à-utiliser ». Dans une interview pour BBC News, Linus Torvalds, fondateur du noyau Linux, a même dit que le Raspberry Pi « rend l’échec abordable ».
Que peut-on faire avec un Raspberry Pi ?
L’une des grandes forces du Raspberry Pi, c’est qu’il peut être utilisé dans une grande variété de projets. C’est une plate-forme souple, de divertissement, de travail ou d’expérimentation, vous permettant aussi bien de regarder des vidéos et de surfer sur le Web, que de bidouiller, d’apprendre ou de réaliser des montages électroniques. Voici quelques-unes de ses applications.
Un véritable ordinateur
Il ne faut pas oublier que le Raspberry Pi est avant tout un ordinateur et qu’il peut donc être utilisé comme tel. Après son installation, décrite au chapitre 1, vous pouvez choisir de le démarrer dans un environnement de bureau graphique incluant un navigateur web, ce qui constitue la manière la plus courante d’utiliser un ordinateur de nos jours. Au-delà du Web, vous pouvez installer une grande variété de logiciels libres et gratuits comme la suite bureautique LibreOffice qui permet de travailler sur des documents texte et des feuilles de calculs quand vous n’avez pas de connexion à Internet.
Un support d’apprentissage de la programmation
Le Raspberry Pi étant à l’origine un outil pédagogique pour encourager l’apprentissage de l’informatique, il est fourni avec des interpréteurs et des compilateurs pour différents langages de programmation. En particulier, pour le débutant, il y a Scratch, un langage de programmation graphique créé par le MIT, qui sera présenté au chapitre 5. Mais si vous voulez commencer à coder tout de suite, le langage de programmation Python est un bon moyen de vous lancer : vous en trouverez les bases au chapitre 3. Vous pouvez également programmer sur votre Raspberry Pi dans d’autres langages tels que C, Ruby, Java ou Perl.
Une plate-forme pour interagir avec le monde physique
Le Raspberry Pi se différencie d’un ordinateur standard non seulement par son prix et sa taille mais aussi par sa capacité à s’intégrer dans des projets électroniques. À partir du chapitre 7, nous vous montrerons comment utiliser le Raspberry Pi pour contrôler des LED et des appareils connectés au secteur, ainsi que pour lire l’état de boutons et d’interrupteurs.
Un outil indispensable pour les makers
Les makers et bidouilleurs disposent déjà d’un très grand choix de platesformes et de briques électroniques pour construire des projets utilisant les nouvelles technologies. Les cartes à microcontrôleur comme Arduino sont récemment devenues très populaires grâce à leur simplicité d’utilisation. Mais les nouvelles plates-formes à base de System on a Chip (SoC) comme le Raspberry Pi diffèrent des microcontrôleurs traditionnels sur de nombreux points. En réalité, un Raspberry Pi partage plus de caractéristiques avec votre ordinateur qu’avec Arduino.
Cela ne veut pas dire que le Raspberry Pi est mieux qu’un microcontrôleur traditionnel, ils sont tout simplement différents. Par exemple, si vous voulez réaliser un simple thermostat, il sera probablement plus approprié d’utiliser un Arduino Uno ou un microcontrôleur similaire, pour des raisons de simplicité, de coût et de consommation. Mais si vous souhaitez pouvoir modifier les paramètres de ce thermostat par le Web et télécharger son historique dans un fichier, le Raspberry Pi constituera un meilleur choix.
Le choix de l’un ou l’autre dépend des spécifications et des contraintes de votre projet, mais vous n’êtes pas nécessairement obligé de choisir entre les deux. Au chapitre 6, vous verrez comment utiliser le Raspberry Pi pour programmer Arduino et comment les faire communiquer ensemble.
Un lecteur multimédia
Grâce à ses sorties vidéo (HDMI et composite), le Raspberry Pi peut être facilement branché sur un téléviseur. Il est aussi doté d’une puissance processeur suffisante pour décoder une vidéo haute définition en plein écran. Tirant parti de ces avantages, les contributeurs de XBMC, un lecteur multimédia libre et open source, ont porté leur projet sur le Raspberry Pi. Ce lecteur, qui supporte de nombreux formats multimédias, offre une interface avec de grands boutons et de gros caractères, ce qui le rend facile à utiliser depuis votre canapé. Il transforme votre Raspberry Pi en un home cinéma entièrement personnalisable.
Un outil de programmation bas niveau
La plupart des développeurs écrivent des programmes qui tournent sur un système d’exploitation comme Windows, Mac OS, ou, dans le cas de Raspberry Pi, Linux. Mais si vous écriviez du code qui s’exécute directement sur le processeur sans passer par un système d’exploitation ? Avec votre Raspberry Pi, vous pouvez même écrire votre propre système d’exploitation à partir de rien si cela vous branche. Le laboratoire d’informatique de l’université de Cambridge a ainsi publié un cours gratuit en ligne qui vous guide dans l’écriture de votre propre système d’exploitation en langage machine.
Linux et Raspberry Pi
Un ordinateur standard fonctionne avec un système d’exploitation comme Windows, OS X ou Linux. C’est ce système qui démarre quand vous allumez votre machine et qui fournit à vos logiciels un accès aux fonctionnalités matérielles de votre ordinateur. Par exemple, si vous codez une application qui utilise Internet, vous pouvez, pour ce faire, utiliser les fonctions fournies par le système d’exploitation. Vous n’avez pas besoin de comprendre et d’écrire du code pour chaque modèle d’interface Ethernet ou Wi-Fi disponible.
Comme tous les autres ordinateurs, le Raspberry Pi utilise un système d’exploitation. Celui fourni par défaut est une version de GNU/Linux appelée Raspbian1. GNU/Linux est idéal pour le Raspberry Pi car il est libre et open source. Non seulement il rend la plate-forme bon marché, mais aussi très souple et personnalisable. Et vous n’êtes pas limité à Raspbian puisqu’il existe d’autres versions (encore appelées distributions) différentes de Linux que vous pouvez charger dans le Raspberry Pi. Quelques systèmes non Linux sont également disponibles. Dans ce livre, nous utiliserons la distribution standard Raspbian, téléchargeable sur la page du site de Raspberry Pi.
Si vous ne connaissez pas Linux, ne vous inquiétez pas : le chapitre 2 vous fournira toutes les bases pour vous en servir.
Ce que les autres ont déjà fait avec le Raspberry Pi
Quand vous avez accès à une technologie nouvelle et prometteuse, il est parfois difficile de décider ce que l’on va faire avec. Si vous hésitez encore, sachez que ce ne sont pas les idées intéressantes qui manquent et que vous pourrez vous inspirer d’une foule d’exemples de projets créatifs utilisant un Raspberry Pi. En tant que rédacteurs du magazine américain MAKE, nous avons vu passer ainsi beaucoup d’applications fantastiques du Raspberry Pi. En voici quelques-unes.
Une table basse à jeux d’arcade intégrés
Membre du site Instructables, grahamhelding y a publié un tutoriel décrivant pas à pas comment construire une table basse qui sert aussi d’émulateur de jeux d’arcade classiques. Pour faire fonctionner les jeux sur Raspberry Pi, il a utilisé MAME (Multiple Arcade Machine Emulator), un projet libre et open source qui vous permet de jouer aux jeux d’arcade sur des ordinateurs modernes. Sur la table elle-même, il a monté un écran LCD de 24 pouces connecté au Raspberry Pi par HDMI. Pour les entrées, il a utilisé un joystick et des boutons d’arcade classiques connectés aux broches GPIO.
Le raspod
Lors du concours Summer Coding 2012, sponsorisé par la Fondation Raspberry Pi, un adolescent indien, Aneesh Dogra, a remporté la deuxième place en concevant Raspod, un lecteur MP3 contrôlable par Internet. Programmé en Python avec l’aide du framework web Tornado, Raspod permet aux utilisateurs de se connecter à leur Raspberry Pi pour écouter de la musique, la stopper, changer le volume, sélectionner des chansons et gérer les listes de lecture. La musique, qui sort par le connecteur audio du Raspberry Pi, peut être écoutée avec deux enceintes d’ordinateur ou sur une chaîne hi-fi.
Un superordinateur
Beaucoup de superordinateurs sont créés à partir de grappes (clusters) d’ordinateurs standards, qui se répartissent la charge de travail entre les différents processeurs. En suivant cette idée, un groupe d’ingénieurs en informatique de l’université de Southampton, au Royaume-Uni, a connecté 64 Raspberry Pi pour créer un superordinateur bon marché. Même s’il est beaucoup moins puissant que les superordinateurs actuels, ce projet illustre les grands principes de fonctionnement de tels systèmes. Le plus incroyable, c’est que la structure supportant tous les Raspberry Pi a été construite en Lego par le fils de 6 ans du chef de ce projet !
1. NdT : Linux est le cœur du système, appelé kernel, GNU est un projet qui fournit de nombreux logiciels indispensables au fonctionnement du système, et Raspbian est dérivé de Debian, une distribution qui combine harmonieusement le kernel, les outils et les applications.