Objects
The Objects section is designed for creating, viewing, and managing objects.
The central area displays the list of objects available to the user. For an end user, the list of objects visible to them is limited: it is either the objects they created in the system themselves, or those they are permitted to observe.

Adding a new object

The object edit dialog contains many settings, which are grouped using tabs. Below is information about each tab and explanations of the purpose of the main parameters.
Object properties
- General
This tab contains general information about the object, such as the object identifier, its name, comment (description), the numbers of the SIM cards installed in it, the state registration number, the model of the installed equipment, and the time zone configured in the device. It also reflects the data for visualizing the object in the system: the icon, track color, group membership, etc.

- Sensors
This tab is intended for sensor configuration of the object and contains a list of all previously added sensors, indicating the name, connection type, and other most important information. Obtaining full information about the sensors and editing them is available through the sensor configuration dialog. Sensor configuration is described in more detail below in the Sensor configuration section.

- Parameters
This tab is intended for setting various object parameters, such as: data retention time, the maximum object polling period, the maximum allowed speed, the maximum daily mileage, and the operating time. These settings are made in the General subsection.
In the Track filters subsection, track filtering is configured: setting the minimum movement speed, the minimum number of satellites, and the mileage calculation method — by odometer or satellites.
In the Parking parameters subsection, the minimum parking time and radius are defined. Here you also configure the accounting of parking by the Ignition sensor.
In the Fuel subsection, the parameters for fuel filtering are set: minimum idling time, minimum drain and minimum refueling, the refueling/draining rate (liters per minute), and detection of refuelings and drains while moving.

-
Driving style
-
Service log
This contains information in journal format for tracking the service maintenance of the object. It contains two types of fields: the date the record was entered and the arbitrary informational record itself. Dates and text records can be edited.

- Events
This tab is intended for managing the user notification rules that are applied to this object. Note that no events, except critical ones, will be generated for the object until at least one notification rule is associated with it. The list of events can be adjusted, or the events themselves edited.

- Odometer
This tab is intended for setting the current values of the odometer and the engine-hours counter. The data is set as of the beginning of the current day and is used as the initial values for further calculations. Later, the data can be adjusted by setting new values.

- Vehicle parameters
This tab contains reference technical information about the vehicle, such as make, vehicle model, fuel type, engine displacement and power, etc.

Sensor configuration

The sensor configuration dialog opens from the object's sensor settings dialog: to add a new sensor or edit an existing one. It contains three sections.
- General
Contains the main sensor parameters: its name, color, and units of measurement.

