Contrôler GPIO depuis page WEB


11 posts
by pierre68 » Tue Dec 11, 2012 4:34 pm
Bonjour dans le cadre d'un projet, nous aimerions pouvoir contrôler les broches GPIO en entrée et sortie depuis une page web à partir de n'importe quel ordinateur.
Le problème est que sur internet tous ce que j'ai vu à ce propos est mal expliqué ou parle de language python...

Je connais le HTML/CSS sans aucun problème et j'ai des bases de PHP :mrgreen:
Je pense qu'il faudra installer un serveur Apache....

J'espère que j'ai été assez clair sinon n’hésitez pas merci d'avance de vos réponses
Posts: 56
Joined: Wed Nov 21, 2012 9:36 pm
by trouch » Tue Dec 11, 2012 6:25 pm
a tout hasard : http://code.google.com/p/webiopi/
si vraiment tu veux du PHP, tu peux prendre la version 0.3, mais elle est plus limitée et pleine de trous de sécurité ;)

WebIOPi - Raspberry Pi REST Framework to control your Pi from the web
http://store.raspberrypi.com/projects/webiopi
http://code.google.com/p/webiopi/
http://trouch.com
Posts: 308
Joined: Fri Aug 03, 2012 7:24 pm
Location: France
by trigger00 » Tue Dec 11, 2012 6:31 pm
Salut :)

En cherchant un peu Google te donne tout ce que tu désire ( bon pas tout quand même ^^)

Voila donc un petit tuto et en français en plus ;)

http://blog.idleman.fr/?p=1587

En espérant que cela t'aide pour ton projet,
Trigger
Posts: 36
Joined: Sat Dec 01, 2012 6:58 pm
by jelopo » Tue Dec 11, 2012 10:42 pm
Bonjour,
Je te propose un solution basique. Tu peux installer un serveur web (apache ou lighttpd par exemple) et activer les cgi-bin. Tu écrit ton script (cmde_gpio) qui attaquent les GPIO dans le langage que tu maîtrise le mieux. Puis tu les fait appeler dans ta page page.html :

Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="refresh" content="0; URL=/cgi-bin/cmde_gpio" />
</head>
<body style="background-color: white">
<a style="color: black; text-decoration: none" href="/cgi-bin/cmde_gpio">Chargement ...</a>
</body>
</html>


Après il faudra que tu configure aussi ton accès Internet, pour que le port 80 de ta framboise soit vu sur Internet.

Bon courage.
Posts: 439
Joined: Wed Oct 17, 2012 7:53 pm
by RaspberryPiBeginners » Tue Dec 11, 2012 10:45 pm
Pourquoi ne pas essayer ma nouvelle vidéo http://www.youtube.com/watch?v=wGahWkje ... e=g-crec-u
Click here for my unofficial YouTube Channel > http://goo.gl/oFYBD
User avatar
Posts: 214
Joined: Fri May 11, 2012 6:54 am
Location: Soham, Cambridgeshire
by trouch » Tue Dec 11, 2012 11:11 pm
RaspberryPiBeginners wrote:Pourquoi ne pas essayer ma nouvelle vidéo http://www.youtube.com/watch?v=wGahWkje ... e=g-crec-u

je t'ai envoyé un petit MP ;)

WebIOPi - Raspberry Pi REST Framework to control your Pi from the web
http://store.raspberrypi.com/projects/webiopi
http://code.google.com/p/webiopi/
http://trouch.com
Posts: 308
Joined: Fri Aug 03, 2012 7:24 pm
Location: France
by pierre68 » Wed Dec 12, 2012 4:52 pm
tout d'abord, meric pour vos réponses, en revanche "webiopi" qui m'a été proposé deux fois est une solution toute faite et ne m'interresse pas,

trigger00 j'avais déjà visité ce blog et comme précédemment c'est une solution toute faite bien que je pourrais m'en inspiré et en voulant essayer je rencontre un problème, sur le blog, ils disent qu'il faut "Téléchargez le et décompressez le dans le dossier /var/www de votre raspberry PI" le problème c'est que de mémoire j'ai un dossier /var mais pas de dossier www, faut il le créer ? ou alors je n'ai pas de dossier /var je ne sais plus.

jelopo ton post m’intéresse, :D par contre je ne suis pas sur du tout d'avoir compris: "Tu écrit ton script (cmde_gpio) qui attaquent les GPIO dans le langage que tu maîtrise le mieux."
Posts: 56
Joined: Wed Nov 21, 2012 9:36 pm
by trigger00 » Sat Dec 15, 2012 11:55 am
@pierre68

Je ne suis pas trés calé mais si tu n'as pas de dossier /var/www je pense que tu as un soucis au niveau du serveur ... As tu installé apache et tout ce quei va avec :

Code: Select all
sudo apt-get install apache2 php5 mysql-server phpmyadmin


Encore je ne suis pas sur a 100%

Amicalement,
Trigger
Posts: 36
Joined: Sat Dec 01, 2012 6:58 pm
by SladerZ » Wed Dec 19, 2012 3:36 pm
Effectivement si tu n'as pas de dossier /var/www en installation de base il y a un problème.

Cela dis une installation de lighttpd ne serait-elle pas plus légère pour se que tu compte faire ?

Tu peux cela dis aller dans /etc/apache2/apache2.conf de mémoire pour vérifier si tu as des fichiers.

La variable il me semble s'appelle root
User avatar
Posts: 68
Joined: Mon Jul 30, 2012 8:55 am
Location: France
by jelopo » Fri Dec 21, 2012 8:21 am
Bonjour,

Voici quelques précisions, par rapport à mon post pécédent :
- installer un serveur web (je recommande lighhtpd, plus léger)
- configurer le serveur pour valider l'accès aux cgi-bin.
- écrire un programme dans le langage souhaité (bash,python,...) qui pilote les gpio.
- valider en ligne de commande qu'il fonctionne. Attention l'appel aux GPIO se fait souvent avec root !
- écrire une page d'accueil index.html dans /var/www/, voir exemple dans mon post précédent.
- écrire le script cgi-bin, nommé cmde_gpio par exemple dans l'index.html de ci-dessus. Il contient du code html pour la mise en forme web et l'appel au programme qui pilote les GPIO.

J'espère avoir été plus clair. En cas de doute n'hésites pas à me demander des précisions.
Bon courage.

A+
Posts: 439
Joined: Wed Oct 17, 2012 7:53 pm
by trouch » Fri Dec 21, 2012 8:35 am
jelopo wrote:Voici quelques précisions, par rapport à mon post pécédent :
- installer un serveur web (je recommande lighhtpd, plus léger)
- configurer le serveur pour valider l'accès aux cgi-bin.
- écrire un programme dans le langage souhaité (bash,python,...) qui pilote les gpio.


quite à faire du python, autant faire le serveur HTTP en python et dans ce cas utiliser WebIOPi ;)
avec cgi-bin l'invocation des scripts est consommateur alors que le code est directement embarqué dans le serveur WebIOPi.

WebIOPi - Raspberry Pi REST Framework to control your Pi from the web
http://store.raspberrypi.com/projects/webiopi
http://code.google.com/p/webiopi/
http://trouch.com
Posts: 308
Joined: Fri Aug 03, 2012 7:24 pm
Location: France