Segnetics

Вернуться   Segnetics > Форум Segnetics > SMLogix

SMLogix Вопросы о работе в среде SMLogix и о FBD-программировании

Ответ
 
Опции темы Поиск в этой теме
Старый 17.11.2016, 13:25   #1
shmidt.w
Senior Member
 
Регистрация: Aug 2015
Адрес: I live in Russia (Siberia), it's cold
Сообщения: 208
Благодарил(а): 1 раз(а)
Поблагодарили: 11 раз(а) в 10 сообщениях
По умолчанию Блоки from to

Замечал в некоторых макросах из конструкторов блоки from и to, в справке о них ничего не нашёл, по смыслу применения напоминают конструкции #ifdef #endif

Могут ли они принести пользу простым смертным, если да, как ими пользоваться?

Было бы неплохо, если бы были какие-то конструкции, позволяющие выключать блоки программы из компиляции.
shmidt.w вне форума   Ответить с цитированием
Старый 17.11.2016, 13:47   #2
Gromov
Уволен из Сегнетикс
 
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Блоки from to

Их нет в релизной версии лоджика, их нет в доступных пользователям версиях лоджика. Они использовались программистами конструктора в некоторых местах. Технически, ничего не мешает вам вытащить их от туда, если получится, и использовать в своём проекте. Но я сильно сомневаюсь, что кто-то расскажет о том, как это делать, потому что этот функционал не предназначен для использования.

Я хочу сказать, что даже у меня нет этого инструмента, и никто не рассказал мне, где мне их брать и зачем. Да оно и не надо, если честно. И так всего хватает.


__________________
В сегнетиксе не работаю с самого начала 2019 года.
Gromov вне форума   Ответить с цитированием
Старый 17.11.2016, 14:05   #3
shmidt.w
Senior Member
 
Регистрация: Aug 2015
Адрес: I live in Russia (Siberia), it's cold
Сообщения: 208
Благодарил(а): 1 раз(а)
Поблагодарили: 11 раз(а) в 10 сообщениях
По умолчанию Ответ: Блоки from to

Придумаю гипотетическую ситуацию -- есть несколько версий программ для разных установок, похожих, но с разным набором макросов устройств.

И в порядке улучшения качества обслуживания нужно что-то добавить/изменить во всех версиях, для этого нужно пройтись по всем программам и внести изменения в каждую версию.

А можно было бы иметь одну универсальную программу и в одном месте меняя одну цифру выбирать нужную функциональность. Сразу отвечаю на возражение "Сделай у макросов входы Enable и не используй ненужное" - если в программе будет гора макросов, которые даже не будут использоваться, место они будут занимать всё равно и всё это рискует не влезть в контроллер.

Вот в этом случае такие конструкции пригодились бы.
shmidt.w вне форума   Ответить с цитированием
Старый 17.11.2016, 14:34   #4
Gromov
Уволен из Сегнетикс
 
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от shmidt.w Посмотреть сообщение
"Сделай у макросов входы Enable и не используй ненужное" - если в программе будет гора макросов, которые даже не будут использоваться, место они будут занимать всё равно и всё это рискует не влезть в контроллер..
Ответ прост: используй трим5, влезет всё(почти всё).

А макросы между этими блоками тоже будут занимать место. Это не директива "компилятору", это почти обычный фбд блок.


__________________
В сегнетиксе не работаю с самого начала 2019 года.
Gromov вне форума   Ответить с цитированием
Старый 17.11.2016, 14:48   #5
shmidt.w
Senior Member
 
Регистрация: Aug 2015
Адрес: I live in Russia (Siberia), it's cold
Сообщения: 208
Благодарил(а): 1 раз(а)
Поблагодарили: 11 раз(а) в 10 сообщениях
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от Gromov Посмотреть сообщение
Ответ прост: используй трим5, влезет всё(почти всё).
Субсидируете разницу между ценой пикселя12 и трима?
shmidt.w вне форума   Ответить с цитированием
Старый 17.11.2016, 14:56   #6
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от shmidt.w Посмотреть сообщение
Придумаю гипотетическую ситуацию -- есть несколько версий программ для разных установок, похожих, но с разным набором макросов устройств.

И в порядке улучшения качества обслуживания нужно что-то добавить/изменить во всех версиях, для этого нужно пройтись по всем программам и внести изменения в каждую версию.

А можно было бы иметь одну универсальную программу и в одном месте меняя одну цифру выбирать нужную функциональность. Сразу отвечаю на возражение "Сделай у макросов входы Enable и не используй ненужное" - если в программе будет гора макросов, которые даже не будут использоваться, место они будут занимать всё равно и всё это рискует не влезть в контроллер.

Вот в этом случае такие конструкции пригодились бы.
В контроллере интерпретируемый код, а не скомпилированный.

Т.е. никакими ухищрениями вы не уменьшите объём программы в контроллере. Только оптимизация.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 17.11.2016, 15:04   #7
shmidt.w
Senior Member
 
Регистрация: Aug 2015
Адрес: I live in Russia (Siberia), it's cold
Сообщения: 208
Благодарил(а): 1 раз(а)
Поблагодарили: 11 раз(а) в 10 сообщениях
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от Arsie Посмотреть сообщение
Т.е. никакими ухищрениями вы не уменьшите объём программы в контроллере. Только оптимизация.
Понятно, спасибо.
shmidt.w вне форума   Ответить с цитированием
Старый 17.11.2016, 15:12   #8
Gromov
Уволен из Сегнетикс
 
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от shmidt.w Посмотреть сообщение
Субсидируете разницу между ценой пикселя12 и трима?
Странные у вас запросы, хотите, чтобы жигуль ездил как бугатти вейрон, но доплачивать за двигатель не хотите...


__________________
В сегнетиксе не работаю с самого начала 2019 года.
Gromov вне форума   Ответить с цитированием
Старый 17.11.2016, 17:20   #9
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от shmidt.w Посмотреть сообщение
А можно было бы иметь одну универсальную программу и в одном месте меняя одну цифру выбирать нужную функциональность.
Ну так конструкторы именно так и построены.
Основной шаблон правится по заданным условиям.
ATS вне форума   Ответить с цитированием
Старый 17.11.2016, 17:22   #10
shmidt.w
Senior Member
 
Регистрация: Aug 2015
Адрес: I live in Russia (Siberia), it's cold
Сообщения: 208
Благодарил(а): 1 раз(а)
Поблагодарили: 11 раз(а) в 10 сообщениях
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от Gromov Посмотреть сообщение
Странные у вас запросы, хотите, чтобы жигуль ездил как бугатти вейрон, но доплачивать за двигатель не хотите...
Я спросил, убираются ли у жигуля задние сидения, чтобы перевезти диван, а вы мне советуете сменить машину
shmidt.w вне форума   Ответить с цитированием
Старый 17.11.2016, 17:46   #11
serg-el
Senior Member
 
Регистрация: Aug 2013
Адрес: Москва
Сообщения: 600
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Блоки from to

Цитата:
Сообщение от shmidt.w Посмотреть сообщение
Было бы неплохо, если бы были какие-то конструкции, позволяющие выключать блоки программы из компиляции.
Из компиляции - нет, из выполнения - да.
Тут чуть ...

Это блоки условного выполнения для уменьшения тика...
Вроде так ...


__________________
Всё, что нельзя выразить в цифрах — это не наука, это — мнение.
serg-el вне форума   Ответить с цитированием
Старый 17.11.2016, 17:52   #12
Gromov
Уволен из Сегнетикс
 
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Блоки from to

перевозка дивана решается прицепом (модулями MR, в случае пикселя). Здесь же, я считаю, речь идет о сравнении производительности контроллера с максимальной скоростью автомобиля. Большой проект, в котором описано всё-возможное, и лишь нужное используется - это сверхзадача для пикселя, его чипсет не приспособлен для решения таких задач.

Ну или, если говорить про количество блоков, можно сказать, что перевозка дивана решается модулем памяти, а вы хотите возить целый мебельный магазин на пикселе и это невозможно. А вот возить мебельный магазин на триме - очень даже можно. Да хоть целую икею! Мои проблемы с тримом начинались после 100 000 блоков fbd. Проблемы выражались в долгой загрузке проекта и медленной работой лоджика. Сам контроллер вытягивал без скрипа.


__________________
В сегнетиксе не работаю с самого начала 2019 года.
Gromov вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 17:32.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024