Other sensor parameters:
- Sensor type — specifies whether the sensor is digital or discrete.
- Input — intended for specifying the parameter that is the data source for the sensor, as well as for entering a formula or another expression that will be applied to the calculated sensor values. The parameter name depends on the navigation equipment used and its protocol. Data can be received via relay, and the parameter naming will depend on the relay protocol by which the data is transmitted to the system. The main list of parameters is given in the table below.
- Connected equipment — defines the role of the sensor: which calculations, reports and events use its readings. Each option is described below, in Connected equipment.
- Scale — the minimum and maximum sensor values. Values outside the scale will be discarded.
- Smoothing allows you to set the degree of averaging of the sensor graph points in the range from 1 to 30 units.
- Hidden — used to hide the sensor from view in the Tracking and History menus.
Connected equipment
The field tells the system what equipment is connected to the sensor. If it is left empty, the sensor only shows its values on charts and in the object information and raises alarms by its permitted interval (the Events tab of the sensor dialog). The selected option gives the sensor the following functions:
- Alarm button — a non-zero sensor value raises the "Alarm" event; when the value returns to 0, the alarm is cleared. The alarm is marked with an icon on the track in History and with the object icon in the object list. An alarm notification is sent if the "Alarm" event is enabled in the object's notification rules.
- Fuel level — the main fuel sensor of the object's tank. From sharp level changes the system detects refuelings and drains (using Min refueling, Min fuel drain and the other settings of the Fuel subsection of the Parameters tab) and calculates fuel consumption, including idle consumption. The readings are used in the fuel reports, the daily statistics, the object information and the object list. Refuelings and drains are marked on the chart and the track in History, and refueling and drain notifications are raised from them.
- Equipment fuel level — the fuel level in the tank of attached or auxiliary equipment. Refuelings and drains of such a sensor are detected separately and shown in History and in the Fuel consumption report. Operating time and hourly consumption in that report are calculated from the Equipment status sensor instead of the ignition. The sensor is not included in the daily statistics, the object information or the refueling and drain notifications.
- Fuel cumulative counter — a flow meter whose readings keep growing. Fuel consumption is the sum of the reading increments; a decrease (counter reset) is ignored. The sensor replaces the fuel level in the consumption calculation and also appears in the Counters/Flow meter report.
- Fuel instant counter — a flow meter where each reading is the fuel used since the previous reading. Consumption is the sum of all readings in the period. Otherwise it works like the fuel cumulative counter.
- Cumulative counter — a counter of any quantity other than fuel (pulses, liquid volume, etc.) whose readings keep growing. In the Counters/Flow meter report, work periods are the intervals where the readings grow, and the amount is the sum of the increments. The sensor is not used in fuel calculations.
- Instant counter — a counter where each reading is the amount since the previous reading. In the Counters/Flow meter report, work periods are the intervals with non-zero readings, and the amount is the sum of the readings.
- Equipment status — switching attached or auxiliary equipment on and off (a pump, a crane, an aerial platform, etc.). The equipment counts as on when the sensor value is not less than the To limit of the Permitted interval on the Events tab, or, if no limit is set, when the value is above zero. Work periods go into the equipment status report and the Operating time report (filter "Equipment"), and are shown as a band on the chart and as icons on the track in History. Equipment operating time is excluded from idling. If the object has no Ignition sensor, engine hours and idling are calculated from this sensor. No notifications are raised for equipment status.
- Ignition — the main engine sensor. It is used to calculate engine hours, engine operating time and idling (parking with the ignition on for longer than Min idle time), to build the Operating time, Idle operation and Vehicle downtime reports and the engine work report, and to calculate service tasks by engine hours. Ignition-on periods are used to determine which driver operated the object (see Driver below). If Detect parking by ignition is enabled on the Parameters tab, points with the ignition off count as parking. Parking with the engine running raises the "Idling" event. The ignition state is shown in the object list, in the object information and in the dispatcher panel.
- Driver — the code of the driver's key or tag. By the code the system determines which driver operated the object: the driver's name is shown in reports (the "Driver" column, the Driver report) and in the object information. If the code is not linked to any driver, the code itself is shown instead of the name.
- Seat belt — driving with the sensor off (seat belt not fastened) counts as a violation. Violations are marked on the track and counted in the Driving style report with the penalty set in the driver settings.
- Lights — driving with the sensor off (lights not on) counts as a violation. It is counted in the same way as Seat belt.
- Odometer — the vehicle's odometer readings. Once a day the system aligns the object's accumulated mileage with them, unless the mileage was set manually on the Odometer tab. This mileage is used in the "Odometer" report column, in service tasks by mileage and in the object information. If Measure mileage by on the Parameters tab is set to "Odometer", trip lengths and all of the object's mileage are calculated from this sensor instead of GPS.
- Track validation — a flag of coordinate validity. Points where the sensor value is 0 are excluded from the track: they are not shown on the map and are not counted in mileage, trips, parkings or reports.
If an object has several sensors with the same connected equipment option, calculations and reports that do not let you pick a sensor use the first of them in the object's sensor list. The exceptions: refuelings and drains in History are detected for each fuel level sensor separately, and equipment operating time is combined across all Equipment status sensors. Fuel level sensors and fuel counters count as one group here: if a fuel counter is above the fuel level sensor in the list, the counter becomes the main fuel sensor.
List of main parameters
| Name | Parameter | Sensor type |
|---|---|---|
| Speed | speed | Digital |
| Satellites | sats | Digital |
| External voltage | pwr_ext | Digital |
| Battery voltage | pwr_int | Digital |
| GSM signal | gsm | Digital |
| Altitude above sea level | altitude | Digital |
| Heading | course | Digital |
Specifying the sensor:
- UNIT — the sensor name
- value — the value of the current sensor
Events
Allows you to set the range of allowed sensor values. Values going outside the specified range will generate an alarm by the sensor.
For a numeric sensor:
For a discrete sensor, you can additionally specify text for the on and off states:

