1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Использование SFC58,59

ПЛК SIMATIC (S7-200, S7-1200, S7-300, S7-400, S7-1500, ET200)
Ответить

Автор темы
alex3110
освоился
освоился
Сообщения: 263
Зарегистрирован: 02 апр 2015, 18:16
Имя: Симонов Игорь Валерьевич
Благодарил (а): 24 раза
Поблагодарили: 8 раз

Использование SFC58,59

Сообщение alex3110 »

Всем привет !

Ниже часть кода из работающей программы.
:ges_help:
1. Что такое data record «2F» (47 DEC) ?
Как узнать, какие именно данные хранятся в этом «data record» «2F» ?

2. Могут ли SFC58,59 использоваться для обмена CPU с модулями не только «своего» PLC, но и с модулями других устройств, имеющими связь с данным PLC, например :
- по "Profibus-DP" (PLCs, «частотники», инверторы и др.) ;
- по RS-232 ?

3. Почему в коде и для записи «data record» (SFC58), и для чтения «data record» (SFC59) , везде используется IOID :=B#16#54 , ведь значение 54H относится только к адресной области периферийных входов (PI)

CALL SFC59
REQ :=M1.0
IOID :=B#16#54
LADDR :=30
RECNUM :=B#16#2F
RET_VAL:=MW110
BUSY :=M1.1
RECORD :=P#DB150.DBX 14.0 BYTE 4


CALL SFC 58
REQ :=M2.0
IOID :=B#16#54
LADDR :=50
RECNUM :=B#16#2F
RECORD :=P#DB151.DBX 0.0 BYTE 24
RET_VAL:=MW110
BUSY :=M2.1



Заранее благодарен.
Ответить

Вернуться в «Simatic Step7»