Execute Simple Calculations with This Formula on Ursalink Cloud
This article explains how and when to use a formula on Ursalink Cloud formula setting to execute calculations.
Download PDF: Execute Simple Calculations with This Formula on Ursalink Cloud
Introduction
Simply, a variable is any raw data within a channel in Ursalink Cloud. The final value is a variable that results from the standard-based computation of other variables within Ursalink Cloud.
This function is very useful to extend your application’s functionality, i.e if you develop a Soil Temperature and Moisture Sensor that reads the register value, then simple calculations are needed for the register value to get the accurate value in the end. Take soil temperature and moisture sensor in this kit as an example, it can calculate and convert temperature and humidity based on the following formulas:
Soil Temperature = x/10
Soil Humidity = x/100-20

The Soil Temperature and Moisture Sensor are key measure factors in indicating soil temperature and water content.
Soil Moisture Measure Range | 0 to 100%, ±2% (0% to 50%, 25°C) |
Soil Temperature Measure Range | -20 to 80°C, ±1°C (25°C) |
Response Time | <1s |
Power Supply | DC 12 to 24V |
Power Consumption | 0.6W DC 12V |
Output | RS485 |
Housing Material | ABS |
Size | 133*40mm |
Probe Length | 60 mm |
Cable Length | 3 meters |
Ingress Protection | IP68 |
- Create a Channel with Toolbox
Item | Description | Default |
Execution Interval (ms) | The execution interval between each command. Range: 10-1000. The default value is 50. | 50 |
Max Resp Time (ms) | Set the maximum response time that the Ursalink UC1152 waits for the response to the command. If the device does not get a response after the maximum response time, it’s determined that the command has timed out. Range: 10-1000. The default value is 500. | 500 |
Max Retry Times | Set the maximum retry times after it fails to read. Range: 0-5. The default value is 3. | 3 |
Channel ID | Assign the channel for the slave device. 8 channels selectable. | Null |
Name | Set the name to identify the remote channel. It cannot be blank. | Null |
Slave ID | Set Modbus slave ID. | Null |
Address | The starting address for reading. | Null |
Quantity | Set the number of digits to be read from the starting address. | Null |
Type | Read command. Options are “Coil”, “Discrete”, “Holding Register (INT16)”, “Input Register (INT16)”, “Holding Register (INT32)” and “Holding Register (Float)”. | Holding Register (INT16) |
Sign | To identify whether this channel is signed. Default: Unsigned. | Null |
Decimal Place | Used to indicate a decimal point in channel value. For example, the channel value is 1234, and Decimal Place is set as 2, then the actual value is 12.34. | Null |
- Create a Channel in Ursalink Cloud
- Enter the Formula According to the User Manual of the Sensor
If you wish to convert temperature from °C to °F, you need to implement the function below:
((9 / 5) * x) + 32 => ((9 / 5) * x/10) + 32