Можно использовать арифметические операции с плавающей точкой для выполнения следующих математических операций, использующих два 32–битных числа с плавающей точкой в формате IEEE:

  • сложение
  • вычитание
  • умножение
  • деление

32-битные числа с плавающей точкой в формате IEEE принадлежат к типу данных, известному как REAL (вещественные).
Используя арифметику с плавающей точкой, Вы можете выполнять следующие операции с одним 32-битным числом с плавающей точкой в формате IEEE:

  • образование абсолютного значения (ABS) числа с плавающей точкой
  • образование натурального логарифма (LN) числа с плавающей точкой
  • образование квадрата (SQR) или квадратного корня (SQRT) числа с плавающей точкой
  • образование экспоненциального значения числа с плавающей точкой(EXP) по основанию e (= 2.7182...)
  • образование следующих тригонометрических функций угла, представленных в виде 32–битного числа с плавающей точкой:
    • образование синуса числа с плавающей точкой (SIN) и формирование арксинуса числа с плавающей точкой (ASIN)
    • образование косинуса числа с плавающей точкой (COS) и образование арккосинуса числа с плавающей точкой (ACOS)
    • образование тангенса числа с плавающей точкой (TAN) и образование котангенса числа с плавающей точкой (ATAN)

     

 

Сложение вещественных чисел

Сложить вещественные числа можно когда на входе EN состояние сигнала равно 1. Команда складывает входы IN1 и IN2. Результат может быть считан на выходе OUT. Если какой-либо из входов или результат не является числом с плавающей точкой, биты OV и OS устанавливаются в 1, а ENO устанавливается в 0.

Более подробно об оценке битов в слове состояния

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Первое слагаемое
IN2 REAL I, Q, M, D, L или константа Второе слагаемое
OUT REAL I, Q, M, D, L Результат сложения
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния операции сложение вещественных чисел для функционального плана

 

Вычитание вещественных чисел

Вычесть вещественные числа можно когда на входе EN состояние сигнала равно 1. Команда вычитает вход IN2 из IN1. Результат может быть считан на выходе OUT. Если какой-либо из входов или результат не является числом с плавающей точкой, биты OV и OS устанавливаются в 1, а ENO устанавливается в 0.

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Уменьшаемое
IN2 REAL I, Q, M, D, L или константа Вычитаемое
OUT REAL I, Q, M, D, L Результат вычитания
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния команды вычитания вещественных чисел для контроллеров SIMATIC

 

Умножение вещественных чисел

Команда умножает вход IN1 на IN2. Результат может быть считан на выходе OUT. Если какой-либо из входов или результат не является числом с плавающей точкой, биты OV и OS устанавливаются в 1, а ENO устанавливается в 0. Как и во всех предыдущих случаях чтобы команды была выполнена необходима деблокировка входа ( сигнал равен 1)

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Первый множитель
IN2 REAL I, Q, M, D, L или константа Второй множитель
OUT REAL I, Q, M, D, L Результат умножения
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния команды вычитания вещественных чисел для контроллеров SIMATIC

 

 

Деление вещественных чисел

Команда делит вход IN1 на IN2. Результат можно считать на выходе OUT. Если какой-либо из входов или результат не является числом с
плавающей точкой, биты OV и OS устанавливаются в 1, а ENO устанавливается в 0. Для активации команды необходимо выполнить деблокировку входа EN ( сигнал равен 1)

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Делимое
IN2 REAL I, Q, M, D, L или константа Делитель
OUT REAL I, Q, M, D, L Результат деления
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния деления вещественных чисел в функциональном плане

 

Анализ битов слова состояния в операциях с плавающей точкой

Команды арифметики с плавающей точкой влияют на следующие биты слова состояния:

  • CC1 и CC0
  • OV
  • OS

Тире (-) в таблице означает, что результат операции не влияет на этот бит.

Допустимый диапазон результата Биты слова состояния
Операция с числами с плавающей точкой (32 бита) CC1 CC0 OV OS
+0, -0 (ноль) 0 0 0
-3.402823E+38 < результат < -1.175494E-38 (отрицательное число) 0 1 0
+1.175494E-38 < результат < 3.402823E+38 (положительное число) 1 0 0

 

Недопустимый диапазон результата Биты слова состояния
Операция с числами с плавающей точкой (32 бита) CC1 CC0 OV OS
-1.175494E-38 < результат < - 1.401298E-45 (отрицательное число) ниже минимума 0 0 1 1
+1.401298E-45 < результат < +1.175494E-38 (положительное число) ниже минимума 0 0 1 1
+1.175494E-38 < результат < 3.402823E+38 (положительное число) 1 0 0
результат < -3.402823E+38 (отрицательное число) выше максимума 0 1 1 1
результат > 3.402823E+38 (положительное число) выше максимума 1 0 1 1
результат < -3.402823E+38 или результат > +3.402823E+38
не число с плавающей точкой
1 1 1 1

 

 

Образование абсолютного значения числа с плавающей точкой

С помощью команды Образовать абсолютное значение числа с плавающей точкой можно найти абсолютную величину числа с плавающей точкой.

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Абсолютное значение
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния оброзования абсолютного значения числа с плавающей точкой в функциональном плане

 

 

Образование квадрата (SQR) числа с плавающей точкой

Командой Образовать квадрат числа с плавающей точкой Вы можете возвести число с плавающей точкой в квадрат. Если вход IN или результат не является числом с плавающей точкой, то биты OV и OS устанавливаются в 1, а ENO устанавливается в 0.

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Квадрат числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния для контроллеров SIMATIC в функциональном плане

 

 

Образование квадратного корня (SQRT) из числа с плавающей точкой

Эта команда извлекает квадратный корень из числа с плавающей точкой.Команда возвращает положительный результат, если значение входного операнда больше 0. Если вход или результат не является числом с плавающей точкой, то биты OV и OS устанавливаются в 1, а ENO устанавливается в 0.

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Квадратный корень числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния для образования квадратного корня из числа с плавающей точкой

 

 

Образование натурального логарифма числа с плавающей
точкой

С помощью этой команды можно найти натуральный логарифм. Если вход или результат не является числом с плавающей точкой, то биты OV и OS устанавливаются в 1, а ENO устанавливается в 0.

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L натуральный логарифм
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния натурального логарифма для контроллеров SIMATIC

 

Образование экспоненциального значения числа с
плавающей точкой

С помощью этой команды можно найти экспоненциальное значение числа с плавающей точкой по основанию е (=2,71828...). Если вход или результат не является числом с плавающей точкой, то биты OV и OS устанавливаются в 1, а ENO устанавливается в 0.

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Экспоненциальное значение
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния экспоненты для контроллеров SIMATIC

 

 

Образование тригонометрических функций углов в виде чисел с плавающей точкой

С помощью следующих команд можно получить тригонометрические функции углов, представленные в виде 32-битных чисел с плавающей точкой в формате IEEE.

Команда Значение
SIN Образует синус числа с плавающей точкой, представляющего угол, выраженный в радианах.
ASIN Образует арксинус числа с плавающей точкой. Результат есть угол, выраженный в радианах. Значение находится в следующем диапазоне:
-π/2 ≤ арксинус ≤+ π/2    <font size="+2">&#960;</font>= 3.14...
COS Образует косинус числа с плавающей точкой, представляющего угол, выраженный в радианах.
ACOS Образует арккосинус числа с плавающей точкой. Результат есть угол, выраженный в радианах. Значение находится в следующем диапазоне:
0 ≤арккосинус ≤ + π
TAN Образует тангенс числа с плавающей точкой, представляющего угол, выраженный в радианах.
ATAN Образует арктангенс числа с плавающей точкой. Результат есть угол, выраженный в радианах. Значение находится в следующем диапазоне:
-π/2 ≤ арксинус ≤+ π/2

 

Синус

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Синус числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Арксинус

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Аркинус числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

 Косинус

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Косинус числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Арккосинус

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Арккосинус числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Тангенс

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Тангенс числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Арктангенс

Элемент FBD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L ,T, C Деблокировка входа
IN1 REAL I, Q, M, D, L или константа Число
OUT REAL I, Q, M, D, L Арктангенс числа
ENO BOOL I, Q, M, D, L Деблокировка выхода

Пример и биты слова состояния тригонометрических функий при программировании контроллеров

 

<--Предыдущая статья   Следующая статья -->



Rambler's Top100


Сделано djoni