Support officiel Megasquirt, Tech Edge WBO2, Tuner Pro, AutoSport Labs et Fenixecu 

  • Affichage valeur de pression sur le display

  • Support pour les afficheurs Tech Edge. Si vous avez un problème avec votre afficheur, ou une solution à un problème, c'est ici qu'il faut poster (LD02, LD02B, LA1, LX1...).
Support pour les afficheurs Tech Edge. Si vous avez un problème avec votre afficheur, ou une solution à un problème, c'est ici qu'il faut poster (LD02, LD02B, LA1, LX1...).
 #23  par sebgtx
 14 déc. 2008 19:41
Salut a tous,

voici une question qui en cache plusieurs. :lol:

donc, afin de ne pas poser la question en direct a manu, et d'en faire profiter les autres:

Comment afficher la pression collecteur sur le display.

je sais qu'il est possible d'afficher un %age, mais j'aimerais bien afficher une valeur plus simple.

y'a moyen de faire une conversion en fonction du voltage recuperer sur le capteur MAP? (0 à 5V)

Merci manu.
 #26  par YannGTT_IE
 18 déc. 2008 17:52
si tu prend x= tension en volt et y= pression absolue en bar pour un map 3bar absolue sa donne :
y= ((63.55932203389*x)+ 3.644067797) /100


jdois avoir aussi pour un 0/2bar je mettrai tout a lheure
 #28  par Manu
 19 déc. 2008 14:28
Bonjour,

Alors pour répondre à Seb, il est possible d'afficher une valeur de pression qui est une interpolation de la tension sur les afficheurs Tech Edge :D

Pour cela il y a 2 tables de conversion disponibles qui sont appelées "User Lookup Tables" d'une capacité de 65 dword. Ces tables permettent de transformer une information brute en une information pratique (ex : tension en pression).

Pour configurer ces tables il faut se servir de WbUtils. Un exemple de fichier de conversion :

Conversion pour un capteur GM 0-3B câblé sur l'entrée User 1 et affichage de la valeur en PSI sur la vue 2 de l'afficheur :
; GM 3bar MAP sensor
; for View 2 (user input 1)
; in PSI with fixed decimal point (2DP)
; ad02may08
;
#dconfig; go to config mode
s0307; offset to serial var 1: = User_1 : no 10b=>13b translation
s0801; View2 data source USR1
s0CAB; View2 : LUT2, 12.34 DP.
e017E91
e0180E8
e0182A4
e0184DE
e018618
e018861
e018A0F
e018C74
e018EDA
e019031
e019296
e0194ED
e01968D
e0198AA
e019A01
e019C58
e019EAF
e01A006
e01A25D
e01A4D1
e01A61A
e01A87F
e01AAD6
e01AC2D
e01AEA1
e01B0F8
e01B24F
e01B4A6
e01B6FD
e01B854
e01BAC8
e01BC1F
e01BE76
e01C0CD
e01C224
e01C498
e01C6EF
e01C847
e01CA9E
e01CC12
e01CE69
e01D0C0
e01D217
e01D46E
e01D6E2
e01D80D
e01DA39
e01DC81
e01DE9E
e01E0BB
e01E2D8
e01E4F5
e01E612
e01E82F
e01EA4C
e01EC69
e01EE86
e01F0A3
e01F2C0
e01F4DD
e01F6FA
e01F817
e01FA17
e01FC17
e01FE17
;==========
e017F00
e018100
e018301
e018501
e018702
e018902
e018B03
e018D03
e018F03
e019104
e019304
e019504
e019705
e019905
e019B06
e019D06
e019F06
e01A107
e01A307
e01A507
e01A708
e01A908
e01AB08
e01AD09
e01AF09
e01B109
e01B30A
e01B50A
e01B70A
e01B90B
e01BB0B
e01BD0C
e01BF0C
e01C10C
e01C30D
e01C50D
e01C70D
e01C90E
e01CB0E
e01CD0F
e01CF0F
e01D10F
e01D310
e01D510
e01D710
e01D911
e01DB11
e01DD11
e01DF11
e01E111
e01E311
e01E511
e01E712
e01E912
e01EB12
e01ED12
e01EF12
e01F112
e01F312
e01F512
e01F712
e01F913
e01FB13
e01FD13
e01FF13
#write
#emul; go to data mode
 #89  par OlivierGTT
 21 févr. 2009 17:27
Du nouveau sur le paramétrage des afficheurs TE ?

Seb tu as réussi à afficher la pression depuis le MAP sensor sur ton afficheur ?

