Brevet FR2954533A1 — publié le 20110624

L'invention concerne un terminal portable commandé par mouvements et un procédé de saisie d'informations par mouvements sur un tel terminal. Dans l'industrie, de nombreuses sortes de dispositifs portables existent pour saisir et éventuellement transmettre des informations ou des ordres. Ces dispositifs, tel que le WorkaboutPro G2, commercialisé par la société PsionTeklogix, comportent en général un écran, des touches, des moyens de communication sans fil (ondes radio) et un système d'exploitation. Ce sont de véritables terminaux portables, destinés à être tenu d'une main et actionnés de l'autre main à l'aide d'un stylet permettant de saisir des informations sur un écran tactile. Ce mode d'utilisation suppose donc d'avoir une main libre et apte à actionner le terminal. Or, en milieu industriel, les opérateurs utilisant ce type de dispositifs de commande doivent souvent, pour des questions de sécurité, porter des gants de protection. En pratique, une main gantée peut très difficilement actionner ces dispositifs. L'opérateur doit donc retirer au moins un de ses gants pour actionner le dispositif, puis doit éventuellement le remettre en place sur sa main. Un problème à résoudre est de pallier tout ou partie des inconvénients signalés ci-dessus, c'est à dire en particulier de fournir un dispositif de commande qui puisse être tenu et actionné d'une seule main. A cette fin, la solution de l'invention porte sur un terminal portable comprenant : - un boîtier, apte et destiné, d'une part, à être tenu d'une seule main avec une orientation variable par rapport à un repère terrestre et, d'autre part, à être mis en mouvement par ladite main par rapport audit repère terrestre ; - un écran de visualisation et des moyens de saisie à touches ; - au moins un gyroscope apte et destiné à mesurer des paramètres de ladite orientation dudit boîtier et au moins un accéléromètre apte et destiné à mesurer des paramètres de l'accélération dudit boîtier pendant lesdits mouvements ; et - au moins une mémoire et au moins un processeur. Le terminal est destiné à être utilisé en milieu industriel. Son boîtier est étanche, à l'air et à l'eau notamment ; il répond par exemple à la norme IEC529, classification IP54. Il doit aussi résister aux chocs, tels que, par exemple, ceux consécutifs à une chute d'une hauteur de 1,2 m sur une surface de béton. Le terminal est portable. On le tient a priori dans une seule main, gantée ou non. Il peut être mis en mouvement dans toutes les directions de l'espace et tenu dans n'importe35 quelle position relative par rapport à un repère local (au sens mathématique et mécanique du terme) lié au sol. Il comporte un écran permettant de visualiser certaines informations. Cet écran est éventuellement tactile. Le terminal comporte aussi des touches permettant une saisie d'informations à la main. Parmi ces touches peut se trouver un bouton de mise en marche et d'extinction du terminal. Le terminal comprend au moins un gyroscope. Celui-ci est destiné à mesurer l'orientation du terminal dans l'espace. De manière particulière, cette orientation peut être déterminée en utilisant deux gyroscopes, voire plus, comme dans les centrales inertielles des avions ou des missiles. Pour repérer l'orientation du terminal, on assimile celui-ci à un solide auquel est lié un certain repère R' et on caractérise l'orientation spatiale de ce repère R' par rapport à un repère local R lié à la terre. Pour repérer complètement l'orientation instantanée du terminal, trois paramètres sont nécessaires. Ce sont classiquement trois angles. On peut aussi choisir de n'utiliser qu'un ou deux paramètres, mais l'orientation ne sera pas complètement définie et les mouvements ne seront pas complètement suivis. Parmi tous les paramètres possibles, l'angle fait par l'axe vertical du terminal avec la verticale du lieu, c'est à dire l'inclinaison du terminal, constitue un paramètre important. Le terminal comprend aussi au moins un accéléromètre. Par « accéléromètre », on entend tout dispositif apte et destiné à mesurer l'accélération auquel le terminal est soumis dans au moins une direction d'espace du repère R' lié au terminal. Si les accéléromètres sont unidirectionnels, on peut choisir d'en utiliser un, deux, trois, voire plus. S'ils sont multidirectionnels, on peut en utiliser moins. On obtient ainsi une, deux ou trois composantes du vecteur accélération du terminal. A l'aide de ces gyroscopes et accéléromètres, il est possible de mesurer, en continu ou en discontinu, l'orientation, complète ou partielle, ainsi que le vecteur accélération, complet ou partiel, du terminal. La mesure dure un certain temps. Les mesures discrètes obtenues pendant un certain laps de temps constituent une séquence en fonction du temps. Les mesures conduisent, à chaque instant de mesure, à entre un et trois paramètres d'orientation du terminal et entre un et trois composantes du vecteur accélération. On peut utiliser plus de paramètres pour être redondant et éliminer certaines erreurs ou dérives dans les mesures. Les gyroscopes sont placés dans le terminal de manière à fournir au moins une, deux ou trois directions fixes. Leurs coordonnées dans le repère local ont en revanche peu d'importance ; ce sont leurs axes fixes qui importent. En revanche, de manière préférée, les accéléromètres sont placés au sommet du terminal, c'est-à-dire en haut quand celui-ci est dans une position verticale, le terminal étant normalement tenu par plutôt par sa base. Les accélérations mesurées seront ainsi plus importantes en valeur absolue et la détection des accélérations gagnera en finesse. Gyroscope(s) et accéléromètre(s) fournissent des paramètres d'orientation et d'accélération du terminal. Le terminal comprend aussi au moins une mémoire destinée notamment à stocker des informations, en particulier celles liées aux paramètres d'orientation et d'accélération du terminal. Cette mémoire est lisible et inscriptible. Le terminal comprend au moins un processeur permettant de faire des calculs, notamment à partir des paramètres mesurés par les capteurs (gyroscopes, accéléromètres notamment) ou stockés en mémoire. Par ailleurs, selon des modes de réalisation particuliers, l'invention peut comporter l'une ou plusieurs des caractéristiques suivantes : - ladite mémoire contient des séquences d'informations interprétées par ledit 20 processeur comme des paramètres de ladite orientation ou des paramètres de l'accélération dudit boîtier et au moins une information associée à chacune desdites séquences d'informations et interprétée par ledit processeur comme une commande. - le dispositif de commande comporte en outre des moyens de lecture de codes barres 25 et/ou de radio-étiquettes. - le dispositif de commande comporte en outre des moyens de communication. Ces moyens de communications peuvent être de toute nature. De manière particulière, ils sont sans fil et la communication se fait un serveur central ou des périphériques 30 associés, comme une imprimante bluetooth. - le dispositif de commande comporte en outre une source autonome d'énergie électrique. Ce peut être notamment une pile ou une batterie rechargeable. 35 - le dispositif de commande comporte en outre des moyens de détection de proximité d'un obstacle donné.15 La mémoire comprend des suites de nombres organisées en séquences. Ces séquences représentent les valeurs successives des paramètres d'orientation et d'accélération du terminal. Ces séquences sont soit préexistantes (préalablement enregistrées dans la mémoire), soit inscrites par le processeur. Certaines représentent un mouvement pré-établi, d'autres représentent un mouvement réel tel que mesuré par les capteurs. Les séquences pré-établies peuvent être définies théoriquement, par des fonctions mathématiques, ou résulter d'une mesure pré-enregistrée. L'une des fonctions du processeur est de comparer par calcul des séquences mesurées (des mouvements réels) à des séquences pré-établies, déjà inscrites en mémoire (des mouvements de référence, pré-établis). A toute séquence pré-établie est associée une information de commande, de sorte que si les calculs du processeur indiquent que le mouvement mesuré est suffisamment proche du mouvement pré-établi, la commande en question va être effectuée ou transmise par le terminal. Le terminal peut aussi comporter des moyens de lecture de codes barres et/ou de radio-étiquettes (RFID tags en anglais). Il peut comporter des moyens de communication (émetteur, éventuellement récepteur), notamment pour transmettre des ordres de commande ou des informations. Il peut comporter des moyens de détection de proximité, tels qu'un capteur infrarouge. Ceux-ci peuvent compléter la détection et l'interprétation de certains mouvements. Ils permettent, par exemple, de déterminer que le terminal est posé face contre table. Il n'est alors pas utilisé de façon active et peut se mettre en veille. L'invention concerne également un procédé mettant en oeuvre un terminal tel que 25 décrit ci-dessus et comprenant les étapes suivantes : a) Ledit boîtier étant tenu d'une seule main, on imprime audit boîtier un certain mouvement ; b) A l'aide dudit gyroscope, on mesure lesdits paramètres de ladite orientation dudit boîtier au cours dudit mouvement ; 30 c) A l'aide dudit accéléromètre, on mesure des paramètres de l'accélération dudit boîtier au cours dudit mouvement ; et d) On détermine à l'aide des mesures obtenues aux étapes b) et/ou c) si ledit mouvement se rapproche, avec une certaine tolérance, d'un mouvement pré-établi, et, si oui, on exécute une commande correspondant audit mouvement préétabli ; 35 l'étape d) se répétant sur un ensemble donné de mouvements pré-établis. Aux étapes b) et c) des mesures sont réalisées à l'aide du ou des gyroscope(s) et du ou des l'accéléromètre(s). Ces mesures peuvent être utilisées directement, ou bien stockées temporairement dans la mémoire du terminal. Elles restent en mémoire aussi longtemps que nécessaire. A l'étape d), le processeur compare les séquences de mesures à des séquences pré-établies. Cette comparaison peut prendre différentes formes mathématiques. La plus simple est d'évaluer un écart entre séquence mesurée et séquence pré-établie. Si cet écart est inférieur à un certain seuil, on dira que le mouvement pré-établi est « détecté », i. e. reproduit par l'opérateur avec une certaine tolérance. L'ordre de commande associé à la séquence pré-établie (au mouvement pré-établi) en question est alors exécuté ou transmis (la transmission étant en elle même une commande). Si l'écart calculé reste supérieur ou égal au seuil, l'ordre ne sera pas exécuté ou transmis. Ce seuil peut être constant, ou bien dépendre de la séquence pré-établie considérée. La manière d'évaluer l'écart peut elle- même être uniforme (la même manière pour toutes les séquences pré-établies) ou bien dépendre de la séquence pré-établie considérée. L'adaptation du calcul de l'écart permet de maximiser les chances de détection et/ou d'éviter qu'un mouvement soit pris pour un autre. L'ordre de commande peut être de différente nature. Il peut être une commande directe (par exemple la mise en veille du terminal). Il peut s'agir de la saisie d'une information dans un menu, c'est-à-dire que l'ordre de commande dépend du contexte, de l'état dans lequel se trouve le terminal au moment où il est donné. Ceci revient à établir un lien logique entre les mouvements successivement détectés. On parle alors d'un ordre contextuel. L'ordre peut être une commande de navigation, par exemple pour évoluer dans des menus dits « déroulants » ou des arborescences logiques (des choix successifs). Dans ce cas, la commande agit sur le terminal lui-même. Le caractère contextuel permet de réduire le nombre de mouvements à reconnaître, certains mouvements permettant d'accéder, par choix successifs, à une multitude de commandes. Un petit nombre de mouvements différents permet ainsi de coder une infinité de choix, de la même façon que les chiffres de 0 à 9 permettent de coder une infinité de nombres en base 10, ou les lettres de l'alphabet une infinité de mots. L'étape d) se répète sur un ensemble donné de mouvements, c'est à dire qu'à intervalles de temps rapprochés, le processeur compare les séquences de mesures qui lui 35 sont transmises avec un ensemble de séquences pré-établies. Le début de la détection du mouvement, c'est-à-dire le début de la mesure d'une séquence de paramètres de mouvement, peut être défini de différentes façons. Selon un mode particulier, c'est un instant arbitraire. Les mesures sont alors réalisées en permanence et les séquences sont définies de manière glissante dans le temps, en partant d'un instant arbitraire qui varie. Selon un autre mode particulier, c'est la détection d'une accélération imprimée au terminal supérieure à un certain seuil en valeur absolue qui signale le début d'un mouvement et détermine l'instant à partir duquel on mesure les paramètres du mouvement. Par ailleurs, selon des modes de réalisation particuliers, l'invention peut comporter l'une ou plusieurs des caractéristiques suivantes : - à l'étape d), on calcule un écart vectoriel entre les mesures obtenues aux étapes b) et/ou c) et une séquence d'informations préétablie et, si ledit écart vectoriel est inférieur à un seuil prédéterminé, on exécute une commande correspondant à ladite séquence d'informations préétablie. - le procédé de commande comporte, préalablement à l'étape a), une étape a0) où on définit au moins un desdits mouvements pré-établis en imprimant d'une main ledit mouvement pré-établi audit boîtier, en mesurant à l'aide dudit gyroscope lesdits paramètres de ladite orientation dudit boîtier au cours dudit mouvement pré-établi, en mesurant à l'aide dudit accéléromètre des paramètres de l'accélération dudit boîtier au cours dudit mouvement pré-établi, en enregistrant ces mesures et en leur associant une commande pré-établie. Mathématiquement, une séquence de paramètres d'orientation et d'accélération correspond à un vecteur, dès lors que les paramètres sont considérés dans un ordre donné. A chaque mouvement, mesuré ou pré-établi, peut être associé un vecteur, dont les coordonnées sont les paramètres d'orientation et d'accélération du terminal placés dans un certain ordre. Peu importe cet ordre, pourvu que ce soit toujours le même. Il s'agit ensuite de calculer un écart entre un vecteur mesuré (correspondant à un mouvement réellement effectué) et un vecteur enregistré (correspondant à un mouvement pré-établi). Cet écart est une valeur numérique, a priori positive, analogue à une distance. En général, il vaut zéro si les vecteurs sont identiques. On peut citer comme écart typique la « norme 2 », qui est l'analogue en dimension N (N étant le nombre de coordonnées des vecteurs) de la distance euclidienne dans le plan ou dans l'espace. D'autres normes que la norme 2 peuvent être utilisées. L'écart entre deux vecteurs, dans sa plus grande généralité, peut être défini comme une fonction mathématique de tout ou partie des coordonnées de ces vecteurs représentant des mouvements discrétisés, la fonction prenant en compte au moins toute la série temporelle d'un type de coordonnée (c'est-à-dire au moins un paramètre d'orientation du terminal tel qu'un angle, une coordonnée de l'accélération subie par le terminal, ou toute autre coordonnée dans le système de repérage choisi). Cette fonction est de préférence une norme (au sens mathématique) de la différence entre deux vecteurs (ou de leur projection dans un sous-espace correspondant aux coordonnées utilisées dans la fonction d'écart). Les coordonnées de ces vecteurs sont de préférence les paramètres d'orientation et d'accélération tels que mesurés, ou la variation de ces paramètres pendant le mouvement. A l'intérieur de cette définition, le calcul de l'écart peut être adapté, notamment en fonction du mouvement pré-établi qu'on cherche à reconnaître et/ou selon le choix de l'opérateur. Le seuil de détection peut aussi être adapté de la même façon. Selon des modes particuliers, le calcul de l'écart peut ne pas prendre en compte toutes les composantes du vecteur. Ce sera le cas par exemple si, pour un certain mouvement pré-établi, on ne souhaite pas prendre en compte l'accélération. Dans ce cas, on ne met dans le calcul d'écart que les composantes angulaires relatives à l'orientation du terminal pendant le mouvement. Les mesures d'orientation ou d'accélération peuvent, dans certains cas, être «renormées » avant le calcul d'écart. Par exemple, au lieu de considérer l'évolution absolue d'un paramètre d'orientation du terminal, du début à la fin du mouvement, on peut considérer son évolution relative depuis sa valeur initiale. Plus précisément, si un paramètre d'orientation choisi est l'azimut, c'est à dire la direction dans laquelle l'axe vertical du terminal s'écarte de la verticale du lieu, on est en général pas intéressé par la valeur initiale de l'azimut, qui dépend la position de l'opérateur et de la manière dont il tient le terminal au début du mouvement. Ce qui importe alors est l'évolution de l'azimut. Donc, en général, plutôt que de considérer l'azimut, on considère plutôt l'azimut moins sa valeur initiale. Dit autrement, ceci revient à considérer comme identiques des mouvements qui se déduisent l'un de l'autre par une rotation autour de la verticale du lieu. Le même geste effectué par l'opérateur sera ainsi reconnu, que celui-ci regarde vers le sud, le nord, ou dans n'importe quelle direction azimutale. Si l'on se place dans l'espace vectoriel des séquences (S) de paramètres de mouvement, on voit que les mouvements pré-établis sont des points de référence. Pour chaque point de référence, la fonction d'écart et se seuil définissent un voisinage autour du point de référence. Si le vecteur correspondant un mouvement réel pointe dans ce voisinage (c'est-à-dire si l'écart est inférieur au seuil), le mouvement est reconnu et l'ordre associé est exécuté ou transmis. On comprend que la fonction d'écart et le seuil sont choisis pour définir un voisinage ni trop « petit » (pour permettre la reconnaissance d'un mouvement) ni trop grand (ce qui créerait un risque de confusion entre les mouvements). Il peut être utile de laisser la possibilité à l'opérateur d'augmenter ou de réduire le seuil associé à un certain mouvement pré-établi. A la norme 2 correspond des voisinages prenant la forme de «boules ». La forme mathématique prise par la fonction d'écart permet de donner plus ou moins de poids à certaines coordonnées des séquences, prises à certains moments du mouvement mesuré. Ceci revient à donner aux voisinages des formes plus complexes, ce qui peut avoir un intérêt pour optimiser la détection de certains mouvements et minimiser le risque de confusion entre certains d'entre eux. D'autres particularités et avantages apparaîtront à la lecture de la description ci-après, faite en référence aux figures, parmi lesquelles : - la figure 1 représente un boîtier de dispositif selon l'invention, - la figure 2A représente des éléments qui peuvent se trouver sur un boîtier du dispositif selon l'invention, - la figure 2B représente des éléments qui peuvent se trouver à l'intérieur d'un boîtier du dispositif selon l'invention, - la figure 3 illustre une manière de repérer la position du dispositif dans l'espace, - les figures 4A, 4B et 4C donnent des exemples de mouvements pré-établis correspondant à des commandes qui peuvent être réalisées ou envoyées par un dispositif selon l'invention. Sur la figure 1, on a représenté le boîtier 1 du dispositif de commande, ou terminal, tenu par un opérateur dans sa main 10. Il s'agit ici d'une main droite, mais le terminal peut être tenu de n'importe quelle main. Le boîtier représenté a la forme d'un parallélépipède (M, MA, MB, MC). M, A, B et C sont des points fixes par rapport au terminal. Le boîtier 1 peut présenter d'autres formes pouvant être prises en main. On a représenté un parallélépipède par commodité. Le boîtier est étanche et résistant aux chocs comme expliqué ci-dessus. Sur la figure 2A, on a représenté des éléments de la face avant du terminal (le plan (M, MB, MC) : des moyens 2 de lecture de codes barres ou de radio-étiquettes, un écran de visualisation 3, éventuellement tactile, et un clavier 4 permettant de saisir des données. Ce clavier peut comporter une à plusieurs touches. Il peut y avoir d'autres boutons, notamment sur les côtés ou au dos du boîtier 1. (MC) est selon un axe vertical du boîtier, la verticale se définissant comme l'axe vertical des caractères pouvant apparaître sur l'écran 3 ou dessinés sur le clavier 4. (MB) est un axe horizontal appartenant à la face avant du terminal et orthogonal à (MC). (MA) est orthogonal à l'écran 3. Sur la figure 2B, on a représenté les organes, a priori internes, du terminal et fixes par rapport au boîtier 1 : une mémoire 5 lisible et inscriptible, de type Flash 256 MB et 128 MB RAM, un processeur 6 de type PXA270, une batterie 7 qui peut être une pile électrique amovible, un ensemble de gyroscopes 8, de type ITG-3200 de chez InvenSense, aptes à mesurer l'orientation tridimensionnelle du terminal, un ensemble d'accéléromètres 9 de type ADXL202 de chez Analog Devices, aptes à mesurer des accélérations imprimées au terminal, un module 11 de communication avec l'extérieur (wifi, blue tooth, etc.) et un détecteur de proximité d'obstacles éventuels 12. Tous les éléments, externes ou internes, du terminal sont disponibles commercialement. Sur la figure 3, on a représenté une manière de repérer la position angulaire du terminal et les accélérations imprimées par l'opérateur au terminal. Un premier repère d'espace R (O, Ox, Oy, Oz) est lié à la terre et orthonormé. (Oz) représente la verticale du lieu et (O, Ox, Oy) un repère orthonormé du plan constitué par le sol. Un second repère d'espace R' (M, Mx', My', Mz'), également orthonormé, est lié au terminal. L'axe (Mz') matérialise la verticale du terminal et est parallèle à (MC). (My') est parallèle à (MB) et (Mx') à (MA). Le plan (M, My', Mz') est donc un repère de la face avant du terminal. On translate (par la pensée) le terminal, de sorte que le point M, origine du repère R', occupe une position M' telle que l'axe (Mz') passe par le point O, origine du repère R. L'angle (Oz, Mz) définit alors un angle 0 qui est l'écart du terminal avec la verticale du lieu. On projette orthogonalement le point M' sur le plan (O, Ox, Oy), figurant le sol, en un point H. L'angle (Ox, OH) définit un angle (p qui représente l'azimut du terminal par rapport à une direction (Ox) arbitraire. (OM',O,ç) représentent les coordonnées sphériques du point M' dans le repère R. Pour repérer complètement l'orientation du boîtier 1 (ou du repère R'), il faut encore un paramètre yr qui peut être défini comme l'angle (u(p, M'y'), uip étant un vecteur normal au plan (Oz, OH) dans le sens des angles (p positifs. uip peut aussi être défini comme le vecteur dérivé partiel de OM' par rapport à l'angle (p. Les trois angles (Oe,yl) ainsi définis donnent l'orientation du terminal dans le repère R : écart à la verticale, azimut et inclinaison à gauche ou à droite autour de l'axe vertical du terminal. Il existe évidemment d'autres systèmes de repérage de l'orientation, mais qui reviennent mathématiquement au même, c'est-à-dire qu'on peut les calculer à partir de (Oe,yr) et inversement. On calibre les gyroscopes 8 ou on programme le processeur 6 pour obtenir ces trois angles directement ou les calculer en utilisant les mesures réalisées par les gyroscopes 8. L'accélération est donnée les accéléromètres 9. Ceux-ci mesurent les trois composantes du vecteur accélération subi par le terminal à l'endroit où sont placés, de préférence près de la face supérieure du boîtier 1 (plan orthogonal à l'axe (Mz') et passant par C). On calibre les accéléromètres 9 pour obtenir l'accélération exprimée dans le repère R'. Nous appellerons (ax, ay, az) les coordonnées du vecteur accélération exprimées dans ce repère R'. Un mouvement sur une durée T, échantillonné à intervalles de temps T/n, peut alors être défini par la séquence de paramètres (S) = (00, 01, 02,... On ; (p0, (pl, (p2,... (pn ; yi0, yi l , y2,... yin ; ax0, ax 1, ax 2,... axn ; ay0, ay l , ay2,... ayn ; az0, az 1, az2,... azn) où on a rangé les valeurs successives des paramètres d'orientation et d'accélération. Toute permutation circulaire de cet ordre pourrait convenir. La séquence définit un vecteur dans un espace de dimension N = 6(n+l), soit le nombre de paramètres de la séquence. Cette séquence (S) est comparée à des séquences similaires de paramètres représentant des mouvements pré-établis. Le processeur 6 calcule un écart entre la séquence (S) et une séquence de référence (Sr). Cet écart peut, par exemple, être la norme 2, de (N-1 -\1/2 formule (S) û (SI2 = L (Si û Sri)2 où les paramètres Si et Sri sont les termes des i=0 séquences (c'est à dire les coordonnées des vecteurs). Si l'on veut rendre la comparaison indépendante de l'azimut (p, on peut renormer (redéfinir) l'azimut, en considérant son évolution depuis sa valeur initiale (p0, c'est-à-dire en remplaçant (p0, (pl, (p2,... (pn par 0, (pl-(p0, (p2-(p0,... (pn-(p0 dans la séquence. Pour certains mouvements, on ne retient dans la fonction d'écart que certains types de coordonnées. Par exemple, on ne considérera que les coordonnées d'orientation, ce qui revient à observer l'orientation au court du mouvement et à négliger la manière dont il est effectué en termes d'accélération. Selon un autre cas, on pourra n'observer que l'accélération, ou que l'écart à la verticale du lieu. Tous ces cas correspondent à des classes de fonctions d'écart particulières, entrant dans la définition générique donnée ci-dessus. Les figures 4A, 4B et 4C donnent des exemples de mouvements. Ces exemples peuvent être multipliés à l'infini, bien que nous ayons vu plus haut que, en donnant une valeur contextuelle à des mouvements (c'est-à-dire que la commande associée dépend des commandes précédemment saisies), un petit nombre de mouvements différents (au minimum deux), permet théoriquement de coder une infinité d'ordres différents. La figure 4A, on a représenté symboliquement un mouvement d'oscillations rapides 13 imprimé au boîtier 1 dans une direction donnée, ici l'axe (Oy). A ce mouvement est associé, par exemple, une commande d'allumage du terminal, qui passe d'un état de veille à un état de marche, comportant par exemple une mise en tension de l'écran 3. Pour ce mouvement, peu importe l'orientation du terminal (la façon dont il est tenu). Le début du mouvement est détecté quand, à un instant tO, la norme du vecteur accélération Iax2 + ay2 + az2 dépasse une certaine valeur, par exemple 1 m/s2 (mètre par seconde carrée, unité d'accélération), soit environ un dixième de l'accélération de la pesanteur. On s'intéresse ensuite à l'accélération selon l'axe (My'), c'est à dire vers la gauche ou la droite de l'écran 3. Celle-ci est donnée par la coordonnée ay du vecteur accélération, mesurée par les accéléromètres 9. Le mouvement est observé pendant T = 3 s, avec un échantillonnage toute les 0.1 seconde, c'est-à-dire qu'on mesure 31 valeurs successives de ay. Cette séquence (S) = (S)i=o,i,...30 = (ay0, ayl, ay2... ay30) est comparée à une séquence pré-établie (Sr) correspondant à une oscillation de l'accélération de fréquence f et d'intensité I pré-établies. (Sr) peut avoir été enregistrée dans la mémoire 5 de façon théorique, par exemple en y inscrivant les valeurs Sr = I cos[2irf (0. l i)+ d], d étant un déphasage donné, « cos » étant la fonction cosinus. De manière alternative, (Sr) peut avoir été obtenu en enregistrant un mouvement réel fait par l'opérateur, c'est-à-dire en mesurant et en stockant dans la mémoire 5 les paramètres d'orientation et d'accélération du terminal pendant le mouvement, le terminal étant dans un mode « enregistrement » (étape aO du procédé). Ainsi, on tient mieux compte de la manière particulière qu'a un opérateur de faire un certain mouvement (plus ou moins vite, plus ou moins vigoureusement... etc.). Il lui sera plus facile de reproduire ce mouvement si la séquence pré-établie a été « personnalisée » de cette manière. Le processeur 6 calcule une fonction écart qui peut être la norme 2 : ( 30 -\1/2 0(s)-(si.)02 = L (ayi û Sr; )2 . Un seuil de tolérance possible, en dessous duquel on i=0 considère que le mouvement effectivement réalisé est proche du mouvement d'oscillation en question, peut être e = V(0.11)2.31 = 0.55 I. Il correspond sensiblement à un écart relatif moyen entre les valeurs ay, et Sri de 10%, c'est-à-dire que les accélérations mesurées ne 30 diffèrent pas de plus de 10% en moyenne de celles qui ont été pré-établies. Ceci n'est qu'un exemple de fonction écart. Sur la figure 4B, on a représenté un autre mouvement du terminal, symbolisé par la flèche 14. Au début du mouvement, à l'instant tO, le boîtier 1 est sensiblement face vers le 35 haut, i. e. que l'angle 0, l'écart à la verticale, vaut environ n/2 radian (soit 90°). Le mouvement consiste à retourner le terminal face (MBC) selon la flèche 14, c'est-à-dire en lui faisant décrire un U inversé (le haut de la lettre « U » vers le bas). On peut y associer, par exemple une commande de mise en veille. La mise en veille pourrait en outre être déclenchée après une absence de détection d'accélération pendant un certain temps. Da s le mouvement 14, il y a d'abord une accélération vers le haut (dans la direction (Ox') dans le sens négatif), un retournement, les accéléromètres 9 décrivant sensiblement un demi cercle (l'accélération se trouvant à peu près selon l'axe (M'z') dans le sens négatif), ensuite une translation vers le bas et enfin une décélération (dans la direction (M'x') dans le sens positif). Durant le mouvement, l'accélération selon l'axe (M'y') et l'angle yr sont faibles et peuvent être négligés. L'azimut (p part d'une certaine valeur en radian et, en valeur absolue, va évoluer d'une valeur sensiblement égale à it radian (180°). Pour ce type de mouvement, il est préférable d'utiliser la position du point H dans le plan (Ox, Oy) plutôt que les angles (e,ep) en raison de discontinuités dans les valeurs de l'azimut lorsque que le point H est proche du point O (voir figure 3). On peut construire des fonctions d'écart en utilisant les coordonnées xH = sine cos((p-(p0) et yH = sine sin((p-(p0) ce qui est une façon de renormer un peu compliquée. On peut aussi, pour ce mouvement 14, ignorer l'azimut (p et construire une fonction d'écart assez simple utilisant seulement les trois coordonnées d'accélération et l'angle e tels que mesurés. Sur la figure 4C, on a représenté symboliquement un mouvement 15 consistant, par un mouvement bref du poignet de l'opérateur, à écarter le terminal de la verticale ou à le ramener vers la verticale. Ces mouvements peuvent par exemple être associés à la commande consistant à monter ou à descendre dans un menu qui serait présenté à l'écran. Dans un cas, l'angle e augmente à partir d'une valeur initiale ; dans l'autre cas, il diminue. L'accélération est principalement selon l'axe (M'x'), ou au moins dans le plan (M', M'x',M'z'), la coordonnée ay du vecteur accélération étant faible. La fonction d'écart peut ignorer l'azimut (p et ne pas prendre en compte l'angle yr, qui importent peu. Elle peut ne porter que sur l'évolution de l'écart à la verticale (0-00) et les coordonnées du vecteur accélération. La valeur algébrique de l'accélération selon l'axe (M'x') peut être utilisée pour quantifier l'intensité du geste. En fonction de l'intensité, on peut ordonner un déplacement plus ou moins important dans le menu déroulant. En pratique, on aura donc plusieurs mouvements pré-établis, avec des intensités augmentant graduellement.35 Revendications1. Terminal portable comprenant : - un boîtier (1), apte et destiné, d'une part, à être tenu d'une seule main (10) avec une orientation variable (R') par rapport à un repère terrestre (R) et, d'autre part, à être mis en mouvement (13, 14, 15) par ladite main (10) par rapport audit repère terrestre (R) ; - un écran de visualisation (3) et des moyens de saisie à touches (4) ; - au moins un gyroscope (8) apte et destiné à mesurer des paramètres (8,(p,yr) de ladite orientation (R') dudit boîtier (1) et au moins un accéléromètre (9) apte et destiné à mesurer des paramètres (ax, ay, az) de l'accélération dudit boîtier (1) pendant lesdits mouvements (13, 14, 15) ; et - au moins une mémoire (5) et au moins un processeur (6). 2. Terminal selon la revendication 1, caractérisé en ce que ladite mémoire (5) contient : - des séquences d'informations interprétées par ledit processeur (6) comme des paramètres (Oe,yl) de ladite orientation (R') ou des paramètres (ax, ay, az) de l'accélération dudit boîtier (1) ; et - au moins une information associée à chacune desdites séquences d'informations et interprétée par ledit processeur (6) comme une commande. 3. Terminal selon l'une quelconque des revendications 1 ou 2, caractérisé en ce qu'il comporte en outre des moyens de lecture (2) de codes barres et/ou de radio-25 étiquettes. 4. Terminal selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comporte en outre des moyens de communication (11), des moyens de détection (12) de proximité d'un obstacle donné et une source autonome d'énergie électrique 30 (7). 5. Procédé mettant en oeuvre un terminal selon l'une quelconque des revendications 1 à 4, comprenant les étapes suivantes : a) Ledit boîtier (1) étant tenu d'une seule main (10), on imprime audit boîtier (1) 35 un certain mouvement (13, 14, 15) ; b) A l'aide dudit gyroscope (8), on mesure lesdits paramètres (8,(p,yr) de ladite orientation (R') dudit boîtier (1) au cours dudit mouvement (13, 14, 15) ; 10 15 20c) A l'aide dudit accéléromètre (9), on mesure lesdits paramètres (ax, ay, az) de l'accélération dudit boîtier (1) au cours dudit mouvement (13, 14, 15) ; et d) On détermine à l'aide des mesures obtenues aux étapes b) et/ou c) si ledit mouvement (13, 14, 15) se rapproche, avec une certaine tolérance, d'un mouvement pré-établi, et, si oui, on exécute une commande correspondant audit mouvement préétabli ; l'étape d) se répétant sur un ensemble donné de mouvements pré-établis. 6. Procédé selon la revendication 5, caractérisé en ce que, à l'étape d), on calcule un écart vectoriel entre les mesures obtenues aux étapes b) et/ou c) et une séquence d'informations pré-établie et, si ledit écart vectoriel est inférieur à un seuil prédéterminé, on exécute une commande correspondant à ladite séquence d'informations préétablie. 7. Procédé selon l'une quelconque des revendications 5 ou 6, caractérisé en ce qu'il comporte, préalablement à l'étape a), une étape a0) où on définit au moins un desdits mouvements pré-établis en imprimant d'une main (10) ledit mouvement pré-établi audit boîtier (1), en mesurant à l'aide dudit gyroscope (8) lesdits paramètres (8e,yr) de ladite orientation (R') dudit boîtier (1) au cours dudit mouvement pré-établi, en mesurant à l'aide dudit accéléromètre (9) lesdits paramètres (ax, ay, az) de l'accélération dudit boîtier (1) au cours dudit mouvement pré-établi, en enregistrant ces mesures et en leur associant une commande pré-établie.25