Le wi-fi

Bonjour à tous,
Dans ce post, je vais vous expliquer comment installer le wi-fi sur le Raspberry Pi. Tout d’abord, vous allez avoir besoin d’un dongle wi-fi qui soit compatible (voir ici). Je vais utiliser le dongle Edimax EW-7811Un. Je tiens à préciser que ce dongle requiert un surplus de puissance donc il faut utiliser un hub USB. Une fois que vous avez votre dongle wi-fi en main, vous le branchez au Raspberry Pi (via le hub USB) et vous ouvrez le Terminal. Dans le Terminal, tapez:

lsusb

La console devrait vous retourner quelques lignes, dont une nous intéresse. Elle devrait ressembler à ceci:

Bus 001 Device 001: ID 1de3:7824 Edimax Technology Co., Ldt EW-7811Un 802.11 Wireless Adapter [Realtek RTL8188CUS]

Si vous avez une ligne dans ce genre là, c’est bon, votre Raspberry Pi détecte le dongle.
Maintenant, tapez la commande suivante:

lsmod

Dans la répons donnée par la commande, il devrait y avoir une ligne où il est écrit ceci:

8192cu                485042   0

Si vous ne voyez pas cette ligne, réinsérez le dongle dans le port USB. Comme dernière vérification, entrez la commande

iwconfig

Et il devrait y avoir un

wlan0

qui apparaît.
Très bien, maintenant, nous allons pouvoir configurer notre dongle. Pour configurer ce dongle, il faut ouvrir un fichier.

sudo nano /etc/network/interfaces

