FR 3075441 A1 20190621 FR 1762340 A 20171218 STATION DE PROGRAMMATION UNIVERSELLE A BLOCS ORIENTABLES La presente invention concerne une station de programmation universelle. Les particuliers et les entreprises ont des besoins croissants de contr8le d'equipements qui sont installes dans des locaux varies, tels que des locaux d'habitation ou des locaux d'activite. Ces equipements sont par exemple des volets roulants, des robots domestiques, des systemes d'eclairage, des systemes de chauffage, des systemes de surveillance ou de securite, etc. Its peuvent appartenir au secteur domotique ou au secteur d' activite economique du local. Generalement, de tels equipements peuvent etre controles par des telecommandes separees qui sont dediees a chacun d'eux, ou par des applications qui sont accessibles sur telephones intelligents, appeles «smartphones» en anglais, ou sur des tablettes. Mais de nos jours, d' autres taches a effectuer peuvent concerner les activites d'un particulier ou d'un membre d'entreprise sur des reseaux sociaux, ou des actions a effectuer par lui en reponse a de nouveaux contenus qui apparaissent sur des sites accessibles par internet. Ces taches necessitent que l'utilisateur se connecte au reseau social ou au site concerne pour y accomplir les actions desirees, telles qu'envoyer une reponse, surveiller l' apparition de notifications, d' interventions, de publications, etc. Or l'ensemble des contr8les d'equipements qui sont necessaires et/ou des taches a effectuer sur les reseaux sociaux en reponse a des contenus d'internet, constitue une charge consequente qui est consommatrice de temps. Pour reduire cette charge, de nombreux equipements peuvent etre programmes par un utilisateur, afin que chaque equipement soit active ulterieurement sans son intervention, d'une facon automatique. Mais les modes de programmation qui sont mis en oeuvre varient d'un equipement a 1' autre, si bien que la programmation elle-meme d'un equipement necessite que l'utilisateur consulte une notice qui est specifique a cet equipement. En outre, la programmation de chaque equipement doit etre effectuee en utilisant une interface qui est specifique a cet equipement, soit sur l' equipement lui-meme, soit par l'intermediaire d'une telecommande dediee a requipement, soit par l'intermediaire d'un site du fournisseur ou du fabricant de l' equipement, qui est accessible par internet. Cette multiplicite des interfaces de programmation constitue une difficulte supplementaire pour l'utilisateur, en plus de celle des logiques et des langages de programmation qui varient d'un equipement a un autre. Par ailleurs, les modes de programmation de type «condition puis action», popularise par le site IFTTT.com (IFTTT pour «If This Then That» en anglais), permettent de creer des petits programmes formes d'instructions qui relient chacune une condition a une action a executer. Bien que ce mode de programmation constitue une simplification par rapport a d'autres qui sont utilises depuis plus longtemps, une telle programmation peut apparaitre abstraite pour un utilisateur qui - 2 - n' est pas accoutume a l' informatique ni a la mise en oeuvre d' automates. A partir de cette situation, it existe donc un besoin pour qu'un utilisateur puisse programmer facilement et rapidement une multiplicite d'equipements ou appareils. En outre, le besoin concerne une interface de programmation commune qui soit 5 compatible avec des equipements ou appareils multiples. Pour repondre a ce besoin ou un autre, selon un premier aspect, une station de programmation universelle a blocs orientables, destine a programmer des fonctionnements d' au moins un appareil, est proposee. Dans cette station, des orientations respectives de plusieurs blocs sur un support de la station correspondent, par configuration desdits plusieurs blocs et du support, a 10 au moins une instruction de programmation d'un fonctionnement de l' appareil, et la station est pourvue d'un module de detection configure pour detecter les orientations respectives des blocs portes par le support, et d'un module de communication configure pour envoyer a une plateforme de gestion, par l'intermediaire d'un reseau de communication, des donnees qui representent 1' au moins une instruction de programmation correspondant aux blocs et a leurs orientations respectives 15 sur le support. Ainsi, la station proposee, comprenant un support et des blocs, constitue un outil de programmation qui est visuel, simple et rapide a utiliser, en permettant de programmer un appareil par des actions manuelles, qui consistent a manipuler pour orienter des blocs par rapport a un support. Un tel outil de programmation met donc la programmation du fonctionnement d'un 20 appareil, ou la modification d' une programmation existante, a la port& de tout utilisateur meme s' it est inexperimente en informatique ou en matiere d' automates. Par ailleurs, la station propos& peut etre utilisee pour programmer un ou plusieurs appareils, sans que le module de cette station necessite d'être adapte a chaque appareil. En ce sens, la station de programmation propos& est dite universelle. Cette universalite peut notamment etre 25 favorisee si la station est configuree pour ne retourner a la plateforme de gestion que des donnees qui concernent les positions et les orientations des blocs sur le support, sans donnees qui concernent des instructions de programmation affectees aux orientations des blocs. La transcription des orientations des blocs en une ou plusieurs instructions de programmation peut alors etre realisee et memorisee dans la plateforme de gestion. 30 D'une facon generale, le module de communication de la station peut etre configure, dans un ou plusieurs modes de realisation, pour effectuer des communications de donnees avec la plateforme de gestion, par des liaisons de communication qui comportent un segment sans-fil a partir de la station. Notamment, la station peut communiquer par l'intermediaire d'une passerelle de service, communement appelee «box», avec une technologie de communication de donnees, par exemple sans-fil telle que la technologie WiFi®, la technologie Bluetooth® (BT) ou l'une de ses variantes. - 3 - Dans des modes preferes de realisation, la station peut en outre etre configuree pour, suite A un repositionnement sur le support d'au moins un bloc dont l'orientation a ete modifiee par un utilisateur, identifier l'orientation modifiee de l' au moins un bloc, telle que resultant du repositionnement, et envoyer a la plateforme de gestion de nouvelles donnees qui representent au 5 moins une nouvelle instruction de programmation resultant de ladite orientation modifiee de 1' au moins un bloc. Un tel mode de reprogrammation de la station, par repositionnement d'un ou plusieurs blocs, est encore plus manuel et facile a accomplir pour un utilisateur qui est inexperimente en informatique ou en matiere d' automates. Dans d'autres modes preferes de realisation, ou en combinaison avec les precedents, au 10 moins un des blocs peut etre detachable et repositionnable sur le support selon plusieurs orientations distinctes, pour exposer des faces respectives de plusieurs des blocs en juxtaposition sur le support, afin de composer une combinaison des faces exposees desdits plusieurs blocs qui correspond a l'instruction de programmation. Une telle possibilite de detacher les blocs du support pour modifier leur orientation ou position sur le support procure une facilite de manipulation de la 15 station qui est accrue. En particulier, les actions de programmation puis de reprogrammation de la station sont plus naturelles pour l'utilisateur, sans des contraintes qui soient dues a la presence d'un rattachement permanent de chaque bloc au support. Encore dans des modes preferes de realisation, au moins un des blocs peut posseder plusieurs faces qui sont munies d'afficheurs respectifs. Ainsi, des inscriptions qui sont presentes 20 sur ces faces peuvent etre modifiees sans que le bloc concerne soit echange avec un autre qui serait pourvu d'inscriptions differentes. Le caractere d'universalite de la station de programmation peut donc etre encore accru de cette fawn. Pour de tels modes de realisation a afficheurs, le module de communication peut en outre etre configure pour recevoir, en provenance de la plateforme de gestion par l'intermediaire du 25 reseau de communication, des instructions de programmation qui sont disponibles ou des elements d' instructions de programmation qui sont disponibles a afficher sur ces faces a afficheurs. Aussi pour des modes de realisation a afficheurs, et dans le cas on le module de communication est configure pour recevoir des elements d'instructions de programmation disponibles a afficher sur les faces munies d'afficheurs, certains au moins de ces elements 30 d'instructions de programmation peuvent specifier chacun une partie au moins d'une condition d' activation, ou specifier chacun au moins en partie un fonctionnement d'un appareil. Alors, des instructions de programmation qui sont accessibles par l'utilisateur au moyen de la station peuvent etre constituees chacune par une condition d' activation qui est combinee avec un fonctionnement d'un appareil. La station propos& peut ainsi permettre de construire des instructions de 35 programmation, chacune par assemblage d'une condition d' activation avec un fonctionnement d' appareil. Un grand nombre de combinaisons, et donc d'instructions differentes, sont ainsi - 4 - accessibles par la station de programmation, et chaque instruction de programmation peut etre construite en selectionnant successivement chacun des elements d'instruction de programmation qui la constituent. Pour augmenter encore le nombre d'instructions differentes qui sont accessibles par la 5 station de programmation, certains des elements d'instructions de programmation qui specifient une partie d' une condition d' activation, peuvent specifier chacun une variable de condition ou une condition qui est destinee a porter sur une variable de condition. De meme, certains des elements d'instructions de programmation qui specifient en partie un fonctionnement d' appareil, peuvent specifier chacun un appareil a activer ou un fonctionnement d' appareil a activer si la condition 10 d' activation est realisee. Ainsi, une instruction de programmation peut resulter de 1' association particuliere de quatre elements d'instructions de programmation, d'ou un nombre de combinaisons differentes, toutes accessibles par la station de programmation, qui est superieur. Encore pour des modes de realisation a afficheurs, la station de programmation universelle peut etre configuree en outre pour, sur detection qu'un bloc est retire du support, 15 afficher sur des faces du bloc retire des elements d'instructions de programmation qui ont ete selectionnes en fonction d' au moins un autre element d'instruction de programmation qui est determine par une face expos& d'un autre bloc reste sur le support. Ainsi, des elements d'instructions de programmation qui sont affiches sur le bloc retire peuvent constituer une offre contextuelle d' elements d'instructions de programmation, c' est-A-dire une pre-selection d' elements 20 d' instructions de programmation qui sont compatibles ou coherents avec au moins un autre element d' instruction de programmation qui est affiche sur une face expos& d'un bloc voisin du bloc retire. La programmation ou reprogrammation de la station par l'utilisateur est alors encore plus facilitee de cette facon. Une telle pre-selection contextuelle d' elements d'instructions de programmation, pour les afficher sur les faces du bloc retire, peut etre accomplie par la plateforme de gestion, puis 25 chaque element d' instruction de programmation ainsi pre-selectionne peut etre transmis a la station pour etre affiche sur le bloc retire. Dans un ou plusieurs modes de realisation, la station peut aussi etre configuree pour que l'un au moins des blocs affiche sur au moins une face de ce bloc, un reglage ou une valeur d'un parametre qui est applicable a la station, et ce reglage ou cette valeur de parametre est applique(e) a 30 la station si la face du bloc sur laquelle it (elle) est affiche(e) est expos& sur le support. Ainsi, la station permet de configurer des parametres de son propre fonctionnement. Encore pour des modes de realisation a afficheurs, certains au moins des blocs peuvent avoir chacun plusieurs faces qui sont exposees simultanement lorsqu'ils sont positionnes sur le support, les faces d'un meme bloc qui sont exposees simultanement participant alors a des 35 instructions de programmation ou des elements d'instructions de programmation. Dans ce cas, la station peut etre configuree en outre pour que, lorsqu'un bloc a plusieurs faces exposees - 5 - simultanement est retire du support puis repositionne sur le support afin de selectionner une instruction de programmation par l'une des faces exposees de ce bloc, un element d'instruction de programmation qui etait affiche sur une autre des faces exposees du meme bloc avant retrait, est affiche a nouveau apres que le bloc a ete repositionne sur le support. Autrement dit, les faces d'un 5 bloc a plusieurs faces qui sont exposees simultanement sur le support ont au moins deux fonctions : la premiere fonction d'afficher les elements d'instructions de programmation qui ont ete selectionnes anterieurement et qui sont appliqués actuellement, lorsque le bloc est positionne sur le support, et aussi la seconde fonction de presenter des elements d'instructions de programmation qui sont disponibles, lorsque le bloc est retire du support. Un retour a la premiere fonction peut alors 10 etre declenche automatiquement lorsque le bloc est repositionne sur le support. Dans divers modes de realisation, chaque bloc peut etre de forme substantiellement cubique, ou etre un parallelepipede rectangle. Dans ce cas, le support peut etre configure pour maintenir huit blocs en juxtaposition tridimensionnelle de 2 blocs x 2 blocs x 2 blocs, selon trois directions de juxtaposition qui sont perpendiculaires aux faces des blocs. La station est alors facile 15 et agreable a manipuler par l'utilisateur. Par ailleurs, dans d' autres modes preferes de realisation, le support peut etre concu pour correspondre a une repartition spatiale d' au moins un appareil dans une zone geographique, et etre configure pour maintenir chaque bloc qui concerne la programmation de cet appareil a un emplacement sur le support qui correspond a un emplacement de l' appareil dans la zone 20 geographique Selon un second aspect, un procede de programmation de fonctionnements d' au moins un appareil est propose, qui comprend : /1/ fournir une station de programmation universelle qui est conforme au premier aspect, et la relier a une plateforme de gestion de cette station par un reseau de communication ; 25 /2/ par la plateforme de gestion : configurer les blocs et le support de la station, en affectant des instructions de programmation ou des elements d'instructions de programmation aux orientations des blocs sur le support ; /3/ par la station : &teeter des orientations actuelles des blocs portes par le support, puis envoyer a la plateforme de gestion par le reseau de communication, des donnees qui 30 identifient ces orientations actuelles des blocs ; /4/ par un utilisateur : modifier une orientation d' au moins un des blocs sur le support, pour constituer une nouvelle orientation actuelle de ce bloc ; /5/ par la station : repeter l'etape /3/ pour la nouvelle orientation actuelle de chaque bloc dont 1' orientation a ete modifiee ; 35 /6/ par la plateforme de gestion : determiner au moins une instruction de programmation qui correspond aux orientations actuelles des blocs sur le support, telles qu'identifiees par les - 6 - donnees revues, puis en collaboration avec une autre plateforme relative a l'appareil, commander un fonctionnement de l'appareil qui est conforme a l'instruction de programmation determinee Les instructions de programmation ou elements d'instructions de programmation qui sont 5 utilise(e)s pour configurer les blocs peuvent etre revu(e)s par la plateforme de gestion en provenance de l'autre plateforme relative a l'appareil. Il est ainsi possible de prendre en compte des specificites de chaque appareil a programmer, notamment en fonction de son fabricant et des options dont it peut etre pourvu. Lorsque des faces de blocs sont munies d' afficheurs, le procede peut comprendre en 10 outre : - par la plateforme de gestion : transmettre a la station, par le reseau de communication, les instructions de programmation ou elements d'instructions de programmation affecte(e)s a celles des faces de blocs munies d' afficheurs qui sont exposees sur le support ; - par la station : pour les blocs portes par le support, afficher sur les faces exposees et munies 15 d'afficheurs de ces blocs, les instructions de programmation ou elements d'instructions de programmation qui sont affecte(e)s a ces faces. Lorsqu'un des blocs est retire du support, le procede peut comprendre en outre : - par la station : afficher sur plusieurs des faces munies d' afficheurs du bloc retire, des instructions de programmation ou elements d'instructions de programmation qui sont 20 disponibles pour etre selectionne(e)s alternativement par l'utilisateur en modifiant l'orientation du bloc pour le repositionner sur le support. Enfin, de fawn generale, chaque appareil dont des fonctionnements sont programmables au moyen de la station propos& en utilisant le procede propose, peut etre un equipement de domotique qui est installe dans un local d'habitation auquel la station est dediee. 25 D'autres particularites et avantages de la presente invention apparaitront dans la description ci-apres d'exemples de realisation non limitatifs, en reference aux dessins annexes, dans lesquels : - la figure 1 est un diagramme synoptique des elements necessaires pour mettre en oeuvre une station de programmation universelle a blocs orientables selon un ou plusieurs modes 30 de realisation ; - la figure 2a montre un mode de realisation particulier pour une station de programmation universelle a blocs orientables ; - la figure 2b montre un mode de realisation particulier d' un support d' une station de programmation universelle a blocs orientables selon un ou plusieurs modes de 35 realisation ; - 7 - - la figure 3a montre la station de la figure 2a lorsqu'un des blocs est retire dans un ou plusieurs modes de realisation ; - les figures 3b a 3d montrent la station de la figure 3a lorsqu'un des blocs est retire puis repositionne pour modifier un element d'instruction de programmation dans un ou 5 plusieurs modes de realisation ; - les figures 3e a 3g montrent la station de la figure 3d lorsqu'un des blocs est retire puis repositionne pour modifier un element d'instruction de programmation dans un ou plusieurs modes de realisation ; - la figure 4 correspond a la figure 2a pour un autre mode de realisation ; et 10 - les figures 5 et 6 correspondent aux figures 2a et 3a pour des configurations alternatives de stations de programmation universelles a blocs orientables, selon un ou plusieurs modes de realisation. Pour raison de clarte, les dimensions des elements qui sont representes dans ces figures ne correspondent ni a des dimensions reelles ni a des rapports de dimensions reels. En outre, des 15 references identiques qui sont indiquees dans des figures differentes designent des elements identiques ou qui ont des fonctions identiques. En outre, l'Homme du métier peut se rendre compte que les enseignements des presentes peuvent etre mis en oeuvre sous differentes formes selon differents modes de realisation, et que les structures et/ou fonctions decrites ci-dessous ne representent que certains modes de realisation 20 particuliers. En particulier, l'Homme du métier comprendra qu' un aspect des systemes, stations de programmation, plateformes, equipements utilisateur et procedes decrit dans les presentes peut etre mis en oeuvre independamment d'autres aspects, et que differents aspects peuvent etre combines de differentes manieres. La presente description fait reference a des fonctions, moteurs, unites, modules, 25 plateformes, et illustrations de diagrammes des methodes et dispositifs selon un ou plusieurs modes de realisation. Chacun des fonctions, moteurs, modules, plateformes, unites et diagrammes decrits peut etre mis en oeuvre sous forme materielle, logicielle (y compris sous forme de logiciel embarque («firmware»), ou de «middleware»), microcode, ou toute combinaison de ces derniers. Dans le cas d'une mise en oeuvre sous forme logicielle, les fonctions, moteurs, unites, modules 30 et/ou illustrations de diagrammes peuvent etre mis en oeuvre par des instructions de programme d' ordinateur ou du code logiciel, qui peut etre stocke ou transmis sur un support lisible par ordinateur, incluant un support non transitoire, ou un support chargé en memoire d'un ordinateur generique, specifique, ou de tout autre appareil ou dispositif programmable de traitement de donnees pour produire une machine, de telle sorte que les instructions de programme d'ordinateur 35 ou le code logiciel execute(es) sur 1' ordinateur ou 1' appareil ou dispositif programmable de traitement de donnees, constituent des moyens de mise en oeuvre de ces fonctions. - 8 - Les modes de realisation d'un support lisible par ordinateur incluent, de maniere non exhaustive, des supports de stockage informatique et des supports de communication, y compris tout support facilitant le transfert d'un programme d'ordinateur d'un endroit vers un autre. Par «support(s) de stockage informatique», on entend tout support physique pouvant etre accede par 5 ordinateur. Les exemples de support de stockage informatique incluent, de maniere non limitative, les disques ou composants de memoire flash ou tous autres dispositifs a memoire flash (par exemple des cies USB, des cies de memoire, des sticks memoire, des disques-cles), des CD-ROM ou autres dispositifs de stockage optique de donnees, des DVD, des dispositifs de stockage de donnees a disque magnetique ou autres dispositifs de stockage magnetique de donnees, des 10 composants de memoire de donnees, des memoires RAM, ROM, EEPROM, des cartes memoires («smart cards»), des memoires de type SSD («Solid State Drive»), et toute autre forme de support utilisable pour transporter ou stocker ou memoriser des donnees ou structures de donnees qui peuvent etre lues par un processeur d'ordinateur. En outre, diverses formes de support lisible par ordinateur peuvent transmettre ou porter 15 des instructions vers un ordinateur, telles qu'un routeur, une passerelle, un serveur, ou tout equipement de transmission de donnees, qu'il s'agisse de transmission filaire (par cable coaxial, fibre optique, fils telephoniques, cable DSL, ou cable Ethernet), sans-fil (par infrarouge, radio, cellulaire, microondes), ou des equipements de transmission virtualises (routeur virtuel, passerelle virtuelle, extremite de tunnel virtuel, pare-feu virtuel). Les instructions peuvent, selon les modes de 20 realisation, comprendre du code de tout langage de programmation informatique ou element de programme informatique, tel que, sans limitation, les langages assembleur, C, C++, Visual Basic, HyperText Markup Language (HTML), Extensible Markup Language (XML), HyperText Transfer Protocol (HTTP), Hypertext Preprocessor (PHP), SQL, MySQL, Java, JavaScript, JavaScript Object Notation (JSON), Python, et bash scripting. 25 De plus, les termes «notamment», «par exemple», «exemple», «typiquement» sont utilises dans les presentes pour designer des exemples ou illustrations de modes de realisation non limitatifs, qui ne correspondent pas necessairement a des modes de realisation preferes ou avantageux par rapport a d'autres aspects ou modes de realisation possibles. Par «serveur» ou «plateforme», on entend dans les presentes tout point de service 30 (virtualise ou non) ou dispositif operant des traitements de donnees, une ou plusieurs bases de donnees, et/ou des fonctions de communication de donnees. Par exemple, et de maniere non limitative, le terme «serveur» ou le terme «plateforme» peut faire reference a un processeur physique couple de maniere operationnelle avec des fonctions de communication, de base de donnees et de stockage de donnees associees, ou faire reference a un reseau, un groupe, un 35 ensemble ou un complexe de processeurs et des equipements de stockage de donnees et de mise en reseau associes, ainsi qu'un systeme d'exploitation et un ou plusieurs systeme(s) de base de - 9 - donnees et des logiciels applicatifs en support des services et fonctions fournies par le serveur. Un dispositif informatique peut etre configure pour envoyer et recevoir des signaux, par reseau(x) de transmission sans-fil et/ou filaire, ou peut etre configure pour des traitements et/ou du stockage de donnees ou de signaux, et peut donc fonctionner en tant que serveur. Ainsi, des equipements 5 configures pour operer en tant que serveur peuvent inclure, a titre d'exemples non limitatifs, des serveurs &dies montes sur rack, des ordinateurs de bureau, des ordinateurs portables, des passerelles de service (parfois appelees «box» ou «passerelle residentielle»), des decodeurs multimedia (parfois appeles «set-top boxes»), des equipements integres combinant diverses fonctionnalites, telles que deux ou plus des fonctionnalites mentionnees ci-dessus. Les serveurs 10 peuvent fortement varier dans leur configuration ou leurs capacites, mais un serveur inclura generalement une ou plusieurs unite(s) centrale(s) de traitement et une memoire. Un serveur peut aussi inclure un ou plusieurs equipement(s) de memoire de masse, une ou plusieurs alimentation(s) electrique(s), une ou plusieurs interface(s) reseau sans-fil et/ou filaire(s), une ou plusieurs interface(s) d'entree/sortie, un ou plusieurs systeme(s) d'exploitation, tel(s) que Windows Server, 15 Mac OS X, Unix, Linux, FreeBSD, or un equivalent. Les termes «reseau» et «reseau de communication» tels qu' utilises dans les presentes font reference a une ou plusieurs liaisons de donnees qui peuvent coupler ou connecter des equipements, eventuellement virtualises, de maniere a permettre le transport de donnees electroniques entre des systemes informatiques et/ou des modules et/ou d' autres dispositifs ou 20 equipements electroniques, tel qu'entre un serveur et un dispositif client ou d' autres types de dispositifs, y compris entre dispositifs sans fil couples ou connectes par un reseau sans fil, par exemple. Un reseau peut aussi inclure une memoire de masse pour stocker des donnees, tel qu' un NAS (en anglais «network attached storage», un SAN (en anglais «storage area network»), ou toute autre forme de support lisible par un ordinateur ou par une machine, par exemple. Un reseau peut 25 comprendre, en tout ou partie, le reseau Internet, un ou plusieurs reseaux locaux (en anglais «local area networks», ou LANs), un ou plusieurs reseaux de type WAN (en anglais «wide area networks»), des connexions de type filaire, des connexions de type sans fil, de type cellulaire, ou toute combinaison de ces differents reseaux. De maniere similaire, des sous-reseaux peuvent utiliser differentes architectures ou etre conformes ou compatibles avec differents protocoles, et 30 inter-operer avec des reseaux de plus grande taille. Differents types d'equipements peuvent etre utilises pour rendre interoperables differentes architectures ou differents protocoles. Par exemple, un routeur peut etre utilise pour fournir une liaison de communication ou une liaison de donnees entre deux LANs qui seraient autrement separes et independants. Les termes «couple de maniere operationnelle», «couple», «monte», «connect& et leurs 35 variantes et formes diverses utilises dans les presentes font reference a des couplages, connexions, montages, qui peuvent etre directs ou indirects, et comprennent notamment des connexions entre - 1 0 - equipements electroniques ou entre des portions de tels equipements qui permettent des operations et fonctionnements tels que decrits dans les presentes. De plus, les termes «connectes» et «couples» ne sont pas limites a des connections ou des couplages physiques ou mecaniques. Par exemple, un couplage de maniere operationnelle peut inclure une ou plusieurs connexion(s) filaire(s) et/ou une 5 ou plusieurs connexion(s) sans-fil entre deux equipements ou plus qui permettent des liaisons de communication simplex et/ou duplex entre les equipements ou des portions des equipements. Selon un autre exemple, un couplage operationnel ou une connexion peut inclure un couplage par liaison filaire et/ou sans-fil pour permettre des communications de donnees entre un serveur du systeme propose et un autre equipement du systeme. 10 Les termes «application» ou «programme applicatif» (AP) et leurs variantes («app», «webapp», etc.) tels qu' utilises dans les presentes correspondent a tout outil qui fonctionne et est opere au moyen d'un ordinateur, pour fournir ou executer une ou plusieurs fonction(s) ou tache(s) pour un utilisateur ou un autre programme applicatif. Pour interagir avec un programme applicatif, et le contr8ler, une interface utilisateur peut etre fournie sur 1' equipement sur lequel le programme 15 applicatif est mis en oeuvre. Par exemple, une interface graphique (en anglais, «graphical user interface» ou GUI) peut etre generee et affichee sur un ecran de 1' equipement utilisateur, ou une interface utilisateur audio peut etre restituee a l'utilisateur en utilisant un haut-parleur, un casque ou une sortie audio. La figure 1 est un diagramme illustrant un mode de realisation dans lequel un systeme 20 500 comprend une station de programmation universelle a blocs orientables, telle que propos& dans les presentes et designee globalement par la reference 1, configuree pour communiquer avec une plateforme de gestion 101 par le biais d'un reseau ou plusieurs reseau(x) comprenant un reseau de communication 100, auquel une passerelle de service 102, couramment appelee «box», est connectee. La station de programmation 1 sera de preference configuree pour que la liaison de 25 communication 103 avec la passerelle de service 102 soit de type sans-fil, par exemple en utilisant la technologie de communication de donnees WiFi®, ou la technologie Zigbee®, ou encore une technologie de communication sans-fil de type Bluetooth® (et notamment la technologie Bluetooth Low Energy®, ou BLE), ou Z-Wave® et un protocole de communication de type IEEE 802.15.4. L'utilisation d'une connexion sans-fil sur le segment de communication qui aboutit a la station 1 30 permet en effet a un utilisateur de manipuler la station 1 sans entrave. En fonction du mode de realisation, la station de programmation 1 et la plateforme de gestion 101 peuvent etre interconnectes et echanger des donnees sur une ou plusieurs liaison(s) de communication, en utilisant un ou plusieurs reseaux de differents types, tels qu'un reseau fixe, un reseau cellulaire (par exemple selon la norme 2G (GSM, GPRS, EDGE), 3G (UMTS), 4G (LTE), 35 LTE-A, LTE-M, CDMA, CDMA2000, HSPA, 5G, ou leurs variantes ou evolutions), un autre type de reseau radio (par ex. WiFi® ou Bluetooth®), un reseau IP, une combinaison de plusieurs de ces reseaux, etc. Pour cela, la station de programmation 1 et la plateforme de gestion 101 seront configurees avec des moyens de communication de donnees adaptes. Un espace de ressources (traitement, memoire, etc.) est ainsi affecte a la station 1 dans la plateforme de gestion 101. Dans le mode de realisation illustre par la figure 1, la plateforme de 5 gestion 101 est connectes au reseau 100, de fawn a ce que des donnees puissent etre transmises entre la plateforme 101 et la station 1. Dans un ou plusieurs modes de realisation, la plateforme de gestion 101 peut etre hebergee par un ou plusieurs serveurs, par exemple au sein d'un cloud. Ce ou ces serveurs, qui peuvent etre tout type d' equipement ou de systeme comprenant des moyens de traitement de donnees, tels qu'un ordinateur, un ensemble d'ordinateurs interconnectes (dans le 10 cadre d'un reseau virtualise par exemple), et comprendre et/ou etre connectes a une ou plusieurs bases de donnees pour stocker des donnees, peuvent etre configures pour echanger des donnees avec une ou plusieurs stations de programmation 1, et notamment recevoir d'une ou de plusieurs stations de programmation des donnees representant au moins une instruction de programmation du fonctionnement d' au moins un appareil. 15 Dans un ou plusieurs modes de realisation, la plateforme de gestion 101 peut etre munie d'une interface de programmation applicative (en anglais, «Application Programming Interface», ou «API»), ou de tout autre type d'interface (non represent& sur la figure 1), configuree pour transmettre vers et recevoir des donnees depuis une ou plusieurs stations de programmation, et notamment recevoir des donnees representant au moins une instruction de programmation du 20 fonctionnement d' au moins un appareil. Dans un ou plusieurs modes de realisation, le systeme 500 comprend un ou plusieurs appareils (ou objets), par exemple des appareils de domotique tels qu'un volet roulant 10, une cafetiere 11 et un systeme d'eclairage 12, qui sont cites a titre d'exemples (illustres sur la figure 1) sans limitation quant a leur nature et leur nombre, qui sont respectivement connectes a des 25 plateformes dediees de gestion d' objets connectes 110, 111, 112, par exemple au travers du reseau de communication 100, comme illustre sur la figure 1. La connexion de chacun des appareils ou objets connectes au reseau 100 peut aussi etre realisee par l'intermediaire de la passerelle 102, mais pas necessairement. Possiblement, une fonction logicielle qui est destine a etre executee par un terminal qui est connects au reseau 100, peut avoir la fonction d'un appareil au sens des presentes, 30 c' est-A-dire qu' elle peut etre programmee a 1' aide de la station 1. Une telle fonction logicielle peut etre, notamment, de poster une declaration sur un reseau social ou d' envoyer un courrier electronique. Les appareils qui sont destines a etre programmes au moyen de la station 1, comprenant les appareils 10-12 a titre d' illustration, peuvent etre situes dans ou a proximite d'une zone geographique limitee, notes ZG. Par exemple, une telle zone ZG peut etre un local 35 d' habitation. Dans un ou plusieurs modes de realisation, chaque plateforme dediee, peut aussi etre -12- hebergee par un ou plusieurs serveurs, par exemple dans un cloud. Dans le mode de realisation illustre par la figure 1, un espace de ressources (traitement, memoire, etc.) est affecte dans la plateforme 110 au volet roulant 10, un espace dans la plateforme 111 est affecte a la cafetiere 11, et un espace dans la plateforme 112 est affecte au systeme d'eclairage 12. Les plateformes 110-112 de 5 gestion d' objets connectes peuvent etre gerees par les fournisseurs respectifs des appareils 10, 11, 12, mais pas necessairement. Chacune des plateformes 110-112 possede des donnees de fonctionnement de l'appareil correspondant, et peut communiquer avec lui par l'intermediaire du reseau 100, notamment en utilisant des interfaces de programmation applicatives, ou APIs. En particulier, chacune des plateformes 110-112 peut etre munie d'une API et de moyens de 10 communication de donnees configures pour communiquer avec l' appareil supervise pour declencher a distance un fonctionnement de 1' appareil correspondant, pour communiquer a une autre plateforme des informations relatives a cet appareil, et pour communiquer des donnees avec la plateforme de gestion 101. Le systeme 500 comprend en outre des objets connectes generant des donnees, tels que 15 des capteurs, comme par exemple le capteur de temperature 120, le capteur de luminosite 121, et le capteur de presence 122 illustres sur la Figure 1, qui sont cites a titre d' exemples sans limitation quant a leur nature et leur nombre. Dans un ou plusieurs modes de realisation, ces capteurs sont configures pour transmettre des donnees a la plateforme de gestion 101, par exemple par le biais du reseau de communication 100, avec possiblement encore des espaces de ressources &dies dans des 20 plateformes (non-representees). Le mode de connexion de chacun des capteurs au reseau de communication 100 peut varier en fonction du mode de realisation et du capteur. Par exemple, les capteurs de temperature 120, de luminosite 121 et de presence 122 peuvent etre relies au reseau 100 par un reseau sans fil de type WPAN (de l'anglais «Wireless Personal Area Network») en utilisant une technologie de communication sans-fil de type Bluetooth® (et notamment la 25 technologie Blutooth Low Energy®, ou BLE), Zigbee®, ou Z-Wave® et un protocole de communication de type IEEE 802.15.4. Une fonction de surveillance de contenus qui sont susceptibles d'être geres et/ou generes par un service en ligne, d' apparaitre sur un reseau social ou sur le reseau Internet, et qui est executee par un terminal connecte au reseau de communication 100, peut aussi constituer un capteur au sens des presentes. 30 Le systeme 500 de la figure 1 comprend un ensemble 400 d'equipements ou de fonctions utilisateur 401, 402, 403, configures pour fournir une interface utilisateur de gestion (comprenant notamment la configuration, le pilotage, l'utilisation, et la commande) de la station de programmation 1. Les utilisateurs, via leurs services en ligne (par exemple via leur reseau social), via leur(s) equipement(s) utilisateur, via des applis sur leur(s) smartphone(s) ou des Webapps 35 (applications executables a partir d'un navigateur) sur leur(s) ordinateur(s), et/ou leur(s) service(s) de messagerie, peuvent ainsi interagir avec la station 1. -13- Dans un ou plusieurs modes de realisation, l' equipement utilisateur 401, 402 est configure pour communiquer par reseau sans-fil, par exemple de type WiFi®, avec la passerelle de service 102, pour echanger des donnees avec la plateforme de gestion 101. En fonction du mode de realisation, une application configuree pour la gestion (comprenant notamment la configuration, le 5 pilotage, l'utilisation, et la commande) d'une ou plusieurs station(s) de programmation 1, encore appelee application compagnon, pourra etre executee par l' equipement utilisateur 401, 402. L' application compagnon pourra comprendre une interface utilisateur pour les commandes utilisateur de la (ou des) station(s) de programmation. L'equipement utilisateur 401, 402 est alors adapte pour la mise en oeuvre de l'application compagnon, et comprend typiquement un ecran, par 10 exemple tactile, pour l'affichage d'une interface utilisateur graphique (GUI, pour «Graphical User Interface») de l'application compagnon, un microphone pour l'enregistrement de commandes vocales et d'autres interfaces d'entree configurees en fonction du mode de realisation de 1' application compagnon pour 1' entree de commandes utilisateur de 1' application. Dans un ou plusieurs modes de realisation, l' equipement utilisateur 401, 402 comprend 15 une memoire, une unite de traitement, equip& par exemple d'un processeur P, et pilot& par une application, notamment l'application compagnon dediee a la commande et/ou la configuration d'une ou plusieurs station(s) de programmation, ou un programme d'ordinateur, configure(e)(s) pour la mise en oeuvre d'un ou plusieurs mode(s) de realisation des procedes de programmation proposes. 20 A 1' initialisation, les instructions de code du programme d'ordinateur sont par exemple chargees dans une memoire RAM avant d' etre executees par le processeur de l'unite de traitement. Le processeur de 1' unite de traitement est configure pour mettre en oeuvre le procede de commande selon au moins un mode de realisation, selon les instructions du programme d'ordinateur, pour &hanger avec la plateforme de gestion 101 des donnees afin de contr8ler une ou plusieurs stations 25 de programmation. L'equipement utilisateur 401, 402 peut etre un telephone portable, par exemple un smartphone, une tablette, un ordinateur, un composant electronique, ou un autre appareil comportant un module de communication, un module interface utilisateur (comprenant par exemple un ecran, un microphone, un haut-parleur, un clavier) et un processeur couple de maniere 30 operationnelle a une memoire, ainsi que, selon le mode de realisation choisi, d'autres elements materiels associes comme une interface de reseau et un lecteur de support pour lire un support de stockage amovible et ecrire sur un tel support (non representes sur la figure). Le support de stockage amovible peut etre, par exemple, un disque compact (CD), un disque video/polyvalent numerique (DVD), un disque flash, une cle USB, etc. En fonction du mode de realisation, la 35 memoire ou le support de stockage amovible contient des instructions qui, lorsqu'elles sont executees par 1' unite de traitement, amenent cette unite de traitement a &hanger des donnees avec -14- la plateforme de gestion 101 selon au moins un mode de mise en oeuvre du procede de programmation propose. Dans un ou plusieurs modes de realisation, certains au moins des equipements utilisateurs 401, 402 du systeme 500 peuvent integrer une fonction de geolocalisation 403, par exemple 5 conforme au systeme de positionnement par satellites GPS (de 1' anglais «Global Positioning System») ou Galileo, couplee de maniere operationnelle avec un module (par ex. app ou Webapp logicielle) de pilotage de la station 1 de 1' equipement, et configuree pour transmettre a ce module, typiquement via une API, des donnees de geolocalisation de 1' equipement utilisateur, pour une eventuelle utilisation dans la programmation de la station 1. D'un point de vue systeme, la fonction 10 de geolocalisation 403 mise en oeuvre sous forme logicielle et/ou materielle au sein d'un equipement utilisateur 401, 402 du systeme 500 pourra etre vue comme un objet connecte generant des donnees tel que decrit ci-dessus. En fonction du mode de realisation, le module de pilotage de la station 1 dont est typiquement dote l' equipement utilisateur 401, 402 (mis en oeuvre par l' application compagnon 15 comme decrit ci-dessus en lien avec un ou plusieurs modes de realisation), pourra etre configure pour communiquer avec la plateforme de gestion 101, par exemple par l'intermediaire du reseau 100. A l'inverse, dans un ou plusieurs modes de realisation, la plateforme de gestion 101 pourra etre munie d'une API configuree pour echanger des donnees avec un ou plusieurs modules de pilotage de station de programmation, par exemple des applications de gestion de programmation 20 respectivement executees sur un ou plusieurs equipements utilisateur 401, 402. Dans un ou plusieurs modes de realisation, la configuration (configuration initiale ou reconfiguration) et le pilotage d'une station de programmation 1 pourront etre controles par la plateforme de gestion 101, et des donnees de configuration et de pilotage mises en memoire au sein de la plateforme de gestion 101, par exemple en lien avec un profil comprenant un identifiant et des 25 donnees de configuration. En fonction du mode de realisation, un profil de configuration pourra etre defini en lien avec une station de programmation, ou etre defini en lien avec un utilisateur ou un groupe d'utilisateurs, pour etre appliqué a une ou plusieurs stations de programmation. Le profil de configuration pourra contenir un ou plusieurs identifiants de station de programmation et/ou un 30 identifiant d'utilisateur. Une hierarchisation de differents profils pourra en outre etre utilisee pour &fink des niveaux d' acces a des fonctions de configuration d'une station, et/ou des niveaux de priorite de configuration. Par exemple, un utilisateur A ayant un profil plus &eve qu'un utilisateur B pourra avoir acces a un plus grand nombre de fonctionnalites de configuration que l'utilisateur B. Pour 35 reprendre l'exemple de la figure 1, dans un contexte domestique comprenant des adultes et des enfants, les adultes pourront se &fink un profil leur permettant de contr8ler l'ensemble des -15- fonctionnalites de la station 1, et notamment la programmation de 1' ensemble des equipements ou appareils 10, 11, 12 pouvant etre programmes, tandis que les enfants pourront avoir un profil ne leur permettant que de programmer la lampe 12. Dans un contexte professionnel, un manager ou chef d' equipe pourra avoir un profil de configuration plus &eve que les membres de son equipe, et 5 par ce biais pouvoir acceder a un plus grand nombre de fonctionnalites de configuration et de pilotage d'une ou plusieurs stations de programmation. La definition de profils associes a des stations de programmation permet avantageusement de &fink des niveaux hierarchiques entre differentes stations de programmation, comme par exemple un niveau «maitre» ou «administrateur» et un niveau «esclave» ou, 10 respectivement, «standard». De tels niveaux hierarchiques differents associes aux profils respectifs de stations de programmation permettent avantageusement de piloter un ensemble de stations de programmation par l'intermediaire d'une seule station. Par exemple, pour un groupe de N stations de programmation, it peut etre avantageux de &fink un profil «administrateur» pour 1' une des N stations, et un profil «standard» pour les N-1 autres stations. Les differents niveaux &finis dans les 15 profils respectivement associes aux stations peuvent par exemple avoir pour consequence, par configuration, que les programmations associees a la station «administrateur» seront repercutees sur les stations «standard», par l'intermediaire de la plateforme de gestion. Par exemple, sur reception de donnees d'instructions de programmation en provenance d'une station de programmation parmi une pluralite de stations de programmation, les stations de 20 programmation de la pluralite de stations fonctionnant selon l'un des modes de realisation decrit dans les presentes, la plateforme de gestion peut, dans un ou plusieurs modes de realisation, etre configuree pour recuperer le profil de la station de programmation ayant transmis les donnees, et determiner un niveau hierarchique associe a ce profil. Dans le cas on le niveau hierarchique determine correspond a un niveau superieur dans la hierarchie des profils predefinie, la plateforme 25 de gestion peut etre configuree pour transmettre tout ou partie des instructions de programmation associees a cette station aux autres stations de la pluralite de stations ayant un niveau hierarchique associe a leur profil inferieur au niveau hierarchique de la station. Ce procede permet avantageusement de preempter en tout ou partie le fonctionnement de stations de programmation d'une pluralite de stations par definition de niveaux hierarchiques associes a un profil de station, 30 par le biais d'une ou plusieurs stations auxquelles un niveau superieur (denomme par exemple «master» ou «administrateur») dans la hierarchie a ete associe. Dans un ou plusieurs modes de realisation, une station de programmation a laquelle est associe un profil d'un premier niveau dans une hierarchie de profils predefinie, peut etre pilotee, et en particulier recevoir des instructions de programmation, de differentes manieres : depuis une 35 station de programmation a laquelle est associe un profil d'un deuxieme niveau superieur au premier niveau dans la hierarchie predefinie, et depuis une application executee sur un equipement -16- utilisateur, comme decrit dans les presentes, dans les deux cas par l'intermediaire de la plateforme de gestion. Le systeme 500 illustre sur la figure 1 comprend en outre une ou plusieurs plateforme(s) externe(s) 200, par exemple de type serveur de donnees (en anglais «data server», «data lake» ou 5 «data sets»), comprenant une ou plusieurs bases de donnees, et qui pent (peuvent) etre configuree(s) pour fournir des informations diverses a la plateforme de gestion 101, notamment encore par l'intermediaire du reseau de communication 100. Ces informations peuvent concerner, sans que les exemples suivants soient limitatifs, des donnees de trafic routier, la survenue d' evenements qui sont selectionnes par un filtre predetermine, etc. 10 Dans un ou plusieurs modes de realisation, la station 1 est en liaison de communication de donnees avec la plateforme de gestion 101, par exemple an moyen d'une API appropriee, et la plateforme de gestion 101 est en liaison de communication de donnees avec chacune des plateformes 110-112, 200 et avec celles des capteurs 120-122, an moyen d'autres interfaces de programmation applicatives appropriees. 15 En reference aux figures 1, 2a et 2b, la station 1 comprend un support 2 et plusieurs blocs 3, par exemple huit blocs chacun en forme de cube, et qui sont appeles cubes dans la suite pour raisons de clarte et d'illustration. Dans le mode particulier de realisation qui est represents, le support 2 possede une forme de croix tridimensionnelle (figure 2b), qui determine huit emplacements 2a dans chacun desquels un des cubes 3 pent etre positionne. Chaque cube 3 est de 20 preference detachable du support 2, tout en pouvant etre retenu dans l'un des emplacements 2a selon plusieurs orientations alternatives de ce cube par rapport an support 2. Dans le mode de realisation qui est represents, chaque cube 3 pent etre positionne dans l'un des huit emplacements 2a du support 2 selon 24 orientations differentes an maximum. De nombreux dispositifs peuvent etre utilises pour retenir chaque cube 3 dans l'un des emplacements 2a du support 2, de facon 25 detachable et compatible avec toutes les orientations du cube dans l'emplacement. Par exemple, des systemes a base d'aimants 2g ou de clips peuvent etre utilises. En outre, le support 2 et chaque cube 3 sont pourvus d'un systeme de reconnaissance qui permet a un module de detection 2b incorpore an support 2 d'identifier l'orientation et l'emplacement de chaque cube 3 sur le support 2, et de detecter lorsque ce cube 3 est retire du support 2 puis repositionne. En fonction du mode de 30 realisation choisi, on pourra utiliser un systeme de detection mecanique, par exemple a base de motifs en relief pour un systeme de detection mecanique, un systeme de detection electrique, par exemple a base de contacts metalliques, ou un systeme de detection optique, par exemple a base de motifs d' images. Dans un ou plusieurs modes de realisation, le support 2 incorpore un contr8leur qui est 35 couple de maniere operationnelle a un module de memoire (non representes sur la figure). Le contr8leur pent etre configure pour enregistrer en memoire les orientations et emplacements de -17- chaque cube 3 positionne sur le support 2. Le controleur peut en outre etre configure pour piloter les elements et modules de la station de programmation 1, et en particulier ceux du support 2. Le controleur peut comprendre un composant implementant un ou plusieurs processeurs, et etre pilote par une application ou un 5 programme d'ordinateur, configure(e) pour la mise en oeuvre d'un ou de plusieurs modes de realisation du procede propose dans les presentes. A l'initialisation, les instructions de code du programme d'ordinateur sont par exemple chargees dans une memoire RAM du module de memoire, avant d'être executees par un processeur du controleur. Par exemple, le controleur peut etre de type microcontr8leur comprenant un processeur, ou de type processeur couple a un ou 10 plusieurs contr8leurs. Le module de memoire peut comprendre une ou plusieurs memoires, par exemple de type memoire morte ou ROM (pour «Read-Only Memory») et/ou de type memoire vive RAM (pour «Random Access Memory»), dont un ou plusieurs supports de stockage informatique dans lesquels est stocke un programme d' ordinateur executable («firmware») par un processeur du controleur de 15 la station de programmation 1. Le module de memoire est de preference choisi apte a stocker les orientations et emplacements de chaque cube 3 positionne sur le support 2 comme decrit ci-dessus, par exemple dans une memoire flash. En fonction du mode de realisation, la ou les memoire(s) du module de memoire contiennent des instructions de programme d'ordinateur qui, lorsqu'elles sont executees par le controleur, amenent ce controleur a effectuer ou controler les elements et modules 20 des exemples de mise en oeuvre de la station de programmation 1 propos& decrits dans les presentes. Dans un ou plusieurs modes de realisation, le support 2 incorpore aussi un module de communication 2c, couple de maniere operationnelle au processeur. Le module de communication 2c comprend une interface de communication sur un reseau local, de type filaire (par exemple de 25 type Ethernet) et/ou, de preference, de type sans fil (par exemple de type Wifi (conforme aux normes 802.11 editees par l'organisme de normalisation IEEE (de 1' anglais « Institute of Electrical and Electronics Engineers »)), de type Bluetooth® (BT) (dans toutes ses variantes), ou Bluetooth Low Energy® (BLE)). L'interface de communication sur un reseau local peut etre configuree pour connecter la station de programmation 1 a un reseau local et communiquer avec d'autres nceuds du 30 reseau local et/ou se connecter a un reseau large bande, tel que le reseau Internet, par le biais du reseau local (par exemple par l'intermediaire d'une passerelle, telle que la passerelle de service 102, entre le reseau local et un reseau large bande, tel que le reseau 100), notamment pour etablir la liaison de communication 103 avec la plateforme de gestion 101. La liaison de communication entre la station 1 et la plateforme de gestion 101 peut ainsi etre mise en oeuvre, dans un ou plusieurs 35 modes de realisation, par le module de communication 2c, et selon le mode de realisation utiliser la liaison de communication 103 &abide entre le support 2 de la station 1 et la passerelle de service -18- 102. L'interface de communication sur un reseau local pourra etre choisie pour permettre des echanges de donnees securises depuis et vers la plateforme de gestion 101. Par exemple, l' interface de communication sur un reseau local pourra mettre en oeuvre un protocole de communication conforme a la norme HTTP securise (en anglais, «HyperText Transfer Protocol Secure»), par 5 exemple en utilisant une connexion securisee de type WebSocket (conforme a la specification («Request for Comments») RFC6455 «The WebSocket Protocol» de l'IETF (de l'anglais «Internet Engineering Task Force»)). En fonction du mode de realisation, le support 2 peut incorporer en outre une alimentation 2d (comme par exemple une batterie), un module d'identification de mouvement 2e, comme par 10 exemple un accelerometre, et/ou des interfaces 2f qui sont destines a l'utilisateur de la station 1, telles qu'un capteur tactile, des temoins visuels, un haut-parleur, un microphone, etc. Les modules et unites de la station de programmation 1, dont le module de communication 2c, 1' alimentation 2d, le module d'identification de mouvement 2e, et les interfaces 2f peuvent etre couples de maniere operationnelle les uns avec les autres par l'intermediaire du 15 contr8leur de la station de programmation 1. Dans un ou plusieurs modes de realisation, la plateforme de gestion 101 peut etre agencee pour, par exemple au cours d'une phase de configuration de la station de programmation 1, memoriser des appareils 10, 11, 12 a programmer au moyen de la station 1, et collecter, en provenance des plateformes 110, 111, 112 de gestion de ces appareils, des donnees de 20 fonctionnement de ces appareils 10, 11, 12. Ces donnees de fonctionnement peuvent notamment concerner la mise en marche ou l' are& d'un appareil, leurs sens de fonctionnement possibles, des amplitudes de variations, des vitesses et/ou des intensites de fonctionnement, etc., tels que, selon les cas, l'ouverture ou la fermeture du volet roulant 10, un demarrage de la cafetiere 11, une augmentation ou une reduction de la puissance du systeme d' eclairage 12,... La plateforme de 25 gestion 101 peut aussi etre configuree pour memoriser aussi les capteurs dont les resultats de mesure ou de detection sont disponibles. La plateforme de gestion 101 peut ainsi etre configuree pour stocker en memoire l'environnement de programmation d' appareils ou d'objets connectes dont le fonctionnement peut etre programme L' architecture du systeme 500 dans laquelle la plateforme de gestion 101 est 30 placee au centre de toutes les communications de donnees relatives a la programmation d'un appareil permet avantageusement d' eviter a l'utilisateur toute dependance avec les specificites de chaque appareil programmable et de son environnement de programmation. Cette architecture permet en outre une grande flexibilite et une forte capacite d' adaptation aux evolutions d' appareils ou d' objets connectes dont le fonctionnement peut etre programme, ou de leur environnement de 35 programmation. En effet, les evolutions d' environnement de programmation peuvent etre traitees au niveau de la plateforme de gestion 101, et etre rendues totalement transparentes a l'utilisateur de -19- la station de programmation 1. De plus, l' ajout ou le retrait d'un appareil 10, 11, 12 dont le fonctionnement peut etre programme, de la gestion de programmation fournie par le systeme propose, peut aussi etre Ore au niveau de la plateforme de gestion 101, la station de programmation 1 pouvant etre configuree pour etre pilot& par la plateforme de gestion 101, 5 notamment pour effectuer des mises a jour de programmation refletant des modifications des appareils dont le fonctionnement est programme Ainsi, dans un ou plusieurs modes de realisation, la plateforme de gestion est configuree pour qu'un appareil ou un capteur additionnel puisse etre ajoute ou retire par l'utilisateur a ceux qui sont Oja memorises par la plateforme de gestion 101. Une telle modification peut par exemple etre 10 effectuee en utilisant une interface utilisateur disponible via une application appropriee (par exemple de type application mobile sur un smartphone ou une tablette, ou de type Webapp sur un navigateur execute sur un ordinateur personnel, un smartphone ou une tablette) executee sur un equipement utilisateur 401, 402, comme decrit ci-dessus. A partir de la connaissance des objets (incluant les appareils et capteurs) qui sont 15 disponibles pour la station 1, et de preference aussi a partir d'une connaissance de l'ecosysteme auquel la station 1 est dediee, la plateforme 101 etablit un ensemble d'instructions de programmation, ou d'elements d'instructions de programmation, qui sont susceptibles de presenter un interet pour l'utilisateur de l' ecosysteme auquel appartiennent les appareils memorises. Dans un ou plusieurs modes de realisation, une instruction de programmation peut etre reduite a une 20 instruction de mise en marche ou d'arret d'un appareil, qui est destinee a etre executee immediatement des lors que l'instruction est selectionnee. Par exemple, une telle instruction simple peut etre le &manage ou l' are& de la cafetiere 11. Dans des cas les plus elabores, une instruction de programmation peut etre form& par la combinaison de deux elements d'instruction, qui sont respectivement une condition d' activation et une action a declencher lorsque la condition 25 d' activation est satisfaite. Par exemple, lorsque le niveau de lumiere ambiante qui est detecte par le capteur de luminosite 121 devient inferieur a un seuil determine, le systeme d'eclairage 12 peut etre mis en marche. Dans une version encore plus elaboree, applicable a certaines au moins des instructions de programmation qui peuvent etre selectionnees au moyen de la station 1, une instruction de 30 programmation peut etre constituee par la combinaison de quatre elements, qui appartiennent aux categories suivantes : elements d'instructions de programmation qui indiquent des variables de condition, c'esta-dire qui indiquent chacun une ou plusieurs variable(s) a partir de laquelle (desquelles) le fonctionnement d'un des appareils sera active ou non. Cette premiere categorie peut etre 35 appelee celle des themes de programmation, dans la mesure on la variable de condition determine un theme d' action par l'un des appareils ; - 20 - elements d'instructions de programmation qui indiquent une condition a examiner, telle que, par exemple, un seuil de valeur a &passer. La combinaison d'une variable de condition avec une condition, au sein d'une instruction de programmation, constitue une condition d' activation d' au moins un des appareils ; 5 elements d'instructions de programmation qui designent l'un au moins des appareils a activer ; et elements d'instructions de programmation qui designent un mode de fonctionnement a activer ou interrompre pour l'appareil designe. La combinaison, au sein d'une instruction de programmation, de la designation d'un appareil avec celle d'un fonctionnement pour 10 cet appareil, constitue une action a executer. Une instruction de programmation peut alors etre construite en combinant une condition d' activation avec une action a executer. Elle resulte donc de la combinaison de quatre elements d'instruction qui appartiennent chacun a l'une des quatre categories enoncees ci-dessus, aboutissant A declencher un fonctionnement d' appareil si la condition qui porte sur la variable indiquee est 15 satisfaite. Un tel mode de construction est donc de type «condition/action». Dans des modes de realisation qui sont conformes a la geometrie qui est represent& sur la figure 2a pour la station 1, une instruction de programmation complete peut etre constitu& par quatre elements d'instruction qui apparaissent sur les faces exposees de quatre cubes 3 qui sont adjacents sur un meme cote du support 2. Ainsi, l'instruction de programmation complete est 20 visible pour l'utilisateur en observant le cote correspondant de la station 1. Dans un ou plusieurs modes de realisation, deux faces de cubes adjacentes peuvent correspondre a la definition d'une condition, comprenant par exemple une face de cube qui etablit un theme et l'autre face de cube qui etablit une condition sur ce theme. Deux autres faces de cubes adjacentes peuvent correspondre a la definition d'une action a effectuer lorsque la condition qui est definie par les deux premieres faces 25 de cubes est realisee, l'action comprenant par exemple un appareil ou objet a commander et une commande a mettre en oeuvre sur cet appareil ou objet. Dans l'exemple de la figure 2a, les faces de cubes 3 qui sont exposees sur le devant de la station 1 par rapport a son orientation dans la figure (faces CSO, CTO, AAO, ASO), sont orientees de maniere a placer sur la partie gauche du cote exposé les deux faces de cubes relatives a la condition, et a placer sur la partie droite du cote 30 exposé les deux faces de cubes relatives a l'action. Ces faces exposees indiquent les elements d' instruction de programmation suivants : - la variable de condition est affich& sur le cube 3 a 1' emplacement 2a superieur gauche (face CSO, CS pour l'anglais «Condition Setting»), et est la luminosite ambiante (theme de programmation pour cet exemple), par exemple mesur& par le capteur 121 de la figure 35 1 ; - la condition est affich& sur le cube 3 a 1' emplacement 2a inferieur gauche (face CTO, CT - 21 - pour l'anglais «Condition Threshold»), et est une diminution de la luminosite ambiante ; - l'appareil concerne est affiche sur le cube 3 a l'emplacement 2a superieur droit (face AAO, AA pour l'anglais «Action Actuator»), et est le(s) volet(s) roulant(s) 10 ; et - le fonctionnement concerne pour cet (ces) appareil(s) est affiche sur le cube a 5 1' emplacement 2a inferieur droit (face ASO, AS pour l'anglais «Action Setpoint»), et est un abaissement ou, selon le mode de realisation, une fermeture du (des) volet(s) roulant(s) 10. Cette logique de positionnement des faces des cubes qui sont exposees sur un meme cote de la station 1 peut etre reprise sur d'autres cotes de la station 1, comme illustre sur la figure 2a, 10 avec le cote superieur de la station 1 ayant un cube a l'emplacement superieur gauche avec une face exposant une variable de condition ou un theme (face CS1), un cube a l'emplacement inferieur gauche avec une face exposant une condition correspondant a la variable ou au theme (face CT1), un cube a l'emplacement superieur droit avec une face exposant un appareil ou objet concerne par la programmation (face AA1), et un cube a l'emplacement inferieur droit avec une face exposant 15 une action a effectuer sur l'appareil ou l'objet concerne (face AS1). Il en est de meme dans l'exemple illustre sur la figure 2a pour le cote droit de la station de programmation 1, avec l'ordonnancement sur ce cote des faces CS2, CT2, AA2 et AS2. Dans un ou plusieurs modes de realisation, une variable de condition peut etre composee, c'est-A-dire qu' elle peut resulter de la combinaison de plusieurs variables sur l'ensemble desquelles 20 la condition est destinee a etre appliquee. Par exemple, une variable composee qui permet de detecter le coucher du soleil peut etre constituee par la combinaison de l'heure avec le niveau de luminosite ambiante. La condition elle-meme peut etre constituee par un intervalle horaire par rapport auquel l'heure actuelle va etre comparee, et par un seuil de luminosite ambiante. De meme, un element d'instruction de programmation peut aussi, dans un ou plusieurs 25 modes de realisation, etre compose en designant simultanement plusieurs appareils, d'un meme type ou d'un type different, tels que par exemple, un ou plusieurs volets roulants 10, eventuellement designes avec systeme d' eclairage 12. L'instruction qui designe le mode de fonctionnement a activer peut alors indiquer un fonctionnement pour chaque appareil designe. L'instruction de programmation qui resulte de l'exemple qui vient d'être enumere est 30 alors : si l'heure est dans l'intervalle horaire predetermine et la luminosite ambiante inferieure au seuil predetermine, alors la fermeture du volet roulant 10 et l'allumage du systeme d' eclairage 12 sont actives. Cet exemple correspond a la face frontale de la station 1 telle que represent& dans la figure 2a, et n' est donne qu' A titre d' illustration. Dans un ou plusieurs modes de realisation, des donnees de geolocalisation d'un 35 utilisateur, obtenues par le biais d'un dispositif de geolocalisation GPS 403, par exemple incorpore dans un equipement utilisateur 401, 402, qui les aura communiquees a une application native sur un - 22 - telephone mobile 401 ou a une webapp sur un ordinateur personnel 402, pour etre ensuite transmises a la plateforme de gestion 101, peuvent etre utilisees dans des instructions de programmation en tant que variable de condition, par exemple pour declencher une ouverture d'un portail electrique lorsqu'un occupant se rapproche du local d'habitation. La station 1 permet alors 5 avantageusement de programmer la gestion d' objets connectes, par exemple situes a l'interieur ou dans le voisinage d'une zone geographique (par exemple une maison d'habitation), en creant des correlations entre des objets connectes de la zone geographique de la maison, et des donnees de geolocalisation d'utilisateur(s) de ces objets connectes (telles que, par exemple, des donnees de geolocalisation relative d'un utilisateur par rapport a la zone geographique ou, selon les modes de 10 realisation, les objets connectes qui sont pilotes), par l'intermediaire de la plateforme de gestion 101. En fonction du mode de realisation, d'autres variables de condition peuvent aussi etre basees sur des donnees fournies par la plateforme externe 200, ou encore concerner des messages recus dans une boite aux lettres electronique. Dans un ou plusieurs modes de realisation, la plateforme de gestion 101 associe lors 15 d'une phase de configuration des elements d'instructions de programmation avec certaines au moins des faces des cubes 3 lorsqu'ils sont positionnes sur le support 2. Pour cela, un systeme de reperage des emplacements 2a qui sont disponibles pour les cubes 3 sur le support 2 peut etre defini et memorise au niveau de la plateforme de gestion 101. Preferablement, l' association d'elements d'instructions de programmation avec des faces de cubes 3 peut etre effectuee en prenant en 20 compte en outre de particularites du lieu auquel la station 1 est dediee, telles que par exemple des particularites d'un local professionnel ou celles d'un lieu d'habitation. Par exemple, de telles particularites peuvent concerner des horaires auxquels sont presents des occupants de ces lieux. Autrement dit, 1' association d'elements d'instructions de programmation avec des faces de cubes 3 peut avantageusement prendre en compte un contexte qui est identifie pour l' ecosysteme auquel la 25 station 1 est dediee. Dans un ou plusieurs modes de realisation, un ou plusieurs des cubes 3 de la station 1 peuvent etre configures pour afficher une instruction de programmation ou element d' instruction de programmation sur une de leurs faces, en affichant une information qui est coherente avec la configuration etablie au niveau de la plateforme de gestion 101. De tels affichages permettent 30 avantageusement a un utilisateur de selectionner les instructions de programmation ou elements d'instructions de programmation qu'il desire en orientant les cubes 3 sur le support 2 de facon a exposer les faces des cubes sur lesquelles ces instructions de programmation ou elements d'instructions de programmation sont affiches. Les orientations des cubes 3 qui sont ainsi selectionnees par l'utilisateur sont detectees par le module de detection 2b, puis transmises par le 35 module de communication 2c a la plateforme de gestion 101, qui les stocke en memoire. A partir de ces orientations de cubes 3, la plateforme de gestion 101 restitue les instructions de - 23 - programmation selectionnees par l'utilisateur, puis collecte par l'intermediaire du reseau de communication 100, les donnees (par exemple des resultats de mesure et de detection, ou des donnees fournies par un serveur de donnees, par exemple un serveur de donnees meteorologiques) qui sont utilisees dans ces instructions de programmation. Alors, sur detection qu'une condition 5 d' activation de l'une de ces instructions de programmation est satisfaite, la plateforme de gestion 101 adresse une consigne d' activation du (des) fonctionnement(s) de 1' appareil (des appareils) qui est (sont) designe(s) dans l'instruction de programmation, a chaque plateforme d'un tel appareil designe. Cette derniere declenche alors a distance le fonctionnement de 1' appareil concern, en utilisant un mode de communication qui est disponible pour cet appareil. 10 Dans des modes preferes de realisation, certaines au moins des faces des cubes 3, voire toutes leurs faces, comportent un afficheur qui est capable d'afficher une instruction de programmation, ou un element d'instruction de programmation tel que defini plus haut. Un tel affichage peut etre mis en oeuvre pour presenter des symboles ou pictogrammes varies, qui sont de preference evocateurs de l'element d'instruction de programmation concerne. Par exemple, dans la 15 figure 2a et conformement a 1' orientation de cette figure, la face du cube superieur gauche qui est expos& en avant (CSO) affiche un pictogramme de la luminosite ambiante pour specifier cette variable de condition, la face qui est expos& en avant pour le cube inferieur gauche (CTO) affiche un pictogramme de coucher du soleil en tant que condition, la face qui est expos& en avant pour le cube superieur droit (AAO) affiche un pictogramme du volet roulant 10 en tant qu'appareil(s) a 20 activer, et la face qui est expos& en avant du cube inferieur droit (ASO) affiche un pictogramme de fermeture pour specifier un tel fonctionnement de fermeture pour le(s) volet(s) roulant 10. Avantageusement, les afficheurs utilises sont du type a encre electronique, particulierement favorables pour leur consommation electrique qui est tres basse. Cette tres faible consommation electrique permet de realiser la remanence de l'affichage avec un circuit electrique utilisant un ou 25 plusieurs condensateur(s) alors que le cube n'est plus alimente, par exemple lorsqu'il est detache du support 2. Alternativement, les afficheurs utilises peuvent etre du type a diodes electroluminescentes, procurant des contrastes d'affichage qui sont tres &eves. Dans un ou plusieurs modes de realisation, les composants qui sont incorpores dans chaque cube 3, outre les afficheurs de ses faces, sont preferablement limites a des composants 30 simples, peu onereux, peu consommateurs d'energie et peu nombreux. Toutefois, ils permettent de proposer a l'utilisateur un choix entre plusieurs instructions de programmation ou elements d'instructions de programmation, qui sont affiche(e)s sur certaines au moins des faces du cube 3 lorsque l'utilisateur detache ce cube du support 2. En particulier, dans un mode de realisation, chaque cube 3 peut incorporer un condensateur qui est chargé electriquement par la batterie 2d du 35 support 2 lorsque ce cube est positionne dans l'un des emplacements 2a, et qui fournit 1' energie necessaire a tous les composants du cube lorsque celui-ci est retire du support 2. Cette energie - 24 - assure notamment les affichages sur les faces du cube, qui sont fixes une fois que le cube a ete retire du support, et assure aussi le fonctionnement d'eventuelles memoires internes au cube qui seraient necessaires pour cet affichage. Un tel mode de realisation, a afficheurs de cubes, est particulierement avantageux en ce 5 qu'il permet notamment une grande variete des appareils qui peuvent etre programmes avec la station 1, sans devoir adapter ou changer les cubes en fonction des appareils, et en ce qu'il permet de proposer plus facilement a l'utilisateur des instructions de programmation qui sont contextualisees. Pour cela, la plateforme de gestion 101 peut etre agenc& pour configurer la station 1 10 comme decrit plus haut, en affectant un element d' instruction de programmation a chaque face de cube 3, en fonction de la position du cube et de son orientation sur le support 2. Pour les faces qui sont exposees lorsque tous les cubes 3 sont sur le support 2, et dans le cas d' afficheurs sur ces faces, cette affectation est transmise par la plateforme de gestion 101 au module de communication 2c de la station 1, puis par ce module de communication 2c a chaque cube 3. Les elements 15 d'instructions de programmation qui sont affectes aux faces exposees des cubes 3 sont alors affiches sur celles-ci. Cet etat d'affichage pour l'ensemble de la station 1 indique avantageusement l'etat de programmation qui est en vigueur, tel que memorise pour la station 1 au niveau de la plateforme de gestion 101. Dans un ou plusieurs modes de realisation, la plateforme de gestion 101 peut en outre 20 affecter des elements d'instructions de programmation supplementaires aux faces des cubes 3 qui ne sont pas exposees, c'est-A-dire celles qui sont tournees vers le support 2 pour la geometrie de la station 1 qui est represent& a la figure 2a. Ces elements d'instructions de programmation supplementaires constituent des choix qui sont disponibles pour l'utilisateur lorsqu'il retire l'un des cubes 3 du support 2, afin de modifier l'une des instructions de programmation. La selection de ces 25 elements d'instructions de programmation supplementaires peut etre realisee par la plateforme de gestion 101 en fonction de l' etat de programmation en vigueur, et eventuellement aussi en fonction d'autres parametres en vigueur pour l'ecosysteme auquel la station 1 est dediee. Dans le jargon de l'Homme du métier, une telle selection est dite contextuelle, ou intelligente. Dans un ou plusieurs modes de realisation, des strategies de selection peuvent etre mises en oeuvre par la plateforme de 30 gestion 101 pour selectionner les elements d'instructions de programmation supplementaires a affecter aux faces non-exposees des cubes 3. La plateforme de gestion 101 peut etre agenc& pour transmettre ces elements d'instructions de programmation supplementaires au module de communication 2c de la station 1, et chacun des cubes 3 peut etre agence pour memoriser au sein de ce cube 3 les elements d'instructions de programmation supplementaires qui concernent ses 35 faces non-exposees, en relation avec les faces auxquelles ils ont ete affectes. Alors, lorsque l'utilisateur retire l'un des cubes 3, les elements d'instructions de programmation supplementaires - 25 - qui ont ete determines par la plateforme de gestion 101 sont affiches sur les faces de ce cube qui n' etaient pas exposees anterieurement sur le support 2. Its deviennent ainsi visibles pour l'utilisateur lorsque celui-ci retourne le cube retire. Dans un ou plusieurs modes de realisation, pour offrir un choix plus large d' elements 5 d'instructions de programmation a l'utilisateur, des elements d'instructions de programmation supplementaires peuvent aussi etre affectes, par exemple par la plateforme 101, aux faces des cubes 3 qui sont exposees sur le support 2. Tous les elements d'instructions de programmation supplementaires sont alors memorises dans les cubes 3, chaque element d'instruction de programmation supplementaire dans celui des cubes 3 qui possede la face a laquelle cet element 10 d' instruction supplementaire a ete affecte, que cette face soit expos& ou non. La station de programmation 1 peut etre configuree pour que, suite au retrait par l'utilisateur de l'un des cubes 3, les elements d'instructions de programmation en vigueur qui sont affiches sur ce cube soient mis en memoire dans la station 1, et remplaces sur les afficheurs de ses faces par les elements d'instructions de programmation supplementaires, que ces faces aient ete 15 prealablement exposees ou non. Ainsi, l'utilisateur dispose de possibilites de choix plus larges pour selectionner un nouvel element d'instruction de programmation en retirant l'un des cubes 3, puis en le retournant pour voir tous les elements d'instructions de programmation qui sont affiches. Lorsque ce cube 3 est repositionne par l'utilisateur sur le support 2, l'element d'instruction de programmation qui est selectionne par la nouvelle orientation du cube est maintenu en affichage sur 20 la face expos& concernee. Dans un ou plusieurs modes de realisation, cette face expos& concern& peut etre predefinie par configuration, et correspondre par exemple a la face superieure du cube lorsqu'il est positionne sur le support, cette face correspondant ainsi au cote superieur, ou a la face superieure de la station 1 lorsque la station 1 a elle-meme une forme substantiellement parallelepipedique (par exemple cubique). En fonction du mode de realisation, 1' identification d'un 25 cote de la station 1 sur lequel se trouve la face expos& d'un cube 3a qui va etre modifiee peut etre faite sur la base du cote de la station correspondant a la configuration (par exemple identification du cote correspondant a la face superieure du cube) apres detection d'un mouvement de la station 1, comme decrit ci-dessus, en particulier sur detection d'une fin de mouvement de la station 1 par l'utilisateur, par exemple apres detection d'une absence de mouvement de la station 1, ou d'une 30 absence de mouvement de la station d'une amplitude superieure a un seuil predetermine, ou d'une stabilisation de l'orientation de la station 1 ou de l'orientation d'un des cotes de la station 1, ce pendant une periode de temps predeterminee, par exemple de l'ordre de quelques secondes. Dans d' autres modes de realisation, le cote de la station 1 qui est destine a etre concerne par la modification de programmation a venir peut etre designe par le sens d'un &placement par 35 translation de la station 1 qui est imprime par un utilisateur, et identifie par le module d' identification de mouvement 2e. Un tel &placement qui est naturel peut etre un rapprochement - 26 - de la station vers l'utilisateur apres qu'il l' a orient& pour voir le cote a modifier. La station n'aurait plus besoin alors d' avoir une face superieure a peu pres horizontale. Dans un ou plusieurs modes de realisation, la station 1 peut etre configuree pour modifier l' affichage (par exemple par clignotement, affichage intermittent, modification des dimensions de l'affichage, etc.) des elements 5 affiches sur le cote identifie comme etant concerne par la modification. Le module d'identification de mouvement 2e (par exemple un accelerometre) dont la station de programmation 1 peut etre pourvue, pourra etre utilise pour identifier cette face du cube ou ce cote de la station 1 qui est concerne par les eventuelles modifications de programmation effectuees par un utilisateur. Dans un ou plusieurs modes de realisation, l'identification d'un cote de la station 1 concerne par une 10 eventuelle modification effectuee par un utilisateur pourra etre effectuee des lors qu' un mouvement de la station 1 est detecte par le module d'identification de mouvement 2e, ce sur quoi le cote identifie sera mis en memoire par la station 1. Cela permet avantageusement de conserver en memoire les donnees relatives a un cote de la station 1 eventuellement concerne par une modification avant que l'utilisateur ne retire un cube 3 du support 2. Dans un ou plusieurs modes 15 de realisation, les autres faces exposees pourront alors a nouveau afficher les memes elements d' instructions de programmation qu' avant le retrait du cube, ceux-ci restant en vigueur car n'ayant pas ete consideres comme concernes par l'eventuelle modification. Ainsi, la modification d'une instruction de programmation peut donc etre effectuee par l'utilisateur, dans un ou plusieurs modes de realisation, de la facon suivante, en reference a la 20 figure 3a : - l'utilisateur saisit dans ses mains la station 1 avec les huit cubes 3 positionnes sur le support 2. L' accelerometre 2e qui est incorpore au support 2 detecte le mouvement de la station 1, identifie le cote de la station 1 sur lequel se trouve la face expos& d'un cube 3 qui va etre modifiee (par exemple par configuration le cote de la station 1 correspondant a la face 25 superieure du cube avant detection du mouvement), et peut en outre declencher une mise- A-jour des elements d' instructions de programmation supplementaires qui sont memorises au niveau de la station 1, par exemple dans les cubes 3 ; - dans un mode de realisation, l'utilisateur peut tourner la station 1 de facon a voir celui des cotes de la station sur lequel est affichee l'instruction de programmation qu'il souhaite 30 modifier. Dans ce cas de figure, la station 1 peut etre configuree pour que ce mouvement soit aussi detecte par l' accelerometre 2e, afin d' identifier le cote de la station 1 sur lequel se trouve la face expos& d'un cube 3a qui va etre modifiee ; - l'utilisateur retire du support 2 le cube 3a qui correspond a l'element a modifier de cette instruction de programmation. Ce detachement du cube 3 est detecte par le cube 3 lui- 35 meme, et celui-ci affiche sur ses faces les elements d'instructions de programmation supplementaires qu'il a en memoire ; -27- - l'utilisateur tourne ensuite le cube 3a qu'il a retire pour determiner celle des faces de ce cube qui affiche l'element d'instruction de programmation qu'il desire adopter. Cette manipulation du cube 3a est illustree par la figure 3a, qui montre aussi des aimants 2g de retention du cube 3a dans l'un des emplacements 2a ; et 5 - l'utilisateur repositionne le cube 3a sur le support 2 en exposant la face qui affiche l'element d'instruction de programmation adopte sur le cote de la station 1 identifie comme etant le cote concerne par la modification. Dans l'exemple illustre par la figure 3a, l'utilisateur manipule le cube 3a superieur droit, et positionne ce cube de maniere a placer sur le cote de la station 1 sur lequel sont dep. positionnes 10 une face de cube definissant le theme de la luminosite (face CSO du cube 3 en haut a gauche), une face de cube definissant une condition relative au theme de la luminosite (face CTO du cube 3 en bas a gauche definissant une condition du type «si la luminosite baisse en-deca d'un certain seuil»), et une face de cube definissant une action a realiser (face ASO du cube 3 en bas a droite definissant une action de type «baisser les volets»), une face du cube 3a qui definit l'objet sur lequel une action 15 definie doit etre exercee (face AA0 du cube 3a en haut a droite definissant un ou plusieurs volets d'une zone geographique donnee). Ce cube superieur droit 3a permet ainsi, en combinaison avec les autres cubes 3 positionnes sur un meme cote de la station 1, de &fink une programmation de type : si la luminosite baisse en-deca d'un certain seuil, baisser le(s) volet(s) d'une zone geographique donnee. 20 Dans un ou plusieurs modes de realisation, les autres faces (AS1, CS2) du cube 3a qui etaient exposees avant que ce dernier soit manipule par l'utilisateur, ne sont pas modifiees par la manipulation du cube 3a, et retrouvent leurs affichages et configurations d'origine, c' est-A-dire telles qu' elles etaient avant la manipulation du cube 3a. Cette fonctionnalite de la station de programmation 1 peut par exemple utiliser le contrOleur et une memoire integres au support 2 de la 25 station 1, en configurant la station 1 pour memoriser les affichages et configurations des cubes 3 positionnes sur le support 2, de maniere a retrouver et appliquer les configurations des faces non concernees par la manipulation d'un cube 3a lorsque ce cube 3a est repositionne sur le support 2. Le module de detection 2b identifie alors le cube 3a dont 1' orientation sur le support 2 a ete modifiee par l'utilisateur, ainsi que sa nouvelle orientation sur le support 2. Le module 2c 30 transmet a la plateforme 101, par le reseau de communication 100, des donnees qui representent l'identification du cube 3a dont l'orientation a ete modifiee, et sa nouvelle orientation. La plateforme 101 en deduit celle de ses faces qui est nouvellement exposee, et construit, a partir de l'element d'instruction de programmation qui est affecte a cette face (face AA0 sur la figure 3a), l'instruction de programmation qui est nouvellement en vigueur. Elle la memorise puis, sur 35 detection que la condition d' activation de cette instruction de programmation (pour 1' exemple illustre sur la figure 3a, la reception de donnees, en provenance de plateforme(s) de gestion de - 28 - capteur(s) de luminosite pour une zone geographique donnee, indiquant que la luminosite est descendue en-deca d'un certain seuil) est satisfaite, elle donne instruction a la(les) plateforme(s) de chaque appareil concerne par l'instruction de programmation (pour l'exemple illustre sur la figure 3a, la ou les plateforme(s) de pilotage d'un ou de plusieurs volet(s) installe(s) sur la zone 5 geographique) d' activer cet(ces) appareil(s) conformement a l' instruction de programmation (pour l'exemple illustre sur la figure 3a, baisser le ou les volet(s) installe(s) sur la zone geographique). Dans un ou plusieurs modes de realisation, la station de programmation 1 et la plateforme de gestion 101 peuvent etre configurees pour que la modification d'un premier element d'instruction de programmation, par exemple effectuee par un utilisateur, conduise, en fonction de 10 la modification, a modifier un deuxieme element d'instruction de programmation, sur la base de la modification du premier element d'instruction de programmation, de maniere a assurer une coherence entre les premier et deuxieme elements d'instruction de programmation tels que modifies. Par exemple, si la modification du premier element d'instruction de programmation 15 concerne un element d'instruction relatif au theme de la programmation (faces CSO ou CTO exposees sur la station 1 telle qu'illustree sur la figure 3a), cette modification peut entrainer une modification d'un deuxieme element d'instruction de programmation, lui aussi relatif au theme de la programmation (respectivement faces CTO ou CSO exposees sur la station 1 telle qu'illustree sur la figure 3a). De meme, si la modification du premier element d'instruction de programmation 20 concerne un element d'instruction relatif a une condition dans la programmation (faces CSO ou CTO exposees sur la station 1 telle qu'illustree sur la figure 3a), cette modification peut entrainer une modification d'un deuxieme element d'instruction de programmation, lui aussi relatif a la condition (respectivement faces CTO ou CSO exposees sur la station 1 illustree sur la figure 3a). Enfin, si la modification du premier element d'instruction de programmation concerne un element 25 d'instruction de programmation relatif a une action dans la programmation (faces AA0 ou ASO exposees sur la station 1 telle qu'illustree sur la figure 3a), cette modification peut entrainer une modification d'un deuxieme element d'instruction de programmation, lui aussi relatif a l' action dans la programmation (respectivement face ASO ou AA0 exposees sur la station 1 illustree sur la figure 3a). 30 En reference a la figure 1, des donnees relatives au premier element d'instruction de programmation tel que modifie peuvent etre transmises par la station de programmation 1 a la plateforme de gestion 101, comme decrit ci-dessus. La plateforme de gestion 101 peut etre configuree pour, sur detection de la modification du premier element d'instruction de programmation, analyser l'instruction de programmation, c'est-A-dire la combinaison d' elements 35 d'instruction de programmation a laquelle appartient le premier element d'instruction de programmation modifie, et determiner si une modification d'un deuxieme element d'instruction de - 29 - programmation de la combinaison doit etre effectuee et, le cas echeant, identifier cette modification. Cette analyse peut etre conduite en fonction des donnees relatives aux instructions de programmation, et en particulier aux elements d'instruction de programmation. Par exemple, les elements d'instruction de programmation relatifs a un theme peuvent etre &finis de maniere a 5 comprendre un identifiant de theme, de sorte qu'une modification de l'identifiant de theme sur un premier element d'instruction de programmation d'une combinaison d' elements d'instruction peut conduire a une modification d'un deuxieme element d'instruction de la combinaison en fonction de cet identifiant de theme. De meme, les elements d'instruction de programmation relatifs a un objet ou un appareil peuvent etre definis de maniere a comprendre un identifiant d'objet ou de type 10 d'objet, de sorte qu'une modification de l'identifiant d'objet ou de type d'objet sur un premier element d'instruction de programmation d'une combinaison d' elements d' instruction peut conduire A une modification d'un deuxieme element d'instruction de programmation de la combinaison en fonction de cet identifiant d'objet ou de type d'objet. Une fois la modification du deuxieme element d'instruction de programmation determinee, la plateforme de gestion 101 peut transmettre a la 15 station de programmation 1 des donnees relatives au deuxieme element d'instruction de programmation tel que modifie. Sur reception de ces donnees, la station de programmation 1 peut etre configuree pour mettre a jour l'affichage sur la face du cube 3 concern& par cette deuxieme modification en fonction des donnees revues. Les figures 3b, 3c, 3d illustrent un exemple de modification d'un deuxieme element 20 d'instruction de programmation suite a la modification d'un premier element d'instruction de programmation effectuee par un utilisateur sur la station 1, telle que decrite ci-dessus en reference a la figure 3a, selon un ou plusieurs modes de realisation : - l'utilisateur saisit dans ses mains la station 1 avec les huit cubes positionnes sur le support 2, et retire du support 2 le cube 3a qui correspond a un element a modifier dans la 25 programmation affichee sur les faces CSO, CTO, AAO, ASO des cubes formant un cote de la station 1 (figure 3b). Ce detachement du cube 3a est detecte par le cube 3a lui-meme, et celui-ci affiche sur ses faces (AS1 et CS2 notamment), les elements d'instructions de programmation supplementaires qu'il a en memoire (appareil de restitution sonore affiche sur la face AS1 du cube 3a, et appareil d'eclairage affiche sur la face CS2 du cube 3a) ; 30 l'utilisateur tourne ensuite le cube 3a qu'il a retire pour determiner celle des faces de ce cube qui affiche l'element d'instruction de programmation qu'il desire adopter. Cette manipulation du cube 3a est illustree par la figure 3c ; et - l'utilisateur repositionne le cube 3a sur le support 2 en exposant la face qui affiche l'element d'instruction de programmation adopte sur le cote de la station 1 identifie 35 comme etant le cote concerne par la modification (figure 3d). Dans l'exemple illustre, l'utilisateur choisit de modifier 1' element d'instruction de programmation qui correspond - 30 - A la face AA0 du cube 3a, affichant initialement un appareil de type volet ou store, en le remplacant par l'element d'instruction de programmation qui correspond a la face CS2 du cube 3a, affichant un appareil d'eclairage apres detachement du cube 3a. La face AA0 est ainsi modifiee pour correspondre a un element d'instruction de programmation qui avant 5 la modification correspondait a la face CS2 ; - sur repositionnement du cube 3a sur le support 2, des donnees relatives a l'element d'instruction de programmation correspondant a la face AA0 sont transmises a la plateforme de gestion 101 de la figure 1. La plateforme de gestion 101 detecte une modification de l'element d'instruction de programmation correspondant a la face AA0 10 de la station 1, puis analyse la combinaison d'elements d'instruction de programmation correspondant au cote de la station de programmation 1 qui est concerne par la modification (theme de la luminosite (sur la face CSO), condition de baisse de la luminosite (sur la face CTO), appareil d'eclairage a actionner (sur la face AAO) et action correspondant a la fermeture d'un volet ou d'un store (sur la face ASO)). La plateforme de 15 gestion detecte une incompatibilite ou, selon le mode de realisation, une absence ou un defaut de correspondance entre deux elements d'instruction de programmation dans cette combinaison, en l'occurrence dans l'exemple illustre entre l'appareil a actionner et l'action a effectuer sur cet appareil, ou, selon les modes de realisation, entre le type d'appareil a actionner et le type d' action a realiser. Comme decrit ci-dessus, cette 20 detection peut par exemple utiliser la detection d'une difference d'identifiants associes respectivement au type d' appareil a actionner et au type d' action a realiser. Sur detection de cette absence de correspondance, la plateforme de gestion peut etre configuree pour determiner une modification d' element d'instruction de programmation permettant de corriger 1' absence de correspondance detectee. De preference, la plateforme de gestion 25 sera configuree pour choisir une modification d' element d'instruction de programmation qui n'impacte pas 1' element d'instruction de programmation pour lequel elle a recu des donnees (dans l'exemple illustre sur les figures 3b, 3c et 3d : l'element d'instruction de programmation correspondant a la face AAO). Dans l'exemple illustre sur la figure 3d, une modification de l'element d'instruction de programmation correspondant a la face 30 ASO est determinee, pour remplacer 1' action de fermeture de volet ou de store par une action d' allumage d'eclairage a un niveau de 75% du niveau maximum d' eclairage de l'appareil actionne. Des donnees relatives a l'element d'instruction de programmation ainsi modifie sont transmises a la station de programmation 1, qui affiche en retour l'element d'instruction de programmation modifie sur la face ASO de la station 1. 35 Les figures 3e, 3f et 3g illustrent une modification par l'utilisateur d'un element d'instruction de programmation sur la station de la figure 3d, qui n'entraine pas de modification - 31 - d'un autre element de l'instruction de programmation modifiee, selon un ou plusieurs modes de realisation : - l'utilisateur saisit dans ses mains la station 1 avec les huit cubes positionnes sur le support 2, et retire du support 2 le cube 3b qui correspond a un element a modifier dans la 5 programmation affichee sur les faces CSO, CTO, AAO, ASO des cubes formant un cote de la station 1 (figure 3e). Ce detachement du cube 3b est detecte par le cube 3b lui-meme, et celui-ci affiche sur ses faces (CT2 notamment), les elements d'instructions de programmation supplementaires qu'il a en memoire (niveau d'eclairage a 25% sur la face superieure, niveau d'eclairage a 100% sur la face CT2) ; 10 - l'utilisateur tourne ensuite le cube 3b qu'il a retire pour determiner celle des faces de ce cube qui affiche l'element d'instruction de programmation qu'il desire adopter. Cette manipulation du cube 3b est illustree par la figure 3f ; - l'utilisateur repositionne le cube 3b sur le support 2 en exposant la face qui affiche l'element d'instruction de programmation adopts sur le cote de la station 1 identifie 15 comme etant le cote concerns par la modification (figure 3g). Dans l'exemple illustre, l'utilisateur choisit de modifier l'element d'instruction de programmation correspondant a un niveau d'eclairage de 75% en le remplacant par un element d'instruction de programmation correspondant a un niveau d'eclairage de 50% ; et - sur repositionnement du cube 3b sur le support 2, des donnees relatives a l'element 20 d'instruction de programmation correspondant a la face ASO sont transmises a la plateforme de gestion 101 de la figure 1. La plateforme de gestion detecte une modification de l'element d'instruction de programmation correspondant a la face ASO de la plateforme, puis analyse la combinaison d' elements d'instruction de programmation correspondant au cote de la station de programmation 1 qui est concerns par la 25 modification (theme de la luminosite (sur la face CSO), condition de baisse de la luminosite (sur la face CTO), appareil d'eclairage a actionner (sur la face AAO) et action d' activation d'un eclairage avec un niveau donne (sur la face ASO)). La plateforme de gestion ne detecte pas d'incompatibilite, d' absence ou de defaut de correspondance entre deux elements d'instruction de programmation dans cette combinaison, et notamment 30 entre l' appareil a actionner et l' action a effectuer sur cet appareil, ou, selon les modes de realisation, entre le type d' appareil a actionner et le type d' action a realiser. Dans ce cas (non-detection d'une incompatibilite, d'une absence ou d'un defaut de correspondance, selon les modes de realisation), la plateforme de gestion peut etre configuree pour ne pas determiner de modification d'instruction de programmation, et par consequent ne pas 35 transmettre a la station de programmation 1 de donnees relatives a une instruction de programmation a modifier. La station de programmation affiche donc sur la face ASO, - 32 - suite au repositionnement du cube 3b sur le support 2, l'element d'instruction de programmation (50%) tel que modifie par l'utilisateur. Dans un ou plusieurs modes de realisation, pour faciliter encore plus 1' utilisation de la station 1, certains des cubes 3 peuvent etre affectes a la selection d' elements d'instructions de 5 programmation qui specifient touj ours des conditions d' activation, telles qu'introduites plus haut et comprenant les variables de conditions et les conditions. Simultanement, d'autres des cubes 3 peuvent etre affectes a la selection d' elements d'instructions de programmation qui specifient toujours des fonctionnements d'appareils. Les cubes de ces deux categories peuvent alors etre differencies, par exemple par des couleurs, des formes, des dimensions, ou des matieres differentes. 10 Dans le cas de figure non limitatif dans lequel deux couleurs sont utilisees pour differencier les categories de cubes, ces couleurs indiquent avantageusement a l'utilisateur qui a retire l'un des cubes 3 du support 2 qu'il est en train de selectionner une condition d' activation ou un fonctionnement d' appareil. Ainsi, dans les figures 2 et 3, les deux cubes 3 qui apparaissent sur le devant de la station 1 dans sa partie gauche peuvent par exemple d' etre d'une premiere couleur, et 15 les deux autres cubes 3 qui apparaissent aussi sur le devant de la station 1 mais dans sa partie droite peuvent par exemple d'être d'une seconde couleur, differente de la premiere couleur. Dans un ou plusieurs modes de realisation, chaque face d'un cube peut etre affect& a la selection d'un element d'instruction de programmation qui est soit toujours du type condition d' activation, soit touj ours du type fonctionnement d' appareil, le type d' element d'instruction 20 pouvant varier entre des faces differentes d'un meme cube. Dans ce cas, les faces peuvent etre de couleurs differentes, qu'elles appartiennent ou non a un meme cube. Dans d'autres modes de realisation qui sont encore possibles, les cubes ou les faces de cubes peuvent etre affecte(e)s chacun(e) a un seul des quatre types d' elements d'instructions de programmation enumeres plus haut. Une telle affectation peut alors etre indiquee a l'utilisateur par 25 toute(s) caracteristique(s) de differenciation, comme par exemple quatre couleurs differentes pour les cubes ou les faces de cubes. De telles mises en oeuvre avec des caracteristiques de differenciation, telles que des couleurs differenciees, augmentent encore le caractere intuitif de l'utilisation de la station 1. Dans un ou plusieurs modes de realisation, le support 2 de la station 1 peut etre pourvu de 30 selecteurs, par exemple a base de capteurs tactiles, et de temoins visuels pour permettre a l'utilisateur de modifier des parametres de fonctionnement de la station 1, ou de visualiser un etat de fonctionnement ou de parametrage de celle-ci. Les parametres ainsi ajustables peuvent concerner, a titre d'exemples non-limitatifs, l' activation d'un haut-parleur de la station 1, un reglage de son volume, 1' activation d'un microphone de la station 1, la selection d'une langue, la 35 selection et/ou la configuration d'un mode de connexion de la station 1 au reseau de communication 100, par exemple pour parametrer un mode de connexion de type WiFi®, etc. Les - 33 - temoins visuels peuvent concerner ces ajustements de parametres, indiquer un niveau de charge residuel de la batterie de la station 1, une qualite de transmission entre la station 1 et le reseau de communication 100, etc. De tels selecteurs et de temoins visuels sont indiques globalement par la reference 2f sur 1' exemple illustre par la figure 2a. 5 Dans un ou plusieurs modes de realisation, l'ajustement de parametres de la station 1 peut etre effectue par l'intermediaire des cubes 3, d'une fawn similaire au mode de programmation qui a ete decrit pour les appareils externes a la station 1. Par exemple, l'un des appareils qui est affiche sur une face d'un des cubes 3, peut etre remplace par un pictogramme de la station 1 elle-meme, et les options de fonctionnement ou de parametrage de la station 1 qui peuvent etre modifiees par 10 l'utilisateur peuvent etre affichees sur des faces d'un autre cube 3. Dans des modes de realisation aussi possibles, des temoins visuels qui sont relatifs au fonctionnement et au parametrage de la station 1 peuvent etre remplaces par des affichages sur certaines des faces de cubes 3, a la place des elements d'instructions de programmation qui concernent les appareils externes a la station 1. La figure 4 montre un exemple d'un tel mode de 15 realisation, dans lequel les faces de cubes 3 qui sont exposees frontalement indiquent le niveau de charge residuel de la batterie 2d, un fonctionnement de reception en vigueur par connexion sans fil, un etat d' activation en vigueur pour le microphone de la station 1, et un niveau de volume en vigueur pour son haut-parleur. Possiblement, certains cubes 3 ou certaines faces de cubes 3 peuvent etre dedie(e)s au fonctionnement et au parametrage de la station 1. Dans ce cas, ils (elles) peuvent 20 etre differencie(e)s par une caracteristique de differenciation, tel qu' une couleur, une taille, une forme, et/ou une matiere particulieres, par rapport aux autres cubes 3 ou faces de cubes 3 qui sont dedie(e)s a la programmation d' appareils externes a la station 1. Bien que la station de programmation propos& ait ete decrite ci-dessus pour une configuration geometrique a huit cubes 3 qui sont maintenus sur le support 2 selon l'agencement 25 tridimensionnel 2 cubes x 2 cubes x 2 cubes, l'Homme du métier comprendra que de multiples autres configurations geometriques sont possibles pour la station 1. De telles autres configurations peuvent faciliter des manipulations de la station 1 par l'utilisateur, ou favoriser encore plus des utilisations intuitives. La figure 5 montre une autre configuration possible, dans laquelle les cubes 3 sont 30 superposes en colonnes et orientables autour d'un axe vertical de chaque colonne, le support 2 comprenant alors une base ayant une face superieure formant une surface, par exemple sensiblement plane, sur laquelle sont montes un ou plusieurs axes non coplanaires avec la face superieure, par exemple perpendiculaires a cette face comme illustre sur la figure 5. Alternativement, dans encore une autre configuration possible, les cubes 3 peuvent etre juxtaposes 35 horizontalement sur des lignes superposees, et orientables autour d'un axe horizontal de chaque ligne, a la fawn d'un boulier. - 34 - La figure 6 montre une autre configuration possible, dans laquelle le support 2, ayant dans l'exemple non limitatif illustre sur la figure une face formant une surface sensiblement plane, constitue une representation de la repartition spatiale de plusieurs appareils a l'interieur d'une zone geographique ZG. Les blocs 3 (ayant dans cet exemple une forme cubique) qui sont utilises pour la 5 programmation de l'un des appareils, configures selon l'un des modes de realisation decrits ci- dessus, peuvent etre situes sur le support 2 a des emplacements qui correspondent a la localisation de cet appareil dans la zone geographique ZG. De cette fawn, l'utilisateur peut se representer plus facilement le ou les appareil(s) dont it est en train de programmer le fonctionnement. Plus specifiquement, l'exemple de realisation qui est illustre par la figure 6 montre deux 10 cubes 3 places l'un a cote de l'autre, avec deux faces coplanaires dont l'une affiche un pictogramme designant le theme de la temperature, et l'autre affiche une consigne de temperature (22°C). Ces deux cubes permettent de &fink une consigne de temperature dans la piece correspondant sur le plan de la zone geographique a l'emplacement de ces deux cubes sur le support 2. 15 Deux autres cubes 3 sont places l'un a cote de l'autre a un autre endroit du support 2, avec deux faces coplanaires dont l'une affiche un pictogramme designant le theme de la lumiere, et l'autre affiche une consigne de type intervalle de temps (de 7h00 a 9h15). Ces deux cubes permettent de &fink une programmation d' allumage de la lumiere dans la piece qui correspond sur le plan de la zone geographique a l'emplacement de ces deux cubes sur le support 2, pour 20 l'intervalle de temps programme, c'est-A-dire de 7h00 a 9h15 dans l'exemple illustre. Deux autres cubes 3 sont places l'un sur l'autre a encore un autre endroit du support 2, avec deux faces coplanaires dont l'une affiche un pictogramme designant le theme de la temperature, et l'autre affiche une consigne de temperature (20°C). Comme dans l'exemple cidessus, mais avec deux cubes places l'un sur l'autre au lieu d'être places l'un a cote de l'autre, et 25 pour un appareil qui est situe a un autre endroit de la zone geographique dont le support 2 represente un plan, les deux cubes permettent de &fink une consigne de temperature dans un emplacement de la zone geographique qui correspond a l'emplacement de ces deux cubes sur le support 2. Enfin, deux autres cubes 3 sont places l'un a cote de l'autre a encore un autre endroit du 30 support 2, avec deux faces coplanaires dont l'une affiche un pictogramme designant une condition de luminosite, et l'autre affiche une action portant sur un appareil de type store ou volet. Ces deux cubes permettent de &fink une programmation de fermeture des stores ou des volets lorsque la luminosite baisse dans la piece qui correspond sur le plan de la zone geographique a l'emplacement de ces deux cubes sur le support 2. 35 Ces quatre exemples montrent des ensembles de deux cubes disposes sur le support de maniere a avoir deux faces coplanaires, chacune des deux faces coplanaires etant munie d'un - 35 - afficheur pour afficher un element d' instruction de programmation d'un appareil qui est situe sur le plan de la zone geographique a un emplacement (par exemple considers a l' echelle d'une piece) correspondant a l' emplacement des deux cubes sur le support, et la combinaison des elements d'instruction de programmation affiches sur les faces coplanaires formant une instruction de 5 programmation du fonctionnement de 1' appareil. L'Homme du métier comprendra en outre que les systemes, stations de programmation, plateforme(s) et procedes proposes peuvent etre mis en oeuvre dans differents modes de realisation en modifiant certains aspects par rapport aux modes de realisation qui ont ete decrits en detail cidessus. En particulier, les aspects suivants peuvent etre modifies : 10 - la forme des blocs orientables, peut etre differente de celle de cubes ; -1' agencement et le mode de maintien des blocs sur le support peuvent etre quelconques ; - les modes de communication entre la station de programmation a blocs orientables et la plateforme de gestion de celle-ci, peuvent etre quelconques ; - la repartition des fonctions entre la station de programmation a blocs orientables et la 15 plateforme de gestion de celle-ci, notamment en ce qui concerne les fonctions de memorisation, de configuration des faces des blocs, de selection contextuelle des instructions de programmation ou elements d'instructions de programmation, etc., peut etre modifiee ; et la repartition des fonctions entre le support de la station de programmation a blocs 20 orientables et les blocs, notamment en ce qui concerne les fonctions de memorisation, de detection de mouvement, de detection du repositionnement d'un bloc sur le support, de detection de l' orientation de chaque bloc, de configuration des faces d'un bloc, etc., peut aussi etre modifiee. Les systemes, stations de programmation, plateforme(s), equipements utilisateur et 25 procedes proposes peuvent etre mis en oeuvre au moyen de composants logiciels et/ou materiels. Dans cette optique, les termes «module» et «unite» peuvent correspondre dans ce document aussi bien a un composant logiciel, qu'a un composant materiel ou a un ensemble de composants materiels et/ou logiciels, apte a mettre en oeuvre une fonction ou un ensemble de fonctions, selon ce qui est decrit pour le module ou l'unite concerne. 30 Un composant logiciel correspond a un ou plusieurs programme(s) d'ordinateur executable(s) par un processeur, un ou plusieurs sous-programme(s) dun programme, ou de maniere plus generale a tout element dun programme ou dun logiciel. Un tel composant logiciel est stocks en memoire puis chargé et execute par un processeur de donnees dune entite physique (passerelle multimedia, equipement utilisateur, terminal, etc.) et est susceptible d'acceder aux 35 ressources materielles de cette entite physique (memoires, supports d'enregistrement, bus de communication, cartes electroniques d'entrees/sorties, interfaces utilisateur, etc.). - 36 - De la meme maniere, un composant materiel correspond a tout element dun ensemble materiel (ou hardware). Il peut s'agir dun composant materiel programmable ou avec processeur integre pour l'execution de logiciel, par exemple un circuit integre (comme un circuit integre pour application specifique (ASIC, de l'anglais «Application-Specific Integrated Circuit»), un systeme 5 sur puce (SOC, de l' anglais «System On Chip»), une carte a puce, une carte electronique pour l'execution dun micrologiciel («firmware»), etc. Les SOC sont des systemes embarques qui integrent tous les composants d'un systeme electronique dans une puce unique. Un ASIC est un circuit electronique specialise qui regroupe des fonctionnalites sur mesure pour une application donnee. Les ASIC sont generalement configures 10 lors de leur fabrication et ne peuvent etre que simules par l'utilisateur. Un procede tel que propose peut egalement utiliser des architectures hybrides, comme par exemple des architectures basees sur un CPU+FPGA, un GPU (de 1' anglais «Graphics Processing Unit») ou un MPPA (de l'anglais «Multi-Purpose Processor Array»). Les systemes, stations de programmation, plateforme(s), equipements utilisateur et 15 procedes proposes peuvent en outre etre mis en oeuvre en utilisant une ou plusieurs combinaison(s) d' elements logiciels et materiels, comme par exemple un programme logiciel destine a etre chargé et execute sur un composant de type circuit logique programmable (FPGA, de l'anglais «Field Programmable Gate Array»). Les FPGA sont des circuits electroniques reconfigurables par 1' utilisateur. 20 En fonction du mode de realisation choisi, certains actes, actions, evenements ou fonctions de chacune des methodes decrites dans le present document peuvent etre effectues ou se produire selon un ordre different de celui dans lequel ils ont ete decrits, ou peuvent etre ajoutes, fusionnes ou bien ne pas etre effectues ou ne pas se produire, selon le cas. En outre, dans certains modes de realisation, certains actes, actions ou evenements sont effectues ou se produisent 25 concurremment et non pas successivement. Bien que decrits a travers un certain nombre d'exemples de realisation &taffies, les systemes, stations de programmation, plateforme(s), equipements utilisateur et procedes proposes comprennent differentes variantes, modifications et perfectionnements qui apparaitront de fawn evidente a l'Homme de l' art, etant entendu que ces differentes variantes, modifications et 30 perfectionnements font partie de la port& de l'invention, telle que definie par les revendications qui suivent. De plus, differents aspects et caracteristiques decrits ci-dessus peuvent etre mis en oeuvre ensemble, ou separement, ou bien substitues les uns aux autres, et 1' ensemble des differentes combinaisons et sous-combinaisons des aspects et caracteristiques font partie de la port& de l'invention. En outre, it se peut que certains systemes et equipements decrits ci-dessus 35 n'incorporent REVENDICATIONS1. Station de programmation universelle (1) a blocs orientables, destinee a programmer des fonctionnements d' au moins un appareil (10-12), dans laquelle des orientations respectives de plusieurs blocs (3) sur un support (2) de la station (1) correspondent, par configuration desdits plusieurs blocs et du support, a au moins une instruction de programmation d'un fonctionnement de l'appareil (10-12), et dans laquelle la station (1) est pourvue d'un module de detection (2b) configure pour &teeter les orientations respectives des blocs (3) portes par le support (2), et d'un module de communication (2c) configure pour envoyer a une plateforme de gestion (101), par l'intermediaire d'un reseau de communication (100), des donnees qui representent 1' au moins une instruction de programmation correspondant aux blocs et a leurs orientations respectives sur le support. 2. Station de programmation universelle (1) selon la revendication 1, la station (1) etant en outre configuree pour, suite a un repositionnement sur le support (2) d' au moins un bloc (3) dont l'orientation a ete modifiee par un utilisateur, identifier l'orientation modifiee de 1' au moins un bloc, telle que resultant du repositionnement, et envoyer a la plateforme de gestion (101) de nouvelles donnees qui representent au moins une nouvelle instruction de programmation resultant de ladite orientation modifiee de l' au moins un bloc. 3. Station de programmation universelle (1) selon la revendication 1 ou 2, dans laquelle au moins un des blocs (3) est detachable et repositionnable sur le support (2) selon plusieurs orientations distinctes, pour exposer des faces respectives de plusieurs des blocs en juxtaposition sur le support, afin de composer une combinaison des faces exposees desdits plusieurs blocs qui correspond a l'instruction de programmation. 4. Station de programmation universelle (1) selon la revendication 3, dans laquelle au moins un des blocs (3) possede plusieurs faces qui sont munies d'afficheurs respectifs. 5. Station de programmation universelle (1) selon la revendication 4, dans laquelle le module de communication (2c) est configure pour recevoir, en provenance de la plateforme de gestion (101) par l'intermediaire du reseau de communication (100), des instructions de programmation qui sont disponibles ou des elements d'instructions de programmation qui sont disponibles a afficher sur les faces munies d'afficheurs. 6. Station de programmation universelle (1) selon la revendication 4 ou 5, dans laquelle le module de communication (2c) est configure pour recevoir, en provenance de la plateforme de gestion (101) par l'intermediaire du reseau de communication (100), des elements d'instructions de programmation qui sont disponibles a afficher sur les faces munies d' afficheurs, certains au moins desdits elements d'instructions de programmation specifiant chacun une partie au moins d'une condition d' activation, ou specifiant chacun au moins en partie un fonctionnement d'un appareil, - 38 - et dans laquelle des instructions de programmation qui sont accessibles par l'utilisateur au moyen de la station (1) sont constituees chacune par une condition d' activation qui est combinee avec un fonctionnement d'un appareil. 7. Station de programmation universelle (1) selon la revendication 6, dans laquelle 5 certains des elements d'instructions de programmation qui specifient une partie d'une condition d' activation, specifient chacun une variable de condition ou une condition destinee a porter sur une variable de condition, et certains des elements d'instructions de programmation qui specifient en partie un fonctionnement d' appareil, specifient chacun un appareil a activer ou un fonctionnement d' appareil 10 a activer si la condition d' activation est realisee. 8. Station de programmation universelle (1) selon tune quelconque des revendications 1 A 7, dans laquelle le support (2) est concu pour correspondre a une repartition spatiale d' au moins un appareil (10-12) dans une zone geographique (ZG), et est configure pour maintenir chaque bloc (3) qui concerne la programmation dudit appareil a un emplacement sur le support qui correspond a 15 un emplacement de 1' appareil dans la zone geographique. 9. Procede de programmation de fonctionnements d' au moins un appareil (10-12), le procede comprenant: /1/ fournir une station de programmation universelle (1) qui est conforme a l'une quelconque des revendications precedentes, et relier la station a une plateforme de gestion (101) de 20 ladite station par un reseau de communication (100) ; /2/ par la plateforme de gestion (101) : configurer les blocs (3) et le support (2) en affectant des instructions de programmation ou des elements d' instructions de programmation aux orientations des blocs sur le support ; /3/ par la station (1) : detecter des orientations actuelles des blocs (3) port& par le support 25 (2), puis envoyer a la plateforme de gestion (101) par le reseau de communication (100), des donnees qui identifient lesdites orientations actuelles des blocs ; /4/ par un utilisateur : modifier une orientation d' au moins un des blocs (3) port& par le support (2), pour constituer une nouvelle orientation actuelle de 1' au moins un bloc ; /5/ par la station (1) : repeter l'etape /3/ pour la nouvelle orientation actuelle de 1' au moins un 30 bloc dont l'orientation a ete modifiee ; /6/ par la plateforme de gestion (101) : determiner au moins une instruction de programmation qui correspond aux orientations actuelles des blocs (3) sur le support (2), telles qu'identifiees par les donnees revues, puis en collaboration avec une autre plateforme (110-112) relative a l'appareil (10-12), commander un fonctionnement dudit 35 appareil qui est conforme a l'instruction de programmation determinee - 39 - 10. Procede selon la revendication 9, suivant lequel la station (1) est conforme a la revendication 4, et le procede comprend en outre: - par la plateforme de gestion (101) : transmettre a la station (1), par le reseau de communication (100), les instructions de programmation ou elements d'instructions de 5 programmation affecte(e)s a celles des faces munies d' afficheurs qui sont exposees sur le support (2) ; - par la station (1) : pour les blocs (3) portes par le support (2), afficher sur les faces exposees et munies d'afficheurs desdits blocs, les instructions de programmation ou elements d'instructions de programmation affecte(e)s auxdites faces exposees et munies 10 d' afficheurs. 11. Procede selon la revendication 10, comprenant en outre, lorsqu'un des blocs (3) est retire du support (2) : - par la station (1) : afficher sur plusieurs des faces munies d'afficheurs du bloc (3) retire, des instructions de programmation ou elements d'instructions de programmation disponibles 15 pour etre selectionne(e)s alternativement par l'utilisateur en modifiant 1' orientation du bloc pour repositionner ledit bloc sur le support (2).