Réalisation d'un site web interactif à partir d'une carte Arduino


Ce site est destiné à vous présenter une bibliothèque de fonctions permettant de réaliser un site web dynamique avec une carte Arduino.

Parmi les modules que l'on peut connecter sur une carte Arduino, il existe un module Ethernet, lui même équipé d'un lecteur de cartes micro SD. Avec ce module, on peut à la fois communiquer en réseau via le protocole HTTP et mémoriser des pages HTML.

Ces deux possibilités suffisent pour créer un site web statique (site dans lequel l'utilisateur reçoit des pages web identiques à celles préparées par le webmaster).

Toutefois, comme la carte Arduino est programmable, on peut aussi créer des sites web dynamiques. Dans ces sites, une partie du contenu des pages peut varier en fonction d'éléments extérieurs. Le contenu exact de la page est généré par le serveur web au moment où la page est demandée.

La méthode la plus simple pour créer un site web dynamique est d'utiliser un interpréteur PHP (ou d'un langage similaire). Toutefois, la quantité de mémoire disponible sur une carte Arduino est très faible par rapport à celle des ordinateurs actuels et ne permet pas d'introduire un vrai interpréteur PHP.

J'ai donc développé une bibliothèque de fonctions qui permet de réaliser sur une carte Arduino complétée d'une carte éthernet et d'une carte micro SD des sites web dynamiques qui fonctionnent selon le même principe que ceux que je développe en PHP.

Mes sites web utilisent des squelettes de pages HTML, c'est à dire des fichiers qui contiennent la structure générale d'une page (ou d'un morceau de page) du site, mais avec des chaines de caractères spéciales qui indiquent :
Pour celà, dans mes sites web, je dispose de quelques fonctions écrites en PHP destinées à envoyer sur la page web générée une version modifiée d'un fichier HTML
J'ai développé une bibliothèques de fonctions similaires pour faire la même chose avec une carte Arduino. Le but de ce site web est de vous présenter ses possibilités.

Le langage PHP permet aussi de récupérer facilement des données saisies par l'utilisateur dans un formulaire (2 méthodes de transmission appelées GET et POST sont disponibles).
Il permet également de mémoriser des informations dans des cookies qui seront relus dans des pages ultérieures.

Toutes ces possibilités sont disponibles dans la bibliothèques de fonctions pour carte Arduino.

Cette bibliothèque de fonctions est contituée de 2 fichiers :
Certaines des fonctions présentes dans trthtml.cpp sont des fonctions internes à la bibliothèque et il est peu utiles pour l'utilisateur d'y accéder directement.
Leur prototype est indiqué en commentaire dans le fichier trthtml.h
L'utilisateur est libre de décommenter certaines de ces fonctions pour les utiliser, mais leur utilisation n'est pas documentée sur ce site.

Pour utiliser cette bibliothèque de fonctions avec un programme Arduino, il faut mettre 3 fichiers dans le même répertoire :
et au début du programme Arduino, il y aura la ligne :
#include "trthtml.h"

Les autres pages de ce site donnent des exemples de programmes Arduino pour utiliser les différentes possibilités de la bibliothèque de fonctions.