Страница 152 из 1044 ПерваяПервая ... 52102142150151152153154162202252652 ... ПоследняяПоследняя
Показано с 1,511 по 1,520 из 10436

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

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

    По умолчанию

    Еще один ф.блок не из OSCAT-овской библиотеки, но тоже бесплатной -"HBMutilities"
    FUNCTION_BLOCK rand (* Generation of Pseudo Random Numbers *)
    VAR_INPUT
    initvalue: DWORD; (* Initialization value *)
    END_VAR
    VAR_OUTPUT
    SRND: DWORD; (* procedure works like rnd, but it is *)
    END_VAR (* improved [no util.lib, better input/ *)
    VAR (* output definition ... *)
    a1: BOOL;
    a2: BOOL;
    a5: BOOL;
    a18: BOOL;
    a0: BOOL;
    Q: DWORD;
    END_VAR


    F Q=0 THEN
    IF initvalue<>0 THEN
    Q:=initvalue;
    ELSE
    Q:=123456;
    END_IF;
    END_IF;
    a1:=Q.2;
    a2:=Q.3;
    a5:=Q.6;
    a18:=Q.18;
    a0:=(((a1 XOR a2) XOR a5) XOR a18);
    Q:=2*Q;
    Q.0:=a0;
    SRND:=Q;
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    А если значение полученное с помощью rand пропустить через эту функцию
    FUNCTION DW2REAL : REAL (* Conversion from DWORD into REAL. *)
    VAR_INPUT (* useful for the FB "rnd". pseudo *)
    DW: DWORD; (* random numbers can be transformed*)
    END_VAR (* to range [-1,...,+1] *)
    VAR
    END_VAR

    DW2REAL:=2*((DWORD_TO_REAL(DW)/4294967296)-0.5); (* That's it !*)
    То получится случайное число от -1 до +1
    Эта функция из той же библиотеки "HBMutilities"
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  3. #1513

    По умолчанию

    День добрый! В PLC Configuration для ПЛК63-М в адресном пространстве modbus создал 103 (0..102) пользовательские переменные типа FloatP с адресами 82..286 (с шагом 2). Теперь пытаюсь создать пользовательские переменные типа IntP соответственно c адресами 332..511, но рабочими из них оказываются только 14 (0..13) с последним адресом 346, поскольку далее, например, такой код программы Х := ADR(%QW3.14.0) выдает ошибку несуществующего адреса, тогда как Х := ADR(%QW3.13.0) не выдает. Не могли-бы прояснить в чем проблема? Заранее благодарен.

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

    По умолчанию

    Цитата Сообщение от agz Посмотреть сообщение
    День добрый! В PLC Configuration для ПЛК63-М в адресном пространстве modbus создал 103 (0..102) пользовательские переменные типа FloatP с адресами 82..286 (с шагом 2). Теперь пытаюсь создать пользовательские переменные типа IntP соответственно c адресами 332..511, но рабочими из них оказываются только 14 (0..13) с последним адресом 346, поскольку далее, например, такой код программы Х := ADR(%QW3.14.0) выдает ошибку несуществующего адреса, тогда как Х := ADR(%QW3.13.0) не выдает. Не могли-бы прояснить в чем проблема? Заранее благодарен.
    Можно вопрос, Вы как студент что то проектируете или на производстве выполняете какую то задачу, просто сто два реала это очень много, скорее всего ресурс исчерпан

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

    По умолчанию

    Подскажите пожалуйста, как для ПЛК63 в CodeSys выходы REAL превратить в BOOL, ведь насколько я понимаю, то для модификаций с релейными выходами или ключами они таковыми и должны быть ?
    таргет файл общий на L и M модификацию, без указания типов выбираемых выходов.

    Однако, BOOL_TO_REAL в проект, но не проще было тип выхода менять ?

    И может кто знает, как макрос сохранить в виде библиотеки ? а то пока научился только создавать свои библиотеки только из самого проекта. (переделал ППЗУ и двоичный шифратор от товарища rovki)
    для CodeSys, и заодно вопрос, есть возможность задавать параметры внутри библиотеки, или обязательно должны быть вынесены параметры в виде входов ?

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Однако, BOOL_TO_REAL в проект, но не проще было тип входа менять ?
    ну на эту тему очень много сказано техподдержкой
    Возьмите другой плк где чистые релейные выходы

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Подскажите пожалуйста, как для ПЛК63 в CodeSys выходы REAL превратить в BOOL, ведь насколько я понимаю, то для модификаций с релейными выходами или ключами они таковыми и должны быть ?
    таргет файл общий на L и M модификацию, без указания типов выбираемых выходов.

    Однако, BOOL_TO_REAL в проект, но не проще было тип входа менять ?
    Ни как.
    У ПЛК 63/73 аппаратный ШИМ на выходах, значит только REAL 0 и 1 для ОТКЛ. и ВКЛ. выхода
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    для CodeSys, и заодно вопрос, есть
    возможность задавать параметры
    внутри библиотеки, или
    обязательно должны быть
    вынесены параметры в виде
    входов ?
    вы с документацией ознакамливались. Зачем библиотека если макрос это обычное ПОУ блок или функция в зависимости нужно сохранять внутренние переменные

  9. #1519

    По умолчанию

    Подскажите как присвоить значения многомерному массиву
    например:
    mass: ARRAY [0..1] OF ARRAY[0..3] OF INT:=1,2,3,4,5,6,7,8;
    значения присваиваются только первому "ряду", то есть mass [1][0] :=0;

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

    По умолчанию

    capzap я пока не понял, как макросы эти сохранять, в любом виде, хоть макросом, хоть библиотекой.
    Тут больше наверное проблемы не знания обращений непосредственно с программой. Так же не получилось копировать из окна одной программы в окно другой. Может я делаю что-то не так, но ни комбинации клавиш не срабатывают, ни кнопки на панели команд

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

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

Ваши права

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