Une fois dans le document. Il faut vérifier que les lignes ci-dessous soient décommentées (qu’il n’y ait pas de # devant):

auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

Pour supprimer des #, il faut simplement de diriger avec les touches fléchées et supprimer le # avec la touche backspace. Pour sauvegarder le fichier, faites ctrl+x et choisissez oui puis entrée (deux fois).
Une fois que ce fichier à été modifié, il faut créer le fichier où il y aura les données de connexions (SSID, mot de passe etc…). Pour ce faire, tapez ceci:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Dans ce fichier, écrivez ceci (en remplaçant Votre_SSID par le nom du réseau et Votre_CODE_WPA par le code de sécurité du réseau):

network={
ssid="Votre_SSID"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
psk="Votre_CODE_WPA"
}

Une fois toutes ces manipulations terminées, vous allez pouvoir taper:

sudo ifup wlan0

Cette commande permettra de redémarrer l’interface du dongle et ainsi, le dongle va tenter de se connecter au routeur que vous lui avez assigné.
Pour connaître l’adresse ip que le Raspberry Pi utilise via le dongle (qui n’est pas le même que par le câble Ethernet), il suffit de taper:

ifconfig wlan0

Et il y aura une ligne comme celle-ci:

inet addr:xxx.xxx.xxx.xxx Bcast yyy.yyy.yyy.yyy Mask 255.255.255.255

Ce qui est à la place du xxx.xxx.xxx.xxx est l’adresse ip du Raspberry Pi. Notez qu’il est possible que pour que la connection fonctionne, il faille redémarrer le Raspberry Pi avec la commande suivante:

sudo reboot

Pour la suite du tutoriel, voici le lien

Publicités

Commencer à installer les logiciels utiles au drone

Bonjour à tous,

Vous avez donc déjà configuré votre Raspberry Pi et vous l’avez redémarré. une fois sur le bureau, vous pouvez ouvrir le terminal. dans cette fenêtre. vous allez pouvoir taper la commande suivante (attention à avoir une connexion internet active):

sudo apt-get upgrade

Une fois cette commande terminée, vous pouvez entrer cette commande:

sudo apt-get update

(Dans les deux commandes, si le terminal vous demande une confirmation, dites oui).

Nous allons maintenant installer un petit logiciel de traitement de texte, Geany. voici ce qu’il faut entrer dans la ligne du Terminal:

apt-get install geany

Très bien, une fois ces commandes faites, nous allons installer vino, qui permet de prendre le contrôle du Raspberry Pi à distance. Voici la commande à entrer dans Terminal:

sudo apt-get install vino

Une fois que vino s’est correctement installé, tapez cette commande afin de configurer les préférences du serveur vino:

vino-preferences
http://softsolder.files.wordpress.com/2011/11/vino-preferences.png

vino-preferences

Cochez les points suivants:

  • « Allow other users to view your desktop »
  • « Allow other users to control your desktop »

Les deux points qui suivent sont facultatifs, vous pouvez choisir comme vous le voulez. Ceci dit, je vous conseille tout de même de mettre un petit mot de passe afin d’éviter qu’un petit rigolo s’incruste dans votre projet ^^. Pour activer manuellement le serveur, tapez ceci:

/usr/lib/vino/vino-server

Pour accéder à votre Raspberry Pi depuis un poste fixe (ou pourtable…bref, d’un autre ordinateur) il vous faudra tout d’abord installer un logiciel VNC-client sur votre ordinateur (pas le Raspberry Pi) j’utilise celui-ci, mais libre à vous d’en choisir un autre. Une fois installé, il vous faudra connaître l’adresse Ip de votre Raspberry Pi, pour la trouver, aller dans Terminal (sur le Raspberry Pi) et tapez:

ifconfig

Le Raspberry Pi va vous afficher pleins d’informations, mais l’info qui nous interresse est à la troisième ligne, dans la partie eth0.

inet addr:xxx.xxx.xxx.xxx Bcast yyy.yyy.yyy.yyy Mask 255.255.255.255

l’adresse Ip correspond à ce qui est à la place des « xxx.xxx.xxx.xxx ». Depuis VNC viewver, vous entrez donc l’adresse Ip, vous vous connectez (s’il y a un mot de passe, il vous sera demandé) et vous devriez avoir une copie du bureau du Raspberry Pi sur votre PC. Jusqu’ici, nous avons bien un serveur, mais il ne démarre pas automatiquement, ce qui est assez embêtant, c’est pourquoi nous allons modifier un fichier pour que le Raspberry Pi active le serveur au démarrage. Allez dans Terminal et tapez ceci:

sudo geany /etc/xdg/lxsession/LXDE/autostart

Une fois que geany est ouvert, entrez ceci:

@/usr/lib/vino/vino-server

Une fois que ceci est fait, vous n’aurez plus besoin un clavier et une souris sur votre Raspberry Pi puisque vous pouvez le contrôler à distance, ce qui libère deux ports USB.

La suite du tutoriel portera sur le wi-fi voici le lien

Démarrer le Raspberry Pi pour la première fois

Bonjour à tous, je continue le tutoriel sur le Raspberry Pi. Ici, nous allons voir comment faire pour configurer son Raspberry Pi.

Donc, pour commencer, vous branchez le Raspberry Pi, à une TV. Vous branchez une souris, un clavier, le câble Ethernet et la carte SD avec Raspbian. Et pour finir, vous allumez le tout avec le secteur. Le Raspberry Pi va démarrer. ça prend du temps la première fois, alors ne paniquez pas. Après un petit moment, il y a une page qui s’ouvre, avec une liste défilante. la souris ne fonctionne pas à ce moment, alors utilisez les touches fléchées et les touches Entrées, Escape et Tab.

panneau de démarrage

Sur « information », vous aurez un descriptifs des points, mais je vais vous aider un peu. Première chose à faire si vous n’avez pas encore partitionné la carte avec Gparted, c’est de aller dans « Expand root partition to fill SD card ». Vous appuyez sur Entrée et vous attendez. Une fois cette manip faite, allez dans « configure_keyboard » et choisissez votre clavier. Si vous voulez le clavier suisse (français). Il faut aller dans la langue allemand et choisir le clavier suisse. Ensuite, vous pouvez si vous le souhaitez, changer le mot de passe de l’utilisateur pi (par défaut, c’est « raspberry »). Vous pouvez optionnellement choisir le lieu et le fuseau horaire de chez vous, mais c’est pas la chose la plus utile. Si vous le souhaitez, vous pouvez overclocker votre Raspberry Pi (i.e augmenter la puissance du Raspberry Pi, mais attention, ça va faire chauffer le Raspberry Pi!!!!!!) Pour connaître la température du processeur. il faut taper:

/opt/vc/bin/vcgencmd measure_temp

Allez dans « boot_behaviour » et faites en sorte que le Raspberry Pi boot sur le desktop directement (on pourra toujours accéder à ce panneau en tapant la commande: raspi-config).

Une fois ces manips faites, vous pouvez aller sous « finish » et appuyer sur Entrée. Une fois sur le bureau. Ouvrer terminal et tapez la commande suivante:

sudo reboot

Ou alors:

sudo shutdown -r now

Le Raspberry Pi va maintenant redémarrer. Attendez un petit moment. (il faut environ 40 à 50 secondes au Raspberry Pi pour démarrer, ce qui est assez rapide quand même ^^ ).

Une fois le Raspberry Pi allumé, je vous invite à continuer le tutoriel ici

Comment avoir Raspbian sur son Raspberry Pi

Bonjours à tous,

Sur ce post, je vais commencer à expliquer comment faire pour installer Raspbian sur votre Raspberry Pi. Avant toute chose, je vais éclaircir le point que plus d’un lecteur ne comprendra pas. C’est quoi un Raspberry Pi? Un Raspberry Pi, c’est ça:

Voici un Raspberry Pi

Le Raspberry Pi est un ordinateur à bas prix de la taille d’une carte de crédit. Il possède deux ports USB 2.0, un port Ethernet, un sortie HDMI, 26 Pin GPIO (pas très important pour l’instant) une sortie audio et vidéo, 512Mb de RAM avec un processeur cadancé à 0.7 Gh (avec la possibilité de l’overclocker à 1Gh). Ce Raspberry Pi est l’ordinateur central du drone. Ceci dit, il peut servir à beaucoup d’autres usages, puisque c’est un ordinateur. Evidemment, un ordinateur ne vient pas sans un système d’exploitation. Dans notre projet, nous allons utiliser Raspbian, soit un environnement UNIX, mais qui à été adapté pour notre cher Raspberry Pi. Pour utiliser pleinement votre Raspberry Pi. Il vous faudra quelques accessoires.  Pour une liste complète de ce qu’il vous faut pour l’ensemble du projet, voici le lien: ici

Voici une liste de ce dont vous aurez besoin pour une utilisation complète du Raspberry Pi:

  • Un Raspberry Pi
  • Un câble HDMI (deux HDMI mâles)
  • Un Transformateur de 1A 5V (un chargeur dans le genre iPhone, Samsung et autre va très bien)
  • un câble USB(mâle) => MicroUSB (mâle) (pour l’alim)
  • Un Hub USB compatible (Edimax EW-7811Un)
  • Un câble Ethernet
  • Un récepteur USB wi-fi compatible (wi-fi compatible). Nous utilisons un Edimax EW-7811Un
  • Une souris à fil (sans bluetooth, ou alors c’est à vos risques et périls)
  • Un clavier à fil (sans bluetooth, ou alors c’est à vos risques et périls)
  • Une webcam compatible (compatibilité). Nous utilisons une Logitech Webcam C270
  • Une carte SD de minumum 4 Go (je vous conseille de en prendre une de 8Go) avec au moins 30 m/s d’écriture/lecture.

Très bien, commençons le tuto maintenant. Tout d’abord, il vous faut un Raspberry Pi. Vous pouvez en trouver par exemple ici: achat . Vous pouvez le commander où vous le souhaiter, mais faites simplement attention à deux chose, la première, à acheter la version européenne/américaine et non la version chinoise (cette dernière est facillement reconnaissable car la carte est rouge, la deuxième chose, c’est de prendre la version B, celle avec un port Ethernet etc…

Où sont les ports en questions

Pour commencer à utiliser votre Raspberry Pi, vous devez faire ces quelques étapes:

  1. Connecter le Raspberry Pi à un écran par le biais d’un câble HDMI. 
  2. Connecter le clavier et la souris aux deux ports USB du Raspberry Pi
  3. Brancher le câble Ethernet au Raspberry Pi (LAN)
  4. Mettre la carte SD dans le lecteur de carte SD. (Si vous n’avez pas encore mis l’image sur la carte SD, cliquer sur ce lien:  ici
  5. Brancher le Raspberry Pi au secteur à l’aide du câble USB et du chargeur iPhone
  6. Allumer l’écran
  7. Attendre sans paniquer car l’initialisation de la carte peut prendre un moment.

Pour continuer ce tuto, voici le lien de la suite

Préparer sa carte SD

Bonjour à tous,

Ce post va expliquer comment installer Raspbian sur une carte SD à l’aide d’une machine linux. Si vous êtes sur Windows ou MacOS, je vous invite à aller suivre un tuto ici.

Si vous avez déjà installé Raspbian sur votre Raspberry Pi et qu’il marche. Voici le lien pour continuer le tuto de drone. Suite du tutoriel

Voici les étapes à suivre pour avoir Raspbian sur votre carte SD.

  1. Connecter la carte SD sur votre ordinateur (ici sous Ubuntu)
  2. Télécharger une image de Raspbian « wheezy » ici (Attention à prendre une image de RASPBIAN et pas d’un autre système.
  3. Aller dans Terminal et écrire:
    df -h
  4. Chercher la ligne correspondant à la carte SD (ici: /dev/mmcblk0p1)Screenshot from 2013-04-09 12-22-17
  5. Démonter le disque SD en écrivant:
    umount /dev/mmcb1k0p1
  6. Ecrire la commande suivante en remplaçant ce qu’il faut remplacer (i.e. l’emplacement de l’image et le nom de la carte SD trouvé précédemment):
    sudo dd bs=1M if=/home/utilisateur/emplacement/de/l'image/2012-09-18-wheezy-raspbian.img of=/dev/mmcblk0p1

    Ou alors vous pouvez installer imageWriter à la ligne de commande:

    sudo apt-get install imageWriter

    Mais faites attention à executer imageWriter avec root, sinon cela ne marchera pas.

  7. Il arrive souvent (presque à chaque fois) que le partitionnement de la carte ne soit pas très bien fait. La carte est partitionnée en deux.c’est pourquoi nous allons utiliser Gparted pour le faire. Pour ce faire, il faut installer Gparted. Ceci dit, si vous ne vous sentez pas capable de faire cette manipulation, il n’y a aucun problème, vous pourrez le faire au démarage du Raspberry Pi.
    sudo apt-get install gparted
  8. Lancer Gparted en mode root.
    sudo gparted
  9. Une fois Gparted ouvert, sélectionnez la carte SD (chez moi /dev/mmcblk0p). Il y a deux partitions qui seront là, la première (ici /dev/mmcblk0p1) est l’amorçage de Raspbian tandis que la deuxième (/dev/mmcblk0p2) contient le système de fichier Raspbian. C’est cette deuxième partition que nous allons modifier.
  10. Allez dans partition, déplacer/redimentionner. une fois dans la nouvelle fenêtre, prenez le côté droit du rectangle (bleu chez moi) et « tirez-le le plus loin possible vers la droite, de sorte à ce que en dessous, il soit écrit:
    espace libre: 0MiB

    Choisissez valider.

  11. N’oubliez pas de cliquer sur le vu en vert pour appliquer les changements.
  12. Screen de Gparted

    Screen de Gparted

Et voilà. Vous avez maintenant votre système d’exploitation sur votre carte SD. Pour configurer votre Raspberry Pi, voici la suite

source

Liste des Achats

Bonjours à tous,

Voici une liste de ce dont vous aurez besoin pour faire ce projet, nous n’avons pas inclus les tournevis, clous, et autres.

  1. Un véhicule roulant miniaturisé. Par exemple une ancienne voiture radiocommandée est parfait, il vous suffit de garder le chassis, le moteur et le servo-moteur.
  2. Un Arduino (un Arduino Uno va très bien, mais si vous avez un diduino ou une variante de l’Arduino, il n’y a pas de problème) Site Arduino
  3. Un Raspberry Pi (avec les accessoires, listés ici:Accessoires Raspberry Pi)
  4. Une batterie externe (nous utilisons ici une Tecknet de 7000mAh, ce qui est largement suffisant)
  5. Un ordinateur portable fonctionnant sous Linux, MacOS ou Windows. (Nous parlerons soit de Windows, soit de Linux)(pour certaines tâches, il est préférable d’avoir Linux, mais vous pouvez créer une machine virtuelle si besoin est).
  6. Une webcam
  7. Un capteur de distance (par exemple un « HC-SR04 »)

Avec tous ce matos, vous pouvez construire un UGV. Le capteur de distance n’est peut être pas indispensable, mais il permet d’éviter certains crashs. Vous pouvez maintenant commencer à construire votre drone en commençant par ici.

Tutoriel: communication Raspberry -> Arduino

Suivez ces indications pour vous lancer rapidement dans la communication Raspberry pi – Arduino. Le langage qu’on va utiliser est Python. Il propose une solution simple à notre problème. Si vous ne connaissez pas bien ce langage, vous l’apprendrez facilement et il vous sera sûrement utile par la suite.

Prérequis:

  • Le module Python « pySerial » doit être installé.
    Vous le trouverez ici et de l’information sur comment l’installer ici.
    Si vous êtes sur raspbian comme il était proposé dans cet article. je vous propose la commande suivante:

    -> sudo apt-get install python-serial

Connectez simplement le Raspberry et l’Arduino au moyen du câble usb que vous utilisez d’habitude avec votre Arduino.
Ouvrez un interprétateur Python ou initiez le à votre ligne de commande. Dans mon cas, j’utilise la ligne de commande. J’initie donc l’interprétateur:

-> python

Vous verrez ensuite une ligne comme ceci:

>>>

Vous allez maintenant importer le module pySerial en tapant:

>>> import serial

Initiez ensuite l’objet « serial » que nous allons appeler « ser ». Assurez vous que votre Arduino est bien connecté à l’ordinateur! :

>>> ser = serial.Serial("/dev/ttyACM0", 9600)
  • « /dev/ttyACM0 » désigne le port sur lequel est branché l’Arduino. Pour trouver ce port, vous pouvez regarder dans l’IDE Arduino ou taper la commande suivante dans le terminal après avoir branché votre Arduino:
    # dmesg

    Elle vous donnera des détails sur les appareils branchés à l’ordinateur, entre autre, le port sur lequel se trouve votre Arduino.

  • « 9600 » précise la vitesse d’échange d’information, i.e 9600 bauds ou bits par seconde. Assurez vous que la communication serial est initiée à la même vitesse du côté Arduino (Serial.begin(9600);).

Vous devriez maintenant pouvoir envoyer un caractère ou encore une chaîne de caractères avec la fonction « write() »:

>>> ser.write("Votre chaine de caractères...")

Si vous vous sentez perdu, voici à quoi ressemble ma ligne de commande:

  • D’abord, un extrait du retour de « dmesg »:
    ...
    [  889.552060] usb 5-2: Product: Arduino Uno
    [  889.552064] usb 5-2: Manufacturer: Arduino (www.arduino.cc)
    [  889.552067] usb 5-2: SerialNumber: 64932343938351312131
    [  889.597681] cdc_acm 5-2:1.0: ttyACM0: USB ACM device
    [  889.600150] usbcore: registered new interface driver cdc_acm
    [  889.600153] cdc_acm: USB Abstract Control Model driver for USB modems and ISD
  • Puis l’interprétateur python à la ligne de commande:
    ebrunner@home2:~> su
    Password: 
    home2:/home/ebrunner # python
    Python 2.7.3 (default, Apr 14 2012, 08:58:41) [GCC] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import serial
    >>> ser = serial.Serial("/dev/ttyACM0", 9600)
    >>> ser.write("1")

    Dans ce cas, j’ai du me mettre en admin pour avoir le droit d’accès au port. Une visite dans le manager de groupes devrait résoudre ce problème.

Pour vérifier nos résultats on veut voir un retour du côté de l’Arduino! Un simple sketch « echo » devrait faire l’affaire. Pas de montage! juste le code que vous trouverez ici.