вот!!!!!!!!!!!
а если 32шт однобитных константы затолкать в одну 32х битную константу, то таких проблем не будет!
но юзеры нынче ленивые пошли...
PS хотите макрос ППЗУ сделаю? :D
Вид для печати
Везет вам ,сейчас макросы в макросе ,менять значения можно в свойствах ,есть копирование вставка.,есть целочисленная логика..а я раньше делал ППЗУ 64 прям так
Вот еще несколько другой подход -внешней организации ППЗУ ,то есть значения зашиваются не внутри макроса ,а снаружи .Помимо констант можно и переменные подавать .У макроса есть 2 адресных входа и 4 входа констант (значений) ,которые устанавливаются на выходе в зависимости от адреса .При большом количестве битов можно константы спрятать внутрь макроса .:rolleyes: ,а для малого так удобней и наглядней .
AI! это была не отбраковка идеи, а вывод о том, что очень неудобно этой идеей пользоваться :)
Наверное не в эту тему надо писать, но еще оказалось неудобным в программе, что нельзя менять переменные, находясь в режиме отладки с последующим запросом, сохранить измененные переменные при выходе из режима отладки или нет.
1) этот ППЗУ полностью моя идея,
забить его цифрами от 0 до 15, тоже моя идея.
и вывести их, что бы вводить константы извне тоже моя идея.
2) вы в варианте rovki смотрели этот параметр что бы ТАКОЕ тут писать в адрес моего макроса?
да у него один анализатор кнопок хавает больше чем весь мой макрос!
PS для лентяев, предлагаю макрос с калькулятором, даже суммировать не надо самому.
AI! давно не заходил, поэтому не знаю, чьи идеи первые, а чьи вторые, уж простите.
За калькулятор спасибо, развеселили с утра :)
Вот сам тут сидел и думал как применить в данной ситуации 32-битный дешифратор. Для макроса с одной комбинацией по входам без проблем, ну можно сдеать на 2. Или просто у макроса должен быть вход для подключения 32-битных дешифраторов - одного или нескольких через сумматор. И к макросу приложить картинку с вариантами в качестве хелпа.
з.ы. что только в голову не приходит с бодуна :)
Поверьте, гораздо проще будет пользоваться макросом, тем более нет необходимости особой высчитывать глобальное число на несколько комбинаций, при которых на выходе макроса должны получить 1
http://www.owen.ru/forum/attachment....1&d=1364019743
Вот, раз ОЛ не имеет функциональных возможностей "визивиг" настраивать булевые операции как в ZelioLogic, то можно поступать так.
Когда создаешь проект, используя данный макрос для наглядности можно поставить необходимое количество дешифраторов и сумматоров, таким образом не мучаясь с калькулятором вводя длинные числа. А потом удалить их, внеся значения в макрос. В общем с пивом пойдет.
В любом случае, AI! спасибо за макрос.
Тут вспомнил еще одну проблему, которую надо решить именно на ПР110.
Есть роллеты гаражных ворот. 1 импульс от их модуля это открытие, 2-й импульс это закрытие. Нужно при открытии включать свет. Вроде бы все просто, считаем импульсы и через один включаем свет.
Но вот проблема состоит в том, что после выключения света и включения вновь, реле начинает программу сначала и импульсы открытия и закрытия могут поменяться местами. 1-й станет на закрытие а 2-й на открытие. Откровенно говоря тут мне вообще в голову ничего не приходит, как можно ПР110 научить ловить "правильный" импульс ?
Опять вы путаете Идею с реализацией .Приоритет создания макроса ППЗУ ,к сожалению принадлежит не вам ,как такового .Названия которого были и дешифратор уставок и матрица и ппзу ,за долго до вашей регистрации на форуме .Что касаемо обсуждаемого варианта ,то это проект(вариант) совместного творчества http://www.owen.ru/forum/showpost.ph...&postcount=727 в том виде ,как есть.
насчет забивания цифрами так это тоже было очень давно http://www.owen.ru/forum/showpost.ph...postcount=3714
итд...
На счет "хаванья" ПР ,так я его очень люблю ,поэтому и кормлю .
Были варианты ,когда проект не лез на форум ,из-за обьема ,но он прекрасно работал в ПР.Для меня наглядность и понятность на первом месте ,а к стеку или обьему обращаюсь только тогда ,когда их не хватает.
не ожидал от вас такого выпячивания.
идея данной реализации, если Вам будет угодно.я обсмеиваю процитированное, в том сообщении, высказывание melky,
и ни в коем случае ничего не имею против Вас лично, Ваших проектов, и вариантов реализации сделанных Вами.
так же не хочу присвоить себе авторство идей макросов, только идею конкретной реализации.
Прошу прощения, что дал повод думать иначе.
rovki сложно, дом уже полностью в отделке, дополнительных проводов проложить уже нельзя к сожалению. Просто когда речь шла о ролетах гаража, предполагалось, что там будет обычное кнопочное управление. Двухклавишное 1-поднять, 2-опустить. но оказалось, что есть еще радиопульт управления и кнопки фактически пасивные, подключаются к блочку управления. Еще не разбирался, какой там сигнал общий, скорее всего слаботочный. Собственно владельцу клавиши не подключали, пользуется радиопультиком.
А ПР110 там стоит на 220В по входам и входы давно закончились :(, некуда подавать сигнал от концевиков в общем. Правда есть сигнал от блока сигнализации охраны, приходящий на ПР110. Вот и думаю, можно ли как-то применить этот сигнал для корректировки счетчика импульсов ? Ведь когда дом ставят на охрану, то ролеты гаража дожны быть закрыты и после снятия первым импульсом будет как раз открытие.
только у меня реализация со сбросом счетчика хромает.
AI! да я вроде уже признал свою ошибку. Ваш макрос прекрасно работает, просто значение для него очень неудобно считать, когда несколько комбинаций должны дать на выходе 1.
надо получить бинарное число согласно количеству 1-ниц, потом еще превратить его в десятичное вбивая в калькуляторе кучу нулей и едениц.
Собственно это неудобство не именно макроса, а программы ОЛ в целом.
Примерно из той же серии, что и отсутствие названий переменных и необходимость делать И с тремя или более входами макросами или ставить кучу элементов в каскад и т.д.
Откровенно говоря, меня фирма ОВЕН в данном случае удивила, она выпускает ПЛК на CodeSys где это реализовано прекрасно. Ставим элемен И или ИЛИ и просто в его свойствах говорим "Добавить вход" и получаем И с тремя входами или больше, если необходимо.
Выпустив ОЛ для программируемых реле ведь можно было реализовать точно так же. Тоже относится и к таймерам, можно было сделать универсальный, используя дополнительные входы и легко превращать один FB хоть в TON хоть в TOF хоть в TONOF и так делее....
В общем речь о юзабиити, не более того.
melky
ИМХО по умолчанию, во время включения, надо предполагать самый вероятный вариант состояния системы, т.е. закрытый.
а как оно у вас заканчивает процесс открытия/закрытия?
если стоит электрический "расцепитель", то ничего страшного, что закрытую/открытую дверь попросят ещё раз закрыться/открыться
http://www.owen.ru/forum/showpost.ph...&postcount=121 это из той же оперы
AI! да не, ПР не управляет роллетами. Не было этого в ТЗ так сказать из-за отсутствия дополнительных выходов, а второй ПР ставить уже отказались. Типа не велика потеря, если гаражными ролетами будут управлять руками.
Но сигнал с них снимался для включения света в гараже в темное время суток, когда приезжаешь домой вечером.
Просто провода выводились из расчета, что кроме радиоуправления будут стоять еще и кнопки, а поставили такие блоки управления, что кнопок то и не оказалось (или от них отказались в процессе, уже и не помню). Пришлось снимать сигнал непосредственно с БУ и через промежуточное реле заводить в ПР.
rovki если найду дома на компе тот проектик, выложу его кусочек, относящийся к воротам. ну или с работы уже позже.
AI! а что там у них ужасного в 3И ? это же простейшая логика, есть на всех входах 1 то на выходе 1, 3-его же не дано...
Спорное утверждение -на счет дополнительных входов и смены свойств ФБ,пострадает наглядность (читаемость схемы) ,возрастут ошибки при такой универсальности.Кодесис ОЛ не указ,как и наоборот .За кодесис в соседнею ветку.:rolleyes: .Графика рабочего поля кодесис в подметки ОЛ не годится:D .
rovki да я ж не об этом, кому что годится в подметки а кому нет.
Просто ОЛ молодая программа и можно было интересные вещи перенимать из другого ПО для большего удобства пользования.
Вон в ZelioLogic штатных D-тригерров нет вообще. либо искать сторонние, либо тоже писать макросами. Народ пользует и не плачет. Деваться то некуда, когда есть проект, а в железе там З-Лоджики куплены. И изголяйся как хочешь.
У ОВЕНа среди ПР110 вроде же нет устройств на 16 входов и 10 выходов, насколько я помню.
Простите конечно, но в чем страдает наглядность проекта если И или ИЛИ сразу 4-х входовое ?
Я писал об универсальных ФБ ,а не элементах ,где можно по входам или в свойствах менять назначение ФБ.Для этого есть макросы .Назовите его таймер задержки (например) ,а по входу управляйте что он задерживает -включение ,выключение или то и другое .А на счет многовходовок -разработчик решил пойти по пути создания макросов и отдал этот вопрос пользователям.
Лично я ,когда делаю предложения по модернизации ОЛ исхожу в первую очередь из удобства пользования(в первую очередь себя ,как пользователя) ,новых возможностей ,а не аналогов (к сожалению я их не использую и не знаю) . Опять же ,мне как электронщику (смотри подпись) очень близок ОЛ ,ввиду его большой схожести с реальными микросхемами ,с которыми пришлось работать очень долго и плодотворно .
AI! Да, вот по поводу стека, вспомнил давнишнюю тему по поводу причин его переполнения и посмотрел макрос 8ИЛИ
Оригинал, стек 20%
Поправил по рекомендациям для ОЛ и получил 7%
Когда первый раз писал что-то на ПР, тоже из-за этого попал на переполнение стека.
http://www.owen.ru/forum/attachment....1&d=1364201723
http://www.owen.ru/forum/attachment....1&d=1364201723
1) я не понимаю что этим вы хотите мне сказать.
(или в чём то обвинить?)
2) где можно почитать эти "рекомендации"?
(о которых я сам дошел, но интересно откуда инфу черпаете вы...)
3) посмотрите реальный пример, может будет интересно..
AI!
1. я ни в чем Вас не обвиняю, это было в тему, почему авторы ОЛ не сделают возможность увеличения входов для логических элементов. Вы сослались на волшебное слово "стек".
Просто в более ранних версиях ОЛ вставленные макросы тоже влияли на стек, сейчас вроде этого нет. Но если в схеме без создания макроса 8ИЛИ вставить таким образом элементы ИЛИ, как в макросе то стек выше, чем если их вставлять согласно рекомендациям. Никто же не мешает определенным способом организовывать многовходовый элемент, если бы разработчики этим озадачились. Но этого нет, так что и не узнаешь и не проверишь.
2. рекомендации были озвучены здесь же на форуме, толи от участников, толи от разработчиков ОЛ. Уже и не помню, но инфа точно с данного форума. Возможно даже и от Вас.
Просто на одной из своих первых программ я как раз и столкнулся с переполнением стека, и поправка с организацией использования входов очень помогла оптимизировать программу.
Ничего больше.
AI! не знаю, просто столкнулся с тем, что часто визуально удобнее, когда это один элемент на схеме с несколькими входами. Скажем 50 на 50, когда удобнее один на 2 входа и второй на 2 входа в другой части схемы, а иногда когда это просто один элемент.
Просто раз уж объединять в макрос, то максимально этот макрос оптимизировать по стеку. И собственно такие вещи были бы плюсом именно со стороны разработчиков ОЛ в первую очередь.
раньше стек был не динамический ,и то переполнить его было тяжело ,а теперь динамический и что бы его переполнить ,надо постараться ,стек растет не пропорционально сложности проекта .Поэтому делайте реальный проект и не заморачивайтесь стеком ,даже если он будет 99% .Для задач управления насосами время цикла ПР 50-100мс не критично.Раньше не было окна с обьемом стека и все работало ,а переполнение было в очень больших проектах ,с кучей ОС.Теперь можно использовать явные обратные связи ,не допуская переполнения стека во время 1 цикла ПР ,можно разнести выполнение ОС по циклам.
Коллеги подскажите как организовать выдачу константы и переменной через таймер на выход ПР-114?
на какой выход?Аналоговый или сетевой?Если аналоговый ,то используйте макрос FSEL(SEL). И какой тип данных используете целочисленный или с плавающей запятой ?
Общие вопросы лучше задавать в теме Экспресс вопрос\ответ,а тут области применения ПР110(примеры) и даже не ПР114.
естественно на аналоговый. смысл такой: после подачи питания на выходе в течение 20-30с должна присутствовать константа, после - сетевая переменная.
Ответ дан в другой теме
Во вложение описание, циклограмма работы и проект программы начальный и проект уже со всеми блокировками по уровню, по зажиму. с задержкой включения некоторых выходных устройств, не могу добавить новые функции, переполняется стек, может кто поможет? :)
Поставьте дешифратор сторобируемый 3-8 ,а на выходе "ИЛИ" .строб завидите с триггера пуск ,что бы ручной режим не работал в автомате ,вот примерно так .
можно по аналогии с приложенным проектам, заменив градусы на секунды
Я уже собирал одну конструкцию под ПР.
А теперь вот ищу возможность, всунуть или Овен реле или контроллер в дом. Видеонаблюдение, свет, отопление,... а также пристроить в эту схему планшет на Андроиде ( в качестве монитора) . Подскажите возможно ли это , ли сразу закрывать тему. Пока 2 дня ковыряния в интернете ни к чему не привели. Практически во всех материалах из нета нужно знать какой-нибудь язык программирования...
olegas - контроллер на CodeSys v3 (в режиме CFC программирование похоже на программирование ПР, только веб отдельно) - web интерфейс на свет, отопление. Видеонаблюдение без привязки к контролеру либо с web мордой регистратор, либо платы Dev-Line.
Это все, чтобы планшет мог понимать.