我們的品牌

歡迎造訪施耐德電機全球網站

歡迎訪問我們的網站
        
我们今天能为您提供什么帮助?
How to make a rounding operation with an ION Arithmetic Module?

The arithmetic module only includes CEIL or FLOOR operations, no ROUND operation.
We can create one using an IF statement.

Let's say we want to round S1 to the closest integer. The function is:

IF(S1<(CEIL(S1)+FLOOR(S1))/2,FLOOR(S1),CEIL(S1))


How does it work?
Example: S1 = 12.7. The expected result for rounding is 13.

CEIL(S1)=13
FLOOR(S1)=12
(CEIL(S1)+FLOOR(S1))/2 = 12.5

A test is done: if S1 is lower than (CEIL(S1)+FLOOR(S1))/2, it will return FLOOR(S1). If not, it returns CEIL(S1).
In the example, the test "12.7 < 12.5" is false, so the function returns CEIL(12.7)=13.

What happens in the 12.5 case?
The function is still correct. "<" means "strictly lower than".
So the test "12.5 < 12.5" is technically False, the function returns CEIL(12.5)=13, which is the expected result.

More information:
IF(S1<(CEIL(S1)+FLOOR(S1))/2,FLOOR(S1),CEIL(S1)) contains exactly 48 characters, which is the limit for the arithmetic module in the meters (limit is 249 in the VIP).
So rounding the S1-S8 inputs is OK, but rounding (S1+S2) or S1/1000 requires an additional arithmetic module.
Check the ION Reference for more details.

施耐德電機Taiwan

Your browser is out of date and has known security issues.

It also may not display all features of this website or other websites.

Please upgrade your browser to access all of the features of this website.

Latest version for Google Chrome, Mozilla Firefox or Microsoft Edgeis recommended for optimal functionality.
Your browser is out of date and has known security issues.

It also may not display all features of this website or other websites.

Please upgrade your browser to access all of the features of this website.

Latest version for Google Chrome, Mozilla Firefox or Microsoft Edgeis recommended for optimal functionality.