Правую кнопку мышки ни кто не отменял. Другой вопрос если Вы решили из лоджика в кдс скопировать тогда видимо ни чего не получится
Примеров конечно на сфс мало, но в документации язык описан с простенькими примерчиками
Вид для печати
capzap может у меня лыжи не едут, но никак не копируется...
http://www.owen.ru/forum/attachment....1&d=1364497093
http://www.owen.ru/forum/attachment....1&d=1364497093
Либо нет команды копирования, либо ни к чему не приводит если из окна в окно пытаться скопировать.
а, так попробуйте не элемент выделить а область чтоб туда попал элемент/ы.
ЗЫ С правой кнопкой это я зря конечно :) она понадобится в дальнейшем для расстановки по порядку, а в пределах окна элементы копируются?
capzap пробовал и область копировать и отдельный элемент, ничего не помогает.
В пределах окна одной запущенной программы копируется без проблем по Ctrl+C и вставляется по Ctrl+V.
Почему и озадачился созданием макросов сперва, но когда уперся, что его нельзя скопировать совершенно в другой проект, то сделал библиотеку. Вроде как и макрос можно сохранять как библиотеку, но так и не понял как это сделать.
Подскажите пожалуйста,пробовал найти на форуме но так и не получилось, стоит выбор ПЛК. В чем разница между ПЛК110-220.32.Р-L и ПЛК110-220.32.Р-М. написано что в ограничении размера памяти области ввода/вывода. Обьясните на словах с чем столкнусь в процессе работы с двумя ПЛК.
http://www.owen.ru/catalog/56617975
(С) kgsh82Цитата:
Попробуйте поискать в РЭ на контроллер (или в РП)
Слейв не делал - не было задач.
Если для про-ва, то
1.В лоб. Зато шустрый в работе
Оно не обеднело бы от 12кр. за кокой-нить ПЛК110-30-М в качестве шлюза. Ваш клиент даже не узнал бы об этом. И 63й в него залил бы хоть 20кБ. Мне проще на 63 клиента (мастера) сделать. Причем программирование обоих для обмена - где-то 10 минут включая кофе. Быстрее чем вы конфигурацию заполнили )) :eek:
2.Тоже в лоб. И еще быстрее в работе.
А может там заместо клиента - сервер сделать (дальше см. п.1)
3.Не в лоб.
Откуда 100 реалов ? Что он там считает ? Может выкините того клиента и разумно переделаете его. Сэкономите деньги за шлюз, потратите время на программирование.
Если все же нужны эти 100 реалов, то, например, используя 1 (один) флоат в 63ем:
1.Мастер читает значение этого флоата (пофиг какое)
2.Используя значение этого флоата мастер в него пишет нужный индекс в некоем зашифрованном виде
3.Слейв видя изменения в флоате - расшифровывает индекс и пишет туды нужное значение.
4.Мастер читает значение этого флоата и пихает его в нужное место своего массива
5.гоуту п.2
Написание алгоритма бывает быстрее чем забить сотню реалов в конфигурацию с адресами. Автоматизация всетаки :)
Подскажите пожалуйста, как мне попроще преобразовать реальное время 64 разряда, как я понял в микросекундах, в 32 разрядную величину в сеундах.
Так что-бы я мог прошедшее время легко определять вычетанием из реального времени (в сек), моей переменной (сек), Короче как пкревести реальное время в переменную DATE_AND_TIME
((сокр. DT) содержит время в секундах, начиная с 0 часов 1 января 1970 года. Диапазон значений от: 1970-00-00-00:00:00 до 2106-02-06-06:28:15.)
Желательно написать в LD или в ST.
Может быть как-то так, примерно.
Убрал в правильный форум. Извините, недосмотрел
Так EN разрешает работу блока, на вход подаете переменную с типом DT, на выходе получаете переменную типа DINT
PS посты читал с телефона, не уловил сути, видимо обратное преобразование Вам потребуется DINT_TO_DT, где на вход надо подать секунды, а получить DATE_AND_TIME. Есть правда вопрос, а на каком плк Вы получаете 64-разрядные данные?
Так вот читаю справочную систему и вижу.
CurTime
Функциональный блок (библиотека SysLibTime.lib) дает текущее время локальной системы в микросекундах (структура SysTime64).
Переменная VAR_IN_OUT SystemTime
Тип данных SysTime64
Описание Текущее время локальной системы в микросекундах (см. описание структуры SysTime64).
Структура SysTime64
Данная структура (библиотека SysLibTime.lib) применяется для представления текущего времени локального компьютера в микросекундах. Младшая (Low) часть вместе со старшей частью времени, образуют структуру размером 64 бит. Она используется функциональными блоками CurTime и CurTimeEx.
Компонент ulLow ulHigh
Тип данных DWORD DWORD
Описание Младшая часть локального времени Старшая часть локального времени
Я в этом пока мало понимаю.
Но мне нужно, в определённый момент взять текущее время моей системы, запомнить его (лучще в секундах, а не в микросекундах так как это время можно запомнить в одной переменной Dword) и потом отображать время прошедшее от этого момента.
Так вот и встаёт вопрос как мне лучше это локальное время (которое в микросекундах) преобразовать в секунды.
А может вы подскажете что нужно сделать чтобы КоДеСис на ПК в режиме эмуляции, присваивал переменным, время локальной системы (в данном случае время ПК) я бы тогда сам разобрался с этим вопросом. Подключить Плк пока не получится, они ещё не пришли.
http://www.owen.ru/forum/showthread.php?t=13588
6 и 7 пункты не желаете взглянуть
Подскажите, при использовании датчиков Pt1000, в свойствах входа для ПЛК его в прямом виде нет в списке. Я правильно понимаю, что это
ТС 1000П 1.385
Документация конечно тоже не блещет явным указанием.
Ошибка подключения к ПЛК100
Провожу соединение, просит записать в ПЛК программу (режим отладки, без записи в flash), начинает выполнять программу, потом в какой-то момент связь с плк обрывается и все....... соединиться с плк больше не получается...
capzap, хуже, он работает и в ПЛК, но через время лампочка "связь" гаснет и необходимы танцы с бубнами, чтобы из codesys опять приконектиться к плк, причем пока плк работает связь поднять не удается.
Используется шнур из комплекта и PCI EXPRESS плата ком порта, при чем не дешевый вариант USB -> COM а аппаратный COM порт.
Через дешевый PCI EXPR связь вообще не удалось поднять
http://www.owen.ru/forum/attachment....1&d=1364906669
А так же начинают дублироваться свойства подключения сами по себе.
Сейчас вот уже несколько минут работает через вход USB, еще не отвалился. Так что сложно судить в чем проблема, возможно в взаимодейстии компа с PCI EXPRESS, а может и в шнурке.... не могу сказать.
ок, завтра опробую увеличить таймаут.
Через USB работает до сих пор.
Пока писал и отлаживал программу "на столе" кодесис нормально подключался к ПЛК, а когда стал подключаться к ПЛК установленном в собранном шкафу периодически стала отваливаться связь.
Мне помог чей-то совет (не помню тему) по увеличению таймаутов до 20000 мс.
http://s019.radikal.ru/i614/1304/53/5ac8db7c1475t.jpg
Здравствуйте!
Скажите пожалуйста, можно ли подключить к одной сети rs-485 два преобразователя АС-4 и запускать одновременно на разных компьютерах овен процесс менеджер, чтобы получать данные на две программы с приборов в одной сети?
Спасибо.
mcsafik в РЭ толком не написана такая возможность, но у него есть дип переключатель, отключающий резисторы на линии, следовательно его можно устанавливать и в середине RS485 линии как один или несколько приборов.
Вроде как сам преобразователь не является мастером для RS485, то должно быть можно.
А тех поддержка что на этот счет говорит ?
Вопрос по CodeSys - Есть в программе быстрая возможность вычистить неиспользуемые переменные ?
Странно, что сама программа этого не выполняет при удалении FB например был CTU1: CTU; я его удалил а в списке переменных он остается.
Проект-Опции-Генератор кода
kgsh82 не совсем понял как ? пробовал исключать и т.д. все равно остается в списке то, что уже удалено.
petera пробовал, но не понял как оно работает....
сохранял проект как, потом открывал, а в переменных все равно он сидит.
В какой момент они должны удаляться или какую команду необходимо дать, чтобы произошло удаление лишних переменных ?