Forum KNX francophone / English KNX forum

Version complète : EIBD à PHP
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pages : 1 2

marc.assin

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

Frédéric

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

Frédéric

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

marc.assin

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

marc.assin

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 ?

kraven

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 ?

frederic Gilliard

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 ?

Frédéric

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

marc.assin

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

frederic Gilliard

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
>

kraven

> 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

frederic Gilliard

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

marc.assin

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 ...

Christophe Bruchez

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.

marc.assin

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)

Christophe Bruchez

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)

marc.assin

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

jef2000

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)

Christophe Bruchez

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)
Pages : 1 2