Страница 533 из 1044 ПерваяПервая ... 334334835235315325335345355435836331033 ... ПоследняяПоследняя
Показано с 5,321 по 5,330 из 10436

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

  1. #5321

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Блин, зачем здесь такая сложная функция, когда нужно проверить всего ОДНО условие x>=X0 ?
    Тут не только x>=x0 нужно проверить, а вычислить значение Y.

    Так должно заработать:

    (X:=-100500, Y:=Y1),
    (X:=X1, Y:=Y1),
    (X:=X0, Y:=Y0),
    (X:=X2, Y:=Y2),
    (X:=100500, Y:=Y2)

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

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Тут не только x>=x0 нужно проверить, а вычислить значение Y.

    Так должно заработать:

    (X:=-100500, Y:=Y1),
    (X:=X1, Y:=Y1),
    (X:=X0, Y:=Y0),
    (X:=X2, Y:=Y2),
    (X:=100500, Y:=Y2)
    Проще сделать совсем другую функцию
    Код:
    FUNCTION EDWARD : REAL
    VAR_INPUT
    	X0: REAL;
    	Y0: REAL;
    	X1: REAL;
    	Y1: REAL;
    	X2: REAL;
    	Y2: REAL;
    	x: REAL;
    END_VAR
    VAR
    	a: REAL;
    	b: REAL;
    	c: REAL;
    	d: REAL;
    END_VAR
    IF x < X1 THEN EDWARD:= Y1;
    ELSIF x > X2 THEN EDWARD:= Y2;
    ELSE
    	a:= X1;
    	b:=X0;
    	c:=Y1;
    	d:=Y0;
    	IF x >= X0 THEN
    	a:= X0;
    	b:=X2;
    	c:=Y0;
    	d:=Y2;
    	END_IF
    EDWARD:=d - (b - x) * (d - c) / (b - a);
    END_IF
    Вложение 26412 Вложение 26413

    ЗЫ.

    Если использовать функцию с таблицей, то достаточно задать только три точки
    (X:=X1, Y:=Y1),
    (X:=X0, Y:=Y0),
    (X:=X2, Y:=Y2),
    Потому, что в самой функции уже есть в самом начале:
    Код:
    (*Обрезание графика для крайних точек*)
    IF IN<=pt^[0].X THEN
    	MyGraf_p:=pt^[0].Y;
    ELSIF IN>=pt^[N-1].X THEN
    	MyGraf_p:=pt^[N-1].Y;
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    Функцию для Эдуарда можно даже упростить,
    учитывая, что это ФУНКЦИЯ, а не ФБ выбросил промежуточные переменные
    Код:
    FUNCTION EDWARD : REAL
    VAR_INPUT
    	X0: REAL;
    	Y0: REAL;
    	X1: REAL;
    	Y1: REAL;
    	X2: REAL;
    	Y2: REAL;
    	x: REAL;
    END_VAR
    VAR
    END_VAR
    IF x < X1 THEN EDWARD:= Y1;
    ELSIF x > X2 THEN EDWARD:= Y2;
    ELSE
    	IF x >= X0 THEN
    	X1:= X0;
    	X0:= X2;
    	Y1:= Y0;
    	Y0:= Y2;
    	END_IF
    EDWARD:=Y0 - (X0 - x) * (Y0 - Y1) / (X0 - X1);
    END_IF
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  4. #5324
    Пользователь Аватар для Эдуард_Н
    Регистрация
    22.09.2014
    Адрес
    Курган
    Сообщений
    1,612

    По умолчанию

    Спасибо, очень интересно. Будем изучать.

  5. #5325

    По умолчанию

    Какой по умолчанию интервал у PLC_PRG? ПЛК110

  6. #5326

    По умолчанию

    Здравствуйте.
    Помогите, пожалуйста.
    Codesys 3.5.7.4.
    Необходимо ввести уставку в окне проекта.
    Создаю элемент.>Конфигурация ввода>OnMouseClick>Конфигурация>Записать переменную>>
    Открывается окошко "Записать переменную".
    Только нет полей для задания переменной, поле "тип ввода" - урезанное, есть поля "мин", "макс", "заголовок диалога".
    Не могу понять где косяк.
    В примерах с сайта Овена в созданных элементах - все работает, при попытке создания нового элемента - такая же петрушка.
    Помогите разобраться или посоветуйте, как по другому вводить Real с панели.
    Спасибо

  7. #5327

    По умолчанию

    Вот эти две настройки проверьте:
    Вложение 26540

    Вложение 26541

  8. #5328

    По умолчанию

    Вложение 26547
    Вложение 26548
    А у меня вот так.
    Голову сломал.
    Или я дурак или лыжи не едут

  9. #5329
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,171

    По умолчанию

    Цитата Сообщение от Uran Посмотреть сообщение
    Вложение 26547
    Вложение 26548
    А у меня вот так.
    Голову сломал.
    Или я дурак или лыжи не едут
    Это ошибка локализации, в англоязычный версии такой проблемы нет.

    Вот соответствие номеров строк в этом меню и привязанного к ним типа ввода:

    1 - по умолчанию;
    2 - Ввод текста (для клавиатуры);
    3 - Ввод текста с ограничениями (для клавиатуры);
    4 - Keypad;
    5 - Numpad.

  10. #5330

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Это ошибка локализации, в англоязычный версии такой проблемы нет.

    Вот соответствие номеров строк в этом меню и привязанного к ним типа ввода:

    1 - по умолчанию;
    2 - Ввод текста (для клавиатуры);
    3 - Ввод текста с ограничениями (для клавиатуры);
    4 - Keypad;
    5 - Numpad.
    А планируется корректировка этих ошибок локализации? не удобно переключать языки, а чисто в английской работать тоже не для всех вариант.

Страница 533 из 1044 ПерваяПервая ... 334334835235315325335345355435836331033 ... ПоследняяПоследняя

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

Ваши права

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