PDA

Просмотр полной версии : ST на ПР200



Сема
07.04.2022, 09:46
Добрый день, коллеги, ну подскажите когда полностью реализуете ST?

И ещё вопрос, когда же будет реализован ПР205 и будет ли?

Неудобно писать объёмные программы на FBD, столько уродливых и громоздких конструкций даже с учетом макросов.

melky
07.04.2022, 11:16
Объемные программы пишутся на ПЛК где есть ST, ПР-ки тут не очень удобны в принципе, хоть с макросами, хоть без....
А голого ST думаю в них не будет

игорь68
07.04.2022, 14:56
А спросить в теме по ST можно было? Зачем лишний мусор.

Ollema
08.04.2022, 12:33
Выбор прибора определяют его функции, а не объем кода. Или уже уперлись, код больше не влазит?

Мария Мильчакова
08.04.2022, 16:55
Добрый день, коллеги, ну подскажите когда полностью реализуете ST?

И ещё вопрос, когда же будет реализован ПР205 и будет ли?

Неудобно писать объёмные программы на FBD, столько уродливых и громоздких конструкций даже с учетом макросов.

Добрый день!

Если вы имеете в виду функциональные блоки на ST, то да, такие планы у нас есть.
Планируем выпуск в течение года.
Какой еще функционал хотите видеть на ST?

ПР205 находится в разработке, но по срокам сейчас сказать определенно сложно. Делаем все возможное, чтобы прибор вышел в 2022 году.
Расскажите, пожалуйста, где планируете применять прибор?

EFrol
08.04.2022, 18:04
В любом случае все закончится https://owen.ru/forum/showthread.php?t=17834&highlight=EFrol

keysansa
09.04.2022, 12:17
Выбор прибора определяют его функции, а не объем кода. Или уже уперлись, код больше не влазит?

У меня есть наработки на контроллере, который поддерживает ST.
Я не хочу заново, да еще и в неудобной среде их переписывать.
Функционально меня данный продукт устраивает. Выбор контроллера для данной задачи с поддержкой ST будет избыточным.
ST входит в IEC языки программирования.
ST является компилируемым языком, объем памяти не пропорционален коду.

Что не так?

keysansa
09.04.2022, 12:19
В любом случае все закончится https://owen.ru/forum/showthread.php?t=17834&highlight=EFrol

А почему не VeriLog, например? Этот язык ближе к электронике, чем asm.

EFrol
09.04.2022, 13:22
А почему не VeriLog, например? Этот язык ближе к электронике, чем asm.
1. Чем выше уровень языка, тем больше там подводных камней, оставленных системщиками.
2. Чем выше уровень языка, тем больше программист отделен от железа за ширмой библиотек и драйверов, которые в силу п.1, иногда глючат.
3. Чем больше программирование превращается в конфигурирование или рисование схем, чтобы стало доступнее НЕ ПРОГРАММИСТУ, тем выше должен быть уровень знаний ПОСЛЕДНЕГО. (например, возьмите 1С8)

Вопрос:
Зачем издеваться над НЕ ПРОГРАММИСТОМ, когда его гораздо проще научить программировать на уровне железа (на низком уровне), не ограничивая возможностями языка и среды разработки?

Однажды я дал КИПовцу электрическую схему К580ВМ80, на следующий день он принес программу в машинных кодах и сказал, что ему так понятнее.:rolleyes:

keysansa
09.04.2022, 13:42
1. Чем выше уровень языка, тем больше там подводных камней, оставленных системщиками.
2. Чем выше уровень языка, тем больше программист отделен от железа за ширмой библиотек и драйверов, которые в силу п.1, иногда глючат.
3. Чем больше программирование превращается в конфигурирование или рисование схем, чтобы стало доступнее НЕ ПРОГРАММИСТУ, тем выше должен быть уровень знаний ПОСЛЕДНЕГО. (например, возьмите 1С8)

Я так понял, Verilog вы считаете выше, чем asm?

keysansa
09.04.2022, 13:45
Вопрос:
Зачем издеваться над НЕ ПРОГРАММИСТОМ, когда его гораздо проще научить программировать на уровне железа (на низком уровне), не ограничивая возможностями языка и среды разработки?

Вы не из команды TraceMode случаем? Они долго троллили так разработчиков, типа наш язык для технологов, а не программистов. Однако, технологи так в TraceMode и не смогли, да и программисты тоже, хотя задумка (с каналами, их пред и пост обработкой) была интересная.



Однажды я дал КИПовцу электрическую схему К580ВМ80, на следующий день он принес программу в машинных кодах и сказал, что ему так понятнее.:rolleyes:

Не в машинных кодах, а на Verilog, скорее всего )

EFrol
09.04.2022, 14:39
Вы не из команды TraceMode случаем? Они долго троллили так разработчиков, типа наш язык для технологов, а не программистов. Однако, технологи так в TraceMode и не смогли, да и программисты тоже, хотя задумка (с каналами, их пред и пост обработкой) была интересная.


Не в машинных кодах, а на Verilog, скорее всего )

Вы путаете язык программирования с языком описания аппаратуры (https://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BE%D0%BF%D0%B8%D1%81% D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BF%D0%BF%D0%B0%D 1%80%D0%B0%D1%82%D1%83%D1%80%D1%8B)
Это разные вещи.
Как и язык VHDL (https://ru.wikipedia.org/wiki/VHDL) его можно только симулировать или генерировать топологию СБИС.
или шить ПЛИС. В этих языках нет понятия "последовательное выполнение".:rolleyes:

keysansa
09.04.2022, 14:44
Вы путаете язык программирования с языком описания аппаратуры (https://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BE%D0%BF%D0%B8%D1%81% D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BF%D0%BF%D0%B0%D 1%80%D0%B0%D1%82%D1%83%D1%80%D1%8B)
Это разные вещи.
Как и язык VHDL (https://ru.wikipedia.org/wiki/VHDL) его можно только симулировать или генерировать топологию СБИС.
или шить ПЛИС. В этих языках нет понятия "последовательное выполнение".:rolleyes:

Вы мне объясните, чем программирование ПЛИС на Verilog отличается от программирования, например PIC на ассемблере, тогда и поговорим.

EFrol
09.04.2022, 14:46
Вы мне объясните, чем программирование ПЛИС на Verilog отличается от программирования, например PIC на ассемблере, тогда и поговорим.

Поговорим о чем?

keysansa
09.04.2022, 15:45
Например о разнице, о которой я выше написал.

ЗЫ. Или про последовательное выполнение на обычных реле. Как захотите.

EFrol
09.04.2022, 16:59
Это мне не интересно.:(

Но интересно вот что. Можно ли этот код на ST переписать на FBD?:confused:



PROGRAM MHO
VAR
ItemTank: INT := 0;
ItemConsole: INT := 0;
TankItem: POINTER TO Tank;
ConsoleItem: POINTER TO Console;
PumpItem: POINTER TO Pump;
END_VAR

FOR ItemTank := 1 TO 12 DO
TankItem := ADR(Tank[ItemTank]);

IF TankItem^.IdPump > 0 THEN
PumpItem := ADR(Pump[TankItem^.IdPump]);

IF TankItem^.IdConsole > 0 THEN
ConsoleItem := ADR(Console[TankItem^.IdConsole]);

IF PumpItem^.OnTMR.Q THEN
ConsoleItem^.LampStart := 0.5;
ELSE
ConsoleItem^.LampStart := 1;
END_IF

IF TankItem^.Level1 AND NOT TankItem^.AlarmLevelD THEN
IF ConsoleItem^.KeyStart AND ConsoleItem^.KeyStop THEN
PumpItem^.State := TRUE;
END_IF
ELSE
PumpItem^.State := FALSE;
END_IF

IF NOT ConsoleItem^.KeyStop AND NOT ConsoleItem^.KeyStart THEN
PumpItem^.State := FALSE;
END_IF
END_IF
END_IF
END_FOR

keysansa
09.04.2022, 17:06
Вы отказались ответить на мой вопрос. и задаете свой? Молодца, что сказать.
По вашему новому вопросу - попробуйте на asm этот алгоритм реализовать.
Если реализуете - то и на fbd сможете.

ЗЫ. Но к чему вы сюда приплели ST - не понятно, вы же сами говорили, что в истоках asm...Балабол?

melky
09.04.2022, 17:18
EFrol правильный ответ на вопрос "можно ли?" - НЕ НУЖНО.

EFrol
09.04.2022, 17:22
Вы отказались ответить на мой вопрос. и задаете свой? Молодца, что сказать.
По вашему новому вопросу - попробуйте на asm этот алгоритм реализовать.
Если реализуете - то и на fbd сможете.

ЗЫ. Но к чему вы сюда приплели ST - не понятно, вы же сами говорили, что в истоках asm...Балабол?

Я поступаю так же как Вы. Вопросом на вопрос.

EFrol
09.04.2022, 17:24
EFrol правильный ответ на вопрос "можно ли?" - НЕ НУЖНО.

Это кстати ответ на любой вопрос.

EFrol
09.04.2022, 17:27
Может вернемся к теме?
А то нас в курилку отправят.

keysansa
09.04.2022, 17:37
Вы путаете язык программирования с языком описания аппаратуры (https://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BE%D0%BF%D0%B8%D1%81% D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BF%D0%BF%D0%B0%D 1%80%D0%B0%D1%82%D1%83%D1%80%D1%8B)
Это разные вещи.
Как и язык VHDL (https://ru.wikipedia.org/wiki/VHDL) его можно только симулировать или генерировать топологию СБИС.
или шить ПЛИС. В этих языках нет понятия "последовательное выполнение".:rolleyes:

Где тут у вас вопрос? В том сообщении, на который вы попытались ответить - уже был вопрос от меня, но он саркастический. Раз вы не из TraceMode. Вы же не из него? )

Вот мой вопрос был:

Вы мне объясните, чем программирование ПЛИС на Verilog отличается от программирования, например PIC на ассемблере, тогда и поговорим.


Я поступаю так же как Вы. Вопросом на вопрос.
Но я отвечу. На VHDL я смогу, например, создать процессор, выполняющий asm. На asm - максимум - смогу эмулировать его.

keysansa
09.04.2022, 17:38
Может вернемся к теме?
А то нас в курилку отправят.

Прикольно, самому выйти на asm, а потом призывать вернуться в тему, когда по asm нечего сказать...

keysansa
09.04.2022, 17:39
EFrol правильный ответ на вопрос "можно ли?" - НЕ НУЖНО.

А почему - не "надо подумать"? ))

EFrol
09.04.2022, 17:48
Но я отвечу. На VHDL я смогу, например, создать процессор, выполняющий asm. На asm - максимум - смогу эмулировать его.
Так Вы это хотели услышать от меня?

EFrol
09.04.2022, 17:53
А почему не VeriLog, например? Этот язык ближе к электронике, чем asm.

Зачем Вы приплели сюда VeriLog?

EFrol
09.04.2022, 17:58
Прикольно, самому выйти на asm, а потом призывать вернуться в тему, когда по asm нечего сказать...

Ну и где я вышел на ASM?

EFrol
09.04.2022, 18:00
Мой вопрос был:
Зачем издеваться над НЕ ПРОГРАММИСТОМ, когда его гораздо проще научить программировать на уровне железа (на низком уровне), не ограничивая возможностями языка и среды разработки?

И Вы ответили сарказмом.:rolleyes:

Мой ответ: Да VeriLog выше чем ASM.

Тезис заключается в том, что лучше КИПовца научить программировать на высоком ST, чем мучать его FBD.

keysansa
09.04.2022, 18:09
Мой вопрос был:
Зачем издеваться над НЕ ПРОГРАММИСТОМ, когда его гораздо проще научить программировать на уровне железа (на низком уровне), не ограничивая возможностями языка и среды разработки?

И Вы ответили сарказмом.:rolleyes:

Мой ответ: Да VeriLog выше чем ASM.

Тезис заключается в том, что лучше КИПовца научить программировать на высоком ST, чем мучать его FBD.

Вы что-то путаете.
Я ответил на ваше утверждение, что все закончится <ссылка>, там говорилось про assembler. Я сказал, что изначальнее - язык описания схем.
Дальше новых вопросов не было.
Опять ложь?

EFrol
09.04.2022, 18:32
Язык VerilLog появился в 1983г.
Язык Ассемблера появился в 1949г.
И я не буду с Вами спорить о том, что было изначально.

Да и в моей ссылке речь шла о том, зачем изобретать новые языки, когда и старые работаю неплохо.
Зачем создавать новые тяжелые неповоротливые среды (типа CDS 3.5) с многотомными описаниями и глюками,
когда ArduinoIDE справляется практически со всеми проблемами. Ассемблер брался, как альтернатива IL.
А Вы решили придраться на ровном месте?

EFrol
09.04.2022, 18:51
А хотите я еще совру?! На предмет "курица или яйцо".
С начала был машинный код, на котором написали компилятор с Ассемблера.
На ассемблере написали компилятор с языка C. Далее написали - С++.
А уже потом написали компиляторы с VeriLog, который почему-то очень похож на C, и при этом не является алгоритмическим языком.

Я не имею ничего против VeriLog, но как выразился melky "НЕ НУЖНО". Есть УГО и принципиальные схемы - чем они не угодили то?

EFrol
09.04.2022, 19:07
ЗЫ. Я знаю, что ответ будет "НЕ НУЖНО", но все равно спрошу?

Если в ArduinoIDE добавить поддержку ОВЕНовских ПЛК и проекты писать на C++ - дело бы пошло или нет?
Как думает сообщество электронщиков и программистов? Может кто-то уже реализовал такую идею? А я - ни сном ни духом.

melky
09.04.2022, 19:20
А почему - не "надо подумать"? ))

Потому что в текущем состоянии ОЛ это костыли, переписывать надо с нуля, а не пытаться натягивать сову на глобус.

Parovoz
10.04.2022, 06:57
Мой вопрос был:
Зачем издеваться над НЕ ПРОГРАММИСТОМ, когда его гораздо проще научить программировать на уровне железа (на низком уровне), не ограничивая возможностями языка и среды разработки?

И Вы ответили сарказмом.:rolleyes:

Мой ответ: Да VeriLog выше чем ASM.

Тезис заключается в том, что лучше КИПовца научить программировать на высоком ST, чем мучать его FBD.

У меня есть знакомый киповец, с которым мы время от времени делаем общие проекты, в общем когда пишу на ST, он на это смотрит как на какую-то магию, однако, контактно-релейные схемы он понимает очень даже хорошо, и вот мы что-то делали на ПРках, он увидел программирование на FBD, и говорит, что это же просто схему надо нарисовать, так это же просто. В общем я ему за 5 минут объяснил принцип построения диаграмм, и он буквально на ходу самостоятельно накидал программу для ПР.

А на ST он также и смотрит, как на какое-то колдунство.
FBD по-моему отсюда и вырос из умения составления логических схем.

Лично мне проще писать на ST, но могу реализовать и на FBD без особых проблем.

EFrol
10.04.2022, 08:25
Лично мне проще писать на ST, но могу реализовать и на FBD без особых проблем.
Вот именно! А почему проще? Потому-что Вы разбираетесь в этой "магии".
И по мере усложнения проекта Вы можете упрощать код используя эту "магию" (итерацию, рекурсию, указатели на объекты, массивы),
то что на FBD тоже можно сделать, но какой ценой.

Тут ОВЕНовцы спрашивают: что мы хотим от ST? Это говорит о том, что FBD уже не удовлетворяет.
Им хочется, чтобы проекты писали КИПовцы для решения несложных задач.
А так как задачи бывают и сложные, приходится привлекать программистов, которым ST подавай.

Я понимаю, что программисту легче понять КИПовца и переписать на FBD.
В итоге КИПовец уступает программисту, а программист недоволен потерянным временем.

Мне кажется проблема не имеет решения.

Parovoz
10.04.2022, 09:22
Легче потому что в университете было программирование на паскале, делфи, С, С#, С++, ассемблере, html. Поэтому мне был проще к восприятию ST.
А товарищ закончил электротехнический колледж, где он рисовал разные схемы и в глаза не видел программирование, поэтому ему проще FBD.

Ollema
10.04.2022, 12:09
О чем сыр-бор? Кому на чем проще, на том и пишите! Никого никто не заставляет переучиваться или перепонимать :) Иначе смахивает на выбор обезьяны: банан или гранату?

melky
10.04.2022, 15:46
в университете было программирование на паскале, делфи, С, С#, С++, ассемблере, html

Вот это вас прокатили по верхам :)

Сема
11.04.2022, 14:39
Выбор прибора определяют его функции, а не объем кода. Или уже уперлись, код больше не влазит?

Не рассчитал чуть чуть, объект большой, думали уложимся, просто хотели бы за относительно недорого что нибудь на си писать.

Сема
11.04.2022, 14:41
Добрый день!

Если вы имеете в виду функциональные блоки на ST, то да, такие планы у нас есть.
Планируем выпуск в течение года.
Какой еще функционал хотите видеть на ST?

ПР205 находится в разработке, но по срокам сейчас сказать определенно сложно. Делаем все возможное, чтобы прибор вышел в 2022 году.
Расскажите, пожалуйста, где планируете применять прибор?

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

Сема
11.04.2022, 14:48
У меня есть знакомый киповец, с которым мы время от времени делаем общие проекты, в общем когда пишу на ST, он на это смотрит как на какую-то магию, однако, контактно-релейные схемы он понимает очень даже хорошо, и вот мы что-то делали на ПРках, он увидел программирование на FBD, и говорит, что это же просто схему надо нарисовать, так это же просто. В общем я ему за 5 минут объяснил принцип построения диаграмм, и он буквально на ходу самостоятельно накидал программу для ПР.

А на ST он также и смотрит, как на какое-то колдунство.
FBD по-моему отсюда и вырос из умения составления логических схем.

Лично мне проще писать на ST, но могу реализовать и на FBD без особых проблем.

Времени на ФБД уходит больше, на маленьком мониторчике не найти ни концы ни края, при наладке это очень муторно. Контроллеры это очень дорого, да и функционал избыточен и не нужен, зачем платить лишние деньги?

Сема
11.04.2022, 14:49
Легче потому что в университете было программирование на паскале, делфи, С, С#, С++, ассемблере, html. Поэтому мне был проще к восприятию ST.
А товарищ закончил электротехнический колледж, где он рисовал разные схемы и в глаза не видел программирование, поэтому ему проще FBD.

Товарищи, что-то вас далеко занесло. XD, я всего лишь спросил, будет такая реализация или нет.

keysansa
11.04.2022, 20:47
Да и в моей ссылке речь шла о том, зачем изобретать новые языки, когда и старые работаю неплохо.
Зачем создавать новые тяжелые неповоротливые среды (типа CDS 3.5) с многотомными описаниями и глюками,
когда ArduinoIDE справляется практически со всеми проблемами. Ассемблер брался, как альтернатива IL.
А Вы решили придраться на ровном месте?
Нет, я как раз и привел Verilog, в надежде, что вы прочувствуете всю боль создания программы даже не на ассемблере (в котором, как известно из байки "прострелить себе ногу", надо придумывать всё) а на нем, где "даже себя сначала надо придумать".
На C - гораздо легче работать, чем на asm. Поэтому и быстрее. На С++ еще легче и быстрее.
Однако, надо тратить время на изучение языка.
Электрики LD вообще не учат. Показал им программу - все понятно.
ST - надо учить, но писать на нем быстрее, чем на asm и LD.
ЗЫ. Вы в курсе, что и Fortran используется и достаточно часто?

