Communication serial en Java (RXTX)

Dans le cadre du serveur Java qui remplacera bientôt l’interface graphique python contrôlée par ssh, nous avons dû résoudre le problème de la communication entre l’Arduino et le Raspberry. Puisque ils sont connectés par usb, nous nous sommes intéressés à la librairie RXTX pour java.

Vous pourrez trouver toutes sortes d’informations sur l’installation et l’utilisation de cette librairie ici.

Il est possible que vous ayez déjà cette librairie si vous utilisez l’IDE Arduino.

Nous aimerions partager avec vous la classe « SerialCommunication » basée sur les classes de la librairie RXTX (gnu.io.*). Nous n’avons probablement rien inventé de nouveau et nous nous sommes largement inspirés des exemples proposés par le wiki. Nous trouvons juste que cette classe englobe tous nos besoins et est pratique à utiliser.

Créez un objet SerialCommunication:

SerialCommunication serialCom = new SerialCommunication();

Etablissez une connection sur le port(p.ex.) »/dev/ttyS33″ à la vitesse de 9600 bauds:

SerialCom.connect("/dev/ttyS33", 9600);

Remarque: java RXTX ne cherche que des ports dans « /dev/ttySxx » or l’Arduino se trouvera probablement sur « /dev/ttyACM0 ». Pour résoudre ce problème, créez un symlink entre « /dev/ttyACM0 » et un port inexistant dans les « /dev/ttySxx » (p.ex. /dev/ttyS33):

#sudo ln -s /dev/ttyACM0 /dev/ttyS33

Ce lien disparait chaque fois que vous éteignez l’ordinateur, donc pensez à le recréer ou écrivez un bash script =).

La webcam

Bonjour à tous,

Dans ce tuto, je vais vous expliquer comment installer la webcam afin que vous puissiez avoir une image à distance. Vous avez donc besoin d’une caméra (compatible avec le Raspberry Pi voici le lien de vérification. Si vous prenez un modèle non inscrit dans la liste, je ne garanti pas que cela fonctionne). Pour l’exemple, je vais utiliser une webcam Logitech C270 à 39 CHF. Pour utiliser la webcam, il nous faut un petit logiciel, j’ai choisi guvcview car il est très léger et fonctionne très bien. Pour installer ce logiciel, il faut aller dans le Terminal et taper ceci:

sudo apt-get install guvcview

Une fois installé, vous branchez la webcam sur un port USB (ou sur le hub USB, il se peut que certaines webcam requièrent plus de puissance). Et vous lancez le software avec la commande suivante:

guvcview

Vous pouvez rajouter les arguments que vous souhaitez. Vous les trouverez en tapant

guvcview --help

mais ils ne sont pas vraiment nécessaire puisque une interface graphique est proposée dans l’application. Le démarrage du logiciel peut prendre quelques secondes. Il devrait ensuite y avoir deux fenêtres, une avec l’image de la webcam, et une deuxième avec des réglages. Voilà, vous avez maintenant un système autonome qui envoie une image.
Voici le lien de la suite du tuto: [à venir]

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

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