06_InstructionSet_r (1087186), страница 4
Текст из файла (страница 4)
Команда записи через сеть(NETW) инициирует коммуникационную операцию длязаписи данных в удаленное устройство через указанныйпорт (PORT), как указано в таблице (TBL).Сбойные состояния, устанавливающие ENO = 0 :■ 0006 (косвенный адрес)■ Функция возвращает ошибку и устанавливает бит E байтасостояния таблицы (см. рис. 6–5)Команда NETR может прочитать до 16 байтовинформации из удаленной станции, а команда NETWможет записать до 16 байтов информации в удаленнуюстанцию.В программе можно иметь любое количество командNETR/NETW, но одновременно можно активизироватьне более восьми команд NETR и NETW.
Например, вданном S7-200 в одно и то же время у вас могутактивными четыре NETR и четыре NETW или два NETRи шесть NETW.МастеркомандС помощью мастера команд для операций чтения из сети и записи через сеть вы можетесоздать счетчик. Для запуска этого мастера команд выберите команду меню Tools >Instruction Wizard [Инструменты > Мастер команд], а затем в окне мастера командвыберите опцию Network Read/Network Write [Чтение из сети/Запись через сеть].Таблица 6–10. Допустимые операнды для команд чтения из сети и записи через сетьВходы/выходыТип данныхTBLBYTEОперандыVB, MB, *VD, *LD, *ACPORTBYTEконстантадля CPU 221, CPU 222, CPU 224:для CPU 224XP, CPU 226:00 или 183Программируемый контроллер S7-200.
Системное руководствоНа рис. 6–5 описана таблица, к которой обращается параметр TBL, а в таблице 6–11приведены коды ошибок.Байтовоесмещение70D0AE0Код ошибки1Адрес удаленной станции2Указатель на область3данных в4удаленной станции5(I, Q, M или V)6Длина данных7Байт данных 08Байт данных 122Байт данных 15D Завершена (операция выполнена):0 = не выполн. 1 = выполненаA Активна (операция поставлена в очередь): 0 = не активна 1 = активнаE Ошибка (операция содержит ошибку):0 = нет ошибки 1 = ошибкаАдрес удаленной станции: адрес ПЛК, к данным которого нужнополучит доступУказатель на область данных в удаленной станции: косвенный указательна данные, к которым нужно получить доступДлина данных: количество байтов данных, к которым нужно получитьдоступ в удаленной станции (от 1 до 16 байтов)Область данных для приема или передачи: от 1 до 16 байтов,зарезервированных для данных.Для команды чтения из сети хранит значения, которые были считаны изудаленной станции при выполнении команды.Для команды записи через сеть хранит значения, подлежащие передаче вудаленную станцию при выполнении команды.Рис.
6–5. Параметр TBL для команд чтения из сети и записи через сетьТаблица 6–11. Коды ошибок для параметра TBLКодОпределение0Нет ошибки.1Ошибка истечения времени ожидания: удаленная станция не отвечает.2Ошибка приема: ошибка четности, кадрирования или контрольной суммы в ответе.3Ошибка с переходом в автономный режим: конфликт, вызванный двойным адресом станции илинеисправностью аппаратуры.4Ошибка переполнения очереди: активизировано более 8 команд NETR/NETW.5Нарушение протокола: попытка выполнить команду NETR или NETW, без разблокировкипривилегированного режима PPI в SMB30 или SMB130.6Недопустимый параметр: параметр TBL содержит недопустимое или ошибочное значение.7Нет ресурса: удаленная станция занята (Идет процесс загрузки в станцию или из станции.)8Ошибка 7-го уровня: нарушение протокола приложения9Ошибка сообщения: неверный адрес данных или неправильная длина данныхA−FНе используются.
(Зарезервированы)На рис. 6–6 показан пример, иллюстрирующий использование команд NETR и NETW. Вэтом примере речь идет о производственной линии, где стаканчики заполняются маслом ипередаются одной из четырех упаковочных машин. Упаковочная машина пакует по восемьстаканчиков с маслом в одну картонную коробку. Направляющее устройство управляетпотоком стаканчиков с маслом, направляя их к той или иной упаковочной машине. Дляуправления упаковочными машинами используются четыре модуля S7–200, а дляуправления направляющим устройством используется один S7–200, оборудованныйинтерфейсом оператора TD 200.84Набор команд S7–200Упаковочнаямашина №1Станция 2VB100VW101Упаковочнаямашина №2Станция 3Управл.Состоян.VB100VB101VB102feVB100VW101eeУпаковочнаямашина №3Станция 4Управл.Состоян.0gbtVB100VW101Упаковочнаямашина №4Станция 5Управл.Состоян.VB100VW101УправлениеСостояние MSBКоличествоупакованныхящиковLSBНаправляющееустройствоСтанция 6Управл.Состоян.TD 200 Станция 1Приним.буферVB200Передающ.буферVB300VB200Принимающ.
буферСтанция 2VB300Передающ. буферСтанция 2VB210Принимающ. буферСтанция 3VB310Передающ. буферСтанция 3VB220Принимающ. буферСтанция 4VB320Передающ. буферСтанция 4VB230Принимающ. буферСтанция 5VB 330Передающ. буферСтанция 5tГлава 6Нет стаканчиков для упаковки;t=1, нет стаканчиков для маслаb В наличии мало ящиков: b=1, в течение следующих 30 мин.
ящики будут заполненыg Мало клея: g=1, в течение следующих 30 мин. клей должен быть долитeee Код ошибки, указывающий на вид неисправностиfИндикатор неисправности; f=1, в упаковочной машине возникла неисправностьРис. 6–6. Пример команд чтения из сети и записи через сетьНа рис. 6–7 показан принимающий буфер (VB200) и передающий буфер (VB300) длядоступа к данным в станции 2.
S7–200 использует команду NETR для регулярного чтенияуправляющей информации и информации о состоянии из каждой упаковочной машины.Каждый раз, когда упаковочная машина упаковывает 100 коробок, направляющееустройство замечает это и с помощью команды NETW передает сообщение для сбросаслова состояния.Принимающий буфер для чтения из упаковочноймашины №17VB200D0AE0Код ошибкиVB201Адрес удаленной станции = 2VB202Указатель наVB203VB204VB205VB206Передающий буфер для сброса счетчикаупаковочной машины №1область данныхвудаленной станции = (&VB100)Длина данных = 3 байтаVB207ControlVB208Состояние (старший байт)VB209Состояние (младший байт)VB300VB3017DAE00Код ошибкиАдрес удаленной станции = 2VB302Указатель наVB303область данныхVB304вVB305удаленной станции = (&VB101)VB306Длина данных = 2 байтаVB3070VB3080Рис.
6–7. Образец данных TBL для примера команд чтения из сети и записи через сеть85Программируемый контроллер S7-200. Системное руководствоПример: Команды чтения из сети и записи через сетьNetwork 1 //В первом цикле разблокировать//привилегированный режим PPI//и очистить все принимающие и//передающие буфера.LDSM0.1MOVB2, SMB30FILL+0, VW200, 68Network 2 //Если бит завершения команды NETR//(V200.7) установлен и 100 коробок//упаковано://1.Загрузить адрес станции//упаковочной машины №1.//2.Загрузить указатель на данные в//удаленной станции.//3.Загрузить длину данных,//подлежащих передаче.//4.Загрузить данные для передачи.//5.Сбросить количество коробок,//упакованных упаковочной машиной№1LDV200.7AW=VW208, +100MOVB2, VB301MOVD&VB101, VD302MOVB2, VB306MOVW +0, VW307NETWVB300, 0Network 3 //Если бит завершения команды NETR//установлен, загрузить управляющие//данные упаковочной машины №1.LDV200.7MOVBVB207, VB40086Набор команд S7–200Глава 6Пример: Команды чтения из сети и записи через сеть, продолжениеNetwork 4LDNANANMOVBMOVDMOVBNETR//Если цикл не первый и нет ошибок://1.Загрузить адрес станции//упаковочной машины №1.//2.Загрузить указатель на данные в//удаленной станции.//3.Загрузить длину данных,//подлежащих приему.//4.Прочитать управляющую//информацию и данные о состоянии//упаковочной машины №1.SM0.1V200.6V200.52, VB201&VB100, VD2023, VB206VB200, 087Программируемый контроллер S7-200.
Системное руководствоКоманды передачи и приема (свободно программируемый обменданными)Команда передачи (XMT) используется в режимесвободно программируемого обмена данными дляпередачи данных через коммуникационный порт(ы).Команда приема (RCV) инициирует или завершаетфункцию приема сообщения. Чтобы блок приема могработать, вы должны указать условия начала и концасообщения. Сообщения, получаемые через указанныйпорт (PORT), сохраняются в буфере данных (TBL).Первая запись в буфере данных указывает количествопринятых байтов.Сбойные состояния, устанавливающие ENO = 0■ 0006 (косвенный адрес)■ 0009 (одновременная передача и прием через порт 0)■ 000B (одновременная передача и прием через порт 1)■ Ошибка параметра приема устанавливает SM86.6 илиSM186.6■ S7–200 CPU не находится в режиме свободнопрограммируемого обмена даннымиТаблица 6–12.
Допустимые операнды для команд передачи и приемаВходы/выходыТип данныхОперандыTBLBYTEIB, QB, VB, MB, SMB, SB, *VD, *LD, *ACPORTBYTEконстантадля CPU 221, CPU 222, CPU 224:для CPU 224XP, CPU 226:00 или 1Дополнительную информацию об использовании режима свободно программируемогообмена данными вы найдете в разделе "Создание протоколов, определяемыхпользователем, при свободно программируемом обмене данными" на стр. 226 в главе 7.Использование режима свободно программируемого обмена данными дляуправления последовательным коммуникационным портомРежим свободно программируемого обмена данными можно выбрать для управленияпоследовательным коммуникационным портом S7–200 с помощью программыпользователя.