Calibration
The Calibration tab is used to configure the conversion of raw sensor data into user values. This function is required, for example, to convert fuel level sensor data from voltage to liters, or to convert units of measurement. A filled-in calibration table can be exported or imported from an MS Excel file. In the Description field you can set text names for the values.
- Allowed bounds — defines the range of raw sensor values that will be accepted for calculation.
- Formula — provides the ability to apply arithmetic, logical, and other expressions to the raw sensor values. Validation expressions and bit selection in the sensor parameter are also used here.

Main expressions
The most commonly used operations are listed below. The complete list of supported operators, functions and constants is given in Appendix 1.
The GALAKTIKA system implements support for arithmetic operations in the formulas of calculated sensors.
Mathematical (arithmetic) operators:
| Formula | Syntax | Description |
|---|---|---|
| ( ) | ( … ) | Left bracket, right bracket |
| + | a + b | Addition operator |
| - | a - b | Subtraction operator |
| *, х, Х | a*b, aхb, aХb | Multiplication operator |
| /, ÷ | a / b, a÷b | Division operator |
| % | n% | Percent operator |
| # | a # b | Remainder of division (mod) |
| ^ | a^b | Exponentiation |
Expression examples:
- freq3*30
- rs485fuel_level1*0.985
- value*[Ignition]
- pwr_ext/1000
The GALAKTIKA system implements support for conditional expressions (if-operators) in the formulas of calculated sensors.
Logical operators (conditional expressions):
| Formula | Syntax | Description |
|---|---|---|
| &, and | p&q, and(a1, ..., an) | Logical AND |
| |, or | p | q, or(a1, ..., an) | Logical OR |
| ⊽, not | p ⊽ q, not(х) | Logical NOR |
| ⊻ | p ⊻ q | Exclusive OR (XOR) |
| ⇒ | p ⇒ q | Implication (IMP) |
| ⇐ | p ⇐ q | Reverse implication (CIMP) |
| ⇔ | p ⇔ q | Logical equality (EQV) |
| ~ | ~p | Negation |
| '= | a = b | Equality |
| ≠ | a ≠ b | Inequality |
| < | a < b | Less than |
| ≤ | a ≤ b | Less than or equal |
| > | a > b | Greater than |
| ≥ | a ≥ b | Greater than or equal |
| if | if (condition, value_if_true, value_if_false) | If |
| if <Ternary function> | if(cond, expr-if-true, expr-if-false) | If — Ternary function |
Expression examples:
Parameter selection: or or or (priority decreasing): accel_max | brk_max | crn_max
Validation:
if(pwr_ext>13.6 && speed>1; adc2, 0)
If the voltage is above 13.6 and the speed is above 1 km/h, then apply adc2, otherwise =0.
if([Ignition] != 0, value, -1)
If the Ignition sensor is not equal to zero, apply the value of the current sensor, otherwise discard the value as out of range.
The GALAKTIKA system implements support for bitwise operations.
Bitwise operations:
| Formula | Syntax | Description |
|---|---|---|
| @~ | @~a | Bitwise unary inversion |
| @& | a @& b | Bitwise AND operation |
| @^ | a @^ b | Bitwise XOR operation |
| @| | a @| b | Bitwise OR operation |
| @<< | a @<< b | Left shift with sign preservation |
| @>> | a @>> b | Right shift with sign preservation |
Expression examples
Bit selection:
When you need to select a bit from a parameter, the following expression is used:
modules_st @& (1 @<< 7),
where:
- the number of the selected bit: 8
- the parameter name: modules_st
Other expression examples:
Validation:
value * [Ignition health]
Determining the total fuel level of two FLSs:
([FLS 1]+[FLS 2])
Determining the average fuel level across two FLSs:
([FLS 1]+[FLS 2])/2