Title | Description | Date | Version | Related Documents |
catman Easy / AP / PostProcess | Software for data acquisition, visualization, analysis and reporting of measurement data for your PC or QuantumX/SomatXR Data Recorder. | 09/2023 | 5.6.2 | Release Notes |
Plugin for DIAdem / catman | This plugin allows you to open .bin files from HBM catman directly in DIAdem. | 07/2013 | 1.9.0 |
MQTT is an open publish-subscribe network protocol for machine-to-machine communication. The MQTT protocol defines two types of network entities: a broker and a number of clients.
An MQTT broker is a server that receives all messages from clients and then forwards the messages to the appropriate destination clients. An MQTT client is any device (controller, PC, server) running an MQTT library that connects to an MQTT broker over a network. catmanAP works as MQTT client and can provide data for other clients.
Enable the MQTT functionality in catmanAP via Options -> Program functions. In catmanEasy the functionality is not available. catman sends MQTT data to the MQTT broker after each catman read block. This means that the data is sent with about 10 Hz when - and only when - a data acquisition (DAQ job) is running.
Note: If you activate MQTT in a running DAQ project, you have to restart catman.
Start a new or an existing project in catman and go to the DAQ channels tab. In the right area of the Ribbon you will find the group MQTT if the option MQTT data streaming is active.
Configuring the MQTT data stream
The information is organized in a hierarchy of topics. Topics are quasi containers that can contain multiple messages (multiple channels of catman). The broker then distributes the information to all clients that have registered for the respective topic.
The structure of the MQTT topics is freely editable. That is, you can freely define the number of topics, their names, and the nesting of topics. Use topics to differentiate channels by sensor type or by location, or both.
catman's MQTT function offers three settings for configuring the data stream:
The type of information that catman can send over MQTT consists of channel data. You can send any channel in catman (hardware channel, time channel, calculation channel or auxiliary channel) via MQTT. The name of the parameter in MQTT is the channel name of catman.
In the topic settings you have the choice between the 3 standard MQTT service levels (Quality of Service, QoS):
0 - At most once: packets are sent without an acknowledgement of receipt.
1 - At least once: the sender receives an acknowledgement that the recipient has received the packet.
2 - Exactly once: the sender receives a double confirmation from the recipient.
Level 0 provides the least security, but is the fastest way to transmit data. In contrast, level 2 provides the best security, but is slower.
The Retained on option refers to MQTT Retained Messages. In this case, the broker caches and transmits the last value for the topic (rather than the entire history from the past). Retained messages are useful for a newly added client, as it immediately receives data from the MQTT broker, even if no (new) data was sent at the time of subscription.
To create a new topic, click on below the topic window. It will then be inserted as a subtopic of the currently selected topic. To rename the topic, click on it.
To add signals to a topic, highlight the topic and select one or more channels from the channel list at the bottom of the window. Select multiple channels as usual with SHIFT or CTRL. Then click (Add catman channel...) on the right side.
The channels assigned to each topic are displayed in the topic's channel list (Channels) on the right side of the window when you select the topic.
Click Apply topic settings before exiting the window.
The window allows you to add a calculation that will be sent as an additional MQTT signal in the selected topic. In doing so, no calculation is created in catman, the calculation exists only in the MQTT data stream. In the current version, only one FFT calculation is available.
Select a topic and access the advanced channel functions by clicking on under the topic channel list (Channels).
If you activate Publish only calculations, not the original values but only the calculations will be transmitted.
Use MQTT config to specify the MQTT broker and the options for the data transfers.
You can specify both an IP address, a computer or a server name in the IP address field. The Port is set automatically when you select the security mode, but you can change it.
The Client Identifier (Client Id) identifies each MQTT client that connects to an MQTT broker. The broker also uses the Client Id to determine the current status of the client. Therefore, this Id should be unique per client and broker.
Whether username and password are required depends on your MQTT broker.
The same applies to the Security mode. Different modes are supported in the current version. Each security mode uses a different port. Therefore, the port is automatically changed to the default port when you select a mode. However, brokers may use other ports, so check the broker you are using.
The Automatic reconnection on option allows you to reconnect if contact with the MQTT broker is lost. catman will then try to reconnect in the time specified in the Reconnecting time field. The default value is 5 seconds.
If desired, you can (temporarily) deactivate the MQTT data transmission. In this case, all settings (topics and channels) remain unchanged. Otherwise, the data is sent by catman after the start of a DAQ job and as long as it is running. No data is sent during the setup phase of a DAQ project or after the DAQ job has been stopped.
The Automatic reconnection on option allows you to reconnect if contact with the MQTT broker is lost. catman will then try to reconnect in the time specified in the Reconnecting time field. The default value is 5 seconds.
If desired, you can (temporarily) deactivate the MQTT data transmission. In this case, all settings (topics and channels) remain unchanged. Otherwise, the data is sent by catman after the start of a DAQ job and as long as it is running. No data is sent during the setup phase of a DAQ project or after the DAQ job has been stopped.
The additional settings allow you to specify the buffer (expressed in the number of data points) used to determine the moving average of the signal into the MQTT JSON array (see Appendix for more information).
As soon as data acquisition is running in catman, the MQTT group in the Visualization tab shows you the status of broker and data stream.
Broker and Transmit green: the connection to the MQTT broker has been made and data is being transmitted.
Broker green, Transmit yellow: the connection to the MQTT broker has been made, but no data is being transmitted (MQTT data transmission OFF in the options).
Broker red, Transmit yellow: the connection to the MQTT broker has failed, the transmitted data cannot reach its destination. Check the settings of the MQTT broker.
Both LEDs are yellow: the MQTT broker is visible, but a connection is not possible Check user and password as well as the security mode.
Both LEDs are red: data collection is not running, no connection has been established and no data is being sent.
You have several options to create alarms in catman. However, for use in MQTT you have to convert each alarm into a channel, because only channels are sent via MQTT.
This is the simplest method. Create a computation channel that packages the alarm into a channel that switches from the default value of zero to an alarm value.
To do this, call up the Edit computation window via New (DAQ channels tab, Computation channels group). Open the list box under Additional functions, select if(Condition,True,False) and click . Then replace the texts Condition, True and False.
In the above illustration, the formula creates a computation channel that takes the value 1 when the StaticStrain1 channel exceeds the limit of 1500. As long as the StaticStrain1 channel does not exceed this value, the calculation always results in 0.
You can also create a symmetrical calculation if you want to monitor minimum and maximum at the same time. To check a minimum and a maximum value separately, you must create two calculations.
Limits and events are a standard catman function that you can use to organise alarm and warning conditions and that gives you more flexibility than creating computation channels. The disadvantage of this method is that transmitting the results to an MQTT broker requires an auxiliary channel and some EasyScript. However, part of the script is already preconfigured and you will find the commands still missing for this function in this section.
Each limit of the type High level crossing or Low level crossing can use two levels:
1. Warning level
2. Alarm level
The warning level must be smaller (in absolute values) than the alarm level. Selecting alarm and/or warning levels allows you to set a double alarm when monitoring channels, with the first level triggered by the warning value and the second level triggered by the alarm value.
Based on the triggered warning or alarm values, you can take various actions. The lower tabs of the window provide many options for selecting actions to be taken when the warning/alarm values are met. This alarm definition is assigned by selecting the channel on the DAQ channels tab and suing Assign (Limit values/events group).
However, these actions are limited to catman. To be able to send a notification via MQTT, you have to create an auxiliary channel and transfer the warning or alarm messages to it via EasyScript.
Click on Auxiliary channel (Computation channels group) and give the channel a name.
Click Edit script code in the dialogue to call up the catman EasyScript Code Editor. Part of the code for filling the auxiliary channel with values is already written, you just need to add a few lines.
Insert after the line Dim Count As Integer:
Dim Status As Integer
Insert before the line For Count = 0 To SampleCount - 1:
EA_DAQ.GetLIVState("Channel name", N, Status)
Here, Channel name is the exact name of the channel. Be sure to enclose it in quotes as it is a string (text). N is the number of the limit assigned to the channel. 1 is the first, 2 the second, etc. Status is the name of the variable you added to the declaration section.
Then replace the line 'MVBuf(1) = ... with
MVBuf(Count) = Status
and close the Code Editor.
Make sure you select a reference channel for the time interval before clicking OK and creating the auxiliary channel. This will place the auxiliary channel in the correct sample rate group. We recommend taking the channel that is being monitored.
The following is a code example for monitoring the first limit value assigned to a channel called RL01B:
MXFS SI support (included in catman Easy)
Catman supports the new QuantumX-based optical measurement module MXFS SI optimized for monitoring applications with optical sensors.
You benefit from:
Get to know MXFS
With the new catman version the user can select which channels should be streamed via UDP
In analysis mode, 2nd and 4th order Butterworth filters can now also be selected under calculations
Data from catman can be sent token-encrypted via https to InfluxDB e.g. for visualization of measurement data
Simplified selection and parameterization of cameras
CAN signal information could either be imported from *.dbc or entered manually so far. Now, *.arxml according to the AUTOSAR standard 3 and 4 has been added as a further option. Furthermore, the ribbon menu of the sensor database has been optimised, and the option to update previously imported databases (*.dbc or *.arxml) with a newer version has been added.Extended import of CAN signal information.
Previously, QuantumX/SomatXR signals could be sent to an EtherCAT master via CX27 for test bench integration. It is now also possible to read signals directly from EtherCAT. This is set up via the software of the EtherCAT master and HBK’s MX wizard.
In many programs, CANraw data streams can be further processed in BLF format to decode the individual messages or signals. Therefore, the catman analysis mode now also offers the option to convert a single CANraw channel into a *.blf file.
Most HBK strain gauges now come with a QR code that contains the strain gauge data. With the help of a barcode scanner, these can now be read into catman’s sensor database, and the sensor information no longer has to be entered manually. The coefficients for the polynomial temperature compensation are also transferred automatically.
When setting up a measurement project, you can now display the bus load to determine whether the CANbus is working properly. The bus load per connector can be displayed or checked in the channel information as well as in the CAN configuration.
QuantumX and SomatXR modules have recently introduced advanced overload detection, including the sensor data. This feature is now also supported in catman and allows three setup modes to differentiate between channel and sensor overloads.
Since new navigation systems not only support GPS but often all globally active systems (Glonass, Beidou, Galileo, etc.), the term GPS has been renamed to GNNS as the general generic term. Furthermore, it is now also possible to display the number of satellites (0 to 12) as a signal to allow for the assessment of the reception quality.
catman 5.5.3 has two new stop triggers: either a certain time on defined weekdays, or at a specific time daily. Therefore, it is always possible to stop measurements at particular times to have access to a data file.
Besides major functional enhancements, there are also many small optimisations that are not obvious at first glance including, for example:
In conjunction with the QuantumX/SomatXR firmware 4.40, the selection of the offered sample rates can be limited. Only the set of channels corresponding to a defined sample rate group are offered for selection. This means that the user immediately sees which sample rates can be set and there is no attempt to unsuccessfully implement an unsupported sample rate.
catman can be used with the brand-new 8-connector optical measurement module MXFS based on QuantumX design. You benefit from:
As of catman version 5.4.2, catman Easy software packages are empowered with new functionalities. Benefit from the integration of optical interrogators, offline configuration, push notifications via an app and FTP server.
In addition, the catman software packages have been redefined. catman is now available in three editions: catman Easy, catman AP and catman PostProcess.
catman's improved workflow, when running an unattended mobile vehicle and monitoring application together with the CX22 data recorder, features inter alia:
catman Easy is the basic version which includes online and offline setup, online visualizations, and online maths as well as recording functionalities. catman Easy can be combined with two different add-on modules:
catman now allows for subsequently adding GPS devices to an existing project using "Additional functions/Add module/device".
catman AP adds powerful modules to the full catman Easy package, such as:
With catman's improved "analysis mode" you are now able to:
catman PostProcess offers various post-process tools to process, analyze and report your results, such as:
Wiring diagrams of HBM hardware are newly added in the 'Sensor Adaption' for each sensor, enabling an easy, convenient and fast connection of the used sensors to HBM hardware.
It is now possible to store data directly in two formats in parallel to facilitate the data export for users of multiple post-process tools. These data formats are available:
.bin, .st3, ASCII, EXCEL, TDMS, .dat (DIAdem), MDF3/4.1, RPCIII, UFF58, and nCode DAQ
Always stay up-to-date with the latest software version and download catman directly and quickly via the HBM web page. Just install catman on your computer and enter the licence key from the catman certificate, which will be sent to you by post.
As of catman version 5.4.2, we will eliminate the catman DVD cases to protect the environment.
Learn more about catman data acquisition software with our video tutorials, tech-notes, trainings and case studies.
Find all catman data acquisition software downloads from version 5.0.1 onwards in our download archive.