Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
EIBD à PHP
#26
On 25 fév, 13:06, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Comment passé de 2 - 78 à 5.9  ?
Je pense que, énoncé comme çà, il n'y a pas de solution !

Je crois comprendre que ta question porte sur les DataType
Je répète que je ne suis pas programmeur, mais voici ma vision (très
limitée) des choses ....
Lorsque un émetteur (BP) communique à un récepteur (actuateur), c'est
suivant des conventions définies dans ETS. La description du DataType
ne voyage PAS sur le câble, elle ne figure PAS dans le télégramme.

Toi, tu arrives au milieu du jeu de quilles, et tu essaies de
savoir .... je pense qu'il n'y a pas moyen. Pour décoder correctement
l'information contenue dans la partie "data" du télégramme, il faut
savoir de quel DataType il s'agit.

Donc, je répète, 2 -78 ne veut rien dire, et tu n'arriveras pas à 5.9,
sauf si tu sais, par exemple, qu'il s'agit d'un DPT8 et donc 2 byte
signed value EIS 10.001.
NB: il pourrait tout aussi bien s'agir d'un DPT 10 ou 11 auquel cas,
il s'agit de l'heure et de la date.

J'ai déposé Datentypen.doc dans "KNX"

hth
#27
Le vendredi 25 février 2011, marc.assin a écrit :

> Lorsque un émetteur (BP) communique à un récepteur (actuateur), c'est
> suivant des conventions définies dans ETS. La description du DataType
> ne voyage PAS sur le câble, elle ne figure PAS dans le télégramme.

Mais lorsqu'un participant réagit à différents datatypes (ce qui est
généralement le cas), comment fait-il alors pour s'y retrouver ? Il doit
bien être capable de dire "cette trame c'est du 10.001, celle-ci du 9.001"
non ?

--
Frédéric
#28
Le vendredi 25 février 2011, Frédéric a écrit :

> Mais lorsqu'un participant réagit à différents datatypes (ce qui est
> généralement le cas), comment fait-il alors pour s'y retrouver ? Il doit
> bien être capable de dire "cette trame c'est du 10.001, celle-ci du
> 9.001" non ?

Je dis une bétise : la trame contient une adresse de groupe, que le
participant reconnait. Et comme cette adresse de groupe est liée à un
datatype précis, il peut décoder correctement la trame.

--
Frédéric
#29
On 25 fév, 13:54, Frédéric <f...@gbiloba.org> wrote:
> la trame contient une adresse de groupe, que le
> participant reconnait. Et comme cette adresse de groupe est liée à un
> datatype précis, il peut décoder correctement la trame.

exact
#30
On 25 fév, 13:33, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Quelqu'un peut t-il me donner le lien vers la bible KNX ou tous les type ESI
> sont décrit ?!

Le Datentypen.doc ne fait pas l'affaire ?
#31
Effectivement c'est a nous de définir le type comme dans Linknx
d’ailleurs.

Ensuite il faut interpréter le résultat en fonction du type.

A+

On 25 fév, 14:08, "marc.assin" <raym...@warichet.com> wrote:
> On 25 fév, 13:33, "Christophe Bruchez" <i...@accessnight.ch> wrote:
>
> > Quelqu'un peut t-il me donner le lien vers la bible KNX ou tous les type ESI
> > sont décrit ?!
>
> Le Datentypen.doc ne fait pas l'affaire ?
#32
Je dis peut-être une bétise, mais pourquoi ne pas simplement regarder le
code source de linknx et de voir comment il fait pour décoder la trame, et
adapter cela en VB ?
#33
Le vendredi 25 février 2011, frederic Gilliard a écrit :

> Je dis peut-être une bétise, mais pourquoi ne pas simplement regarder le
> code source de linknx et de voir comment il fait pour décoder la trame,
> et adapter cela en VB ?

linknx a besoin de la correspondance entre adresse de groupe et datatype ;
c'est décrit dans son fichier de config :

http://sourceforge.net/apps/mediawiki/li...ion_Syntax

--
Frédéric
#34
On 25 fév, 14:26, kraven <ohl.christo...@gmail.com> wrote:
> Effectivement c'est a nous de définir le type comme dans Linknx
> d’ailleurs.

