Skip to content

danielhrisca/cmerg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cmerg

Python parser for CarMaker ERG files with Pandas dataframe export.

Use and Examples

Moslty these are notes for myself but hopefully someone else finds them useful.

Installation

This package is published on PyPI under the name cmerg.

Windows

> python -m pip install -U pip
> python -m pip install cmerg

Linux

$ python3 -m pip install -U pip
$ python3 -m pip install cmerg

Examples

Import the package folder.

import cmerg

Create ERG file object. (Using example file from repo)

log1 = cmerg.ERG('test-data/Test-Dataset-1_175937.erg')

List of the signals in the file.

log1.signals

Save the vehicle speed signal to a variable.

speed = log1.get('Vhcl.v')

Plot signal.

speed.plot()

Add signal to dataframe.

# New easy call to return a pandas dataframe.
df = log1.to_pd()
# Simple example of adding ERG data to pandas.
# TODO: Make 'toPd()' call
import cmerg
import pandas as pd
import numpy as np

log1 = cmerg.ERG('data-file.erg')

speed = log1.get('Vhcl.v')

t = np.array(speed.timestamps)
spd = np.array(speed.samples)

df = pd.DataFrame({'time':t, 'speed':spd})

Export ERG file to CarMaker compliant csv (e.g. for import using Import from File)

log1 = cmerg.ERG('data-file.erg')
log1.export_cm_csv("./target.csv")

# its also possible to export only quantities that matches a namespace:
log1.export_cm_csv("./target.csv", columns_filter=["Car_Road"])

# CM's Import from File cannot handle many digits well, therefore the exported values are rounded. The number of digits can be sepcified:
log1.export_cm_csv("./target.csv", columns_filter=["Car_Road"], digits=5)

About

Python parser for CarMaker ERG files

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages