корень квадратный...
и не очень))
Вид для печати
корень квадратный...
и не очень))
отлично!Вот только блокировку на выход ,пока считает не помешало бы.
А меньше итераций ни как нельзя?
вообще, если параметр менять отностительно плавно, то и ответ будет меняться плавно...
с малым кол-вом итераций...
т.е. долго считает только первый раз...
Для Контактора 1 вариант управления бассейном на целочисленной логике ,а второй мне больше нравиться на булевой логике.
3 вариант -если срабатывает верхний датчик вкл. 3 насоса
4 вариант -добавлено ручное управление ,и задание времени переключения насосов (30мин,60мин)
просто каждый вариант кажется последним... и его хочется выделит в отдельное окно...
если бы ваял ночью, и был уверен что всё равно никто предыдущий не смотрел.... то правил бы раз десять одно и то же сообщение...
а тут, кажется что оно может затеряться... ))
PS часто ли вы просматриваете не последнее сообщение - а не изменилось ли там чего?
PPS "прибрался...."
Схема организации очереди-стека на базе макросов ячеек памяти (твутактных) целочисленных значений глубиной -8 .Без промежуточных выходов схема не работает по причине переполнения программного стека овен лоджик.
К стати на такой схеме очень просто реализовать цифровой фильтр по методу скользящего окна
в версии 1.3.0.20 факториал считается до 12!
и немного подправил SQRT, теперь оно работает во всём диапазоне чисел 0..4 294 967 295
при аргументах больше 1 073 741 824 возможны не статичные ответы (флуктуации вокруг точного ответа), когда ответ не точно целое число.
------------------
числа больше 2 147 483 647 задаются как х-4294967296
т.е 2147483648 задаётся как "-2147483648"
а 4294967295 задаётся как "-1"
но при этом потом отображаются верно..
метод ньютона, из первой ссылки, и есть реализованный мною алгоритм...
идея взята из книжки "элементы высшей математики" прочитанной во 5ом классе..
там этот метод преподносится, как постой способ "прикинуть" корень в уме...
в 7ом классе я его реализовал на программируемом микрокалькуляторе МК-61
(компов тогда в свободном доступе не было...)
Вариант реверсивного счетчика на макросе Озу.
оптимизировал
не понял зачем в ОЗУ два SEL - это же не триггеры...
PS про ОЗУ: если есть опасность, что при первом такте данные не будут готовы, то внутри ОЗУ надо использовать последовательно RTRIG-FTRIG
или всегда давать ТОЛЬКО импульс ОЗУ, а внутри макроса использовать только FTRIG
-----------------
сделал ещё один пример....
теперь в качестве ячейки памяти просто цикл ADD-SUB :)
Как говорится, в каждой шутке всего лишь доля шутки....
в программировании есть такое понятие, как "развернуть цикл"
что в общем то я и сделал....
получился "мгновенный" корень))
PS побочный эффект - т.к. ща нет цикла, то и нет флуктуации ответа в верхнем диапазоне аргументов (больше 1млрд)
Макрос счетчика по модулю десять 4-разрядный (целочисленный) с примером
да видел я вашу мелочь в первом макросе .вы просто располовинили макрос и получилось что первая ячейка работает в паре с первой во втором макросе ,вторая из ячейка из второго макроса .....итд.
что касаемо принципа работы синхронной схемы ,то важно разнести во времени вход и выход ,это можно сделать двумя ступенями .управлять ступенями можно по входному импульсу(стробу) по разным его фронтам, либо из одного фронта строба сформировать свои два фронта(последовательно) в разных циклах ПР и не привязываться к длительности входного строба,как в этом примере.В реальных микросхемах это достигается за счет естественной задержки распространения сигнала в элементе.
пи.си. Предлагаю Вам делать самостоятельные проекты(примеры) ,которые у вас хорошо получаются и не устраивать соревнования переделывая проекты друг друга .:cool:Или если хотите переделайте все их полторы сотни ,а я пока буду делать новые.Я с одним программистом уже наспорился ,достаточно.
макрос задатчика мощности(освещения ,нагрева) с совместным использованием твердотельного реле Hd2544va ,при кратковременном сигнале на входе -вкл\выкл ,если при включении удерживать сигнал более 1сек ,то код на выходе начнет нарастать ,при отпускании код сохраняется .на выходы пр необходимо поставить резисторную сетку R-2r (как в цапе) и подключить к твердотелки.
таким образом получаем регулятор мощности с фазо импульсной модуляцией и управлением одной кнопкой(сигналом)
R -порядка 51 ком.Макрос -8 разрядный .Можно использовать в ПР12\8.
Макрос интегрального регулятора мощности с совместным использованием твердотельного реле Hd2544va..Можно задавать постоянную времени интегрирования .Второй вариант тот же самое,только с целочисленным выходом для других применений
Вот еще два регулятора с использованием макроса IR .Уж не знаю как их назвать .У обоих вариантов постоянная времени меняется от времени .В 1 варианте при включении идет увеличение постоянной времени ,скорость нарастания мощности уменьшается ,при выключении скорость уменьшения мощности увеличивается во времени.
2 вариант-.При каждом вкл\выключении скорость нарастания \убывания мощности уменьшается со временем от макс до мин.
Логические элементы на выходе макроса для наглядности в симуляторе.
Макрос регулятора мощности с совместным использованием твердотельного реле Hd2544va и возможностью устанавливать диапазон изменения мощности через уставки .То есть задается мин(от0). и макс(до255). мощность в пределах которых идет регулирование .Второй макрос аналогичный первому ,только Р макс задается до 127(7разрядов двоичных на выходе) и есть на выходе целочисленный выход.
Макрос умножителя\делителя частоты
Макрос часы ,для тех у кого ПР без часов и для тех кто хочет использовать текущее время (читать,сравнивать) .есть вход установки часов .Что бы установить (запустить часы) нужно включить ПР в заданное время .(желательно это делать раз в день).Есть 3 целочисленных выхода -секунды,минуты,часы(24).Второй макрос имеет дополнительный выход (время в секундах).
Ездить можно и на "копейке" 20 - и летней давности, зачем пересаживаться на "лексус"? :) Ответ - возможностей больше, комфорта больше, входов/выходов больше, HMI подключается, массивы данных сохраняются... да много чего... что бы не городить...
например :)
Я уже много писал и говорил об осознанной необходимости использовать ПР там где ему под силу и о нежелании моем стрелять из пушки по воробьям .Кесорю -кесорево .Поэтому сравнил бы ПР со "СМАРТ" .:) МАл-да удал:p .Зачем вообще их (ПР,ПЛК) противопоставлять ,у каждого своя ниша. А то бы все только на мерседесах и ездили б ,если б другого не было.:D
Про например не понял какой нужен пример ,например нужно в 6 утра включить полив итд....
Макрос компаратор времени для совместной работы с макросом часы .задается время (сек,мин,часы) включения и выключения
странные у вас часы... проскакивают 60 мин/сек и 24ч...
и сравнение странное... сначала вы с помощью ФБ разделяете счётчик на с/м/ч, потом с помощью умножения-сложения соедияете их снова..
и на том конце... пользователь может задавать сразу секунды...
PS а ещё я бы сделал синхронизацию не по вкл, а по внешнему таймеру, который настроен на интервал..
(впрочем, надо писать без бы.... т.к. я именно так и сделаю в "кухонном таймере", т.к. у меня есть сименс таймер, который может идти годами без внешнего питания)
вот мои "забавы" на тему часов...
синхронизация идёт 2 раза в сутки, по переднему и заднему фронту внешнего таймера
(время льготного тарифа на эл-во 23-07)
Да проскакивают(60).каждые 60сек добавляется 1минута,каждые 60мин -добавляется час ,каждые 24часа идет установка часов в исходное состояние ч:00:00 ,где Ч-уставка часов для включения питания ПР,но это же не часы настенные ,это видно только в симуляторе ,главное считает правильно :) хотя можно усложнить и убрать это ,но это домашнее задание :)
Человеку проше задавать время в формате ЧЧ:ММ:СС ,а макросу проще работать с форматом СССССС (секунды) .Про внешнею синхронизацию- в этом и отличие часов реального времени от таймера .Хотя если у вас есть часы с синхронизируюшим выходом ,для синхронизации других часов по входу (например во время 00:00:00-выдают синхроимпульс) ,тогда в макросе вместо входа уставки часов ,можно использовать вход пуск(установка) часов в исходное состояние .Но проще все же купить ПР с часами,поэтому это больше теоретические макросы ,показывающие ,что ПР все под силу:)
а ещё мне интересно - насколько точно будет работать таймер считающий только секунды
судя по симулятору, если сделать BLINK 500/500, и задать время между тактами напр. 300мс, то он точно считает...
а если в реальном реле будет ошибка хотя бы 1/100сек (теоретическое время работы цикла)
за каждую секунду, то за сутки набежит погрешность в 15мин!
А вот это(точность) надо проверить эмпирически ,хотя как я понял ,для отсчета времени (таймеров,формирователей) в процессоре ПР используются специальные внутренние таймеры ,вызывающие программные прерывания ,если не ошибаюсь.Да и встроенные часы это же программный продукт ,только энергонезависимый.
Для передачи целочисленной информации из ПР в ПР пример с использованием макросов целочисленного приемо-передатчика с модулятором и демодулятором (Шим модуляция) 32 разрядный
А вот те же макросы ,но передаются и принимаются два целочисленных потока информации ,один с дискретных входов ,второй с счетчика, например.На приемном конце два потока разделяются и преобразуются и исходные типы .Старший бит посылки определяет номер потока (канала) информации.
"добрый день. я немного не из области КИП. вот есть такая задача. раздвижные двери. очень похоже на ваши ворота. но сдесь нужно чтобы проходил один импульс. проходил весь цикл: открытие, пауза 2-5 секунды, закрытие. добавить датчик присутствия (чтобы человека не зажало дверями)".
Для kozylinа схема управления воротами .Добавлен анализ времени движения двери до срабатывания концевиков ,если за 30сек не сработает концевик -сигнал аварии и отключение двигателя .во время закрытия мигание индикатора .
В стандартных блоках управления воротами стоит контроль тока двигателя, для отключения нагрузки при остановке на препятствии. Компратор настраивается программно и имеет 16 уровней чувствительности. В этих блоках имеются встроенные приемопередатчики, для дистанционного управления с брелока и прочее.
Стоимость копеечная. На Пр не уложиться.
У меня автоматика на воротах стоит 700$ (с приводом).А реле тока можно поставить снаружи, независимо от ПР.стоит в пределах 1000р(на случай отказа концевиков).Можно сделать логику как в лифте ,при человеке в створе -автореверс на открытие .Вот нашел блок управления воротами http://www.v2.ru/catalog/9/46.htm самый дешевый(90евро),но это без всего (какПР).