normal Analyzer on embedded PC continuos recording

  • albert
  • Avatar di albert Autore della discussione
23/02/2017 16:42 #755 da albert
Dear support,

we are going to use RS485 analyzer on an embedded PC to log datas.
This PC has a 32GB SSD and I wouldn't fill it in very few days.
Is it possible to set Analyzer to log datas only if Modbus errors happend?
It should be wonderful if it can log a minute or so before error and a a minute after that.

Thank you
Best regards
Di più
23/02/2017 16:44 #756 da marcom
Risposta da marcom al topic Analyzer on embedded PC continuos recording
Unfortunately this is not possible. The reason: For this the analyzer has not only to record all traffic but also to evaluate every Modbus telegram for error checking. Since Modbus errors can be very different (checksum errors, wrong request parameter and so on...) and additional some error check can be done only by analyzing the former sent telegrams too - it's very hard to realize such a feature. Especially since it has to happen in real-time.
Can you estimate the average data traffic? Baud rate? Number of Bus participants?

Maybe the 'Command Line API' (described in chapter 19 in the manual) provides a solution. The Command Line API allows you to send the recorded data through a network. And it already can split the records in smaller parts. You only need a 'hint' from the application that an error occurred to fetch the right record afterwards.

Best regards

Marcom S.r.l.
via della Metallurgia, 11
37139 - Verona (VR)
  • albert
  • Avatar di albert Autore della discussione
23/02/2017 16:45 #757 da albert
Risposta da albert al topic Analyzer on embedded PC continuos recording
I'm looking at user manual for msb_record command.

Do I have to create a script for windows in order to manage start/stop record and new file creation?
Do you have an already created script yopu can send me for this task?

Thank you
Best regards
Di più
23/02/2017 16:46 #758 da marcom
Risposta da marcom al topic Analyzer on embedded PC continuos recording
Dear Albert,

no, you don't need a script. You start the recording/splitting with a single command line like:
msb_record | msb_split -D -t3600

This line creates a new file every 3600 seconds. The argument -D defines a file name like 20170223_15h32m12s.msblog, which make it more easier to pick the right one afterwards. Without -D you will get files named like xaa.msblog, xab.msblog and so on.

You can even start the analyzer with in a paused state and send the start command by another program when a certain event occurs.
msb_record --paused | msb_split -D -t3600


For instance: Open a DOS/Command shell and input the command above. The command starts the analyzer (load the firmware if not already done) and then waits for the start trigger. To send the start command open another DOS/Command shell and input:
msb_record -r start

The parameter -r means 'remote'. To stop the recording (pausing again) send:
msb_record -r stop

The recording is ending with:
msb_record -r quit

Chapter 19.2 explains the details, especially with the remote control.

For simplifying I didn't set the connection parameters like baud rate, tapping. You can pass all these settings as program arguments or use a config file (chapter 19.6). I suggest to play around a little bit with the API to get an idea how it works.

Best regards

Marcom S.r.l.
via della Metallurgia, 11
37139 - Verona (VR)
Powered by Forum Kunena
Avviso
  • I prezzi sul sito sono IVA esclusa.