Je suggère d'employer la nouvelle nomenclature DPT, l'EIS étant
obsolète
#35
Et je pense pas que tu pourras faire sans, sauf boule de crystal branchée
sur le port USB :-)



> linknx a besoin de la correspondance entre adresse de groupe et datatype ;
> c'est décrit dans son fichier de config :
>
>
> http://sourceforge.net/apps/mediawiki/li...ion_Syntax
>
> --
> Frédéric
>
#36
> Je dis peut-être une bétise, mais pourquoi ne pas simplement regarder le
> code source de linknx et de voir comment il fait pour décoder la trame, et
> adapter cela en VB ?

C'est pas une bêtise, c'est ce que j'essais de faire mais je n'y
arrive pas. Il est pas aussi simple que ça de convertir du C en VB.net



Ma
#37
Mais si tu comprend le code, tu comprends comment décodé les trames.

Ca aurait été effectivement plus facile de convertir en C#.net

Le 25 février 2011 14:43, kraven <ohl.christophe@gmail.com> a écrit :

> > Je dis peut-être une bétise, mais pourquoi ne pas simplement regarder le
> > code source de linknx et de voir comment il fait pour décoder la trame,
> et
> > adapter cela en VB ?
>
> C'est pas une bêtise, c'est ce que j'essais de faire mais je n'y
> arrive pas. Il est pas aussi simple que ça de convertir du C en VB.net
>
>
>
> Ma
#38
On 25 fév, 13:06, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Comment passé de 2 - 78 à 5.9  ?

On peut faire du "précognitive" en examinant le "length field" et sur
base de la longeur du payload on peut déblayer un peu le terrain.
Sachant que les longeurs sont de 1, 2, 3, 4, 14.
Cà n'avance pas à grand chose, vu que pour la longeur 4 byte il y a 4
DPT différents, on n'aura donc pas la réponse exacte, mais bon ...
#39
Et si je dis que c'est du EIS5....

> Donc, je répète, 2 -78 ne veut rien dire, et tu n'arriveras pas à 5.9,
sauf si tu sais, par exemple, qu'il s'agit d'un DPT8 et donc 2 byte signed
value EIS 10.001.
> NB: il pourrait tout aussi bien s'agir d'un DPT 10 ou 11 auquel cas, il
s'agit de l'heure et de la date.
#40
On 25 fév, 16:57, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Et si je dis que c'est du EIS5....

P'têt bien, oui, je n'ai pas étudié ton cas concret.
EIS5 = DPT9 = 2 Byte float

Si en appliquant la supposition EIS5 sur ta valeur 16 bit, tu arrives
à la bonne valeur, c'est gagné :-)
Cà suppose évidemment que tu connais le format 2 Byte float (signe,
mantisse, exp)
#41
Justement je suis sûr que c'est de l'EIS5 !!!

Mais quel est la formule magique pour arriver à mon chiffre, là je suis pô !
Tu as trouvé ou cette formule ? C'est moi qui suis c** ?

Chrystof

-----Message d'origine-----
De : domotique-eib@googlegroups.com [mailto:domotique-eib@googlegroups.com]
De la part de marc.assin
Envoyé : vendredi 25 février 2011 17:11
À : domotique-EIB
Objet : Re: EIBD à PHP

On 25 fév, 16:57, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Et si je dis que c'est du EIS5....

P'têt bien, oui, je n'ai pas étudié ton cas concret.
EIS5 = DPT9 = 2 Byte float

Si en appliquant la supposition EIS5 sur ta valeur 16 bit, tu arrives à la
bonne valeur, c'est gagné :-) Cà suppose évidemment que tu connais le format
2 Byte float (signe, mantisse, exp)
#42
On 25 fév, 17:17, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Mais quel est la formule magique pour arriver à mon chiffre, là je suis pô !
> Tu as trouvé ou cette formule ?

Formule ?
Il n'y a pas de formule à proprement parler, c'est le format, je pense
qu'il est standard, faudra faire une petite recherche pour les détails
exacts...
De tête, je pense qu'il y a:
11 bit pour la mantisse
4 bitpour l'exposant
1 bit pour le signe
#43
Salut,

La formule n'est pas magique, et c'est à peu près la seule partie de
spec KNX vraiment publiquement et gratuitement disponible sur leur
site web:
http://www.knx.org/fileadmin/downloads/0...0%20AS.zip

pour l'EIS5, il faut convertir 2 et 78 en binaire. Ca donne 00000010
01001110. Ensuite tu sépares E et M comme décrit au chapitre 3.10 du
document ci-dessus. E=0000 et M=001001001110. Ce qui donne après
conversion en décimal E=0 et M=590
Ensuite, avec la formule (0.01*M)*2^E donne 5.9

Voilà

Jean-François

On 25 fév, 17:17, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Justement je suis sûr que c'est de l'EIS5 !!!
>
> Mais quel est la formule magique pour arriver à mon chiffre, là je suis pô !
> Tu as trouvé ou cette formule ? C'est moi qui suis c** ?
>
> Chrystof
>
> -----Message d'origine-----
> De : domotique-eib@googlegroups.com [mailto:domotique-eib@googlegroups.com]
> De la part de marc.assin
> Envoyé : vendredi 25 février 2011 17:11
> À : domotique-EIB
> Objet : Re: EIBD à PHP
>
> On 25 fév, 16:57, "Christophe Bruchez" <i...@accessnight.ch> wrote:
>
> > Et si je dis que c'est du EIS5....
>
> P'têt bien, oui, je n'ai pas étudié ton cas concret.
> EIS5 = DPT9 = 2 Byte float
>
> Si en appliquant la supposition EIS5 sur ta valeur 16 bit, tu arrives à la
> bonne valeur, c'est gagné :-) Cà suppose évidemment que tu connais le format
> 2 Byte float (signe, mantisse, exp)
#44
AH ben voilà !

Merci beaucoup, cela devient tout de suite plus clair.

Merci.

Chrystof

-----Message d'origine-----
De : domotique-eib@googlegroups.com [mailto:domotique-eib@googlegroups.com]
De la part de jef2000
Envoyé : vendredi 25 février 2011 19:55
À : domotique-EIB
Objet : Re: EIBD à PHP

Salut,

La formule n'est pas magique, et c'est à peu près la seule partie de spec
KNX vraiment publiquement et gratuitement disponible sur leur site web:
http://www.knx.org/fileadmin/downloads/0...%20Standar
d%20Public%20Documents/03_07_02%20Datapoint%20Types%20v1.5.00%20AS.zip

pour l'EIS5, il faut convertir 2 et 78 en binaire. Ca donne 00000010
01001110. Ensuite tu sépares E et M comme décrit au chapitre 3.10 du
document ci-dessus. E=0000 et M=001001001110. Ce qui donne après conversion
en décimal E=0 et M=590 Ensuite, avec la formule (0.01*M)*2^E donne 5.9

Voilà

Jean-François

On 25 fév, 17:17, "Christophe Bruchez" <i...@accessnight.ch> wrote:
> Justement je suis sûr que c'est de l'EIS5 !!!
>
> Mais quel est la formule magique pour arriver à mon chiffre, là je suis pô
!
> Tu as trouvé ou cette formule ? C'est moi qui suis c** ?
>
> Chrystof
>
> -----Message d'origine-----
> De : domotique-eib@googlegroups.com
> [mailto:domotique-eib@googlegroups.com]
> De la part de marc.assin
> Envoyé : vendredi 25 février 2011 17:11 À : domotique-EIB Objet : Re:
> EIBD à PHP
>
> On 25 fév, 16:57, "Christophe Bruchez" <i...@accessnight.ch> wrote:
>
> > Et si je dis que c'est du EIS5....
>
> P'têt bien, oui, je n'ai pas étudié ton cas concret.
> EIS5 = DPT9 = 2 Byte float
>
> Si en appliquant la supposition EIS5 sur ta valeur 16 bit, tu arrives
> à la bonne valeur, c'est gagné :-) Cà suppose évidemment que tu
> connais le format
> 2 Byte float (signe, mantisse, exp)


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)