2012-06-24 2 views
0

Je travaille actuellement sur un projet où je veux contrôler un microprocesseur (Arduino) à partir d'une page Web.Communication entre microprocesseur et page Web?

Le microprocesseur ne sera pas connecté physiquement à l'ordinateur.

  • Quel est le meilleur protocole pour la communication? (Mon choix actuel est TCP).
  • Quelle est la meilleure façon de sérialiser les objets à envoyer? (Mon choix actuel est JSON).

Le côté serveur est écrit en NodeJs.

Depuis que je suis nouveau à ce genre de développement j'apprécierais beaucoup toute contribution sur le sujet!

Répondre

1

Sans les détails sur l'arduino que vous envisagez d'utiliser et sur les protections que vous pouvez utiliser pour réaliser l'interface, il est difficile de faire une déclaration définitive.

Je dirais qu'avec le bouclier approprié pour fournir l'interface Ethernet TCP serait un choix acceptable.

Je suis enclin à dire que vous allez avoir du mal à construire un interpréteur JSON qui s'intègre dans l'empreinte de la mémoire d'un Arudino. La plupart de ces appareils ont 32 Ko de mémoire programme et 1 ou 2 Ko de mémoire de données. Pour les dispositifs embarqués comme celui-ci, un protocole binaire concis sur le fil est beaucoup plus commun et plus facile à intégrer dans les limites de l'appareil.

+0

Ok, merci! Existe-t-il des formats binaires standardisés similaires à JSON et XML? Je voudrais utiliser des formats existants si possible. –

+0

Le microcontrôleur est programmé en C, c'est pourquoi j'utilise souvent des structures à cet effet. Il n'y a pas de standard car vous transmettez simplement les octets bruts qui composent les données. Vous pouvez le faire comme vous voulez. – tallganglyguy

0

Il existe une bibliothèque appelée aJson qui vous permet d'effectuer l'analyse JSON dans Arduino. J'ai utilisé cette bibliothèque pour parse response from a YQL call tout dans la mémoire du programme 32K d'Arduino :)

Je suggère d'utiliser un blindage Ethernet ou Wifi pour Arduino pour le connecter à Internet et ensuite vous pouvez utiliser la bibliothèque Ethernet d'Arduino pour faire du HTTP appels. Le format de réponse pourrait être en JSON.

Questions connexes