Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
linknx et groupwrite
#1
Bonjour à tous,

Je suis en cours de developpement de mon appli, jusque a j'allume/j'éteins tout va bien.

J'attaque la partie variation, je regarde ce qui passe sur le bus avec linknx et je fais des tests avec groupswrite.

Voila ce que ca donne :
10/4/122 => value 09 : augmente la lumière
10/4/122 => value 08 : stop l'augmentation

10/4/122 => value 01 : diminue la lumière
10/4/122 => value 00 : stop l'augmentation

Aprés je trouve d'autre réaction avec d'autre valeur ( ex: 02 et 03 ), mais je ne les comprend pas de trop.
Quelqu'un aurait d'autre info ?

Répondre
#2
Bonjour,

je pense que tu confond linknx et eibd ...

les commandes groupswrite c'est eibd
pour "communiquer" avec linknx il faut lui envoyer des requêtes sous la forme de flux xml comme vu dans un autre post

pour savoir ce qui passe sur le bus utilise le moniteur de bus de ETS ou celui de eibd et actionne tes BP cela te donnera surement un peu plus d'éléments
sinon regarder les spec de tes composants diffcile de répondre comme ça ... la seule chose qui est faiseable est de convertir le 02 et 03 en "binaire" et regarder ce que ton actionner peut "gérer" ...

en quel langage veux-tu développer une "appli" ? je suppose que c'est une visu ?
knxweb ne te convient pas ?

@+
Anthony.
Répondre
#3
Tout se trouve dans le document suivant:
http://www.knx.org/fileadmin/downloads/0...0%20AS.zip

Pour les dimmer, c'est le chapitre 3.3.1
En gros, la valeur 1 va augmenter la luminosité de 100%; la valeur 2 de 50% ; la valeur 3 de 25% ; la valeur 4 de 12,5% ; etc...
Répondre
#4
Tu as raison, je fais un petit milshake entre les 2 Smile, mais c'est pour les tests.

Voila le peu que je sais sur le sujet :
Allumer éteindre une lumière par exemple
EIBD : groupswrite ip:192.168.0.15 10/4/19 0
linknx : <write><object id="Ecl_Cuisine" value="off" /></write>

Pour faire varié la luminosité (décroissant)
EIBD : groupswrite ip:192.168.0.15 10/4/122 1
linknx : <write><object id="Ecl_Sal_Cent" value="1" /></write>

Pour arrété la baisse de la luminosité
EIBD : groupswrite ip:192.168.0.15 10/4/122 0
linknx : <write><object id="Ecl_Sal_Cent" value="0" /></write>

Pour faire varié la luminosité (croissant)
EIBD : groupswrite ip:192.168.0.15 10/4/122 9
linknx : <write><object id="Ecl_Sal_Cent" value="9" /></write> ne marche pas (SwitchingObjectValue: Bad value '9')

Pour arrété l'augmentation de la luminosité
EIBD : groupswrite ip:192.168.0.15 10/4/122 8
linknx : <write><object id="Ecl_Sal_Cent" value="8" /></write> ne marche pas (SwitchingObjectValue: Bad value '8')

Donc je cherche les bonnes commandes linknx :~


Je developpe ( commence ^^ ) une appli birectionnelle, qui me remonte les infos du bus et qui puisse en envoyer.

Pour l''instant ca ressemble à ça :
[Image: knxlsm.png]

Ayant l'inspiration d'une huitre au niveau graphique,je reprend le graphique de Domovea
Répondre
#5
(12/09/2011, 20:31:04)Slayes a écrit : Pour arrété la baisse de la luminosité
EIBD : groupswrite ip:192.168.0.15 10/4/122 0
linknx : <write><object id="Ecl_Sal_Cent" value="0" /></write>

Pour faire varié la luminosité (croissant)
EIBD : groupswrite ip:192.168.0.15 10/4/122 9
linknx : <write><object id="Ecl_Sal_Cent" value="9" /></write> ne marche pas (SwitchingObjectValue: Bad value '9')

Pour arrété l'augmentation de la luminosité
EIBD : groupswrite ip:192.168.0.15 10/4/122 8
linknx : <write><object id="Ecl_Sal_Cent" value="8" /></write> ne marche pas (SwitchingObjectValue: Bad value '8')

