Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 24

Тема: Вопрос про математические функции

  1. #1

    По умолчанию Вопрос про математические функции

    Всем добрый вечер! Возник вопрос необходимости применения функции двоичного логарифма при создании проекта для ПЛК-110, но ни в одной библиотеке, включая oscat не нашел (только натуральный и десятичный в наличии). Подскажите, где можно достать?
    PS: Логарифмом хочу вытащить из прогрессии значений BYTE 1.2.4.8.16.32.64.128 соответственно значения 1.2.3.4.5.6.7.8 для задания по BOOL сигналам переменной типа WORD в свою очередь для построения модулируемого режима на управление котлом.
    Получается, что нужно мне получить данные типа WORD в диапазоне от 1 до 8, соответствующие 8 BOOL сигналам, выдаваемым в случае соответствия параметров требуемым значениям. 8 BOOL сигналов я уже получил, программа готова, теперь нужно по вызову каждого из них передавать на одну глобальную переменную 8 различных значений WORD.
    Может быть, есть и другие варианты решения этого вопроса, но я уже окончательно сломал голову.
    Последний раз редактировалось Arimon; 30.08.2018 в 01:02.

  2. #2
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,825

    По умолчанию

    Цитата Сообщение от Arimon Посмотреть сообщение
    Всем добрый вечер! Возник вопрос необходимости применения функции двоичного логарифма при создании проекта для ПЛК-110, но ни в одной библиотеке, включая oscat не нашел (только натуральный и десятичный в наличии). Подскажите, где можно достать?
    mimetex.png



    lb(x)= lg(x)/lg(2) =3,3219281*lg(x)

    lb(x)= ln(x)/ln(2) =1,442695*ln(x)
    Последний раз редактировалось petera; 30.08.2018 в 04:55.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  3. #3
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,225
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  4. #4

    По умолчанию

    Вы, скорее всего, не поняли, что мне нужно.
    Есть BOOL сигналы задающие режим управления в формате данных WORD. Эта переменная должна быть одна, изменяющая значение от 1 до 8 в зависимости от перехода в TRUE входов типа BOOL, а не множество.

  5. #5
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,225

    По умолчанию

    Цитата Сообщение от Arimon Посмотреть сообщение
    Вы, скорее всего, не поняли, что мне нужно.
    Есть BOOL сигналы задающие режим управления в формате данных WORD. Эта переменная должна быть одна, изменяющая значение от 1 до 8 в зависимости от перехода в TRUE входов типа BOOL, а не множество.
    я не реализацию предлагал, а направление, зачем формулы если можно логически все сделать, не получается сделать собственный дешифратор, не получается ДНФ, еще вариант
    iValue := BOOL_TO_INT(inValue.0) + 2* BOOL_TO_INT(inValue.1) и т.д.

    другой вариант, константный массив из элементов 1.2.4.8.16.32.64.128 и перебором через цикл находите индекс совпавшего элемента

    и еще множество вариантов не доходя до формул
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  6. #6

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    я не реализацию предлагал, а направление, зачем формулы если можно логически все сделать, не получается сделать собственный дешифратор, не получается ДНФ, еще вариант
    iValue := BOOL_TO_INT(inValue.0) + 2* BOOL_TO_INT(inValue.1) и т.д.

    другой вариант, константный массив из элементов 1.2.4.8.16.32.64.128 и перебором через цикл находите индекс совпавшего элемента

    и еще множество вариантов не доходя до формул
    Пока с трудом себе представляю как это будет выглядеть на cfc (на нём у меня реализован проект).

  7. #7

    По умолчанию

    А Вы точно умеете программировать на CFC?
    ФБ pack к вашим услугам.
    Последний раз редактировалось ASo; 30.08.2018 в 10:23.

  8. #8

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    еще вариант
    iValue := BOOL_TO_INT(inValue.0) + 2* BOOL_TO_INT(inValue.1) и т.д.
    В этом примере, опять же, не получается единой изменяющейся во времени переменной, только отдельно взятые числа 1.2.3.4.5.6.7.8. Так-то я бы уже давно сделал.
    По части массива. Создам массив констант и что я получу на выходе? Мне нужен в таком случае ФБ, имеющий на выходе порядковый номер совпавшей со входом константы. Таких ФБ я не нашел. Опять масло масляное получается. Не рабочий вариант.
    Последний раз редактировалось Arimon; 30.08.2018 в 10:46.

  9. #9

    По умолчанию

    Цитата Сообщение от ASo Посмотреть сообщение
    А Вы точно умеете программировать на CFC?
    ФБ decode к вашим услугам.
    Реализованных проектов у меня много, просто с такой задачей сталкиваюсь впервые. Автоматизация не моя основная специализация.

  10. #10

    По умолчанию

    Цитата Сообщение от ASo Посмотреть сообщение
    А Вы точно умеете программировать на CFC?
    ФБ pack к вашим услугам.
    Раз уж отредактировали сообщение, то попробуйте pack сами и увидите, что там на выходе получается экспонента или геометрическая прогрессия, а не порядковые номера в формате WORD (INT) как мне нужно.

Страница 1 из 3 123 ПоследняяПоследняя

Похожие темы

  1. Функции String
    от @ND в разделе СПК1хх
    Ответов: 9
    Последнее сообщение: 11.08.2015, 09:37
  2. Функции.
    от Jonikk в разделе Программируемые реле
    Ответов: 11
    Последнее сообщение: 13.09.2011, 18:57
  3. трм-138 мат.функции
    от мастер в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 14.07.2008, 07:47
  4. Функции
    от mettled в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 13.02.2008, 10:16

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •