Auto Voiture FAQ
Aide pour réparation d’auto et voiture d'occasion, neuf et usagé
Trouver une réponse de mécanique
Lecture OBD2 trop rapide
Question
J'écris un logiciel pour créer une application de télémétrie pour mes paramètres de lecture de VW Golf mk4 2001 à partir d'OBD2 à l'aide d'un câble compatible ELM327.
J'ai réussi jusqu'à présent. Le problème que j'ai maintenant, c'est que le logiciel est trop lent (3 - 4 valeurs par secondes). Certains des problèmes peuvent être dans mon logiciel, certains peuvent être une limitation du protocole OBD2 dans ma voiture, mais supposons que tout vient de mon logiciel et je vais l'améliorer au point que je pourrai lire comme aussi vite que possible.
J'ai lu dans la documentation du câble qui est interdit, pour une voiture utilisant les normes OBD2 antérieures à 2002, de lire des valeurs plus rapides que 100 millisecondes d'intervalle. Il dit que des problèmes peuvent survenir, mais ils n'entrent pas dans les détails.
Ma question est : est-ce que quelqu'un a une idée des types de problèmes qui peuvent survenir en lisant des informations rapides à partir de l'OBD2, et si ces problèmes, s'ils se produisent, peuvent être résolus en supprimant simplement & reconnecter les bornes de la batterie à la voiture ?
Réponse acceptée
la documentation ELM indique qu'il ne s'agit pas d'un problème de requête uniquement. Je vois à la page 31 de ce document que le problème était celui de la vitesse à laquelle les demandes J1850 arrivent au système OBD (il s'agit d'une conséquence de la mise à jour d'avril 2002 du norme J1979). Plus précisément, ils vous mettent en garde contre les requêtes à des vitesses supérieures à 100 millisecondes (également appelées 10 par seconde) mais ne fournissent aucune précision.
Il est important de comprendre que vous ne faites pas que lire passivement des données. Il y a une boucle asynchrone requête-réponse en cours. Autant que je sache, trop de requêtes trop rapides pourraient déborder la file d'attente des messages sortants sur le système OBD. Étant donné que cette situation ressemble beaucoup à un problème de débordement de tampon, il n'est pas impossible que vous puissiez endommager votre système OBD, voire tout votre ordinateur moteur.
C'est moi qui suis nerveux : c'est votre véhicule, bien sûr.
Maintenant, tout ça a déclaré : il semble que les outils de surveillance OBD soient disponibles gratuitement pour Ubuntu. La page de manuel pour obdgpslogger présente deux options intéressantes : p>
-a|--samplerate <samples-per-second>
Sample at most this many times a second. The software will sleep
temporarily at the end of each loop if appropriate. Keep in mind
there is an upper limit to samplerate, typically capped by I/O
on your serial port. Set this to zero to sample as fast as
possible. BE WARNED. Values greater than ten here are forbidden
for cars predating April 2002. If you think your car postdates
early 2002, and you'd like to sample as fast as possible, the -o
option may help
-o|--enable-optimisations
Enable certain elm327 optimisations. This will [usually] make
sampling faster [not a noticeable amount if you're only sampling
once a second], but makes it much easier to accidentally disobey
the standard if you're sampling as fast as possible.
D'après cette page, il semble que le meilleur taux réel que vous êtes susceptible d'atteindre résultera de :
obdgpslogger --samplerate 10 --enable-optimisations
Réponse populaire
Vous noterez que la plupart des outils logiciels OBD affichent rarement plus de 4 ou cinq sorties par vue. J'ai également rencontré des problèmes en essayant de lire trop de valeurs à la fois.
Par expérience, je suggère d'élaborer une stratégie pour interroger différentes valeurs. Par exemple, vous n'avez vraiment besoin de sonder
- La vitesse du véhicule que toutes les 2 secondes.
- RPM toutes les 1 secondes.
- Niveau de carburant toutes les 30 secondes.
- Tension de la batterie toutes les 5 secondes.
- Pression du collecteur d'admission, alias Pression de suralimentation toutes les 1 seconde.
- Température du liquide de refroidissement toutes les 10 secondes.
- Charge du moteur toutes les 1-2 secondes.
L'astuce consiste à sonder des choses qui changent plus souvent, plus souvent.
La prochaine fois que vous serez dans une voiture avec un ordinateur de bord, passez à l'affichage de la consommation instantanée et voyez à quelle fréquence la valeur change. Pour ma voiture, c'est chaque seconde. Je dirais qu'une seconde est une excellente référence car elle vous permet en fait de lire 9 PID à 100 ms chaque seconde sans tracas.