[Ovmsdev] Custom metrics

Michael Balzer dexter at expeedo.de
Wed Nov 7 04:52:37 HKT 2018


Mark, Tamás,

I've prepared a more or less generalized array version of my Twizy battery chart (OvmsVehicleRenaultTwizy::WebBattMon) for you. Easier to collect the data from
actual arrays than separate metrics.

This ZIP…

https://dexters-web.de/f/ovms-dev/ovms.zip

…contains my local ovms web test/development folder. Unzip it into some local web server (needs to be run via http for javascript), then open the folder from a
browser. You should see an OVMS web UI lookalike.

Config → CellChart loads "cellchart.htm". The blue button generates and injects test data. Should look like this:



Assuming you'll add some min/max records as well I left that code including the reset button in there. If you can't provide that yet, you can simply set min &
max = act in the get_xxx_data functions. Other than that you should basically just need to change the metrics names.

To generate C/C++ syntax from the file, use the script bin/mksrc: "bin/mksrc cellchart.htm >cellchart.cpp". The chart init URL needs to be changed for the
production environment (see comment), and the test data generator can be removed. See OvmsVehicleRenaultTwizy::WebBattMon for reference.

Maybe I should add that stuff to the repository as well…

Regards,
Michael


Am 06.11.18 um 15:56 schrieb Mark Webb-Johnson:
> Nice. I just implemented this for Model S using your new metric type.
>
> 96 individual brick voltages for each of the bricks, plus two temperatures for each of the 16 modules.
>
> Works well.
>
>
>
>
> On 1 Nov 2018, at 5:58 PM, Michael Balzer <dexter at expeedo.de <mailto:dexter at expeedo.de>> wrote:
>
>> Tamás,
>>
>> I've been creating separate metrics for all cell values on the Twizy, but that only has 14 cells.
>>
>> We discussed this before, a better approach is introducing a new metric class for arrays. I have just done that for you, please pull.
>>
>> Usage example:
>>
>>     OvmsMetricVector<float>* vf = new OvmsMetricVector<float>("test.volts", SM_STALE_MIN, Volts);
>>     vf->SetElemValue(3, 1.23);
>>     vf->SetElemValue(17, 2.34);
>>     float myvals[3] = { 5.5, 6.6, 7.7 };
>>     vf->SetElemValues(10, 3, myvals);
>>
>> With this data set, you get:
>>
>>     OVMS# met lis test
>>     test.volts                               0,0,0,1.23,0,0,0,0,0,0,5.5,6.6,7.7,0,0,0,0,2.34V
>>
>> …and in the web framework:
>>
>>     metrics["test.volts"]
>>     (18) [0, 0, 0, 1.23, 0, 0, 0, 0, 0, 0, 5.5, 6.6, 7.7, 0, 0, 0, 0, 2.34]
>>     metrics["test.volts"][11]
>>     6.6
>>
>> See template definition in ovms_metrics.h for more.
>>
>> Regards,
>> Michael
>>
>>
>> Am 31.10.18 um 20:08 schrieb Tamás Kovács:
>>> I have a Peugeot iOn, and i wan't to create own metrics for battery temp (66 piece) and voltage (88 (old) or 80(new) piece) for all cell (and show on web
>>> interface), and i don't understand how can i create it. Now my data in array-s from can messages 6E1-6E4.
>>> My git fork: https://github.com/KommyKT/Open-Vehicle-Monitoring-System-3/tree/peugeot
>>> vehicle_mitsubishi
>>>
>>
>> -- 
>> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
>> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
>> _______________________________________________
>> OvmsDev mailing list
>> OvmsDev at lists.openvehicles.com <mailto:OvmsDev at lists.openvehicles.com>
>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
>
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.openvehicles.com
> http://lists.openvehicles.com/mailman/listinfo/ovmsdev

-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20181106/1de36fab/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: eoibkbnkbpofdlab.png
Type: image/png
Size: 43724 bytes
Desc: not available
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20181106/1de36fab/attachment-0002.png>


More information about the OvmsDev mailing list