EFrol
11.04.2022, 21:54
Нет, я как раз и привел Verilog, в надежде, что вы прочувствуете всю боль создания программы даже не на ассемблере (в котором, как известно из байки "прострелить себе ногу", надо придумывать всё) а на нем, где "даже себя сначала надо придумать".
На C - гораздо легче работать, чем на asm. Поэтому и быстрее. На С++ еще легче и быстрее.
Однако, надо тратить время на изучение языка.
Электрики LD вообще не учат. Показал им программу - все понятно.
ST - надо учить, но писать на нем быстрее, чем на asm и LD.
ЗЫ. Вы в курсе, что и Fortran используется и достаточно часто?

Вы меня извините, keysansa, но я Вас не могу понять.:(
Зачем мы занимаемся констатацией фактов?
Если языки придумываются и используются - значит это кому-то надо. Верно?
Языки придумываются для того, чтобы облегчить написание программ в тех предметных областях для которых они создаются. Верно?
Я знаю, что и Fortran и даже FORTH еще кем-то используется.

Но Вы посмотрите, что пишет Сема:

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

Вы пишите:

Электрики LD вообще не учат.

А я говорю:

Если электрики не хотят, может и не нужно для них стараться? Может уже пора ориентироваться чисто на программистов?

Я может не правильно выражаюсь? Вы уловили мысль?
Создать единый универсальный язык, ориентированный на программистов.

Но продолжая рассуждать дальше - и это НЕ НЕЖНО делать.
Мы же ведь знаем, что большая часть ПО для железа (драйверы и т.д.) пишется на C в связке с ASM.
И даже OC для ПЛК и ПР ОВЕНовцами пишется на C. Так может не стоит тратить время на поддержание того-же CDS и OwenLogic?
Эти бесконечные глюки и иже с ними обновления уже изрядно поднадоели.

Берем того же:

Легче потому что в университете было программирование на паскале, делфи, С, С#, С++, ассемблере, html.
и ориентируемся на этих ребят. Электрики пусть схемы на бумаге рисуют, а наши ребята пишут проекты на C.

Всё! Надо тему закрывать! Эта проблема не имеет решение. Здесь явно имеет место конфликт интересов.

keysansa
11.04.2022, 22:14
Вы меня извините, keysansa, но я Вас не могу понять.:(
Зачем мы занимаемся констатацией фактов?

Это называется проблема терминологии.


Если языки придумываются и используются - значит это кому-то надо. Верно?
Языки придумываются для того, чтобы облегчить написание программ в тех предметных областях для которых они создаются. Верно?

Вы уж определитесь, а не метайтесь:


Да и в моей ссылке речь шла о том, зачем изобретать новые языки, когда и старые работаю неплохо.
Зачем создавать новые тяжелые неповоротливые среды (типа CDS 3.5) с многотомными описаниями и глюками,
когда ArduinoIDE справляется практически со всеми проблемами. Ассемблер брался, как альтернатива IL.
А Вы решили придраться на ровном месте?

ЗЫ.
Создать единый универсальный язык, ориентированный на программистов.
1. Вы изначально писали, что "нет лучше asm" (это не цитата).
2. Потом вы говорите о "едином и универсальном языке".
Я думаю, что:
1. Вы не программист, а "околоходящий мечтатель"
2. Следовательно, не понимаете, что язык программирования - это прокладка между мыслью человека и компьютером. Фотошоп это делает по своему, причем с учетом, как работали художники. Mathlab - по своему, с учетом, как работают математики...

EFrol
11.04.2022, 22:40
Жаль что не знаю Вас так хорошо, как Вы меня. Тоже одарил бы комплиментами. Всего Вам доброго.

keysansa
11.04.2022, 23:02
Жаль что не знаю Вас так хорошо, как Вы меня. Тоже одарил бы комплиментами. Всего Вам доброго.

Жаль, что быстро...
ЗЫ. Диоген тоже был мечтателем...