En fait j'ai un soucis majeur et je pense que tout ceux qui se sont penché sur le paramétrage des afficheurs TE ont le même :
A aucun moment dans les docs TE, il n'est expliqué comment la correspondance est réalisée entre les données d'entrées et la table de conversion...

Si quelqu'un a une réponse sur ce point... J'ai parcouru le forum TE, mais pas de réponse. Et apparement Adam et Peter reste très discret sur ce sujet, puisque de nombreux posts sur cette question reste sans réponse.
 #94  par Manu
 23 févr. 2009 10:02
OlivierGTT a écrit : En fait j'ai un souci majeur et je pense que tout ceux qui se sont penché sur le paramétrage des afficheurs TE ont le même :
A aucun moment dans les docs TE, il n'est expliqué comment la correspondance est réalisée entre les données d'entrées et la table de conversion...

Si quelqu'un a une réponse sur ce point... J'ai parcouru le forum TE, mais pas de réponse. Et apparemment Adam et Peter restent très discret sur ce sujet, puisque de nombreux posts sur cette question restent sans réponses.
Salut Olivier,

En fait les tables de translation User ne sont que des tableaux à 2 dimensions qui affichent la valeur de la 2ème colonne lorsque la valeur lue est celle de la première. Ensuite, si ta valeur est comprise entre 2 cases, il y a une interpolation pour pouvoir afficher la résultante. Ainsi dans l'exemple que j'ai posté plus haut, tu peux voir que la table est divisée en 2 parties distinctes. La première qui est la partie "entrée" et la seconde qui est la partie "sortie". Il suffit de renseigner les valeurs qui t'intéressent pour obtenir la conversion.

Amicalement.
 #96  par sebgtx
 23 févr. 2009 10:34
Salut les gars,

Je vous avoue qu'avec mon déménagement, le boulot, ..., j'ai pas remis le biz en place.

Faut d'ailleurs que je reflash le LD02 que j'ai bricolé la derniere fois sur DCU, mais ca l'a plus mis en couille qu'autre chose.

effectivement, je cherche un moyen d'afficher cette info directement avec le LD02 et de configurer le LD02 comme je veux,

mais d'après manu, faut se le taper a la ligne de code, et je suis une grosse burne pour ça. c'est pas mon métier.

donc pour l'instant je le laisse comme ca, si quelqu'un se sent de nous donner l'astuce un jour je prendrais,

mais pour l'instant, j'ai pas le temps de m'y consacrer. et j'essaye de casser les couilles a personne pour ça! car je peux etre très relou parfois... ;)

@+ les gars.

P.S: j'ai pas le net en ce moment a la maison, soyez pas inquiets de pas me trouver sur msn! ;)
 #99  par OlivierGTT
 23 févr. 2009 13:49
Manu a écrit : Salut Olivier,

En fait les tables de translation User ne sont que des tableaux à 2 dimensions qui affichent la valeur de la 2ème colonne lorsque la valeur lue est celle de la première. Ensuite, si ta valeur est comprise entre 2 cases, il y a une interpolation pour pouvoir afficher la résultante. Ainsi dans l'exemple que j'ai posté plus haut, tu peux voir que la table est divisée en 2 parties distinctes. La première qui est la partie "entrée" et la seconde qui est la partie "sortie". Il suffit de renseigner les valeurs qui t'intéressent pour obtenir la conversion.

Amicalement.
Salut Manu,

J'ai passé pas mal de temps ce week end à essayer de déchiffrer tout ça, et je n'ai pas compris la même chose que toi (ou alors on le dit de manière très différentes).

Ce qui m'a longtemps bloqué pour comprendre la logique de rédaction des tables, c'est que je m'attendais à ce que l'on définisse x volt = Y (valeur à afficher).

Or à aucun moment dans les tables ne sont mentionnées les tensions d'entrées. En fait elles sont contenues implicitement dans les offset de tables.

Je m'explique : On sait que la table LUT 2 commence à l'offset 017e. On sait que l'on souhaite caractériser une tension de 5v, et que l'on à a dispositon 65 dwords.

Donc chaque dwords, correspond de manière implicte à travers son offset, à une tension d'entrée.

Autre subilité, les valeurs correspondantes sont codées à partir d'un bit de poid faible et d'un bit de poid fort.

Concrètement, si on analyse la table du map 3bar ci dessus.
La première ligne est e017E91 cette ligne correspond à ne tension de 0 volt et contient le bit de poid faible. Le bit de poid fort est contenu dans le mot juste après (donc offset 017F). On retrouve le mot avec cet offset en première position de la deuxième partie de la table soit : e017F00.

Le couple
e017E91,bit de poid faible,
e017F00, bit de poid fort
définit la valeur à renvoyer pour une tension de O v. Soit 0091 (hex) = 145 (dec),soit 1.45 PSI absolu en tenant compte de la position du séparateur décimal.

Le couple suivant :
e0180E8,
e018100,
définit de la même manière la valeur à renvoyer pour une tension de 5v*(1/64) = 0.078125 v, soit
00E8 (hex) = 232 (dec), soit une valeur de 2.32 PSIa en tenant compte du séparateur décimal.

Et ainsi de suite, pour les 63 valeurs restantes.

J'ai réalisé un petit fichier excel, dans lequel j'ai "disséqué" la table complète du map 3bar.
Je mettrai le fichier en ligne ce soir, je pense que c'est le meilleur moyen de visualiser la logique de rédaction d'une table.

Au passage, cette table ne me semble pas correcte pour un map 3 bar. Elle ne donne pas une réponse linéaire, et le dernier pas de tension nous donne une valeur correspondante de 48.87 PSIa, alors qu'en bonne logique un map 3 bar ne peut mesurer que jusqu'a 3bar a, soit environ 43.50 PSIa.

Voila j'ai essayé d'être le plus clair possible, Manu si tu vois des points à retoucher ou éclaircir, n'hésites pas,

Olivier
 #105  par Manu
 24 févr. 2009 10:01
Bonjour,

Alors je reviens sur ce que j'ai dit. Effectivement Olivier est dans le juste. La table est bien une division en 65 pas des 2 valeurs extrêmes en volt de signal traité. Il peut être différent du traditionnel 0-5V. Par exemple on peut faire une table pour taper du 1-4V si on veut.
Dans le cas d'un signal 0-5V, les pas de voltage sont de 0,078V.

Ensuite pour régler les valeurs on fait comme Olivier l'as dit.
L'adresse de la première table LUT 1 commence à 00FC et la seconde table commence à 017E

Sportivement
 #106  par OlivierGTT
 24 févr. 2009 10:43
Bonjour à tous,

a partir des infos que SebGTX m'a transmis sur la réponse du capteur MAP GM 0-2 bar, j'ai réalisé un ptit bout de code avec la table de conversion qui doit permettre d'afficher la pression en bar absolu, avec un format X.XXX. Donc à 1b de suralimentation, le display devrait afficher 2.000.

Si quelqu'un peut tester et faire un retour ;-).

Olivier
; GM 2bar MAP sensor
; for View 2 (user input 1)
; in Bar absolu with fixed decimal point (3DP)

#dconfig; go to config mode
s0307; offset to serial var 1: = User_1 : no 10b=>13b translation
s0801; View2 data source USR1
s0CBB; View2 : LUT2, 1.234 DP.
e017E17
e018037
e018256
e018476
e018696
e0188B5
e018AD5
e018CF4
e018E14
e019033
e019253
e019472
e019692
e0198B2
e019AD1
e019CF1
e019E10
e01A030
e01A24F
e01A46F
e01A68E
e01A8AE
e01AACE
e01ACED
e01AE0D
e01B02C
e01B24C
e01B46B
e01B68B
e01B8AA
e01BACA
e01BCEA
e01BE09
e01C029
e01C248
e01C468
e01C687
e01C8A7
e01CAC6
e01CCE6
e01CE06
e01D025
e01D245
e01D464
e01D684
e01D8A3
e01DAC3
e01DCE2
e01DE02
e01E022
e01E241
e01E461
e01E680
e01E8A0
e01EABF
e01ECDF
e01EEFE
e01F01E
e01F23E
e01F45D
e01F67D
e01F89C
e01FABC
e01FCDB
e01FEFB
;==========
e017F00
e018100
e018300
e018500
e018700
e018900
e018B00
e018D00
e018F01
e019101
e019301
e019501
e019701
e019901
e019B01
e019D01
e019F02
e01A102
e01A302
e01A502
e01A702
e01A902
e01AB02
e01AD02
e01AF03
e01B103
e01B303
e01B503
e01B703
e01B903
e01BB03
e01BD03
e01BF04
e01C104
e01C304
e01C504
e01C704
e01C904
e01CB04
e01CD04
e01CF05
e01D105
e01D305
e01D505
e01D705
e01D905
e01DB05
e01DD05
e01DF06
e01E106
e01E306
e01E506
e01E706
e01E906
e01EB06
e01ED06
e01EF06
e01F107
e01F307
e01F507
e01F707
e01F907
e01FB07
e01FD07
e01FF07
#write
#emul; go to data mode