Salut !
Je travaille sur un serveur TCP qui reçoit des trames d'un GPS et écoute sur un port 6060. Le problème est que je ne reçois rien.
J'ai besoin d'un exemple de serveur TCP .
MErci
Salut !
Je travaille sur un serveur TCP qui reçoit des trames d'un GPS et écoute sur un port 6060. Le problème est que je ne reçois rien.
J'ai besoin d'un exemple de serveur TCP .
MErci
Salut !
Rien de plus simple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 var net = require('net'); net.createServer(function(socket) { console.log('GPS connected'); socket.on('data',function(data) { console.log('GPS data receive : ', data); }); socket.on('end', function() { console.log('GPS disconnected'); }); }).listen(6060, function() { console.log('server listening'); });
ShaderElement : Bénéficier de l’accélération graphique simplement par une nouvelle balise HTML <shader>
ODE.js : portage JavaScript du célèbre moteur physique 3D Open Dynamics Engine
Salut,
Merci pour ta réponse.
Le problème est que quand je lance le serveur sous node js (le matériel connecté bien sur sous le port 6060), je ne reçois que le message 'server listening' puis plus rien !
La commande netstat -a me donne :
Ok je trouvais ce mode de connexion étonnant !
Donc ce serai au processus node de se connecter au port TCP 6060 du dispositif GPS, pour t’en assurer, exécute la commande:
Sinon, un autre mode diffusion est souvent utilisé par ce type de dispositif, c’est le broadcast UDP, ton processus node doit bien ecouter le port 6060 mais en UDP :> telnet GPS_IP 6060
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 require("dgram").createSocket("udp4") .on("message",function(data) { console.log('GPS data receive : ', data); }).bind(6060);
ShaderElement : Bénéficier de l’accélération graphique simplement par une nouvelle balise HTML <shader>
ODE.js : portage JavaScript du célèbre moteur physique 3D Open Dynamics Engine
Merci pour ta réponse.
Comment puis-je connaitre l'adresse IP du matériel (sachant qu'il est connecté sur le port COM 3 par cable USB)?
Ce matériel ne support que la communication TCP/IP.
Sous Windows
Executer -> cmd en admin
Pour voir les différentes cartes réseaux :
ipconfig /all
Pour voir les différents port et ip configuré en écoute ... :
netstat -a
Et selon ce que tu as déjà fait l'ip en question est 0.0.0.0
C’est totalement contradictoire !
Un câble USB est une liaison série, à ne pas confondre avec liaison réseau IP !
Bon je m’en doutais un peu, car tous les dispositifs GPS que j’ai eu a intégrer utilise la norme NMEA 0183, comme tu peux le lire sur la fiche Wikipedia , une norme NMEA 2000 est sorti y a plus de 10 ans mais elle est incompatible avec les PC et n’est donc que rarement utilisé.
Dans ma boite nous utilisons des convertisseurs RS232/IP de type moxa pour broadcaster les trames NMEA sur le LAN, souhaite tu coder un convertisseur RS232/IP avec Node ?
Sinon c’est quoi ton idée première de créer un serveur TCP sur le port 6060 ? En gros que cherches-tu à faire ?
ShaderElement : Bénéficier de l’accélération graphique simplement par une nouvelle balise HTML <shader>
ODE.js : portage JavaScript du célèbre moteur physique 3D Open Dynamics Engine
la comande telnet me donne:
Donc la connexion ne ce fait pas!
Mercii pour ton éclaircissement.
Voilà je travail sur deux projets :
le premier consiste à créer une solution de géolocalisation par gps (et pour cela j 'ai besoin d'un serveur pour recueillir les trames venant du gps, les déchiffrer puis les stocker dans une base de donnée pour les exploiter par la suite sur une interfaces graphique)
e deuxième projet consiste à faire le même travail avec un DATALOGGER ( c'est un peu prés le même principe du fonctionnement du GPS).
J'ai donc décidé d'utiliser node js pour créer ce serveur qui me permettra au tout d abord de visuealiser mes trames (celles du Gps et celles venant du datalogger).
J’espère que j'ai été claire .
Ca fait bien longtemps que je n’ai pas attaquer une liaison série directement, normalement l’OS définit les ports COM comme des descripteurs de fichier standard …
Pour t’en assurer exécute la commande suivante :
si cela fonctionne peut être pourras tu utiliser la fonction fs.createReadStream pour récupérer tes trames dans node
Code : Sélectionner tout - Visualiser dans une fenêtre à part > type COM3
Sinon il existe plein de module pour les liaisons série, comme celui-ci
ShaderElement : Bénéficier de l’accélération graphique simplement par une nouvelle balise HTML <shader>
ODE.js : portage JavaScript du célèbre moteur physique 3D Open Dynamics Engine
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager