IVM
Я и не заявлял, что это рабочий проект. Там вообще отсутствует целевая платформа. Я просто показал примеры под поставленную задачу. Кстати, хотелось бы узнать какие.
А самый первый скрин - из рабочего проекта.
Вид для печати
IVM
Я и не заявлял, что это рабочий проект. Там вообще отсутствует целевая платформа. Я просто показал примеры под поставленную задачу. Кстати, хотелось бы узнать какие.
А самый первый скрин - из рабочего проекта.
Добрый день.
В codesys 2.3 в режиме эмуляции при трассировке не могу зайти в некоторые модули.
Долго искал, нашел, что в 3-й версии надо использовать виртуальный контроллер CODESYS Control Win V3.
А как быть в 2.3?
Изучаю CODESYS 2.3. Тренируюсь на ПЛК63РРРРИИ.М. За день прочитал лекции Кирилла Гайнутдинова "prosto_CoDeSys_1-2-3" Все понял, все работает на ПЛК. Не могу разобраться самостоятельно с программированием работы ЖКИ. Подскажите (ссылку) на видеоуроки по ЖКИ или на лекции Кирилла. Имею опыт программирования ПР200.
Вам нужна библиотека Work_Mode.lib, саму библиотеку и описание работы с ней можно найти в архиве по ССЫЛКЕ .
В каком режиме экрана - рабочем или монопольном?
В рабочем.
ShowDInt и ShowReal для целых и вещественных.
Сделайте отдельную задачу с циклом в 200мс и вывлдите либо по экранного на текущий экран либо по изменению переменной
Здравствуйте. Имеется контроллер ПЛК73, который является Slave устройством. На этапе пуска выяснилось, что контроллер (неизвестен) верхнего уровня имеет нестандартный протокол ModBus.
Вопрос - какая библиотека поможет мне сделать Slave устройство с нестандартным протоколом? если кто-то имел подобный опыт - прошу помочь примером проекта
Нестандартных протоколов Modbus не существует, вернее это уже просто какой-то протокол но не Modbus.
И как вы это выяснили интересно ?
Здравствуйте! Может быть, кто-нибудь имел опыт работы с контроллерами шагового двигателя OSK-RA? Возникла проблема при подключении контроллера к ПЛК-150 по RS-485, протокол Modbus RTU. Чтение из всех регистров прекрасно получается, но вот запись в восьмибитные регистры через BYTE-переменные (да и через BOOL тоже) не получается от слова совсем. Сам по себе контроллер ШД при подключении к компьютеру напрямую через RS-282 работает отлично, для контроллеров ШД есть простенькая программа для управления по Modbus. На восьмибитных регистрах у них завязаны жизненно важные функции, без которых ШД запустить невозможно (подача тока на обмотки двигателя, задание команды на выполнение, ток простоя, дробление шага, направление).
Прикладываю даташит на контроллер ШД, таблицы с адресами регистров начинаются на 31 странице.
http://onitex.ru/files/Documentation...heet_OSKRA.pdf
Может быть, кто-нибудь знает, как осуществить запись в восьмибитные регистры? (Write bytes 0x71 не работает).
Так и есть
Для записи так называемых ВОСЬМИ битных регистров используется стандартная команда 06 - запись одного Holding Registers, точно такая же как и для записи обычных регистров
Вложение 40645 Вложение 40646
При смене типа регистра посылки полностью совпадают.
ЗЫ
Используйте в Universal Modbus Device модули Register output, команда 0х6
и для чтения тоже можно Register input использовать
Вы мне прямо жизнь спасли! Огромное вам спасибо!! :D
В связи с древностью и редкостью СОМ порта, возникла необходимость залить в ПЛК150 программу по Езернет. Есть ли возможность напрямую соединить комп и ПЛК и залить по этому соединению.
Технически комп будто бы может это делать (функция сетевой мост).
Заранее спасибо.
Вложение 40727
Конечно есть. Соединяете пачкордом и пользуйтесь.
Dmitro, только в зависимости от вашей сетевой карты на ПК может потребоваться кроссовый патчкорд, если вы напрямую будете цепляться. В ПЛК Овен этой серии сетевая без автоопределения приемо-передачи.
Здравствуйте! Проблема с ПЛК154-220.A-M, пропадает связь(ошибка связи(#0):произошло отключение).
Использую Ethernet подключение, через некоторое время(около 3х минут) после установки связи с ПЛК, пропадает связь с контроллером. Подскажите пожалуйста, как это лечится?
PLCInfo:
PLC model MODEL PLC 154
Binary VERSION 2.17.0
Need Target version 2.10
Compiled: 13:35:11 Apr 6 2017
MAC 6A:77:00:FF:A4:DB
IP 10.214.97.117
GATE 10.214.100.10
MASK 255.255.248.0
PIC upper version is 09
Licence unlimited
Universal DAC
PIC lower version is 0e
Спасибо! Хорошо бы внести эту информацию в РЭ.
Здравствуйте! Проблема с ПЛК154-220.A-M, не могу найти в конфигурации при настройки целевой платформы.
Есть такие:
ПЛК154-220.A-L
ПЛК154-220.I-L
ПЛК154-220.I-M
ПЛК154-220.U-L
ПЛК154-220.U-M
И где это "-220" можно было увидеть при выборе целевой платформы?
Вложение 40744
Что вполне логично, т.к. в названиях таргетов нет упоминания о напряжении питания ПЛК
Вложение 40745
Здравствуйте, подскажите пожалуйста как правильно написать код. при включении кнопки таймер должен отсчитать 5 секунд и счетчик увеличивается на 1 и так 5 раз.
taimer(IN := in1, PT:= T#5s);
a :=taimer.Q;
B:=5;
schet1(CU:= a, RESET:=pop , PV:= B);
pop := schet1.q ;
otschet := schet1.CV ;
сделал так но тут проблема в том что кнопку нужно каждый раз выключать и включать заново чтобы таймер запустился. а как сделать так чтобы таймер сам сбрасывался и начинал отсчет?
Добрый день! Подскажите какие танцы с бубном необходимо проделать, чтобы подключить контроллер ПЛК110 к панели оператора по Ethernet?
Согласно инструкции ПЛК110 имеет IP 10.0.6.10. В проекте создал ModBus (Slave), в нём ModBus[FIX] с модулем TCP[VAR] и портом 502. В настройках панели оператора (Delta DOP-W157B) настроил IP 10.0.6.3 и указал, что контроллер искать по IP 10.0.6.10 c портом 502. Так как и загружать программу и связываться с панелью оператора одновременно по Ethernet не получается, загружал по USB-кабелю. Панель стартует и не ругается на обрыв связи. Визуально обмен идёт. Но как только переходит на любой экран с адресацией, сразу выдаёт ошибки. Делаю вывод, что неправильно настроил ModBus (Slave).
Заранее спасибо за ответ.
Я использую Ethernet для подключения ноута к контроллерам постоянно, так что не в самом IP дело. Панель не ругается, как если бы там стояло неправильное подключение (это она делает сразу в таких случаях). Ругаться начинает когда открываю любой скрин, где есть переменные ModBus(Slave). Причём, не всегда на одни и те же. В зависимости от набора переменных.
Вы хотите сказать, что настройка была правильная и искать проблему надо в другом месте?
как я могу сказать что настройка правильная, если я её даже не видел? Проект приложите
а если в плк кто то уже "лазил" и адрес сменил? По поводу:"Визуально обмен идёт" это как определяется по светодиодам сетевой карты, так ответ с идентификатором ошибки так же отправляется как и правильный ответЦитата:
Согласно инструкции ПЛК110 имеет IP 10.0.6.10
что под этим подразумевается, порты разные ни кто ни кому мешать не должен, потеря связи может возникнуть и то если включен онлайн режим, но не загрузка проекта, еще бы понял если бы самостоятельно сокетами управляли, но Вы же используете просто конфигурациюЦитата:
Так как и загружать программу и связываться с панелью оператора одновременно по Ethernet не получается
ну про это уже написали про направление куда "копать"Цитата:
переходит на любой экран с адресацией, сразу выдаёт ошибки
Под первым адресом устройства около 100 переменных типа 2 byte, под вторым 50 битовых, под третьим 50 битовых, под четвёртым 3 переменных типа 2 byte. Каждое устройство выделено в в отдельный ModBus(Slave), имеет модуль ModBus[FIX] со связью по TCP. Разделены таким образом для удобства работы с ними. При работе с RS-232 никаких проблем не возникало. В данный момент работа по RS-232 временно не возможна и есть попытка обойти всё по Ethernet.
Всем привет. Помогите разобраться в Codesys , есть ПЛК154 А-М подключил его к программе, прописал все входы в глобальных переменных. Я пытаюсь подключить в аналоговый вход температурную вставку ТС5008-4 У2(выходной сигнал 4-20мА, диапазон измерений 0-250градусов) Проблема в том что я не могу получить значение температуры , как это сделать. может что-то с настройками. Помогите !!!!
Проект представить на обозрение надо, ну а на вскидку в конфигурации в параметрах модуля тип сенсора указать не забыл? Как подключен токовый вход? Вообщем одни вапросы..
VAR_GLOBAL
DI_1 AT %IX0.0 : BOOL; (* Discrete input 4bit *)
DI_2 AT %IX0.1 : BOOL; (* Discrete input 4bit *)
DI_3 AT %IX0.2 : BOOL; (* Discrete input 4bit *)
DI_4 AT %IX0.3 : BOOL; (* Discrete input 4bit *)
DO_1 AT %QX1.0 : BOOL; (* Discrete output 4bit *)
DO_2 AT %QX1.1 : BOOL; (* Discrete output 4bit *)
DO_3 AT %QX1.2 : BOOL; (* Discrete output 4bit *)
DO_4 AT %QX1.3 : BOOL; (* Discrete output 4bit *)
SO_1 AT %QX2.0 : BOOL; (* Special output *)
AI_1 AT %ID3.0 : REAL; (* Analog input *)
AI_2 AT %ID4.0 : REAL; (* Analog input *)
AI_3 AT %ID5.0 : REAL; (* Analog input *) В это аналоговый вход подключена температурная вставка.
AI_4 AT %ID6.0 : REAL; (* Analog input *)
AO_1 AT %QD7.0 : REAL; (* Analog output *)
AO_2 AT %QD8.0 : REAL; (* Analog output *)
AO_3 AT %QD9.0 : REAL; (* Analog output *)
AO_4 AT %QD10.0 : REAL; (* Analog output *)
MODbus AT %QB11.1.0 : BYTE;(*ModBus *)
RegInp AT %IW11.1.0.0: WORD; (*register input Address-51(Holding)*)
END_VAR
Вложение 40798 Конфигурация ПЛК
В программе
PROGRAM PLC_PRG
VAR
AI_3:REAL;
a: REAL;
END_VAR
и делаю вывод переменной
a:=AI_3;
В итоге выходит в AI_3 (-1.#QNAN)
AI_3 у вас и в PLC_PRG и в VAR_GLOBAL. Объявите ее только в конфигураторе.
Переменные нужно объявлять только в одном месте либо в конфигураторе либо в VAR_GLOBAL..