Страница 992 из 1056 ПерваяПервая ... 49289294298299099199299399410021042 ... ПоследняяПоследняя
Показано с 9,911 по 9,920 из 10557

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

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

    По умолчанию

    Цитата Сообщение от Юрий В Посмотреть сообщение
    Хотел спросить, а возможно в ST вставить вычисление логорифмов.
    В кодесис есть стандартные математические функции LOG() и LN()
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  2. #9912
    Пользователь
    Регистрация
    04.09.2023
    Адрес
    г.Белебей РБ
    Сообщений
    4

    По умолчанию

    Я про Owen Logic, в функциях на ST нет вычисления Log(), или я что-то путаю.

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

    По умолчанию

    Цитата Сообщение от Юрий В Посмотреть сообщение
    Я про Owen Logic, в функциях на ST нет вычисления Log(), или я что-то путаю.
    причем здесь Owen Logic, Вы задаете вопрос в разделе "ПЛК (среда CoDeSys V2.3)"

    ЗЫ.
    Тут есть логарифмы https://owen.ru/forum/showthread.php?t=37203

    Код:
    function fLn: Real; //Натуральный логарифм
        var_input 
            X:real;
        end_var
    
    //PRG
    fLn:=0.6931472*fLb(x); //вызов функции "fLb"
    end_function
    Код:
    function fLb: Real; //Двоичный логарифм
        var_input 
            X:real;
        end_var
        var
            s:real:=0.0;
            a:real:=0.5;
            i:udint;
            b:real;
    
    
        end_var
    
    //PRG
    
    if X>0 then
        if X>=1 then
            b:=1;
            X:=X;
        else
            b:=-1;
            X:=1/X;
        end_if
    
    
        if x>2 then
            s:=udint_to_real( cd32(real_to_udint(x)));
            X:=X/ pow(2,s);
        end_if;
    
        for i:=0 to 16 do
            x:=x*x;
            if x>2 then
                x:=x/2;
                s:=s+a;
            end_if;
            a:=a*0.5;
        end_for
        fLb:=s*b;
    end_if
    
    end_function
    Если нужен десятичный логарифм, то
    Lg(x) = 0.43429 * fLn(x)
    или
    Lg(x) = 0,30103*fLb(x)
    Последний раз редактировалось petera; 14.09.2023 в 16:26.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  4. #9914
    Пользователь
    Регистрация
    04.09.2023
    Адрес
    г.Белебей РБ
    Сообщений
    4

    По умолчанию

    Я про Owen Logic, в функциях на ST нет вычисления Log(), или я что-то путаю.

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

    По умолчанию

    Цитата Сообщение от Юрий В Посмотреть сообщение
    Я про Owen Logic, в функциях на ST нет вычисления Log(), или я что-то путаю.
    Нужны самописные, см. пост выше
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  6. #9916
    Пользователь
    Регистрация
    04.09.2023
    Адрес
    г.Белебей РБ
    Сообщений
    4

    По умолчанию

    Спасибо, Вы мне очень помогли.

  7. #9917

    По умолчанию

    Дело в том что циклы увеличивал и второй квадратик потухал, это верно, но на работающем контроллере при запуски программы Онлайн/Старт "Power Status" и "Cpu is overloaded" не горит и никаких ошибок не возникает. Дело может быть в том что я неправильно загарузил проект в плк. Но делал я это по шаблону "Онлайн/Старт/Создание загрузочного проекта, так же Через "Онлайн/Старт/Создание загрузочного проекта/Загрузка исходных кодов, ну и само собой пробовал через "Онлайн/Записать файл в ПЛК". Добавлю что я чайник в Codesys и многие вещи мне пока не понятны.

  8. #9918

    По умолчанию

    Проект могу отправить, но дело в том что я снимал ПЛК, который "рабочий" и абсолютно те же действия проводил с ним и отключал от панели, но ошибки этой не появлялось. Так же фотографии имеются. Прикреплю так же скрины того же самого со второго не рабочего ПЛК(резервного)Скрин 6 Power status.pngСкрин 2 ошибка Err=6.pngСкрин 1 ПЛК рабочий.jpgСкрин 2 ПЛК рабочий err=0.jpg Хочу обратить внимание на то, что все делалось на одних и тех же условиях, тоесть с отключенной панелью, подключено через КС1 к компьютеру и в одном и том же проекте.
    P.s. Запущена программа через "Онлайн/Старт" в обоих случаях.

  9. #9919

    По умолчанию

    Цитата Сообщение от solarize Посмотреть сообщение
    Проект могу отправить, но дело в том что я снимал ПЛК, который "рабочий" и абсолютно те же действия проводил с ним и отключал от панели, но ошибки этой не появлялось. Так же фотографии имеются. Прикреплю так же скрины того же самого со второго не рабочего ПЛК(резервного) Хочу обратить внимание на то, что все делалось на одних и тех же условиях, тоесть с отключенной панелью, подключено через КС1 к компьютеру и в одном и том же проекте.
    P.s. Запущена программа через "Онлайн/Старт" в обоих случаях.
    На фото у вас Статистика не работает, потому, что кроме квадратиков, там нули везде (возможно включена эмуляция). А должна быть и температура в ПЛК и время работы и отдыха процессора. При чём цифры постоянно меняются.
    Либо нет старта, либо проблемы с ПЛК или программой.
    А вот на скрине, статистика работает, но маленький цикл ПЛК, надо увеличить время цикла, тогда потухнет второй квадратик.

    Выкладывайте программу.
    Последний раз редактировалось kondor3000; 18.09.2023 в 09:51.

  10. #9920

    По умолчанию

    Цитата Сообщение от solarize Посмотреть сообщение
    Дело в том что циклы увеличивал и второй квадратик потухал, это верно, но на работающем контроллере при запуски программы Онлайн/Старт "Power Status" и "Cpu is overloaded" не горит и никаких ошибок не возникает. Дело может быть в том что я неправильно загарузил проект в плк. Но делал я это по шаблону "Онлайн/Старт/Создание загрузочного проекта, так же Через "Онлайн/Старт/Создание загрузочного проекта/Загрузка исходных кодов, ну и само собой пробовал через "Онлайн/Записать файл в ПЛК". Добавлю что я чайник в Codesys и многие вещи мне пока не понятны.
    Для загрузки новой программы надо сделать "Онлайн/Старт/Создание загрузочного проекта", но при этом надо быть подключенным к ПЛК (выполнить Онлайн/Логин).
    После выполнения загрузки нужно отключить питание ПЛК на несколько секунд. После подачи питания ПЛК будет использовать обновлённую программу

Страница 992 из 1056 ПерваяПервая ... 49289294298299099199299399410021042 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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