Что такое точное число? Математика оперирует натуральными числами, целыми, рациональными, вещественными, комплексными.
У треугольника со стороной a, площадь будет ,
что будет в точности равно площади квадрата со стороной .
И да, если у нас в наличии есть единичный отрезок, циркуль и линейка позволяющая проводить прямые (без делений), мы с помощью построений можем построить в точности такой квадрат.
"Засада" скорее всего связана с тем фактом, что переменная объявленная в глобальной таблице тегов, оказывается важнее локальной с таким же именем внутри FB - чтение и запись идёт в неё, отсюда и возможность изменить вроде бы локальную переменную в другом блоке. Это противоречит привычной картине с областями видимости локальных переменных в других языках программирования, но однажды именно подобное наблюдал в среде разработки под PLC Дельты. Подсказкой может быть, что переменная FB и глобальная разную подсветку имеют.
В начале статьи говорится, что на станке стояло УЦИ, а значит стояли линейки, и вот то что их убрали, и начали получать положение «расчетно» — по-моему ключевая ошибка в данной попытке модернизации.
Обычно всякие проблемы как раз из-за того, что стоят только энкодеры на валах двигателей, а линейки отсутствуют, но тут-то они были, и их убирают, а потом мужественно преодолевают свалившиеся проблемы.
UPD. Что-то я потерял множитель
, при подсчете площади треугольника.
Поэтому площадь треугольника:
Сторона квадрата:
Что такое точное число? Математика оперирует натуральными числами, целыми, рациональными, вещественными, комплексными.
У треугольника со стороной a, площадь будет
,
что будет в точности равно площади квадрата со стороной
.
И да, если у нас в наличии есть единичный отрезок, циркуль и линейка позволяющая проводить прямые (без делений), мы с помощью построений можем построить в точности такой квадрат.
"Засада" скорее всего связана с тем фактом, что переменная объявленная в глобальной таблице тегов, оказывается важнее локальной с таким же именем внутри FB - чтение и запись идёт в неё, отсюда и возможность изменить вроде бы локальную переменную в другом блоке. Это противоречит привычной картине с областями видимости локальных переменных в других языках программирования, но однажды именно подобное наблюдал в среде разработки под PLC Дельты. Подсказкой может быть, что переменная FB и глобальная разную подсветку имеют.
Обычно всякие проблемы как раз из-за того, что стоят только энкодеры на валах двигателей, а линейки отсутствуют, но тут-то они были, и их убирают, а потом мужественно преодолевают свалившиеся проблемы.