Страница 71 из 81 ПерваяПервая ... 21616970717273 ... ПоследняяПоследняя
Показано с 701 по 710 из 810

Тема: Макросы в онлайн базе OWEN Logic

  1. #701

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Вот смотрю эту картинку:
    ...
    Мне всё понятно!

    А смотрю вашу писанину, мне вообще ничего не понятно, зачем Вы пишите, то что пишите, в смысле, что это проще? Это же не соответствует действительности!
    Я всё прекрасно понимаю, что Вы выражаете своё мнение или для Вас проще, тогда это нужно уточнять! Боюсь со мной многие согласятся!

    Вот мой вариант с разделителем между номерами входов в виде нолика и не переусердствуете с количеством максимумов, чтобы переменная(тип данных) не переполнялась.
    Вложение 62300
    И, вашу нижнюю(на картинке) функцию(с номерами максимумов) не нашёл, Вы, наверно забыли выложить.
    Боюсь про понятность ФБД в таких типах задач вы сильно преувеличиваете, но это моё мнение, и я не боюсь, что многие со мной согласятся.
    Сколько программных циклов занимает просмотр входных значений и передача результата на выход? Кстати в качестве генератора можно попробовать использовать элемент НЕ с обратной связью.

    Функция с номерами входов имеет тот-же код, с перестановкой местами Max и Count в заголовке. Жаль конечно, что ST в OL не поддерживает передачу параметров по ссылке (IN_OUT).

  2. #702
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,242

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    Боюсь про понятность ФБД в таких типах задач вы сильно преувеличиваете, но это моё мнение, и я не боюсь, что многие со мной согласятся.
    Сколько программных циклов занимает просмотр входных значений и передача результата на выход? Кстати в качестве генератора можно попробовать использовать элемент НЕ с обратной связью.

    Функция с номерами входов имеет тот-же код, с перестановкой местами Max и Count в заголовке. Жаль конечно, что ST в OL не поддерживает передачу параметров по ссылке (IN_OUT).
    Вы, что действительно не понимаете в чём разница? Я же написал "мне"! Если бы я этого не обозначил, боюсь моё утверждение стало бы неправдивым, как и ваше! Вы в принципе понимаете смысл Вами написанного? Даже если найдётся всего один человек во Вселенной, знакомый с ОЛ, но не знакомый с ST, то ваше утверждение будет неправдивым! Считайте меня этим человеком, этого достаточно!
    Последний раз редактировалось Сергей0308; 27.08.2022 в 13:28.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  3. #703

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Вы, что действительно не понимаете в чём разница? Я же написал "мне"! Если бы я этого не обозначил, боюсь моё утверждение стало бы неправдивым, как и ваше! Вы в принципе понимаете смысл Вами написанного? Даже если найдётся всего один человек во Вселенной, знакомый с ОЛ, но не знакомый с ST, то ваше утверждение будет неправдивым! Считайте меня этим человеком, этого достаточно!
    Да ладно, не заводитесь, это действительно было только моё личное мнение - я всегда использую FBD (а если точнее, то CFC), как язык основной программы - мне на нём проще сделать общую компоновку, он проще в отладке и при внесении изменений. Функциональные блоки (макросы, функции и т.п.) тоже на FBD. Но есть такие моменты, когда я сходу мог бы написать вариант решения на ST (или другом текстовом языке), но из-за отсутствия его поддержки в системе бывает трачу кучу времени на пляски с FBD.
    Вообще, возможность использовать разные языки при программировании ПЛК сильно облегчает жизнь, поэтому я, например, очень рад, что в OL появился хотя-бы такой вариант ST.

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

    По умолчанию

    Сергей0308 не важно вам или кому-то другому легче, но во многих вещах текстовый вариант кода будет многократно лаконичнее и меньше... Особенно если все потроха спрятаны от глаз прошивкой (ну или языком). Простой пример скажем копирование массива (В ОЛ нет их к сожалению но может со временем появятся)....

    Например в ST по указателям циклом, а если бы функционал был заложен в прошивку то как в языках Array.Copy(исходный, индекс, получатель, индекс, количество) а дальше прошивка занимается.
    Попробуйте в FBD например 4 байта перетрусить местами на новые места, а это могла быть всего одна строчка, если бы поддерживалось на уровне firmware прибора например...
    Ну или один квадратик без кучи FBD внутри....

    Ну еще пример проще. fSEL - раньше это был целый макрос, сейчас функция в прошивке.
    Последний раз редактировалось melky; 27.08.2022 в 14:36.

  5. #705
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,242

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Сергей0308 не важно вам или кому-то другому легче, но во многих вещах текстовый вариант кода будет многократно лаконичнее и меньше... Особенно если все потроха спрятаны от глаз прошивкой (ну или языком). Простой пример скажем копирование массива (В ОЛ нет их к сожалению но может со временем появятся)....

    Например в ST по указателям циклом, а если бы функционал был заложен в прошивку то как в языках Array.Copy(исходный, индекс, получатель, индекс, количество) а дальше прошивка занимается.
    Попробуйте в FBD например 4 байта перетрусить местами на новые места, а это могла быть всего одна строчка, если бы поддерживалось на уровне firmware прибора например...
    Ну или один квадратик без кучи FBD внутри....

    Ну еще пример проще. fSEL - раньше это был целый макрос, сейчас функция в прошивке.
    Вот Вам функцию, переставляет местами ворды в двойном слове:

    Перестановка слов.PNG

    Всё элементарно, до проще не бывает!
    Аналогично можно и байты в ворде переставить!
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Сергей0308 байты, а не слова, соответственно добавится еще FBD, вместо того, чтобы такие вещи добавить в прошивку ПР и FBD бы выглядел примерно так, на один вход подаем что надо, на второй вход к примеру "4321" и на выходе получим переставленное именно в этом порядке...

    Ну или в рамках ПР научить это делать галочками не только для мастера наконец, но и для слейва....

  7. #707
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,242

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Сергей0308 байты, а не слова, соответственно добавится еще FBD, вместо того, чтобы такие вещи добавить в прошивку ПР и FBD бы выглядел примерно так, на один вход подаем что надо, на второй вход к примеру "4321" и на выходе получим переставленное именно в этом порядке...

    Ну или в рамках ПР научить это делать галочками не только для мастера наконец, но и для слейва....
    Я же написал, хорошо повторюсь, в ворде переставить местами байты можно аналогично как на моей картинке, только измените константу для сдвига с "16" на "8", всё! Надеюсь как разбить двойное слово на два слова Вы сообразите?!
    Вот Вы говорите, что не пользуйтесь ПР от Овена, Вы купите и попользуйтесь и тогда, если будут какие вопросы и спросите, зачем выдумывать несуществующие проблемы, у ПР есть перестановка байт и слов и с этим у меня никогда проблем не возникало! Тем более я Вам нарисовал как переставить слова и байты!

    Перестановка байт в двух вордах двойного слова_2.PNG

    Перестановка байт в двух вордах двойного слова.PNG

    Перестановка байт в двух вордах двойного слова_4.PNG

    Даже так:

    Перестановка байт в двух вордах двойного слова_5.PNG

    https://disk.yandex.ru/d/J58fo9rg44EtNg
    Последний раз редактировалось Сергей0308; 18.09.2022 в 21:55.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Сергей0308 кто вам сказал, что я не пользуюсь ПР от Овена? я такого не говорил тем более один висит в котельной а другой на столе....

    Я про другое говорю, как бы просто это не выглядело на картинках, в ST и тем более в С это выглядит гораздо компактнее и некоторые вещи могли быть заложены в прошивку на уровне железа, а в базе это выглядело бы как обертка как тот же TON, TOF, AND, PUTBIT и так далее и занимало бы гораздо меньше места без необходимости выстраивать кучу элементов и создавать макросы на достаточно простые вещи...

    И пора бы Овену избавляться от хлама в виде счетчика например, в который нельзя записать уставку добавив в справку замену.
    Загрузите старую программу - оп-па, покраснел элемент - внизу - "Смотри туда-то как его заменить"...
    Надо освобождать прошивку от хлама, который оставлен для какой-то там совместимости, учитывая, что сама программа друг с другом фиг совместима вниз....

    з.ы. это просто мое мнение, может быть когда-нибудь дойдет до (цензура ) программеров...

  9. #709

    По умолчанию

    Вот разобрал и собрал, на регистры и байты, переставляй не хочу)))1Разбор и сбор Байт в целочисленном.jpg
    Байты конечно условные, но правильные, проверено.
    Даже можно в REAL переставлять, только сначала умножить на 10, 100, 1000 и конвертировать. Потом обратно, также.
    Но на ST это намного проще)

    ЗЫ Ну вот, пока рисовал, Сергей уже всё выложил)
    Последний раз редактировалось kondor3000; 27.08.2022 в 22:57.

  10. #710
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,242

    По умолчанию

    Да, десятки раз на форуме этот вопрос обсуждали, как разбить на байты и собрать обратно:

    Упаковка-распаковка_6_2.PNG

    Боюсь, даже медведь, если присутствовал на форуме, во всём бы разобрался!
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

Страница 71 из 81 ПерваяПервая ... 21616970717273 ... ПоследняяПоследняя

Похожие темы

  1. Универсальные макросы для OWEN Logic
    от rovki в разделе Среда программирования OWEN Logic
    Ответов: 827
    Последнее сообщение: 22.12.2023, 13:20
  2. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Среда программирования OWEN Logic
    Ответов: 404
    Последнее сообщение: 25.08.2020, 15:17
  3. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Программируемые реле
    Ответов: 401
    Последнее сообщение: 28.07.2016, 19:46
  4. ПО OWEN Logic !!!
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 3
    Последнее сообщение: 11.10.2011, 16:33
  5. OWEN Logic 1.2.0.14b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 40
    Последнее сообщение: 21.02.2011, 14:16

Ваши права

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