Beruflich Dokumente
Kultur Dokumente
Raspberry Pi
Prise en main
et premires ralisations
Du mme auteur
Avant-propos
IX
1 la dcouverte du RaspberryPi
1.1 RaspberryPi A ou B?
1.3 Lalimentation
1.3.1
1.3.2
1.3.3
1.5 Lcran
1.5.1
1.5.2
8
9
1.6 Le rseau
10
10
1.7.1
11
1.7.2
13
2 la dcouverte de Raspbian
2.1 Premire mise sous tension
15
17
17
2.1.1
19
2.1.2
21
23
2.2.1
Le menu Accessoires
24
2.2.2
Le menu ducation
25
2.2.3
Le menu Internet
26
2.2.4
Le menu Programmation
27
2.2.5
Le menu Graphismes
27
2.2.6
28
III
Le menu Prfrences
28
29
2.3.1
29
2.3.2
30
2.3.3
Utilisateurs et groupes
31
2.3.4
32
2.3.5
34
2.3.6
35
2.3.7
37
39
2.4.2
40
2.4.3
41
2.4.4
42
43
43
3.1.1
44
3.1.2
Accs Internet
45
46
3.2.1
47
3.2.2
49
3.2.3
51
54
3.3.1
55
3.3.2
56
60
61
3.5.1
62
3.5.2
64
3.5.3
65
3.5.4
66
3.5.5
67
69
69
70
4.1.2
75
4.1.3
78
IV
38
2.4.1
78
81
4.3.2
Utilisation du serveur
84
84
4.4.1
De la musique en travaillant
85
4.4.2
86
4.4.3
87
4.4.4
90
5 la dcouverte de Python
93
93
5.1.1
Interprteur et compilateur
94
5.1.2
De la ligne au programme
95
5.1.3
98
5.2.2
Importation de bibliothques
100
101
99
5.3.1
101
5.3.2
101
5.3.3
102
106
5.4.1
Oprateurs arithmtiques
107
5.4.2
108
5.4.3
Prise de dcision
109
5.4.4
110
112
5.5.1
112
5.5.2
114
5.5.3
114
5.5.4
115
116
5.6.1
Fonctions
116
5.6.2
Modules
117
5.6.3
Classes et mthodes
119
121
121
123
6.2.1
99
5.2.1
80
123
6.2.3
6.3.2
Attention la tension!
127
128
128
130
130
6.4.1
131
6.4.2
132
6.4.3
134
137
138
7.1.1
La bibliothque RPi.GPIO
138
7.1.2
139
141
7.2.1
141
7.2.2
147
7.2.3
148
149
7.3.1
149
7.3.2
151
7.3.3
152
153
7.4.1
7.4.2
155
7.4.3
156
Principe gnral
8.1.2
154
161
161
162
164
166
8.2.1
Principes gnraux
166
8.2.2
Circuits dinterface
167
8.2.3
Le logiciel
169
VI
125
170
8.3.1
170
8.3.2
172
8.3.3
173
8.4.1
176
8.4.2
178
181
181
9.1.1
Gnralits
182
9.1.2
182
9.1.3.
186
190
9.2.1
190
9.2.2
192
9.2.3
194
198
201
202
203
Annexe
205
Index
211
VII
Vous trouverez sur www.dunod.com, sur la page ddie cet ouvrage, et sur le site de
lauteur ladresse www.tavernier-c.com, un certain nombre de complments en ligne:
les fiches techniques et assimiles de tous les circuits et composants lectroniques actifs utiliss dans louvrage;
les bibliothques cites ou utilises dans louvrage, autres que celles fournies avec la distribution de base ou directement tlchargeables depuis cette
dernire;
les logiciels tiers utiliss par certaines applications (cration dimages sur carte
SD, partitionnement de carte SD, vrification de somme SHA-1, etc.);
les schmas du Raspberry Pi ainsi que diverses cartes dextension utilises,
lorsque ces derniers sont publics.
Afin de faciliter lutilisation de ces complments, tous les fichiers correspondants
sont groups dans des rpertoires qui portent les noms des chapitres de louvrage
dans lesquels ils apparaissent pour la premire fois.
En lisant un chapitre, il suffit donc de vous positionner sur le rpertoire correspondant pour avoir accs immdiatement tous les documents et/ou programmes qui
y sont utiliss ou voqus.
VIII
Avant-propos
A
Conu lorigine pour initier les plus jeunes la programmation et la microinformatique, le RaspberryPi a trs vite connu un tel succs plantaire, que mme
ses concepteurs nauraient pas os limaginer. Les quelques centaines dexemplaires
fabriqus au tout dbut ont ainsi t couls en quelques jours et, la date de
rdaction de cet ouvrage, plus dun million de RaspberryPi ont t vendus dans le
monde entier.
Il faut dire que le produit a de quoi sduire puisque, sur un circuit imprim
peine plus grand quune carte de crdit, vendu un peu moins de quarante euros, on
trouve un micro-ordinateur complet qui, mme sil na pas la puissance dun PC,
est tout de mme capable daccomplir efficacement la majorit des tches que lon
confie habituellement ce dernier.
De plus, grce des choix judicieux, tel que lintgration dun processeur graphique
performant ou bien encore laccs certaines lignes dentres/sorties du processeur,
il est possible dutiliser le RaspberryPi aussi bien comme media center capable de
diffuser des films en haute dfinition sur la tl du salon que comme automate pro
grammable intelligent pour se constituer une maison domotique, par exemple.
Aprs vous avoir appris configurer et paramtrer correctement votre RaspberryPi,
cet ouvrage vous propose de dcouvrir ses nombreuses possibilits au travers duti
lisations qui vont de la bureautique aux automatismes en passant par les serveurs
Internet et les applications multimdias.
Et pour que vous ne soyez pas prisonnier des seuls programmes crits ou proposs
par dautres, vous y apprendrez aussi les bases du systme dexploitation Linux uti
lis par le RaspberryPi, ainsi que la programmation en Python, qui vous permettra
de mettre en uvre vos propres interfaces et applications.
IX
1 la dcouverte du RaspberryPi
A
Le RaspberryPi appartient ce que lon appelle le monde du libre tant sur le
plan logiciel que matriel, cest--dire que tous les documents le concernant, que
ce soient les schmas ou les programmes quil utilise, sont mis gracieusement dis
position de la communaut internationale par leurs auteurs respectifs.
En contrepartie de cette gratuit, il nexiste pas de structure commerciale, de ven
deur si vous prfrez, qui se charge de commercialiser et de centraliser tout ce qui
concerne le produit et, en particulier, toutes les documentations le concernant.
Cest lutilisateur de faire leffort de glaner sur Internet les informations nces
saires en fonction de ce quil compte faire de son Raspberry Pi, et il faut bien
reconnatre quaprs lavoir reu et lorsquon le sort de sa bote, on est un peu perdu
devant lampleur de la tche car il est alors inutilisable
Aprs une courte prsentation du Raspberry Pi, nous allons voir ce quil est
ncessaire de lui raccorder pour le rendre utilisable, puis nous vous expliquerons
comment prparer sa carte mmoire avec le systme dexploitation tlcharger
sur Internet afin que, dun petit circuit imprim inerte, vous passiez un microordinateur performant.
1.1 RaspberryPi A ou B?
Au moment o ces lignes sont crites, deux versions de RaspberryPi sont commer
cialises; la version A et la version B visibles figures 1.1 et 1.2. Si le processeur
qui les quipe est identique, tout comme leur architecture interne, voici ce qui les
diffrencie:
linterface rseau est absente sur le modleA;
le modle A ne comporte quun port USB contre deux pour le modleB;
la taille de la mmoire du modle A nest que de 256Mo contre 512Mo pour
le modleB.
Compte tenu de la faible diffrence de prix entre les deux versions, nous vous
recommandons vivement de choisir le modle B. En effet, labsence dinterface
rseau est bien souvent rdhibitoire et, mme sil est possible den adjoindre une au
modleA grce un module USB rseau, le cot de ce module ajout celui du
modleA, dpasse largement le prix du modleB.
1 la dcouverte du RaspberryPi
Figure1.1 Le RaspberryPi modleA. Labsence de contrleur et de prise rseau est bien visible.
Et quand bien mme le rseau ne vous serait pas utile, la prsence dun seul port
USB est, elle aussi, handicapante et impose de recourir un hub USB externe ds
que lon veut utiliser plus dun priphrique. L aussi, le prix du hub ajout celui
du modleA, dpasse bien souvent celui du modleB.
Figure1.2 Le RaspberryPi modleB avec sa prise rseau et ses deux prises USB.
Le centre de la carte est occup par le processeur ou, plus exactement, par un empile
ment du processeur et de sa mmoire qui sont littralement monts lun sur lautre. Nous
reviendrons, dans la suite de ce chapitre, sur ce processeur quelque peu particulier.
Lautre gros circuit intgr visible sur cette face du circuit imprim nest autre
que le contrleur rseau, absent bien videmment sur le modleA.
Paradoxalement, cest la connectique qui occupe la majorit de la surface de la carte
et non les composants actifs, et ce dautant que des choix pour le moins curieux ont
t faits au niveau des connecteurs, dont certains sont vritablement archaques sur
un produit aussi rcent.
Nous vous proposons de partir de la prise rseau, situe dans langle infrieur droit
de la figure1.3 et de tourner dans le sens inverse des aiguilles dune montre. Ce
connecteur rseau justement, prsent sur le seul modleB, accepte une prise norma
lise RJ45 et tout rseau Ethernet classique fonctionnant 10Mbits ou 100Mbits
par seconde. Le Gigabit Ethernet nest donc pas support par le RaspberryPi mais,
vu ses performances globales, cela nest absolument pas contraignant. Le double
connecteur USB voisin est quant lui conforme la norme USB2.0, rtro-compa
tible USB1.0 comme il se doit.
Dans langle situ ct de ces connecteurs on trouve cinq LED dtat du
RaspberryPi:
une LED verte dactivit du processeur;
1 la dcouverte du RaspberryPi
1.3 Lalimentation
La majorit des smartphones actuels dispose dun chargeur secteur quip dun
cble micro USB qui dlivre une tension de 5volts. Il est donc tentant dy faire
appel comme lont dailleurs fait avec plus ou moins de bonheur nombre dutili
sateurs.
Pour simple et conomique quelle soit, cette solution peut fonctionner ou non.
En effet, selon la marque et le modle de smartphone auquel est destin le char
geur, le courant de sortie quil peut fournir peut varier de 350mA 1A. Dans le
premier cas, tout fonctionnement sera donc impossible alors quun modle dli
vrant 1A conviendra parfaitement, mme pour un RaspberryPi reli plusieurs
priphriques.
Si donc vous envisagez cette solution, vrifiez sur le chargeur du smartphone le
courant maximum que ce dernier peut dlivrer; il y est toujours indiqu.
1.3.2 Le bloc secteur prise de courant
Mme si cest l une fonction triviale, cest pourtant le premier lment prendre
en compte lorsque lon souhaite faire fonctionner son RaspberryPi, et ce dautant
que cette alimentation peut tre la cause de nombreux problmes sur lesquels nous
aurons loccasion de revenir plusieurs reprises.
Le RaspberryPi salimente sous une tension unique de 5volts; tension sur laquelle
il peut consommer jusqu 750mA selon les tches quil excute. Cette alimenta
tion doit tre normalement fournie via le connecteur micro USB plac dans un
angle de la carte, tel que nous lavons vu en figure1.3, mme sil existe dautres
possibilits dcrites ci-aprs.
Thoriquement, toute alimentation capable de fournir cette tension et de dlivrer
au moins les 750mA requis peut convenir, mais cela savre trs souvent insuffisant.
En effet, notre RaspberryPi dispose galement de deux ports USB sur lesquels nous
allons tre amens connecter divers priphriques tels que les classiques clavier et
souris par exemple. Or, sauf faire appel un hub aliment intermdiaire, les dif
frents priphriques connects sur ces ports vont devoir prlever leur alimentation
partir du RaspberryPi puisque cest l un des principes de la norme USB. Leur
consommation va donc ncessairement sajouter aux 750mA dj absorbs par le
RaspberryPi seul.
Il est donc prudent de prvoir une alimentation capable de dlivrer au moins un
ampre si vous ne voulez pas que votre RaspberryPi fonctionne de faon alatoire,
voire ne fonctionne pas du tout selon le bon vouloir de la consommation des pri
phriques qui lui seront raccords.
1 la dcouverte du RaspberryPi
Comme pour le chargeur de portable, vous veillerez alors ce quil puisse dlivrer
une tension de 5volts sous un courant de 1ampre, voire mme un peu plus si vous
envisagez de connecter de nombreux priphriques USB votre RaspberryPi.
Attention!
Choisissez bien un bloc secteur sur lequel figure la mention rgul ou stabilis, seul mme
de vous garantir une tension de sortie stable de 5volts, et fuyez comme la peste les blocs secteur bas
de gamme, non stabiliss, dont la tension de sortie peut monter trs au-del de 5volts avec, la cl,
la mort assure pour votre RaspberryPi.
Ds lors que lon souhaite connecter au RaspberryPi autre chose quun clavier et
une souris, il est ncessaire de faire appel un hub USB. Celui-ci peut tre passif,
et il sert alors seulement dmultiplier les deux prises USB originales, mais lali
mentation de tous les priphriques USB continue dans ce cas tre prleve sur
le RaspberryPi, ou il peut galement tre actif et disposer alors de sa propre ali
mentation.
Dans ce dernier cas, outre sa fonction de dmultiplication des prises USB, il permet
galement dalimenter les priphriques USB, ce qui est une excellente solution si
vous envisagez den utiliser plusieurs ou de faire appel des priphriques forte
consommation tel un disque dur par exemple.
Mais ce hub peut aussi servir alimenter votre RaspberryPi si ce dernier est un
modle assez rcent. En effet, les alimentations de toutes les prises USB sont relies
entre elles sur le RaspberryPi. Si donc lon injecte une tension de 5volts via une
des prises USB normales du RaspberryPi, en provenance dun hub actif ali
ment, cette tension lalimentera normalement.
De ce fait, si lalimentation du hub actif choisi est capable de fournir au moins
1ampre, elle pourra alimenter le RaspberryPi en plus des priphriques raccords
ce hub, vous dispensant ainsi dacqurir une alimentation spcifique pour le seul
RaspberryPi.
Cette possibilit nest cependant offerte quaux RaspberryPi les plus rcents. En
effet, sur les premiers modles commercialiss, des fusibles rarmables de type
Polyswitches, dun courant de coupure de 160mA, taient placs au niveau des
prises USB normales. Il tait donc impossible de fournir plus de 160 mA au
RaspberryPi via ces prises. Ces fusibles ayant disparu sur les versions les plus rcentes, cette restriction nexiste plus et lalimentation depuis un hub USB devient
donc possible.
Comme rien, au niveau de la rfrence, ne vient distinguer les RaspberryPi avec
fusibles de ceux qui nen ont pas, nous vous proposons en figure1.4 un gros plan
sur la zone du circuit imprim supportant ces derniers afin que vous puissiez dter
miner de quel type de RaspberryPi vous tre en possession.
6
Figure1.4 Sur les RaspberryPi quips de fusibles, ceux-ci sont bien visibles.
Rien de bien particulier nest signaler en ce qui les concerne. Nimporte quel
clavier USB et nimporte quelle souris USB conviennent au Raspberry Pi et se
connectent directement dans les deux ports USB prvus cet effet sur le modleB.
Pour ce qui est du modleA, il faut dj faire appel un hub pour pouvoir utiliser
simultanment clavier et souris.
Si vous disposez danciens claviers et souris de PC munis dune interface PS/2 (la
prise ronde 6points), ils peuvent ventuellement tre utiliss avec le RaspberryPi
au moyen dun adaptateur spcial tel celui visible figure1.5.
1 la dcouverte du RaspberryPi
Attention!
Les prix de tels adaptateurs font le grand cart puisque nous avons pu en trouver des prix
variant entre 8 et 30euros pour une qualit quasiment identique!
1.5 Lcran
Deux solutions fort diffrentes vous sont proposes comme vous avez pu le dcou
vrir lors de notre visite guide ci-dessus: lutilisation de la sortie HDMI, vivement
conseille en raison de ses possibilits, et lutilisation de la prise Cinch ou RCA,
ne choisir que si vous ne pouvez vraiment pas faire autrement.
Voyons tout dabord lutilisation de la prise HDMI et de ses variantes que sont le
DVI et, dans une moindre mesure, le VGA.
1.5.1 HDMI, DVI ou mme VGA
Une prise DVI ne vhicule en aucun cas le son, que le moniteur qui en est quip dispose ou non
de haut-parleurs. Si donc vous utilisez un cble HDMI DVI vous serez oblig de rcuprer le son
via la prise jack stro.
Si vous souhaitez utiliser un moniteur plus ancien, muni seulement dune entre
de type VGA, ce nest pas possible directement avec le Raspberry Pi, mme en
utilisant certains cbles ou adaptateurs passifs disponibles dans le commerce ou
fournis trs souvent avec les cartes graphiques de PC. En effet, la sortie HDMI du
RaspberryPi ne dlivre pas les signaux analogiques ncessaires ce type de liaison
et il nest pas possible de les fabriquer au moyen dun adaptateur passif.
En revanche, on trouve depuis peu, chez Farnell notamment (http://fr.farnell.com),
sous la dnomination Pi-View un adaptateur HDMI VGA actif, que vous pouvez
8