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

Тема: CodeSys 3.5 Опрос входов/ запись выходов...

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    05.07.2015
    Адрес
    Орехово-Зуево
    Сообщений
    125

    По умолчанию CodeSys 3.5 Опрос входов/ запись выходов...

    Всем привет!
    Думаю это вопрос больше для курилки )
    Вопрос для повышения уровня образованности.
    Обычно ( да что там - всегда), я делаю так: К входам/выходам привязываю битовые переменные, потом в программе я с входной что то делаю и записываю в выходную...
    А есть другой подход: в начале программы опрос всех входов по маске, потом маску разбираем на биты, используем, собираем в маску и записываем в выход...

    Какой подход более правильный ? Я понимаю что вопрос не однозначен, но все же...

    Заранее благодарен!

  2. #2

  3. #3
    Пользователь
    Регистрация
    05.07.2015
    Адрес
    Орехово-Зуево
    Сообщений
    125

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Добрый день.



    Каковы критерии "правильности"?
    Ну "правильность" с позиции оптимизации кода...
    С позиции логичности... скорости, красоты ))

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

    По умолчанию

    Цитата Сообщение от B.S.V Посмотреть сообщение
    Ну "правильность" с позиции оптимизации кода...
    С позиции логичности... скорости, красоты ))
    Красота - субъективное понятие.
    С точки зрения "скорости" - в среднестатическом проекте (с несколькими тысячами переменных) между двумя описанными в первом посте вариантами, вероятнее всего, просто не будет измеримой разницы.

  5. #5
    Пользователь
    Регистрация
    05.07.2015
    Адрес
    Орехово-Зуево
    Сообщений
    125

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Красота - субъективное понятие.
    С точки зрения "скорости" - в среднестатическом проекте (с несколькими тысячами переменных) между двумя описанными в первом посте вариантами, вероятнее всего, просто не будет измеримой разницы.
    Понял, благодарю. Получается оба подхода правильные. А дальше - кому то нравятся блондинки а кому то брюнетки...

  6. #6
    Пользователь
    Регистрация
    28.08.2008
    Адрес
    23..93..123
    Сообщений
    1,739

    По умолчанию

    Не считая того, что каждый отдельный BOOL в памяти занимает байт, то разницы особой нет.

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

    По умолчанию

    Sergey666 разве в таком варианте bool будет занимать байт, peremennaya.4 ? то есть не приводить постоянно к bool что и так можно использовать. Может не всегда так удобно, но часто ведь и не требуется, если под руками всегда есть подсказка за что отвечает тот или иной бит переменной. Например это входы - InputMask.x
    Последний раз редактировалось melky; 08.05.2024 в 09:00.

  8. #8

    По умолчанию

    Я тоже думал, что разницы особо никакой. Пока не столкнулся с выравниванием памяти в структурах (кстати, я до конца не уверен, что дело именно в этом). Я тоже привязывал BOOL-переменные. Не знаю как насчет дискретных входов-выходов ПЛК, но вот если привязывать BOOL-переменные (которые обычно упакованы в разные структуры) к Holding или Input-регистрам ПЛК, то начинаются всякие чудеса.
    https://owen.ru/forum/showthread.php?t=39084&page=2

  9. #9
    Пользователь
    Регистрация
    05.07.2015
    Адрес
    Орехово-Зуево
    Сообщений
    125

    По умолчанию

    Цитата Сообщение от Задумкин Сергей Посмотреть сообщение
    Я тоже думал, что разницы особо никакой. Пока не столкнулся с выравниванием памяти в структурах (кстати, я до конца не уверен, что дело именно в этом). Я тоже привязывал BOOL-переменные. Не знаю как насчет дискретных входов-выходов ПЛК, но вот если привязывать BOOL-переменные (которые обычно упакованы в разные структуры) к Holding или Input-регистрам ПЛК, то начинаются всякие чудеса.
    https://owen.ru/forum/showthread.php?t=39084&page=2
    О, я похоже по этим граблям иду ))

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

    По умолчанию

    Задумкин Сергей выравнивание вероятно не в структурах, как вы думаете, а именно в регистрах хранения, когда вы создаете slave. Там оно однозначно есть.
    dword переменный адрес будет кратен 2-м, float переменные адрес будет кратен 4-м (вроде или тоже 2-м, не помню.) в документации должно быть указано по программированию.

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

Похожие темы

  1. опрос входов и выходов МВА8 и МДВВ
    от niklud19511 в разделе Программируемые реле
    Ответов: 1
    Последнее сообщение: 17.12.2020, 11:01
  2. Ответов: 7
    Последнее сообщение: 01.08.2016, 10:53
  3. опрос входов и выходов
    от soi в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 15.03.2011, 17:55
  4. упаковка входов/выходов
    от Old_Lucky в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 26.04.2010, 16:06
  5. Ответов: 1
    Последнее сообщение: 21.03.2009, 10:09

Ваши права

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