Donc je cherche les bonnes commandes linknx :~
Dans linknx, chaque objet à un type (comme dans ETS d'ailleurs) et on ne commande pas un objet binaire (ON/OFF) comme un dimmer ou un thermostat.
Ici, visiblement, tu essaie d'assigner toute sortes de valeurs à un objet binaire, donc "on", "off", "true", "false", "0" ou "1" ça marche mais pas le reste. Jusque là, rien d'anormal....
Si tu veux commander un dimmer avec linknx, il faut créer un objet avec type="3.007" et lui donner des valeurs comme "up", "down", "stop", "up:x", "down:x" en remplaçant x par le "stepcode" (un chiffre entre 1 et 7, voir le lien que j'ai posté tout-à-l'heure)

Jean-François
Répondre
#6
jean-françois a été plus rapide ...

sinon pas mal et en quel "langage" fait tu cela ? php/ html / javascript ou autre ?
j'ai également fait des tests en "m'inspirant" comme toi de domovea j'ai fait les "widgets" et pas "encore" la page d'accueil ...

as-tu regarder knxweb ? si oui qu'est ce qui ne te "convient" pas ?
( je participe au projet en tant que développeur )

@+
Anthony.



Répondre
#7
jef2000 : Désolé je n'avais pas vu ton post, j'ai posté en meme temps.
je te remercie pour le lien vers de la doc, par contre aurais un pour une doc de la doc ?? Smile J'ai été regardé au chapitre 3.3.1 page 22 et mon neurone cherche encore à comprendre.
Par contre sur tes dernières infos, ce que j'ai testé et compris :
Code :
<write><object id="Sal_cot_jard-31" value="down"/></write> => pour faire diminuer la lumière
<write><object id="Sal_cot_jard-31" value="up"/></write> => pour faire augmenter la lumière
<write><object id="Sal_cot_jard-31" value="stop"/></write> => pour faire stoper les 2 process ci-dessus

<write><object id="Sal_cot_jard-31" value="up:7" ( 1<> 7)/></write> => permet de définir le nombre de pas de variation pour aller de 0% à 100%

Mais par contre comment faire diminuer ou augmenter ??

Je vais peut être me répondre en même temps, si je veux par exemple utiliser un genre de potentiomètre pour ajuster le taux de luminosité.
Quand je vais aller de 0% de lumiere à 100%, je vais devoir suscessivement appellé :
Code :
<write><object id="Sal_cot_jard-31" value="up:7"/></write>
<write><object id="Sal_cot_jard-31" value="up:6"/></write>
<write><object id="Sal_cot_jard-31" value="up:5"/></write>
<write><object id="Sal_cot_jard-31" value="up:4"/></write>
<write><object id="Sal_cot_jard-31" value="up:3"/></write>
<write><object id="Sal_cot_jard-31" value="up:2"/></write>
<write><object id="Sal_cot_jard-31" value="up:1"/></write>

Et bien sur je m'arrête quand le taux me convient.
Est ce correct ?

Energy01 :
Mon application n'est pas orientée web, je travaille sur windev.
J'ai testé knxweb, mais je préfère partir sur une application que je developpe moi même j'ai toujours des petites préférences, des envies de fonctionnalitées ... et j'aime avoir des outils comme je les aime. Smile
Répondre
#8
(12/09/2011, 21:54:48)Slayes a écrit : <write><object id="Sal_cot_jard-31" value="up:7" ( 1<> 7)/></write> => permet de définir le nombre de pas de variation pour aller de 0% à 100%

Mais par contre comment faire diminuer ou augmenter ??

Je vais peut être me répondre en même temps, si je veux par exemple utiliser un genre de potentiomètre pour ajuster le taux de luminosité.
Quand je vais aller de 0% de lumiere à 100%, je vais devoir suscessivement appellé :
Code :
<write><object id="Sal_cot_jard-31" value="up:7"/></write>
<write><object id="Sal_cot_jard-31" value="up:6"/></write>
<write><object id="Sal_cot_jard-31" value="up:5"/></write>
<write><object id="Sal_cot_jard-31" value="up:4"/></write>
<write><object id="Sal_cot_jard-31" value="up:3"/></write>
<write><object id="Sal_cot_jard-31" value="up:2"/></write>
<write><object id="Sal_cot_jard-31" value="up:1"/></write>

Et bien sur je m'arrête quand le taux me convient.
Est ce correct ?
Non, la valeur entre 1 et 7 représente la taille des pas réalisés lors de l'envoi de la commande.
1 => 100%
2 => 50%
3 => 25%
4 => 12.5%
5 => 6.25%
6 => 3.125%
7 => 1.5625%

Donc si ta lampe est allumée à 25%, tu envoies up:4 une première fois, elle passe à 37.5, tu envoies up:4 une seconde fois pour la faire passer à 50% et une troisième pour aller à 62.5 et ainsi de suite.
La nouvelle valeur est toujours relative à la précédente (sauf bien sûr si on arrive à 0 ou 100%). La vitesse de variation est configurée par ETS dans l'actuateur. Et il est toujours possible d'arrêter la variation en cours avec la commande "stop" (qui correspond à la valeur 0 pour groupswrite).
Si tu veux faire du dimming absolu, la plupart des dimmer possèdent un autre objet (de type 5.xxx => 1 byte) qui accepte une valeur entre 0 et 255 qui correspond a la valeur d'éclairement (de 0 à 100%). Si tu veux ajouter un potentiomètre dans ton application, je pense que le mieux est de travailler avec du dimming absolu.
Répondre
#9
Merci pour ces infos Smile

Je dois avoir un soucis quelque part puique
1 envoie de <write><object id="Sal_cot_jard-31" value="up:4"/></write>, fait bien varié le tx de luminosité
1 nouvel envoie de <write><object id="Sal_cot_jard-31" value="up:4"/></write> ne change rien
1 envoie de <write><object id="Sal_cot_jard-31" value="up:2"/></write>, fais bien varié le tx de luminositté
1 nouvel envoie de <write><object id="Sal_cot_jard-31" value="up:4"/></write> ne change rien
etc....

J'a fais un test avec en config :
<object type="5.xxx" id="Sal_cot_jard-31" gad="10/4/122" log="true">Salon_côté_jardin - Variation</object>

Et en appel :
<write><object id="Sal_cot_jard-31" value="200"/></write>
cela me marque bien success mais rien ne bouge.

Un bug dans ma config ou install ?
Répondre
#10
Pas d'idée ou de piste sur mon problème ? Smile
Répondre
#11
(12/09/2011, 22:43:00)Slayes a écrit : J'a fais un test avec en config :
<object type="5.xxx" id="Sal_cot_jard-31" gad="10/4/122" log="true">Salon_côté_jardin - Variation</object>
J'avais dit:
Si tu veux faire du dimming absolu, la plupart des dimmer possèdent un autre objet (de type 5.xxx => 1 byte) qui accepte une valeur entre 0 et 255

Et "un autre objet" ça veut dire pas le même. Donc si l'objet de type 3.007 est associé à l'adresse 10/4/122, l'objet de type 5.xxx ne peut pas utiliser la même adresse 10/4/122.

Pour le fait que le second "up:4" n'a aucun effet, c'est probablement parce-que linknx, par défaut, ne renvoie pas 2 fois la même valeur de suite.
Pour forcer l'envoi de cette valeur dans tous les cas, il faut ajouter le flag 's' à l'objet. Ou envoyer un 'stop' entre chaque commande.
<object type="3.007" id="Sal_cot_jard-31" gad="10/4/122" log="true" flags="cwtus">Salon_côté_jardin - Variation relative</object>
<object type="5.xxx" id="Sal_cot_jard-31-valeur" gad="10/4/12x" log="true" flags="cwtu">Salon_côté_jardin - Variation absolue</object>
Répondre
#12
Arfouille.
J'avais mal compris.

Je testeris d'ici une semaine car je part en vacances Smile Smile

Merci pour la réponse Wink
Répondre
#13
Je ne comprends pas comment changer le type d'un objet dans un groupe ETS ?
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet :