Вопрос.
Целевую платформу ПР205-24-1211.02 поменять на ПР205-24-1211.06 нельзя?
Подстава.
Вопрос.
Целевую платформу ПР205-24-1211.02 поменять на ПР205-24-1211.06 нельзя?
Подстава.
rediskus , моё личное мнение, что ПР из-за ограниченности ресурсов не позволяют реализовывать какие-то сложные алгоритмы.
Вы, наверняка, передаёте заказчику описание работы, параметров настройки, циклограммы. А это означает, что воспроизвести программу только по описанию - не составит значительных усилий.
Недавно по договору выполнял работу - по описанию работы установки на импортном Smart Relay воспроизводил алгоритм на Овен ПР. Это заняло время, но сложностей не встретил. Заказчику передал исходник - это было в договоре.
Раньше рефлексировал об интеллектуальной собственности, но потом перестал. Некоторые наработки, которые считаю интересными не только мне - публикую в виде статей. В тех случаях, когда могу принимать решение - исходники всегда отдаю заказчику.
Зная о статьях, форуме, иногда заказчик просит не афишировать некоторые решения (способы, алгоритмы), которые он сам предложил - нельзя, значит, нельзя.
Всё это я к тому, что есть смысл передавать заказчику исходники.
За время работы в автоматизации неоднократно сталкивался с ситуацией, когда фирмы исчезают со смертью основателя, и потом невозможно восстановить работоспособность системы при поломке контроллера. Это ещё один довод за передачу исходников.
Полностью согласен, да и цели как-то закрывать код не было. Оно как-то само получилось, что OL где-то там написал, что нет ключа, я создал ключ и больше не менял его, а потом из-за этого самого ключа, обновляя ПО на объектах огреб проблем. Ну а дальше уже пошел разговор про реализацию защиты в целом.
Вот тут согласен. Лучше отдать исходники и снять головняк по поддержке соо своих плеч, чем потом среди ночи просыпаться от звонка неадеквата, у которого что-то не получилось, или он видите ли, не понял как это работает. Ну и краткое описание желательно приложить. И в договоре прописать, чтоб потом сказать: любой каприз за ваши деньги!
FPavel Про докуменацию и Исходники согласен ПОЛНОСТЬЮ. Сам всегда передаю исходники (но в Договоре прописываю неразглашение в течение 3х лет), и вообще всё документирую.
Ща буду вообще делать дичь - доработаю свою 1Ску, на которой у меня учёт идёт так, чтобы можно было набивать в неё расчёты мощности блоков питания для щитов с ПЛК и карты регистров с автовычислением номеров регистров и бит по мере того, как карту набиваешь (думаю про этот алгоритм).
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab
Ничего сложного в нем нет. Делал и для ПЛК110 и для ПЛК210 под CodeSYS и Полигон. Ибо прописывать регистры руками это такое себеЕсли будут вопросы, пишите.
ris.png
Верхний уровень выглядит как-то так.
(Чуток пофлудим)
rediskus ВАУ! Не я один такое выдумываю! Ура! У меня вообще уже полная CRM-ERP-система на базе 1Ски. В я ней и щиты проектирую, и всё-всё делаю. Вон тут можно почитать (я там написал учёт оборудования по заводским номерам): https://cs-cs.net/tag/crm
Я сначала думал сделать отдельный софт на VB вот так:
IO-Vb.gif
Потом понял, что хочу всё в 1Ску, чтобы было в едином формате. ДАЖЕ если там не будет группировки полей и прочего.
Сделал пока вот что.
1. План Питания ПЛК. Здесь можно набивать низковольтные нагрузки и распределять их по блокам питания. Мощность считается автоматически. До этого я делал это в Экселе вручную. А ща всё делает 1Ска. При этом низковольтное оборудование автоматом заполняется, если такой документ ввести на основании Плана щита.
IO-XLS.gif IO-Bps-1.gif IO-Bps-2.gif
2. План Сигналов ПЛК. Тут пока только форма готова, и логики нет. Задумка в том, чтобы расписывать всё IO по модулям. Я такое тоже делаю в XLS, а ща хочу вести в 1Ске.
IO-Signal.gif
3. План Регистров ПЛК. Вот тут задумка более сложная, но я хочу её написать.
Чтобы можно было указывать Coil или Register, а моя 1Ска сама считала их номера автоматически (пока там нули).
Типа, если вбил первым регистр - то она напишет, что это регистр 0, и Coil с 0 по 15.
IO-Regs.gif
Поэтому у меня интерес больше в алгоритме такого подсчёта.
Основное, над чем я думаю - это то, как сделать: всегда пересчитывать всю карту с самого начала (а там может быть под 500 строк, и это БУДЕТ тормозить).
Или же пересчитывать карту регистров по мере заполнения на основании данных с прошлой строки. Но тогда могут вылезти косяки: можно переставить или удалить строки, и весь расчёт рухнет.
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab
Мои задачи более приземленные. Мне нужна карта регистров модбас с соответствующим выравниванием на стыках coil,word,float, и мой софт мне это делает. Для ПЛК110 отправной точкой является кодесис, я накидываю там конфигурацию регистров, затем выгружаю конфигурацию ПЛК в exp и паршу его, получая на выходе cpp и h файлы для системы верхнего уровня. А для ПЛК210 отправной точкой является програмка из картинки с поста выше, она уже генерирует файлы для CodeSYS3 и карту переменных для ПО верхнего уровня. Я тоже думал как и вы вводить все типы переменных в одну таблицу, потом решил сделать 3 по нужным мне и используемым типам. Выгружаются они в последовательности Bool,Word,Float, выравниваются по размерности float (4 байта). Так что генерация результатов у меня происходит не интерактивно, а уже по готовым таблицам переменных. Для интерактивного расчета я бы наверное посмотрел на реализацию таблицы по типа той, что сделана в CodeSYS. Т.е. регистр можно развернуть в 16 койлов. Для моего случая это наверное было бы Float который можно развернуть в 2 reg и каждый reg в 16 coil. Достаточно наглядное решение.
в реале на аналоговом выходе ПР205 5.2 мла