Bonjour,
je cherche à programmer facilement (c'est à dire via une interface graphique) les conditions utiles sur ma domotique.
Le problème est que j'ai de nombreuses conditions/actions possibles.
Je pensais créer un container par condition. Chaque container contiendrait :
- Règle active/Inactive (checkbox)
- Evènement détecté (ouverture volet, bouton appuyé, relais, etc) : en gros des changements d'état (un listicongadget ou comboboxgadget)
- Modules concernés (sélection multiples possibles, donc un listviewgadget dont la liste change en fonction du type d'évènement attendu)
- Valeurs de seuil (température, état... là ça devient compliqué à cause des <, >, =...)
- Action à effectuer (allumer, ouvrir, ...) = comme évènement détecté (listicongadget ou combobox)
- Module(s) actionné(s) (listviewgadget)
Mais j'ai l'impression de faire une usine à gaz.
En plus, il me faudra une autre vue pour les évènements datés (Fêtes, Anniversaires, etc.)
Avez-vous déjà eu ce genre de dev à faire ? sur quelle base partiriez-vous ?
Fonctions graphiques conditionnelles : avis ?
Fonctions graphiques conditionnelles : avis ?
Purebasic 5.30 full sous Windows XP (x86) et Win7 (64 bits), Linux Debian. Orientation réseaux, domotique
http://golfy.olympe.in/Teo-Tea/
http://golfy.olympe.in/Teo-Tea/
Re: Fonctions graphiques conditionnelles : avis ?
C'est une usine à gaz
Comme toujours, quand il y a trop de choix, un petit classement s'impose. Quel est le but visé ? Quel est le public ? Pour ce genre d'interface, je trouve que la POO apporte un réel plus : on crée un objet avec une ou plusieurs entrées, une sortie, une condition, on organise ça comme on veut, et on "branche" le tout. On envoie le jus et on voit ce que ça donne !

Comme toujours, quand il y a trop de choix, un petit classement s'impose. Quel est le but visé ? Quel est le public ? Pour ce genre d'interface, je trouve que la POO apporte un réel plus : on crée un objet avec une ou plusieurs entrées, une sortie, une condition, on organise ça comme on veut, et on "branche" le tout. On envoie le jus et on voit ce que ça donne !
Re: Fonctions graphiques conditionnelles : avis ?
Achète-toi un R2D2, c'est assez pratique pour ce genre de trucs, il est capable de prendre des décisions tout seul en fonction du contexte. En plus tu peux le programmer pour garder les enfants. Le seul hic, faut pas d'escalier trop raide dans la maison (style échelle de meunier)... 
Bon, désolé, c'est la matin,
et je suis d'humeur taquin...

Bon, désolé, c'est la matin,
et je suis d'humeur taquin...
Only PureBasic makes it possible
Re: Fonctions graphiques conditionnelles : avis ?
Public : des utilisateurs Windows (ex. ma femme. Elle n'apprendra pas le Purebasic
)
But visé : permettre à la domotique de la maison de fournir une certaine intelligence
Etape 1 : réveil matin (fait ! programmation par jour de semaine et heure... avec un simple listicongadget)
Etape 2 : alarme (selon l'état présent/absent prendre des actions généralement faite par des centrales d'alarme)
Etape 3 : Rappel (anniversaires, fêtes) et réveil prenant en compte les jours fériés et vacances
Etape 4 : synthèse vocale
Etape 5 : 2001 l'odyssée de l'espace
Etape 6 : K-2000
Etape 7 : I Robot
Bon ok, c'est vrai je suis fan d'Asimov et j'ai toujours rêvé d'une maison intelligente donc les étapes 5, 6 et 7 ne sont pas pour l'immédiat
Ceci étant, je programme des règles de parefeu tout les jours et cela semble plus simple à faire que mon projet
En texte cela pourrait donner
_;Etat DOWN;Volet_Chambre+Volet_Cuisine;Allumer;Lampe_Chambre+Lampe_Cuisine+Couloir
_ ou X pour actif/inactif
+ pour liste ET
; séparateur
????
@Cool Dji : j'y ai pensé mais c'est pas la galaxie d'a coté pour l'acheter

But visé : permettre à la domotique de la maison de fournir une certaine intelligence
Etape 1 : réveil matin (fait ! programmation par jour de semaine et heure... avec un simple listicongadget)
Etape 2 : alarme (selon l'état présent/absent prendre des actions généralement faite par des centrales d'alarme)
Etape 3 : Rappel (anniversaires, fêtes) et réveil prenant en compte les jours fériés et vacances
Etape 4 : synthèse vocale
Etape 5 : 2001 l'odyssée de l'espace
Etape 6 : K-2000
Etape 7 : I Robot
Bon ok, c'est vrai je suis fan d'Asimov et j'ai toujours rêvé d'une maison intelligente donc les étapes 5, 6 et 7 ne sont pas pour l'immédiat

Ceci étant, je programme des règles de parefeu tout les jours et cela semble plus simple à faire que mon projet

En texte cela pourrait donner
_;Etat DOWN;Volet_Chambre+Volet_Cuisine;Allumer;Lampe_Chambre+Lampe_Cuisine+Couloir
_ ou X pour actif/inactif
+ pour liste ET
; séparateur
????
@Cool Dji : j'y ai pensé mais c'est pas la galaxie d'a coté pour l'acheter

Purebasic 5.30 full sous Windows XP (x86) et Win7 (64 bits), Linux Debian. Orientation réseaux, domotique
http://golfy.olympe.in/Teo-Tea/
http://golfy.olympe.in/Teo-Tea/
Re: Fonctions graphiques conditionnelles : avis ?
Salut Golfy
Je ne comprend pas trés bien ton problème.
En fait tu veux avoir sous les yeux un tableau de bord avec des données qui s'affichent, et soit des commandes automatiques en fonctions des données ou des commandes manuelles en fonction de ces mêmes données.
Tu peux faire ceci facilement sur une seule fenêtre en faisant une interface visuel astucieuse.
Une fenêtre peu contenir plusieur centaines de gadgets. N'oubli pas que tu peux caché les gadgets, et qu'un gadget caché est quand même actif; (Par exemple tu peux remplir une liste qui est cachée et la faire apparaitre remplie au moment que tu veux.)
Pour la programmation je te conseil de fortement compartimenté le programe. une procédure par fonction. La boucle générale du programme s'occupant de récoltée les données et d'envoyer sur les bonnes procédures en fonction des <, >, = , ect
C'est comme cela que je pratique sur des gros programmes de gestion pour mes clients.
Ce qui n'est pas évident c'est de penser l'ergonomie du programme pour l'utilisateur qui n'est pas forcément un fana d'informatique.
PB est excéllent pour ce genre de programme. Dernière chose n'oubli pas que certaines fonctions visuelles peuvent ce faire avec des images genre flèche qui se déplace ect.
Bon courage, et bon loisir dans la programmation de ton projet.
Je ne comprend pas trés bien ton problème.
En fait tu veux avoir sous les yeux un tableau de bord avec des données qui s'affichent, et soit des commandes automatiques en fonctions des données ou des commandes manuelles en fonction de ces mêmes données.
Tu peux faire ceci facilement sur une seule fenêtre en faisant une interface visuel astucieuse.
Une fenêtre peu contenir plusieur centaines de gadgets. N'oubli pas que tu peux caché les gadgets, et qu'un gadget caché est quand même actif; (Par exemple tu peux remplir une liste qui est cachée et la faire apparaitre remplie au moment que tu veux.)
Pour la programmation je te conseil de fortement compartimenté le programe. une procédure par fonction. La boucle générale du programme s'occupant de récoltée les données et d'envoyer sur les bonnes procédures en fonction des <, >, = , ect
C'est comme cela que je pratique sur des gros programmes de gestion pour mes clients.
Ce qui n'est pas évident c'est de penser l'ergonomie du programme pour l'utilisateur qui n'est pas forcément un fana d'informatique.
PB est excéllent pour ce genre de programme. Dernière chose n'oubli pas que certaines fonctions visuelles peuvent ce faire avec des images genre flèche qui se déplace ect.
Bon courage, et bon loisir dans la programmation de ton projet.
Re: Fonctions graphiques conditionnelles : avis ?
J'adore Asimov et j'adore ton projet 
De ce que j'ai vu, il y a en fait plusieurs publics : la maintenance (toi et le distrib), le "programmateur" (un utilisateur évolué), l'utilisateur.
Glossaire
Tâche : programmation de l'alarme, du réveil, du chauffage...
Module : comprend l'un des éléments ci-dessous
Qui ne comprennent qu'une sortie :

De ce que j'ai vu, il y a en fait plusieurs publics : la maintenance (toi et le distrib), le "programmateur" (un utilisateur évolué), l'utilisateur.
Glossaire
Tâche : programmation de l'alarme, du réveil, du chauffage...
Module : comprend l'un des éléments ci-dessous
Qui ne comprennent qu'une sortie :
- Horloge, compte à rebours, capteur...
- Automate (Porte logique, automate programmable)...
- Réveil, alarme, cafetière, lampe...
- La maintenance ajuste les modules en fonction des automates de la maison, des radiateurs, des capteurs etc. de façon à ce que soient corrélées les tâches (réveil, alarme). C'est la partie qui demande un public formé et ça peut se faire dans un pseudo-langage, un fichier texte, n'importe quoi.
- Le programmateur est capable de bloquer/débloquer certaines fonctions en fonction des pannes, des particularités, etc. Il voit une interface claire, une par tâche, avec les différents modules et peut les programmer.
- L'utilisateur voit une interface claire, une par tâche, définit l'heure d'alarme/réveil, active/désactive tout le système, bref, il profite sans se casser la tête !