потерпите 10 минут, щас слеплю примерчик.
потерпите 10 минут, щас слеплю примерчик.
Вот как-то так. Имена переменных, присвоенные в конфигураторе, имеют статус глобальных (то есть переопределять их нигде не надо, можно просто к ним обращаться, либо вбивая их вручную, либо через F2, кроме того, они попадают в область Retain и при выключении питания сохраняются.
Спасибо. Сейчас заряжу аккумуляторы и протестирую. Как я понял из примера что в конфигураторе Register input module имеет как раз размерность 16, но на нем это не написано в названии как на 32 и 8 битных.
Кстати возник такой вопрос пока работал с 32 битными регистрами. Значение которое записывалось в 1000 рег переползало в 2000 потом в 3000 и.т.д. потом опять в 1000. Так же было что регистры показывают верные значения но не в своих адресах. А возможность значение из скажем регистра 1000 такое же как в 2000 исключена.
В терминологии Modbus под регистром понимается 16-разрядная структура. Для того, чтобы понять, что и как (вероятнее всего) происходит в штатном мастере конфигурации ПЛК рекомендую внимательно прочитать про Modbus (какие типы данных какими командами передаются и какова структура запроса и ответа у той или иной команды) и посмотреть в настройках элементов конфигурации, какие команды используются. Многое прояснится. Особенно, если параллельно посмотреть формат команд под сниффером. Насчет переползания данных, вы по всей вероятности про библиотеку говорите, тут я ничего не подскажу. Кстати, те корифеи здешней конференции, кто предпочитает работать через библиотеку, допиливали ее под свои нужды, про это тоже можно почитать.
DEL туплю безбожно
Последний раз редактировалось apushashkov; 19.11.2013 в 17:15.
Что сделать-то нужно?
Если я правильно понял, что именно не получается, то :
1. Для того, чтобы поименовать переменные в конфигурации, нужно поставить курсор на заголовок АТ конкретного элемента и нажать левую кнопку мыши. Откроется квадратик, в который нужно вписать имя переменной, которое отныне будет связано с этим элементом (регисторм Modbus или элементом 32 бит, в котором по сути содержатся 2 регистра). При этом это имя больше нигде не должно быть объявлено ни до этого, ни после, то есть дальше этим имнем можно просто пользоваться.
2). Для этого в окне программы или ФБ ставим курсор на три красных вопросика и нажимаем F2. открывается ассистент ввода в котором есть разделы локальных и глобальных переменных. там выбираем глобальные переменные и обнаруживаем в списке имена, присвоенные нами элементам конфигурации (кстати точно также можно именовать и входы и выходы контроллера). Выбираем нужное имя из списка и пользуемся.
3). И еще, пока вы не залезли глубоко - не стоит ли перейти ли на CFC в основоной программе? по сути очень похоже на FBD, только нагляднее и удобнее. Рекомендую.
Большое спасибо, удалил пост как раз иза того что разобрался со всеми ошибками. Проблема был в том что не записывался регистр в 35109, разобрался сменив RSR(x6) на WMR(x16). Опыт работы с ПЛК имеется но вот с ОВЕНом пришлось знакомиться за полтора дня ибо дали именно его и как и пологается нужно уже вчера. Потому времени на штудировку типа справочника Ганса Бергера увы не было. Сделал по быстрому фаст старт и сразу за модбас. Если честно после длительного общения с Siemens-Desigo и КОНТАР развилось некое отвращение к CFC. Хотя тут он безусловно удобнее. Увы FBD или LAD было навязано ТЗ. Так в основном практикую то что в CODESYS называется ST и IL.
ПЛК100 понравился, никаких танцов с бубном в процессе конфигурирования заливки и отладки. + что можно в визуализации мониторить. Возник вопрос. Может ли он одновременно работать как мастером так и слейвом? На данный момент есть 2 контроллера DSE, 1 контроллер S1200 и планирую 1 ПЛК100 + панель weintek. Как успел прочитать проблем работы с этой панелью и ОВЕНа нет. Каждый контроллер является мастером для своего DSE и слейвом для Weinteka.
Такая задумка так как намного удобнее обработать регистры средствами программирования ПЛК и преобразовать из в инженерные величины чем, шаманить в weinteke.
подпишусь на тему. тоже в планах связать плк100 и weintek по модбасу, пока читаю набираюсь опыта
контроллер может быть одновременно мастером и слейвом, но только по разным интерфейсам. Так что никаких проблем быть не должно. С wientek все вяжется легко.