Генератор случайных чисел на CFC

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


Нужно реализовать генератор случайных (псевдослучайных) чисел (ГСЧ) на языке программирования CFC, вырабатывающий случайные величины в диапазоне [0; 64].

Сам генератор случайных чисел реализуется по формуле:

Примерные значения для которых можно взять следующие: A=5, B=3, C=64;

Диапазон полученных чисел будет [0; C].

Функция «mod» возвращает остаток от деления. В качестве начального значения «y» возьмем число, полученное после преобразования времени из таймера TON и преобразованного в целочисленный тип стандартной функцией TIME_TO_INT.

Для удобства можно создать свой функциональный блок на языке FBD (рис.1). Входом будет служить время, получаемое из таймера TON, а на выходе будет генерироваться случайная величина. В качестве начального значения случайной величины будем брать время, приведенное к целочисленному типу.

Рис.1. Функциональный блок RANDOM

Далее разместим на рабочей области компонент таймер TON, пользовательский функциональный блок RANDOM, вход и выход, и соединим все как надо (рис.2).

Программа работает следующим образом: при появлении на входе IN таймера значения ИСТИНА, на его выходе ET (Time Exit) начнется отсчет времени в миллисекундах, который поступает на функциональный блок RANDOM, с выхода которого уже выходит наша случайная величина в диапазоне [0; 64].

Рис.2. Программа генерации случайного числа на CFC

Для визуализации работы ГСЧ можно использовать графические компоненты «Тренд» и «Прямоугольник». В компоненте «Тренд» нужно установить диапазон значений по вертикальной оси и переменную для отображения «PLC_PRG.Vihod», а также цвет линии и шаг вспомогательной сетки. Кроме того, можно сохранить сгенерированные случайные величины в отдельный файл «*.trd», если настроить в конфигурировании элемента «Тренд – Регистрация – История – Настройка».

В графическом компоненте «Прямоугольник» нужно установить переменную на ввод и переменную на изменение цвета «PLC_PRG.Knopka», а также выбрать обычный (серый) и тревожный (зеленый) цвета.

Результат работы программы показан ниже, на рис.3.

Рис.3. Визуализация работы ГСЧ

http://mc-plc.ru/codesys/generator-sluchaynih-chisel-na-cfc.htm


Источник: m.vk.com

Комментарии: