FR 3151009 A1 20250117 FR 2307394 A 20230711 L’invention concerne un procédé 100 de détection d’un état de contact d’un contacteur de démarrage d’un véhicule automobile, le procédé 100 comportant les étapes de : Recevoir 101 un signal brut reflétant une information sur un état de contact du contacteur ; Filtrer 102 des rebonds du signal brut ; Déterminer 103 un premier état de contact du contacteur à partir du signal brut filtré ; Déterminer 105 un deuxième état de contact du contacteur à partir du signal brut reçu ; Lorsque le deuxième état de contact déterminé est différent d’un deuxième état de contact précédemment déterminé, déclencher 106 un compteur de temps ; Lorsque le compteur de temps est expiré, Comparer 107 les premier et deuxième états de contact déterminés ; Lorsqu’ils sont différents, sélectionner 108 le deuxième état de contact déterminé comme information sécuritaire. Figure à publier avec l’abrégé : Figure 2 PROCEDE DE DETECTION D’UN ETAT DE CONTACT D’UN CONTACTEUR DE DEMARRAGE D’UN VEHICULE AUTOMOBILE DOMAINE TECHNIQUE DE L’INVENTION Un aspect de l’invention se rapporte à un procédé de détection d’un état de contact d’un contacteur de démarrage d’un véhicule automobile. L’invention trouve une application particulièrement intéressante dans le domaine des véhicules automobiles muni d’un moteur thermique et/ou d’un moteur électrique. ARRIERE-PLAN TECHNOLOGIQUE DE L’INVENTION Il est connu des véhicules équipés d’une clé de démarrage. Pour démarrer le véhicule, la clé est insérée dans une serrure puis tournée pour passer d’une position, dite OFF, à une position, dite ON. Pour éteindre le véhicule, la clé est tournée en sens inverse de manière à passer de la position ON à la position OFF. Il est également connu des véhicules équipés d’une carte électronique de démarrage. Selon un mode de mise en œuvre, lorsque le conducteur souhaite démarrer le véhicule, il insère la clé dans un logement prévu pour la carte, puis appuie sur un bouton de démarrage. Pour éteindre le véhicule, le conducteur appuie une nouvelle fois sur le bouton de démarrage. S’agissant des cartes électroniques de démarrage sans contact, muni de sa carte électronique de démarrage, le conducteur s’installe dans l’habitacle du véhicule, puis il appuie sur un bouton de démarrage pour démarrer le véhicule et appuie une nouvelle fois dessus afin de l’éteindre. Lorsque le conducteur tourne la clé de démarrage dans la serrure de son véhicule, le contacteur de démarrage du véhicule passe d’une position ouverte à une position fermée. A partir d’un signal brut reflétant une information sur l’état de contact du contacteur de démarrage, à savoir un état ouvert, dit OFF, ou un état fermé, dit ON du contacteur de démarrage, un calculateur du véhicule exécute une étape de filtrage dudit signal brut. Effectivement, lorsque le conducteur tourne la clé de démarrage du véhicule dans le la serrure du véhicule, le contact électrique du contacteur de démarrage n’est pas nécessairement parfaitement réalisé du premier coup, ce qui génère des rebonds sur le signal brut. Un tel filtrage est également connu sous la terminologie anglo-saxonne de « anti-bounce ». Cette étape de filtrage permet d’atténuer ces rebonds du signal brut. A partir de ce signal filtré, le calculateur en déduit un état de contact du contacteur de démarrage, et donc la volonté du conducteur de démarrer ou éteindre le moteur du véhicule. Selon ce procédé, lorsqu’une erreur logicielle liée au filtrage du signal brut se produit, l’état de contact du contacteur de démarrage déduit peut être erroné. Ainsi, si l’état de contact du contacteur de démarrage est fermé et que le procédé détecte un état de contact du contacteur de démarrage erroné, à savoir ouvert dans le cas présent, alors ce procédé peut empêcher le conducteur de démarrer le moteur de son véhicule. A l’inverse, si l’état de contact du contacteur de démarrage est ouvert et que le procédé détecte un état de contact du contacteur de démarrage erroné, à savoir fermé, alors le moteur du véhicule peut être maintenu en marche alors que le conducteur souhaite l’éteindre. Le but de l’invention est de pallier les inconvénients de l’art antérieur en proposant un procédé de détection d’un état de contact d’un contacteur de démarrage d’un véhicule automobile permettant d’éviter une mauvaise détection de l’état de contact dudit contacteur. Dans ce contexte, l’invention se rapporte ainsi, dans son acceptation la plus large, à un procédé de détection d’un état de contact d’un contacteur de démarrage d’un véhicule automobile, le véhicule comportant un calculateur muni d’un premier module de détection d’un premier état de contact du contacteur de démarrage et un deuxième module de détection d’un deuxième état de contact du contacteur de démarrage, le procédé comportant les étapes de : Recevoir un signal brut reflétant une information sur un état de contact du contacteur de démarrage, le signal brut étant reçu par le premier module de détection et le deuxième module de détection ; Filtrer des rebonds, au moyen du premier module de détection, du signal brut ; Déterminer, au moyen du premier module de détection, un premier état de contact du contacteur de démarrage à partir du signal brut filtré ; Déterminer, au moyen du deuxième module de détection, un deuxième état de contact du contacteur de démarrage à partir du signal brut reçu ; Lorsque le deuxième état de contact déterminé est différent d’un deuxième état de contact précédemment déterminé, déclencher un compteur de temps ; Lorsque le compteur de temps est expiré, Comparer le premier état de contact déterminé avec le deuxième état de contact déterminé ; Lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, sélectionner le deuxième état de contact déterminé comme information sécuritaire. Grâce au procédé selon l’invention, le premier état de contact déterminé à partir d’un signal brut filtré est comparé à un deuxième état de contact déterminé à partir dudit signal brut non filtré. Le deuxième état de contact n’étant pas filtré, le traitement logiciel est quasi-inexistant. Ainsi, si un défaut apparait lors du traitement logiciel exécuté par le premier module, ce défaut ne sera pas reproduit par le deuxième module. La comparaison entre le premier état de contact obtenu par un filtrage du signal brut et le deuxième état de contact obtenu par le signal brut non filtré permet ainsi d’identifier un éventuel défaut logiciel généré lors du filtrage. Dans ce cas, l’état de contact utilisé par les fonctions sécuritaires du véhicule est le deuxième état de contact. Outre les caractéristiques qui viennent d’être évoquées dans le paragraphe précédent, le procédé selon cet aspect de l’invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon toutes les combinaisons techniquement possibles. Selon un aspect non limitatif de l’invention, lorsque le premier état de contact et le deuxième état de contact déterminés sont identiques, le procédé comporte une étape de sélectionner le premier état de contact comme information sécuritaire. Selon un aspect non limitatif de l’invention, le procédé comporte une étape de synchroniser au moins deux coeurs du calculateur pour transmettre le premier état contact déterminé aux deux coeurs, l’étape de synchroniser étant successive à l’étape de déterminer un premier état de contact. Selon un aspect non limitatif de l’invention, le temps comptabilisé par le compteur de temps est au moins égal au temps nécessaire au premier module de détection pour déterminer le premier état de contact. Selon un aspect non limitatif de l’invention, lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, le procédé comporte une étape d’enregistrer une information reflétant la différence dans une mémoire non-volatile du véhicule. Selon un aspect non limitatif de l’invention, lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, le procédé comporte une étape de réinitialiser le calculateur. Selon un aspect non limitatif de l’invention, lorsqu’une réinitialisation du calculateur est effectuée, le procédé comporte une étape de comptabiliser la réinitialisation, l’étape de réinitialiser le calculateur étant interdite lorsque le nombre de réinitialisation atteint une valeur seuil. Selon un aspect non limitatif de l’invention, le signal brut reçu est un signal logique. Un autre aspect de l’invention se rapporte à un véhicule automobile comportant un calculateur configuré pour exécuter les étapes du procédé selon l’un quelconque des aspects précités. Selon un aspect de l’invention, le calculateur comporte un premier module de détection d’un premier état de contact d’un contacteur de démarrage du véhicule et un deuxième module de détection d’un deuxième état de contact du contacteur de démarrage, le deuxième module de détection étant un module de détection, dit ASIL. L’invention et ses différentes applications seront mieux comprises à la lecture de la description qui suit et à l’examen des figures qui l’accompagnent. BREVE DESCRIPTION DES FIGURES Les figures sont présentées à titre indicatif et nullement limitatif de l’invention. illustre, de façon schématique, un véhicule selon un aspect non limitatif de l’invention. montre, de façon schématique, les étapes d’un procédé selon un aspect non limitatif de l’invention. DESCRIPTION DETAILLEE Sauf précision contraire, un même élément apparaissant sur des figures différentes présente une référence unique. La illustre de façon schématique un véhicule 1 automobile conforme à une mise en œuvre non limitative de l’invention. Dans cet exemple de réalisation, le véhicule 1 est un véhicule automobile équipé d’un moteur thermique 2. Le véhicule 1 comporte un calculateur 3, par exemple un calculateur moteur formé par un microprocesseur. Le calculateur 3 est muni d’un premier module de détection 4 d’un premier état de contact d’un contacteur de démarrage 5 et un deuxième module de détection 6 d’un deuxième état de contact du contacteur de démarrage 5. Le premier module de détection 4 est configuré pour exécuter des traitements de données du moteur thermique 2. Le deuxième module de détection 6 est, quant à lui, configuré pour contrôler les traitements de données exécutés par le premier module de détection 4. Le deuxième module de détection 6 est, par exemple, un module dit ASIL C (pour « Automotive System Integrity Level » de niveau C). Le contacteur de démarrage 5 peut être actionné au moyen d’une clé de démarrage. Lors d’une transition entre une position ouverte et une position fermée du contacteur de démarrage 5, un signal brut reflétant une information sur l’état de contact du contacteur de démarrage 5 est généré. A partir de ce signal brut, le calculateur 3 est configuré pour exécuter les étapes d’un procédé 100 de détection d’un état de contact du contacteur de démarrage 5 du véhicule 1 selon l’invention tel qu’illustré à la . Le procédé 100 comporte une étape 101 de recevoir le signal brut reflétant une information sur un état de contact du contacteur de démarrage 5. Selon un mode de réalisation non limitatif, le signal brut est un signal logique pouvant prendre la valeur de 0V ou 5V. Le même signal brut est reçu à la fois par le premier module de détection 4 et le deuxième module de détection 6. Ensuite, à partir de ce signal brut reçu, le premier module de détection 4 exécute une étape de filtrer 102 des rebonds du signal brut. Cette étape de filtrage permet d’éviter des fausses détections. Le premier module de détection 4 exécute une étape successive de déterminer 103 un premier état de contact du contacteur de démarrage 5 à partir du signal brut précédemment filtré. Selon un mode de réalisation non limitatif, le premier module de détection 4 exécute une étape successive de synchroniser 104 au moins deux coeurs (non illustrés) du calculateur 3. Ainsi, le premier état contact déterminé lors de l’étape 103 est transmis aux deux coeurs. Parallèlement aux étapes 102 à 104, le procédé 100 comporte une étape de déterminer 105, au moyen du deuxième module de détection 6, un deuxième état de contact du contacteur de démarrage 5 en fonction du signal brut reçu lors de l’étape 101. Lorsque le deuxième état de contact déterminé par le deuxième module de détection 6 est différent d’un deuxième état de contact précédemment déterminé par le deuxième module de détection 6, le procédé 100 comporte une étape, exécutée par le deuxième module de détection 6, de déclencher 106 un compteur de temps. Si le deuxième état de contact déterminé est différent d’un deuxième état de contact précédemment déterminé, cela traduit une transition d’un état fermé a un état ouvert, ou inversement, du contacteur de démarrage 5. Le temps comptabilisé par le compteur de temps est au moins égal au temps nécessaire au premier module de détection 4 pour déterminer le premier état de contact. Dans le cas présent, le temps comptabilisé par le compteur de temps est égal au temps nécessaire au premier module de détection 4 pour déterminer le premier état de contact et pour synchroniser les deux coeurs. Le temps nécessaire au premier module de détection 4 pour déterminer le premier état de contact et pour synchroniser les deux coeurs peut, par exemple, être compris entre 20 ms et 40 ms, typiquement 30 ms. Ainsi, le temps comptabilisé par le compteur de temps peut être de 30 ms. Lorsque le compteur de temps est expiré, le procédé 100 comporte une étape, exécutée par le calculateur 3, de comparer 107 le premier état de contact déterminé lors de l’étape 103 avec le deuxième état de contact déterminé lors de l’étape 105. Si les premier et deuxième états de contact déterminés sont différents, le procédé 100 comporte une étape de sélectionner 108 le deuxième état de contact déterminé par le deuxième module de détection 6 comme information sécuritaire. Une information reflétant un état de contact déterminée à partir d’un signal brut est plus robuste qu’une information déterminée à partir d’un signal filtré ayant subi des traitements logiciels. Les traitements logiciels peuvent effectivement générés des erreurs lors du traitement de données. Ainsi, grâce aux procédé selon l’invention, s’il y a une différence entre les premier et deuxième états de contact déterminés, les fonctions logicielles sécuritaires des calculateurs du véhicule 1 utiliserons le deuxième état de contact comme donnée d’entrée. Lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, le procédé 100 peut comporter une étape d’enregistrer 109 une information reflétant la différence dans une mémoire non-volatile du véhicule 1. Ainsi, lors d’un diagnostic du véhicule 1 réalisé par le service après-vente, celui-ci sera en mesure d’identifier la défaillance et y remédier si nécessaire, par exemple par une mise à jour du logiciel embarqué par le premier module de détection 4. En outre, selon une mise en œuvre non limitative, lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, le procédé 100 comporte une étape de réinitialiser 110 le calculateur 3. La réinitialisation du calculateur 3 peut permettre de remédier à un défaut de fonctionnement du logiciel embarqué par le premier module de détection 4. Néanmoins, si la réinitialisation ne remédie pas à ce défaut de fonctionnement malgré quelques réinitialisations du calculateur 3, il est inutile de poursuivre ces réinitialisations. Ainsi, lorsqu’une réinitialisation du calculateur 3 est effectuée, le procédé 100 comporte une étape de comptabiliser 111 ladite réinitialisation, l’étape de réinitialiser 110 le calculateur 3 étant interdite lorsque le nombre de réinitialisation atteint une valeur seuil, par exemple 2. Selon une mise en œuvre non limitative, si le premier état de contact et le deuxième état de contact déterminés sont identiques, le procédé 100 comporte une étape de sélectionner 112 le premier état de contact comme information sécuritaire. Dans ce cas, le deuxième état de contact permet de confirmer la véracité du premier état de contact déterminé. Procédé (100) de détection d’un état de contact d’un contacteur de démarrage (5) d’un véhicule (1) automobile, ledit véhicule (1) comportant un calculateur (3) muni d’un premier module de détection (4) d’un premier état de contact dudit contacteur de démarrage (5) et un deuxième module de détection (6) d’un deuxième état de contact dudit contacteur de démarrage (5), ledit procédé (100) comportant les étapes de : Recevoir (101) un signal brut reflétant une information sur un état de contact dudit contacteur de démarrage (5), ledit signal brut étant reçu par ledit premier module de détection (4) et ledit deuxième module de détection (6) ; Filtrer (102) des rebonds, au moyen dudit premier module de détection (4), dudit signal brut ; Déterminer (103), au moyen dudit premier module de détection (4), un premier état de contact dudit contacteur de démarrage (5) à partir dudit signal brut filtré ; Déterminer (105), au moyen dudit deuxième module de détection (4), un deuxième état de contact dudit contacteur de démarrage (5) à partir dudit signal brut reçu ; Lorsque ledit deuxième état de contact déterminé est différent d’un deuxième état de contact précédemment déterminé, déclencher (106) un compteur de temps ; Lorsque ledit compteur de temps est expiré, Comparer (107) ledit premier état de contact déterminé avec ledit deuxième état de contact déterminé ; Lorsque ledit premier état de contact et ledit deuxième état de contact déterminés sont différents, sélectionner (108) ledit deuxième état de contact déterminé comme information sécuritaire. Procédé (100) selon la revendication précédente, caractérisé en ce que lorsque le premier état de contact et le deuxième état de contact déterminés sont identiques, le procédé (100) comporte une étape de sélectionner (112) ledit premier état de contact comme information sécuritaire. Procédé (100) selon l’une quelconque des revendications précédentes, caractérisé en ce qu’il comporte une étape de synchroniser (104) au moins deux coeurs du calculateur (3) pour transmettre le premier état contact déterminé auxdits au moins deux coeurs, ladite étape de synchroniser (104) étant successive à l’étape de déterminer (103) un premier état de contact. Procédé (100) selon l’une quelconque des revendications précédentes, caractérisé en ce que le temps comptabilisé par le compteur de temps est au moins égal au temps nécessaire au premier module de détection (4) pour déterminer (103) le premier état de contact. Procédé (100) selon l’une quelconque des revendications précédentes, caractérisé en ce que lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, le procédé (100) comporte une étape d’enregistrer (109) une information reflétant ladite différence dans une mémoire non-volatile du véhicule (1). Procédé (100) selon l’une quelconque des revendications précédentes, caractérisé en ce que lorsque le premier état de contact et le deuxième état de contact déterminés sont différents, le procédé (100) comporte une étape de réinitialiser (110) le calculateur (3). Procédé (100) selon la revendication précédente, caractérisé en ce que lorsqu’une réinitialisation du calculateur (3) est effectuée, le procédé (100) comporte une étape de comptabiliser (111) ladite réinitialisation, l’étape de réinitialiser (110) le calculateur (3) étant interdite lorsque le nombre de réinitialisation atteint une valeur seuil. Procédé (100) selon l’une quelconque des revendications précédentes, caractérisé en ce que le signal brut reçu est un signal logique. Véhicule (1) automobile, caractérisé en ce qu’il comporte un calculateur (3) configuré pour exécuter les étapes du procédé (100) selon l’une quelconque des revendications précédentes. Véhicule (1) selon la revendication précédente, caractérisé en ce que le calculateur (3) comporte un premier module de détection (4) d’un premier état de contact d’un contacteur de démarrage (5) du véhicule (1) et un deuxième module de détection (6) d’un deuxième état de contact dudit contacteur de démarrage (5), ledit deuxième module de détection (6) étant un module de détection, dit ASIL.