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

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

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

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

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

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

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

  2. #2

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

    По умолчанию

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

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

    По умолчанию

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

  5. #5

    По умолчанию

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

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

    По умолчанию

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

  7. #7

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Задумкин Сергей выравнивание вероятно не в структурах, как вы думаете, а именно в регистрах хранения, когда вы создаете slave. Там оно однозначно есть.
    А как оно работает в регистрах? Можно об этом где-то почитать?

  8. #8

    По умолчанию

    B.S.V Я использую работу с масками тогда, когда надо данные с модулей IO разбирать.
    И ещё использую маски для удобства работы с переменными: чтобы все IO-переменные были объявлены в одном списке.
    Мой опыт описан в этой моей статье (заголовки 4, 5). Не поленись, глянь, там много интересных приёмов: https://cs-cs.net/technologii-testir...a-plk#4_____io
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net

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

    По умолчанию

    Задумкин Сергей был документик по выравниванию в рэ по программированию CodeSys 2.3 еще для ПЛК1хх вроде. Там прямо табличка для понимания была.
    надо поискать в вопросах и ответах или в примерах на сайте. И если вы структуры натягиваете сразу на slave то так и получится с выравниванием.

    https://docs.owen.ru/product/plk160m...87#topic-62821 там про выравнивание.

    https://owen.ru/uploads/23/rp_plc100...-plc154_25.pdf - страница 60
    Последний раз редактировалось melky; 08.05.2024 в 09:47.

  10. #10

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    был документик по выравниванию в рэ по программированию CodeSys 2.3 еще для ПЛК1хх вроде
    Интересно, а для Codesys 3.5 и ПЛК210 это тоже все актуально?

Страница 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

Ваши права

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