Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

#1 Le 19/10/2013, à 19:07

usky

Recuperer un flux d'info sur /dev/ttyUSB1

Bonjour

J'ai un préripherique USB qui récupere les données de mon compteur EDF.
La clé fonctionne, si je fais un 
J'obtient un texte qui défile. Ci joint un exemple :

DS-212j> cat /dev/ttyUSB1
PAPP 00900 *
HHPHC D /
MOTDETAT 000000 B
ADCO 040222095195 >
OPTARIF HC.. <
ISOUSC 45 ?
HCHC 034742837 ,
HCHP 043984767 C
PTEC HP..
IINST 004 [
IMAX 039 K
PAPP 00900 *
HHPHC D /
MOTDETAT 000000 B
ADCO 040222095195 >
OPTARIF HC.. <
ISOUSC 45 ?

Je souhaite pouvoir récuperer la valeur PAPP (consommation en Watt).

J'ai donc tenté un

cat /dev/USB1 | grep PAPP

Qui me renvoie bien les valeurs :

DS-212j> cat /dev/ttyUSB1 | grep PAPP
PAPP 00860 /
PAPP 00850 .
PAPP 00850 .
]

Mais là ou je bloque c'est pour récuperer uniquement la valeur numérique ?

Merci de votre aide


Un PC Desktop Sous Ubuntu 12.04 Unity + acer1410 sous Unity Plus de windows depuis 2007 Le PC acer est sous Windows7... Ubuntu ne marche plus correctement depuis la 12.04...
http://parrains.linux.free.fr/

Hors ligne

#2 Le 19/10/2013, à 23:38

ssdg

Re : Recuperer un flux d'info sur /dev/ttyUSB1

echo "PAPP 00860 /" | cut -d" "  -f2

Voilà. wink

Pour plus de détails, regarde le manuel de la commande cut wink


s'il n'y a pas de solution, c'est qu'il n'y a pas de problème... ou pas.

Hors ligne

#3 Le 20/10/2013, à 08:26

usky

Re : Recuperer un flux d'info sur /dev/ttyUSB1

Merci ssdg
Ta commande fonctionne mais j'ai encore un soucis car ajouté à ma commande cela ne me sort rien...

cat /dev/ttyUSB1 | grep PAPP | cut -d" " -f2

une idée ?


Un PC Desktop Sous Ubuntu 12.04 Unity + acer1410 sous Unity Plus de windows depuis 2007 Le PC acer est sous Windows7... Ubuntu ne marche plus correctement depuis la 12.04...
http://parrains.linux.free.fr/

Hors ligne

#4 Le 20/10/2013, à 18:18

claudius01

Re : Recuperer un flux d'info sur /dev/ttyUSB1

Bonsoir,

Peut-être que :

cat /dev/ttyUSB1 | grep PAPP | awk '{print $2}'

fonctionne mieux (si le cas pb de caractère espace, tabulation, etc.)


Cordialement, A+
--
Claudius

Hors ligne

#5 Le 21/10/2013, à 10:24

tiramiseb

Re : Recuperer un flux d'info sur /dev/ttyUSB1

Salut,

Faire ce genre de choses sur un pseudo-fichier de périphérique me semble potentiellement problématique.
L'idéal serait de faire un petit programme qui se connecte sur le tty, avec gestion de flux, gestion d'erreurs, etc, et qui traite les données qu'il reçoit...

Ça m'étonne que ça passe par ttyUSB1 : c'est un convertisseur série/usb !?



Sinon, autre chose, ta clé USB m'intéresse, c'est quoi le modèle, ça s'achète où ?

Dernière modification par tiramiseb (Le 21/10/2013, à 10:24)


Sébastien Maccagnoni-Munch - administrateur Linux depuis le XXème siècle
Consultant informatique indépendant - http://www.smm-informatique.fr
Geek et tout plein d'autres choses - http://www.tiramiseb.fr

En ligne

#6 Le 21/10/2013, à 10:53

claudius01

Re : Recuperer un flux d'info sur /dev/ttyUSB1

Bonjour,

tiramiseb a écrit :

... Ça m'étonne que ça passe par ttyUSB1 : c'est un convertisseur série/usb !?

Je dirai plutôt : Câble USB/Série ou package driver ftdi_sio de chez FTDI Chip installé dans les distributions Ubuntu > 08.04 qui permet, je cite un extrait d'article mettant en œuvre ce driver :

Linux (noyau version 2.6.31 et supérieur)
Les noyaux Linux de version supérieure ou égale à 2.6.31 intègrent les derniers pilotes
d’émulation de port virtuel du FT232R (modules ftdi_sio). Il n’y rien à installer et c’est aussi
probablement le cas pour des versions plus anciennes du noyau.
La passerelle est accessible via le périphérique /dev/ttyUSBx.
Pour émuler un terminal, nous vous recommandons GTKTerm ou HTerm.

et qui permet effectivement de faire des actions comme : echo « commandes » > /dev/ttyUSB1  ou  cat  fichier_de_commandes > /dev/ttyUSB1 et la réception plus l’affichage des réponses dans un 2ème terminal console par  cat < /dev/ttyUSB1 (cf. http://micro-infos.com/2013/01/17/progr … ronique/3/)


Cordialement, A+
--
Claudius

Hors ligne

#7 Le 21/10/2013, à 10:58

tiramiseb

Re : Recuperer un flux d'info sur /dev/ttyUSB1

claudius01 a écrit :

Je dirai plutôt : Câble USB/Série ou package driver ftdi_sio de chez FTDI Chip

Ce n'est de loin pas le seul périphérique/câble/adaptateur à faire un /dev/ttyUSBx...


Sébastien Maccagnoni-Munch - administrateur Linux depuis le XXème siècle
Consultant informatique indépendant - http://www.smm-informatique.fr
Geek et tout plein d'autres choses - http://www.tiramiseb.fr

En ligne

#8 Le 21/10/2013, à 14:18

claudius01

Re : Recuperer un flux d'info sur /dev/ttyUSB1

Re,

Entièrement d'accord avec toi tiramiseb, mais cette solution est l'une des plus utilisées par les électroniciens depuis que leur chère interface série / RS232 a disparu de tous les PC ;-(
Maintenant, on ne va pas se priver d'un driver fourni de base dans Linux et qui est prêt à être installé; je veux parler du module 'ftdi_sio.ko' :

$ sudo find / -name "ftdi_sio.ko"
/lib/modules/3.5.0-30-generic/kernel/drivers/usb/serial/ftdi_sio.ko
/lib/modules/3.5.0-23-generic/kernel/drivers/usb/serial/ftdi_sio.ko 

Cordialement, A+
--
Claudius

Hors ligne

Haut de page ↑