Envoie d'info d'une carte arduino rev2 a un site en HTML/CSS

Fermé
Swarys - 10 déc. 2021 à 18:52
 Totorox - 12 déc. 2021 à 23:19
Bonjour,

j'ai créé un site internet local, je veux dire qu'il est pas en ligne.
Je voudrais mettre une balise GPS sur mon arduino pour qu'elle récupere les donné et l'envoyer sur mon site. La partie qui bloque c'est de passer de l'arduino au site. J'ai une carte wifi sur mon arduino. Si vous avez besion d'autre info n'hésité pas je sais pas trop quoi mettre.

Configuration: Windows / Firefox 94.0

2 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
10 déc. 2021 à 21:45
Bonjour,

Comment as tu réalisé ton site ?
Quel(s) langage(s) as tu utilisé ? Si seulement html.. ça ne suffira pas. IL te faut un langage serveur...

Quel logiciel as tu utilisé pour émuler un serveur web sur ton ordi ?
(si tu n'as fait que du html.. tu n'en a certainement pas ... hors il va le falloir...)

Si tu n'en as pas, je te conseille de passer par Laragon ou xampp ou wamp (dans l'ordre de mes préférences..
) ou, sur MAC tu peux utiliser MAMP



0
J'ai rien émuler pour l'instant, le site est en HTML et CSS.
J'utilise Visual Studio code pour programmé mon site.
Je n'ai jamais publier de site mais je suis chaud pour aprendre, je vais regarder.
Est-ce que se serais pas plus simple d'émuler le serveur sur l'arduino ?

Je vous remerci pour votre réactivité !
0
Plop quelques notions de base à approfondir/comprendre:

HTML seul est statique, aucune modification possible de la page sans écrire soi même une page et la modifier. On parle de site statique.

Pour les sites dynamiques le HTML est généré au moment où l'utilisateur demande/rafraîchit la page. Donc il est possible de faire varier les contenus d'un site(le HTML donc) en fonction des paramètres que l'on veut.
Exemple de ce principe pour un forum de discussion:
L'utilisateur envoie un message, celui ci est enregistré dans la base de données le serveur de programme fait la liste des messages présents(dans la base) lorsqu'un utilisateur demande la page et affiche ce qu'il faut: du HTML généré de façon automatique dont les contenus vont varier dans le temps.

Un autre exemple plus simple pour faire comprendre le principe serait de permettre au programme de regarder la période de l'année et d'afficher une image en fonction de la saison:
on est en automne = le programme écrit le HTML qui permet d'afficher une image correspondant à la saison. Si en été j'ouvre la même page ce sera l'image pour l'été qui s'affiche. ça dépends donc du programme côté serveur (de programme) = il faut faire l'automatisme qui regarde la date et en fonction de celle indiquée "remplira" le HTML en fonction = automatisation = page peut varier sans avoir à réecrire soi-même le HTML


Pour être plus précis Internet est un réseau dont un des services est le World Wide Web(WW ou web).
Le principe d'un réseau est de pouvoir accéder à des ressources(comme des fichiers) pour les utilisateurs du réseau.
Pour cela il existe le protocole HTTP qui permet à un serveur d'envoyer des informations à un client:
le serveur c'est communément l'hébergeur, le client c'est l'utilisateur ou plutôt le navigateur qui permet d'accéder aux adresses qui fournissent les contenus des pages à voir(HTML, les fichiers en hypertexte chargés par le HTML...)

HTML n'est nullement de la programmation et ne permet pas d'automatiser comme le fait un programme:
HTML est dit langage descriptif car il est l'équivalent d'une liste de courses que le navigateur web sait lire et transformer en l'affichage(avec CSS par dessus) voulu.

Un serveur de programme est nécessaire si on veut générer le HTML en fonction des critères voulu.
Exemple: affiche les derniers relevés du capteur.
Le programme va donc écrire le HTML en incluant comme contenu les données du capteur.

Sauf que dans notre cas votre première étape est de fournir sur le réseau les informations du capteur. La façon la meilleure est d'utiliser une base de données pour stocker ces informations.
C'est là que votre connexion wifi peut intervenir mais il faudra trouver le moyen de vous connecter à la base pour y envoyer des données(et là le programme serveur qui fait la passerelle peut entrer en jeu si vous ne trouvez pas d'autres solutions).

Ce que je veux exprimer c'est que le serveur d'hébergement n'est qu'une partie du principe d'un site moderne.
Le serveur de programme(PHP ou ASP qui contrairement au premier est une technologie payante) permet de contrôler des données avant de les envoyer à la base de données.

Le serveur de bases de données fait fonctionner la base de données, permet en plus de stocker des données des tris et classement, modifications et autres possibilités pratiques(voir le SQL) qui garantissent aussi l'intégrité et sécurité des données.
Sans intégrité et sécurité des données = programme à jeter car on risque de perdre l'ensemble de ce qui est stocké ou pire et le programme ne fonctionnera pas correctement.
Par exemple dans le cas d'un forum si un site présente les messages sans organisation et avec aucun moyen de différencier les fils de discussion d'un autre il n'y a tout simplement plus de site possible. Je veut dire imaginez que la base de données ou le programme serveur soit mal fait et il devient impossible de mettre en relation les messages sur un sujet de discussion, le programme ne saura plus comment présenter les messages , les regrouper par thématique(une donnée stockée dans la table) ni relier un début de discussion à sa continuité(une autre donnée stockée dans la base)...bref plus de forum de discussion possible ou tellement compliqué à utiliser qu'il vaut mieux éviter.


Petite description de l'architecture client serveur :
https://fr.wikipedia.org/wiki/Architecture_trois_tiers

Bon si votre but est d'apprendre vous pouvez commencer par HTML puis CSS(sans besoin de logiciel aide puisque c'est du texte, sauf bien sûr un IDE qui fait de la coloration syntaxique et autre outils pratiques) puis apprendre la technologie serveur voulue(programmation PHP ou ASP) et les bases de données.

Si votre but est un résultat vous pouvez utiliser des outils déjà faits comme les fameux CMS et vous renseigner du côté d'Arduino pour publier/envoyer des données sur le réseau.

Effectivement on parle bien de réseau, donc votre page en local n'est d'aucune aide puisque disponible uniquement pour et sur votre ordinateur(comme n'importe quel fichier du disque dur).
Pour pouvoir envoyer des données sur le réseau et les afficher il faut que vous soyez sur le réseau et que vous utilisiez des pages dynamiques, ou au moins une partie sera faite de façon dynamiquement, avec mes exemples simplifiés: chargée par le serveur de programme à partir d'une source(la base de données, on peut s'en passer mas c'est moins bien à de nombreux égards) et bien sûr dans un sens alimenter la base de données avec les informations voulues.

Regardez bien le schéma de l'architecture et le rôle central du serveur de programme:

A partir d'une page HTML l'utilisateur envoi des données(ex : le texte du message d'un forum)
=> au serveur de programme qui fait la liaison avec la base de données(et contrôle un certain nombre de choses nécessaire, par exemple interdire un message vide d'être publié) et va enregistrer (si validation des critères) sur la base.

=>De la base par le serveur de programme à la page générée dynamiquement qui est le résultat final envoyé au client, donc pour mon exemple afficher avec le dernier message du forum aussi.


Voilà bon boulot.

Ps: je ne connais pas trop mais je pense qu'il y a tout un tas d'outils Arduino qui permettent une ou partie de ces étapes(je pense surtout à comment fournir des données sur le réseau, le reste ne dépends plus d'Arduino une fois les données fournies et prêtes à être utilisées)
0