How do I read log files?

Questions, comments, and issues that aren't related to a specific product
Post Reply
User avatar
hebi_newbie
Posts: 34
Joined: Wed Oct 02, 2019 4:41 pm

How do I read log files?

Post by hebi_newbie » Tue Jun 29, 2021 5:20 pm

How can I load and read log files to find specific data at different times during the logged motion?

For example, if I have a log file that records motion for 20 seconds, how can I see the position data from start to 5 seconds?
User avatar
hebi_guru
Site Admin
Posts: 27
Joined: Tue Oct 01, 2019 2:50 pm

Re: How do I read log files?

Post by hebi_guru » Tue Jun 29, 2021 5:28 pm

The HEBI log files are in a binary format that saves all the information received from the actuator. It will generally be slightly different sizes even for runs of approximately the same duration.

Depending on your preference, there are several ways to access/view the data:
1) Scope (recent versions) - see below image.
You can load and view the log in Scope to quickly see the data. Note that you may need to define Custom Charts to view the quantities you desire here (see the "Custom Charts" section under http://docs.hebi.us/tools.html#monitoring-tab)
logging_in_scope.png
logging_in_scope.png (37.55 KiB) Viewed 611 times
2) MATLAB API
You can load the log file into MATLAB and view the data there; see http://docs.hebi.us/tools.html#matlab-logging. The "time" field of the returned log object provides time (in seconds).

3) Python and C++ API
You can also load the log file into C++ or Python. In these APIs, you have sequential access to data from the log, as they do not load the entire file into memory at once. You can iterate through the individual messages in the log file, and check the "time" variable on each one:
http://docs.hebi.us/tools.html#py-logging30
http://docs.hebi.us/tools.html#cpp-logging39

To retrieve the time from a GroupFeedback message in Python this is the receive_time field of GroupFeedback (http://docs.hebi.us/docs/python/2.0.0/h ... ceive_time), in C++ this is GroupFeedback::getTime() (http://docs.hebi.us/docs/cpp/cpp-3.1.1/ ... 7af78ca18c).

Hope this helps!
Post Reply