-
AuthorPosts
-
-
May 11, 2021 at 12:45 pm #11709Eugenio BalamKeymaster
In certain situations it is not possible to extract the fuel level from the vehicle with the ECU and it is also not possible to pierce the tank to use the Technoton. In this case we can use the analog expander to read the resistive sensor that the vehicle brings. Normally this sensor delivers values between 0 and 5 volts, although with the analog expander we can read up to 28 volts.
1.- Characterize the analog fuel sensor:
We measure the voltage that it delivers to us at 0% capacity.
We measure the voltage that it delivers to us at 50% capacity.
We measure the voltage that it delivers to us at 100% capacity.It is important to convert volts to thousandths of a volt. We must capture each of these measurements for each tank that we want to monitor (Up to 4 tanks using the analog expander).
We are not limited to 3 relationships, we can capture more data for greater precision in measurements. Finally, we need to write down the tank tasting capacity in liters.
2.- Structure the information collected.
units_abbrev – Abbreviation of measurement units (l = liters in this case)
name – Name of the sensor that will appear in the tracking indicator.
tank_volume – Total tank capacity in liters
tank – Ratio between tank percentage and thousandths of a volt corresponding to that percentage
source – Pegasus field where the analog data comes from.Figure 1.- Left, minimal data. Right, higher data resolution.
3.- Upload the information to the vehicle using the API</p>
Using a tool like postman we will do the following PUT to this URL https://YourPegasusUrl.com/api/vehicles/YourVehicleIDWhere YourPegasusUrl.com is the url of your site and YourVehicleID is the vehicle identification number.
This is the complete payload:
{
“properties”: {
“$analog”: [
{
“units_abbrev”: “l”,
“name”: “Filtered Fuel Sensor 1”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”: {
“0”: 2500,
“50”: 3350,
“100”: 4200
}
},
“source”: “an_fdiff_in1_in2”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
},
{
“units_abbrev”: “l”,
“name”: “Filtered Fuel Sensor 2”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”: {
“0”: 2500,
“50”: 3350,
“100”: 4200
}
},
“source”: “an_fdiff_in3_in4”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
},
{
“units_abbrev”: “l”,
“name”: “Filtered Fuel Sensor 3”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”: {
“0”: 2500,
“50”: 3350,
“100”: 4200
}
},
“source”: “an_fdiff_in5_in6”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
},
{
“units_abbrev”: “l”,
“name”: “Filtered Fuel Sensor 4”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”: {
“0”: 2500,
“50”: 3350,
“100”: 4200
}
},
“source”: “an_fdiff_in7_in8”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
}
]
}
}Figure 2.- Using Postman to send data
4.- Done!!
It only takes Syrus to start reporting analog data for Pegasus to do the rest of the work.
Notes:
- The Syrus must have the analog expander enabled.
- In this example, each sensor uses 2 analog cables from the analog expander
- It is necessary to add the extended AW TAG for the values to be reported to Pegasus.
- In most cases, the vehicle’s analog sensor no longer receives voltage when the ignition is turned off. The sensor shows 0v -> 0% fuel. To prevent these fuel “leaks” from being displayed, the Syrus must be configured to only report analog values when the ignition is ON.
- This topic was modified 3 years, 6 months ago by Eugenio Balam. Reason: Format correction
- This topic was modified 3 years, 6 months ago by Eugenio Balam. Reason: Format correction
- This topic was modified 3 years, 6 months ago by Eugenio Balam. Reason: Note 4 added
-
May 11, 2021 at 2:04 pm #11715Eugenio BalamKeymaster
What if I don’t have an analog expander?
Can I do the same with Syrus 4 or a NON syrus device?If possible. There are other fields that can be used for this same purpose:
Although the following fields are specific to the analog expander, third-party equipment may use them if they have multiple analog inputs.
an_in1, an_in2, an_in3, an_in4, an_in5, an_in6, an_in7, an_in8
an_fdiff_in1_in2
an_fdiff_in3_in4
an_fdiff_in5_in6
an_fdiff_in7_in8
Fields used by Syrus 4
an_in1, an_in2, an_in3
ECU monitor analog sensor. More information in this post
ecu_fuel_levelSyrus 3 analog sensor model 3GBT-2481 and 3G-2480
adThis is a payload example used for Syrus 4:
{
“properties”: {
“$analog”: [
{
“units_abbrev”: “l”,
“name”: “Battery 1”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”: {
“0”: 3270,
“15”: 3710,
“30”: 3770,
“45”: 3820,
“60”: 3870,
“75”: 3980,
“90”: 4110,
“100”: 4200
}
},
“source”: “an_in1”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
},
{
“units_abbrev”: “l”,
“name”: “Battery 2”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”: {
“0”: 3270,
“15”: 3710,
“30”: 3770,
“45”: 3820,
“60”: 3870,
“75”: 3980,
“90”: 4110,
“100”: 4200
}
},
“source”: “an_in2”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
},
{
“units_abbrev”: “l”,
“name”: “Battery diff 3”,
“tank_volume”: 303,
“type”: “float”,
“filter”: {
“type”: “polynomial”,
“tank”:
{
“0”: 3270,
“15”: 3710,
“30”: 3770,
“45”: 3820,
“60”: 3870,
“75”: 3980,
“90”: 4110,
“100”: 4200
}
},
“source”: “an_in3”,
“sensor_type”: “fuel”,
“units”: “liters”,
“decimals”: 1
}
]
}
}- This reply was modified 3 years, 4 months ago by Eugenio Balam. Reason: Add more analog sources
-
May 25, 2021 at 5:53 am #11759Murali LingamParticipant
Hello Eugenio Balam,
Regards to Analog Expander, the existing fuel sender can send fuel value in 3 different ways, they are:
1. Resistve Value
2. Analog Volt based on Positive
3. Analog Volt based on Negative/Ground
Please confirm if Analog Expander can support all the above method.
FYI I have 2 Analog Expander but they can’t read the Resistive value. I can read the Resistive value using multimeter.
Regards,
Murali
-
June 10, 2021 at 11:53 am #11802Eugenio BalamKeymaster
Hello Murali Lingman,
The analog expander can NOT read resistive values, only voltage. This has inputs that you can combine to get a differential reading. We have a customer whose sensor delivers 1.5 volts at 100% and 6.7 volts at 0%. So far it has worked properly.
-
-
-
AuthorPosts
- You must be logged in to reply to this topic.