Страница 780 из 1041 ПерваяПервая ... 280680730770778779780781782790830880 ... ПоследняяПоследняя
Показано с 7,791 по 7,800 из 10404

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

  1. #7791
    Пользователь
    Регистрация
    31.07.2013
    Адрес
    Аркаим
    Сообщений
    1,033

    По умолчанию

    n1,n2,n3,n4,: BOOOL;
    Есть какие-то трудности сделать булевый массив?
    FOR i := 1 TO 4 DO
    IF DAT[it] <>0 THEN
    Это так задумано?

  2. #7792

    По умолчанию

    Извините опечатка.
    Вопрос то в том можно переменные n1, n2, n3, n4 выводить в зависимости от значения счетчика i ? Чтоб после перебора массива присвоить значение нужной переменной, если они например другого типа.
    В php например такое возможно. вот мне интересно а в codesys так можно?

  3. #7793
    Пользователь
    Регистрация
    31.07.2013
    Адрес
    Аркаим
    Сообщений
    1,033

    По умолчанию

    Про булевый массив я имел ввиду следующее:

    DAT: ARRAY [1..8] OF INT;
    N: ARRAY [1..4] OF BOOL;
    i:INT;
    ----------------
    FOR i := 1 TO 4 DO
    IF DAT[i] <>0 THEN
    N[i]:=TRUE;
    ELSE N[i]:=false; (*Обнуление делать либо здесь, либо в другом месте программы, но делать обязательно. Иначе N будет в TRUE всегда после первого срабатывания условия до перезагрузки ПЛК*)
    END_IF;

  4. #7794
    Пользователь
    Регистрация
    31.07.2013
    Адрес
    Аркаим
    Сообщений
    1,033

    По умолчанию

    Мож человеку и нужен триггер ?
    делать либо здесь, либо в другом месте программы, но делать обязательно.
    Хотя может и нужен несбрасываемый. У меня только в одном проекте была необходимость в несбрасываемом триггере.

  5. #7795

    По умолчанию Проблемище )))

    Здравствуйте!
    Проблема как у ZETs я опрашиваю модуль и заношу все данные в строку. Из строки данные выбираю структурой. Один тип данных REAL показывает погоду (ерунду).
    Пробовал описанными способами выше и на форуме ранее найденными способами.
    https://owen.ru/forum/archive/index.php/t-17912.html
    https://owen.ru/forum/showthread.php...028#post138028
    При этом температура целых чисел показывает нормально.
    Если опрашивать модуль "Real input module" то показания тоже нормальные.

    Короче я врезал дубаря. Прошу помощи. Если не сложно разъясните, может я что то не так делаю.

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

    По умолчанию

    Цитата Сообщение от Shade876 Посмотреть сообщение
    Здравствуйте!
    Проблема как у ZETs я опрашиваю модуль и заношу все данные в строку. Из строки данные выбираю структурой. Один тип данных REAL показывает погоду (ерунду).
    Пробовал описанными способами выше и на форуме ранее найденными способами.
    https://owen.ru/forum/archive/index.php/t-17912.html
    https://owen.ru/forum/showthread.php...028#post138028
    При этом температура целых чисел показывает нормально.
    Если опрашивать модуль "Real input module" то показания тоже нормальные.

    Короче я врезал дубаря. Прошу помощи. Если не сложно разъясните, может я что то не так делаю.
    Тута (String input/output) есть проблема
    Вложение 49379

    Дело в том, что при использовании String input модулей для группового чтения регистров есть магическая цифра 80!
    К сожалению, тема форума, где подробно обсуждалось использование String для группового чтения регистров, по непонятной причине была "прибита" модераторами.
    Так вот, оказывается, если в конфигурации всего ОДИН модуль String input, то количество байт в нем можно использовать до 249.
    Но если в конфигурации есть еще модули String input, как у Вас, то в действие вступает правило - не более 80 байт(40 регистров) в не последнем String
    На практике оказалось, что не зависимо от того, сколько указано в Amounth byte первого стринг с физическим адресом %QB6.1.0, физический адрес начала следующего стринга %QB6.2.0 отстоит от начала первого РОВНО на 80 байт.
    В следствие этого последние, в вашем случае 14 байт, первого стринга перекрываются первыми 14 байтами второго стринга
    Т.е. первые 14 байт второго стринга ПОСТОЯННО перезаписывают последние 14 байт первого стринга! А там для восьмого канала тип данных REAL показывает погоду

    Ну и "хвост" второго стринга с адресом %QB6.2.0 переписывается последующим стрингом с адресом %QB6.3.0
    и т.д.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    to Shade876
    Вопрос - почему у Вас в стрингах 94 байт?
    Если
    TYPE STRUCT_MVA :
    STRUCT
    pol_tocka :INT; (* регистр 0 *)
    ZAMERs :WORD; (* регистр 1 *)
    ERR :INT; (* регистр 2 *)
    chicl :INT; (* регистр 3 *)
    ZAMER :REAL; (* регистр 4-5 *)
    END_STRUCT
    END_TYPE
    т.е. один канал 6 регистров или 12 байт
    значит 8 каналов = 12*8= 96 байт
    А у Вас - 94?
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  8. #7798
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    2,317

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    .. есть магическая цифра 80.. если ... всего ОДИН модуль String input, то .. до 249 .... вступает правило - не более 80 байт(40 регистров) в не последнем String....
    Магия ? Правило ? ))) Вы ж человек с опытом. Назовите вещи своими именами - классический деццкий про..б от Овена. Причем регулярный. Просто позорище.

    Техподдержка ? Ау ! Это днище лехко воспроизводится именно как про..б.. И его классификация - классический деццкий.

  9. #7799

    По умолчанию

    Всем спасибо.
    Про string input я чесно сказать не знал.
    Сделаю отдельными запросами.
    А то пришлось 10 раз код писать / удалять. ((((

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

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Магия ? Правило ? ))) Вы ж человек с опытом. Назовите вещи своими именами - классический деццкий про..б от Овена. Причем регулярный. Просто позорище.

    Техподдержка ? Ау ! Это днище лехко воспроизводится именно как про..б.. И его классификация - классический деццкий.
    Проблема 80 для String обсуждалась где-то в 15 году.
    Вот ссылки на прибитые темы, где подробно обсуждался эти вопросы https://owen.ru/forum/showthread.php...l=1#post278924
    Вот что осталось по использованию String
    https://owen.ru/forum/showthread.php...l=1#post185176
    https://owen.ru/forum/showthread.php...l=1#post244022
    https://owen.ru/forum/showthread.php...l=1#post333593
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Страница 780 из 1041 ПерваяПервая ... 280680730770778779780781782790830880 ... ПоследняяПоследняя

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

Ваши права

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