Страница 33 из 66 ПерваяПервая ... 23313233343543 ... ПоследняяПоследняя
Показано с 321 по 330 из 658

Тема: Функциональные блоки на языке ST

  1. #321

    По умолчанию

    Сейчас работаем над доработкой документации на Owen Logic. Отразим эти моменты в следующих версиях справки.
    Инженер по продукту | ПР и Owen Logic
    email: k.korolev@owen.ru

  2. #322
    Пользователь
    Регистрация
    01.11.2022
    Адрес
    <7924127@mail.ru> Минск
    Сообщений
    508

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Т.е. Вы так прочли что не заметили в конструкции for оператор step?

    Вам не попадалось что переменные регистронезависимы, нельзя в коде объявить две переменные с одним именем но в разных регистрах?

    Вам не попадалось использование такого слова как АТ %?
    Мы про Owen Logic?

    Цитата Сообщение от Королёв Кирилл Посмотреть сообщение
    Сейчас работаем над доработкой документации на Owen Logic. Отразим эти моменты в следующих версиях справки.
    А вы имели CoDeSys, вероятно:

    Код:
    VAR_GLOBAL  (* старшим байтом вперёд как в ПР200 - поменять в <Universal ModBUS device> Trace_mode на Native *)
                (* DWORD не работает, только WORD 65536   иногда по ошибке таки прописывается, но не работает    *)
    	TACK, mSek, mSek0, mSek1, mSek2, mSek3, mSek4 :WORD;  (* многозадачность *)
    	St0int, St1int: WORD;     (* счёт внутри прерываний *)
        INTset:BOOL; (* рулить прерыванием *)   INTinit:BOOL:=TRUE;  (* Флаг для инициализации прерывания таймера при запуске основной программы *)
        Po,PoZ,  Pk,PkZ, Io,IoZ, Ik,IkZ           :REAL;
    
    
    (*In1   AT   %IX0.0   : BOOL; (* именование I/O как переменны х *)
      In2   AT   %IX0.1   : BOOL;
      In3   AT   %IX0.2   : BOOL; (* для ПЛК-160 - нет в ПЛК-110-30м *)
      In4   AT   %IX0.3   : BOOL; (* для ПЛК-160 - нет в ПЛК-110-30м *)  *)
    (* замена при прерывании *)    In01,In02,In03,In04 : BOOL:=0; (* дублирование при быстрых входах *)
                                   In1, In2, In3, In4  : BOOL:=0; (* дублирование при быстрых входах *)
    	vIn1,fIn1, vIn2,fIn2, vIn3,fIn3 :WORD:=0; (* Счёт для входов *)  In1_4: BYTE;    (* входная маска для SysPortIn(0); *)
    	Sek: WORD; (* секунды  программные *)        tSTOP, tSTART: BOOL; (* секундомер *)
    
    
      In5   AT   %IX1.0.0 : BOOL;  kAlarm  AT  %IX1.0.0: BOOL; (* дублировать входы *)
      In6   AT   %IX1.0.1 : BOOL;  kStop   AT  %IX1.0.1: BOOL;
      In7   AT   %IX1.0.2 : BOOL;  kStart  AT  %IX1.0.2: BOOL;
      In8   AT   %IX1.0.3 : BOOL;  kPause  AT  %IX1.0.3: BOOL;
      In9   AT   %IX1.0.4 : BOOL;
      In10  AT   %IX1.0.5 : BOOL;
      In11  AT   %IX1.0.6 : BOOL;
      In12  AT   %IX1.0.7 : BOOL;
      In13  AT   %IX1.1.0 : BOOL;
      In14  AT   %IX1.1.1 : BOOL;
      In15  AT   %IX1.1.2 : BOOL;
      In16  AT   %IX1.1.3 : BOOL;
    
    
      OUT1  AT   %QX2.0   : BOOL; (* релейные выходы *)
      OUT2  AT   %QX2.1   : BOOL;
      OUT3  AT   %QX2.2   : BOOL;
      OUT4  AT   %QX2.3   : BOOL;
      OUT5  AT   %QX3.0.0 : BOOL; (*  OutADC  AT  %QX3.0.0 : BOOL;  дублировать выходы *)
      OUT6  AT   %QX3.0.1 : BOOL; (*  Out500  AT  %QX3.0.1 : BOOL; *)
      OUT7  AT   %QX3.0.2 : BOOL; (*  Out380  AT  %QX3.0.2 : BOOL; *)
      OUT8  AT   %QX3.0.3 : BOOL;     OutZUM  AT  %QX3.0.3 : BOOL;
      OUT9  AT   %QX3.0.4 : BOOL; (*  Out2000 AT  %QX3.0.4 : BOOL; *)
      OUT10 AT   %QX3.0.5 : BOOL; (*  AlarmSV AT  %QX3.0.5 : BOOL; *)
      OUT11 AT   %QX3.0.6 : BOOL; (*  Out100  AT  %QX3.0.3 : BOOL; *)
      OUT12 AT   %QX3.0.7 : BOOL;
    
    
      InR  AT   %IX6.0   : BOOL;   ResKEY  AT  %IX6.0   : BOOL; (* ПЛПK110 тумблер Работа/СТОП/СБРОС *)
      ZUM0 AT   %QX7.0   : BOOL; (* утробный звук *)
    
    
      ADC1 AT   %IR4.0   : REAL; (* стр 80(87)  (старший байт переменной типа REAL) устанавливается специальное значение соответствующее исключительной ситуации *)
      ADC2 AT   %IR4.1   : REAL; (* результаты измерения заведомо не верны      –  0x F1 *)
      ADC3 AT   %IR4.2   : REAL; (*   результаты измерения не готовы            –  0x F6 *)
      ADC4 AT   %IR4.3   : REAL; (*   сигнал на входе больше возможного         –  0x FA *)
      ADC5 AT   %IR4.4   : REAL; (*   сигнал на входе меньше возможного         –  0x FB *)
      ADC6 AT   %IR4.5   : REAL; (*   перегрузка в канале измерения тока        –  0x FС *)
      ADC7 AT   %IR4.6   : REAL; (* обрыв датчика в канале измерения напряжения –  0x FD *)
      ADC8 AT   %IR4.7   : REAL;
      AdcIn AT  %IW4.8   :DWORD; (* AI real time (10ms) *)
    (*   Кроме  того,  в  переменной «Status» отображаются  следующие  отказы  модуля  аналогового ввода:
         ?  бит 2 – нет конфигурирования аналоговых входов;  ?  бит 5 – отказ FLASH-памяти dsPIC33;
         ?  биты 8...11 – отказы автокалибровки аналоговых входов ComI, RefI, ComU, RefU.   *)
      DAC1 AT   %QR5.0   : REAL; (* с периодом 50 мс выводятся в ЦАП *)
      DAC2 AT   %QR5.1   : REAL;
      DAC3 AT   %QR5.2   : REAL;
      DAC4 AT   %QR5.3   : REAL;
    
    
      (* --- удалённое управление ПР200 4 шт ---      сетевые переменные *)
      (* объявить только в глобальных невозможно - как группы объявлять? *)
      (* ресурсы > глобальные переменные (задать имя) > свойства объекта > связать с файлом (задать имя) > экспортировать *)
    
    
      ADCa1  AT %QD8.1.0.0   :REAL; (* АЦП1 первый ПР200 512 0x03 *)
      ADCb1  AT %QD8.1.1.0   :REAL; (* АЦП2 первый ПР200 514 0x03 *)
      ADCc1  AT %QD8.1.2.0   :REAL; (* АЦП3 первый ПР200 516 0x03 *)
      ADC4P1 AT %QD8.1.3.0   :REAL; (* АЦП3 первый ПР200 518 0x03 *)
    
    
     Inp1P1 AT  %QW8.1.18.0  :WORD; (* ПР200-1 вход 1 registet 534 *)
     Inp2P1 AT  %QW8.1.19.0  :WORD; (* ПР200-1 вход 2 registet 535 *)
     Inp3P1 AT  %QW8.1.20.0  :WORD; (* ПР200-1 вход 3 registet 536 *)
     Inp4P1 AT  %QW8.1.21.0  :WORD; (* ПР200-1 вход 4 registet 537 *)
     Inp5P1 AT  %QW8.1.22.0  :WORD; (* ПР200-1 вход 5 registet 538 *)
     Inp6P1 AT  %QW8.1.23.0  :WORD; (* ПР200-1 вход 6 registet 539 *)
     Inp7P1 AT  %QW8.1.24.0  :WORD; (* ПР200-1 вход 7 registet 540 *)
     Inp8P1 AT  %QW8.1.25.0  :WORD; (* ПР200-1 вход 8 registet 541 *)
    
    
     Out1P1 AT  %QW8.1.4.0   :WORD; (* ПР200-1 вых 1 registet 520 0x06 *)
     Out2P1 AT  %QW8.1.5.0   :WORD; (* ПР200-1 вых 2 registet 521 *)
     Out3P1 AT  %QW8.1.6.0   :WORD; (* ПР200-1 вых 3 registet 522 *)
     Out4P1 AT  %QW8.1.7.0   :WORD; (* ПР200-1 вых 4 registet 523 *)
     Out5P1 AT  %QW8.1.8.0   :WORD; (* ПР200-1 вых 5 registet 524 *)
     Out6P1 AT  %QW8.1.9.0   :WORD; (* ПР200-1 вых 6 registet 525 *)
     Out7P1 AT  %QW8.1.10.0  :WORD; (* ПР200-1 вых 7 registet 526 *)
     Out8P1 AT  %QW8.1.11.0  :WORD; (* ПР200-1 вых 8 registet 527 *)
    
    
     OutSVz1 AT %QW8.1.12.0  :WORD; (* ПР200-1 вых SVz  registet 528 зелёный *)
     OutSVk1 AT %QW8.1.13.0  :WORD; (* ПР200-1 вых SVk  registet 529 красный *)
    
    
     OutK1P1 AT %QW8.1.14.0  :WORD; (* ПР200-1 вых K1 registet 530  открытый колектор *)
     OutK2P1 AT %QW8.1.15.0  :WORD; (* ПР200-1 вых K2 registet 531  открытый колектор *)
     OutK3P1 AT %QW8.1.16.0  :WORD; (* ПР200-1 вых K3 registet 532  открытый колектор *)
     OutK4P1 AT %QW8.1.17.0  :WORD; (* ПР200-1 вых K4 registet 533  открытый колектор *)
    
    
    
    
    (* fAIR    AT %QB10.1.0   :STRING;
       fNOMER  AT %QD10.2.0   :REAL;
       fITOG   AT %QB10.3.0   :STRING;
       fFIO    AT %QB10.13.0  :STRING:='$20';  *)
    
    
    END_VAR
    Последний раз редактировалось ПавелП; 14.11.2023 в 11:50.

  3. #323
    Пользователь
    Регистрация
    01.11.2022
    Адрес
    <7924127@mail.ru> Минск
    Сообщений
    508

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Да это всё понятно. Мы не о том, а именно о слове step. Человек, мало занимающийся программированием откуда узнаёт о таком? Могли бы в документации указать список зарезервированных слов, которые нельзя применять, и всё.
    Это настолько отличается от "нормального программирования", что только проходя по граблям можно выяснить насколько...

  4. #324
    Пользователь
    Регистрация
    08.02.2020
    Адрес
    Ставрополь
    Сообщений
    228

    По умолчанию

    > Могли бы в документации указать список зарезервированных слов

    Сообщение об ошибке надо сделать более информативным, что-то наподобие "XXX не может быть использовано в качестве имени переменной".

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

    По умолчанию

    Цитата Сообщение от ПавелП Посмотреть сообщение
    Это настолько отличается от "нормального программирования", что только проходя по граблям можно выяснить насколько...
    Смотря что считать ненормальным программированием, Вы себя считаете нормальным? Ну так используйте https://ru.wikipedia.org/wiki/%D0%92...86%D0%B8%D1%8F или https://source.android.com/setup/con...ng-conventions и не столкнулись бы с этой проблемой изначально. Всё что Вы здесь предъявили это претензиия к писателю документации, что он скопировал содержание с МЭК-овского стандарта, не учитывая особенности иди возможно понадеясь на дальнейшее развитие языка ST в ОЛ
    Последний раз редактировалось capzap; 15.11.2023 в 11:34.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  6. #326
    Пользователь
    Регистрация
    01.11.2022
    Адрес
    <7924127@mail.ru> Минск
    Сообщений
    508

    По умолчанию Пригласить программиста ST от ОВЕН.

    Цитата Сообщение от fatlortroll Посмотреть сообщение
    > Могли бы в документации указать список зарезервированных слов

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

    Help обещались подправить.
    Королёв Кирилл - возможно такое?
    Чтоб народ тут не мучался, а коротко и ясно помогал в развитии ST и Вам и себе в понимании Ваших действий.

    Сейчас мы имеем кости, которые нам кидают, не интересуясь - А оно нам съедобно в таком виде...
    Последний раз редактировалось Тимур Назарбоев; 15.11.2023 в 11:44.

  7. #327
    Пользователь
    Регистрация
    01.11.2022
    Адрес
    <7924127@mail.ru> Минск
    Сообщений
    508

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Смотря что считать ненормальным программированием, Вы себя считаете нормальным?
    capzap Отчего такая агрессия??
    - то вы ошиблись темой
    - то переходите на личности

    Тут технический форум, а не философия.

    Коротко: Вопрос - ответ.
    Нечего сказать: Тишина.
    Последний раз редактировалось Тимур Назарбоев; 15.11.2023 в 11:44.

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

    По умолчанию

    Цитата Сообщение от ПавелП Посмотреть сообщение
    capzap Отчего такая агрессия??
    - то вы ошиблись темой
    - то переходите на личности

    Тут технический форум, а не философия.

    Коротко: Вопрос - ответ.
    Нечего сказать: Тишина.

    Вот, с ОВЕН-ов пример берите.
    да стого, Вам сложно написать вместо STEP -> mSTEP? Вам нужно показать из себя здесь возмущенного пользователя который требует на разговор разработчика? Не много спеси в Вас?
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  9. #329
    Пользователь
    Регистрация
    01.11.2022
    Адрес
    <7924127@mail.ru> Минск
    Сообщений
    508

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    да стого, Вам сложно написать вместо STEP -> mSTEP? Вам нужно показать из себя здесь возмущенного пользователя который требует на разговор разработчика? Не много спеси в Вас?
    Я так и сделал StepS.
    Тут надо показать, что нам не всё равно, как работает ST.

    capzap - это ОБЯЗАННОСТЬ каждого, кто использует данный софт.

    А вы смеет тут разруливать...

    Не много спеси в Вас?

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

    По умолчанию

    Цитата Сообщение от ПавелП Посмотреть сообщение
    Я так и сделал StepS.
    Тут надо показать, что нам не всё равно, как работает ST.

    capzap - это ОБЯЗАННОСТЬ каждого, кто использует данный софт.

    А вы смеет тут разруливать...

    Не много спеси в Вас?
    тема называется ФБ на СТ, а для претензий есть тема фичи и баги, если Вы не в состоянии понять в какую тему писать, то до отстаивания своих прав и обязанностей Вам еще далеко
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

Страница 33 из 66 ПерваяПервая ... 23313233343543 ... ПоследняяПоследняя

Похожие темы

  1. ПЛК73 (Функциональные кнопки)
    от necro в разделе ПЛК63/73
    Ответов: 8
    Последнее сообщение: 18.05.2022, 10:03
  2. Функциональные блоки
    от ribamuka в разделе СПК2xx (архив)
    Ответов: 4
    Последнее сообщение: 08.04.2018, 15:01
  3. Функциональные блоки насосов в CoDeSys
    от Алексей Ермолаев в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 28.03.2017, 13:50
  4. Функциональные блоки- где искать?
    от Xops в разделе ПЛК1хх
    Ответов: 16
    Последнее сообщение: 01.03.2016, 11:07
  5. СПК функциональные клавиши
    от Lyohin в разделе Трёп (Курилка)
    Ответов: 0
    Последнее сообщение: 30.03.2015, 15:10

Ваши права

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