форум асутп
 На главную                       Здесь может быть Ваша реклама, подробнее...

здесь может быть ваша реклама

 Наверх  |  Перейти к теме  |  Поиск  |  Вход  |  Дерево    
 помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   13.12.17 10:00

Всем привет!

На заводе есть немецкий станок, управляется от IBM-PC по LightBus-оптоволоконной шине, соединяющей BECKHOFF контроллеры/коплеры в одну сеть.

Операционка только DOS

На диске в каталоге Program много файлов с расширением *.nc

Встала задача немного изменить алгоритм работы станка.
Но вот какими средствами это сделать пока не ясно.
Может кому уже встречались подобные системы.

Привожу содержимое одного из этих файлов:

(**************************************************************************)
(***************** WB 142 Rolladennippelbohrung ***************************)
(*OB*************************************** 27.11.2000 ********************)

:N0001 H5

N0010   T5

N0020   R102=200 R107=2         ( Abstand Werkzeug zum Profil )
N0021   R101=R1004-R102
N0022   R100=0.00
N0028   R108=R1005+R102         ( Eintauchtiefe + 2mm )
N0029   R104=R100-R108          ( Negative Eintauchtiefe )

N0030  G90 G00 Y=R101  X=R201   ( R201  X-AV Wert )
N0031  G90 G00         Z=R1001  ( R210  Z-AV Wert )
N0040  G91 G01 F=R1006 Y=R108
N0055  G91 G01 F30 Z0.01
N0070  G90 G00 Y=R101
N0080  T0
N0090  G90 G00 Z=R222
               Y=R221

N0160 H0

N0200  M02

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: Oleg Belitskiy 
Дата:   13.12.17 11:07

если BECKHOFF , то среда TwinCat, полагаю
https://infosys.beckhoff.com/index_en.htm
а TwinCAt, говорят CodeSys со спец библиотеками

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   13.12.17 11:17

Здравствуйте.

>Встала задача немного изменить алгоритм работы станка.
>Но вот какими средствами это сделать пока не ясно.
>Может кому уже встречались подобные системы.


Это наверно G-Code. Векторное задание для координатных станков, ЧПУ и др.
ISO 6983-1, ГОСТ 20999-83
nc - numerical control
https://www.tormach.com/g90_g91.html

N - номер шага. Изменения координат, движения инструмента.

Менять в текстовом редакторе можно )

---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   13.12.17 11:43

Таак! Немного прояснили!

Очень похоже на G-Code (TwinCat же для Windows, а у нас же старый DOS)

Наш станок обрабатывает детали по заданным координатам.

В текстовом редакторе исправить конечно же можно, но разве это не простые исходники?
Наверное потом ещё нужно скомпилировать все эти изменённые NC-файлы... или ещё как-то...?

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   13.12.17 12:02

Нет, это не исходники.
Это шаги изменения координат.
Саму программу станка, отрабатывающую координаты, лучше не трогать.
У любого станка и инструмента есть ограничения на возможные перемещения (что
бы не сломать),
Но если немного изменить файл, то можно увидеть, что траектория стала иной.
Есть проигрыватели G-кода, которые нарисуют рисунок по вашему .nc файлу и
наоборот, закодируют рисунок в .nc


---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: Oleg Belitskiy 
Дата:   13.12.17 12:30

> TwinCat же для Windows, а у нас же старый DOS)
последняя версия поддерживает старые версии. Тмеется ли  разница в какой среде программировать?

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   14.12.17 10:28

>>> Саму программу станка, отрабатывающую координаты, лучше не трогать.

Вот именно её-то мы и хотим изменить!

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

Как я понял файлы NC менять скорее всего не нужно.
Необходимо только изменить основной код.
Но вот здесь-то и проблема. Исходный код или отсутствует или его вообще не было,
а весь алгоритм описан видимо на языке IL, так как в другом каталоге много файлов №.FB
имеющих такой вот вид:

        UN   M   11041.0 Anwahl Schraubentopf                            ;Verstellung
        U    M   10219.0 Data Valid Verstellung                          ;nicht angew„hlt
        S    M     350.7 Verst. Topf fertig                              ;
                                                                         ;-------------------------
        ON   M   10219.0 Data Valid Verstellung                          ;
        ON   M   11041.0 Anwahl Schraubentopf                            ;
        SPB  =      AUT1                                                 ;------------------------
        U    M   10219.0 Data Valid Verstellung                          ;Anwahl Topf 1
        UN   M   11040.0 Anwahl Topf                                     ;
        S    A      53.0 Anwahl Topf 1                                   ;
        R    A      53.1 Anwahl Topf 2                                   ;
                                                                         ;------------------------
        U    M   10219.0 Data Valid Verstellung                          ;Anwahl Topf 2
        U    M   11040.0 Anwahl Topf                                     ;
        S    A      53.1 Anwahl Topf 2                                   ;
        R    A      53.0 Anwahl Topf 1                                   ;
                                                                         ;------------------------
        U    M   10219.0 Data Valid Verstellung                          ;Anwahl Topf 1 fertig
        UN   M   11040.0 Anwahl Topf                                     ;
        U    A      53.0 Anwahl Topf 1                                   ;
        U    E      51.4 Topf 1 angew„hlt                                ;
        UN   E      51.5 Topf 2 angew„hlt                                ;
        O                                                                ;
        U    M   10219.0 Data Valid Verstellung                          ;Anwahl Topf 2 fertig
        U    M   11040.0 Anwahl Topf                                     ;
        U    A      53.1 Anwahl Topf 2                                   ;
        UN   E      51.4 Topf 1 angew„hlt                                ;
        U    E      51.5 Topf 2 angew„hlt                                ;
        S    M     350.7 Verst. Topf fertig                              ;
AUT1  :                                                                  ;
        BE

Так что мой вопрос повторяется, только теперь относительно другого кода:                                                                                  Что значит каждая из этих инструкций?
Они вручную пишутся или с помощью какого-то софта?
(Вероятнее всего вручную, так как файлы датированы 1995 годом)
Если вручную, то как в них разобраться и где найти мануалы?
Да и вообще, возможно ли это?

P.S.
Помимо этого на диске в папке Program присутствуют файлы с разными расширениями
(AE  PEL   DRP  ETA  GXL  ME   PFS   TAV   PLI   MOD   PVC   CRF   SPS  NDB   NTB   NM0   PRD   N00   LM0   NTB    $AT   $PL   $RN   $SN   и др. )
в которых вот такое вот:
rЂд+Ы‰^8K‰^6±‰NDѓЗ ‰~@ЊFBЉД».ЧЉРЉД»fяяГђј'т'а'О'P
Эти-то файлы точно не набирались вручную, значит есть какой-то компилятор/линковщик...

Если у кого-то есть хоть какие-то предположения, пожалуйста поделитесь!

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   14.12.17 12:08

Здравствуйте.

>>> Саму программу станка, отрабатывающую координаты, лучше не трогать.
>Вот именно её-то мы и хотим изменить!
Зачем ?
>Как я понял файлы NC менять скорее всего не нужно.
Из чего поняли ?
>Необходимо только изменить основной код.
Этого лучше не делать и задачу для обработки второй стороны .nc файлом
корректно свести в 0, экономя ресурс механизма.

Программа на диалекте языка S5-IL, от Beckhoff, это комплексы S1000 или
S2000 до перехода Beckhoff на Win платформы
(TwinCAT (The Windows Control and Automation Technology)).

---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   15.12.17 03:59

файлы NC отвечают только за координирование и перемещение механизма относительно обрабатываемой детали с заданной скоростью.

Поэтому если я сведу этот файл к минимуму движения, то основная программа остановит станок с выдачей предупреждения о том, что (например) "Обрабатывающий механизм через две секунды после начала движения не достиг крайнего положения" или "Нарушена связь с энкодером"

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

Или я всё-таки совершенно не понял этот G-code и именно в нём и описаны реакции на концевики и никакого Главного Алгоритма не существует?!....

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   15.12.17 05:33

Здравствуйте,

>Да и вообще, имея возможность корректировать основной алгоритм можно
поменять местами очерёдность обработки сторон, увеличить число проходов,
>изменить реакцию на кнопки и их длительность, а файлы координирования
оставить как есть, просто не использовать их.
Если вы готовы переписать программу, конечно гибкость будет больше, но и
работы гораздо больше и программные среды разработки надо найти тех
"старых" версий, что очень затруднительно.

>Или я всё-таки совершенно не понял этот G-code и именно в нём и описаны
реакции на концевики и никакого Главного Алгоритма не существует?!....
Как осуществляется контроль перемещения только автор программы и ответит (и
Вы после долгих разбирательств сможете).
Как я понимаю задание координат и операций перемещения инструмента станка
ЧПУ в том и состоит, что бы не меняя основной управляющей программы,
создать тысячи вариантов обработки деталей. Не должен технолог,
разрабатывающий новый вариант обработки деталей, уметь писать программу
станка ЧПУ и каждый раз это делать.
Может я конечно заблуждаюсь и основная программа генерируется вместе с
файлами .nc в общем проекте для данного класса ЧПУ.
Но когда я писал программы управления ЧПУ им было всё равно, сколько шагов
будет в G-code.
Контролировать инструмент, основная программа может/должна по файлу .nc, не
привязываясь к одной детали. Что в нём указано, то и контролируем.


---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   19.12.17 05:15

>>> Не должен технолог,разрабатывающий новый вариант обработки деталей, уметь писать программу
станка ЧПУ и каждый раз это делать

Это я должен один раз её модернизировать под сложившиеся обстоятельства и пусть технолог ещё лет десять спокойно поработает на этом станке.

Я готов потратить много времени и переписать программу
Но мне не понятно какие программные среды разработки применялись для этих "старых" версий.

А раз не понятно, то объявляется главный вопрос: Как это узнать?
Ответ: Наверное по набору файлов.

Тогда объявляется самый главный вопрос: К кому и куда обратиться с этим набором файлов?

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   26.12.17 05:38

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

нашёл каталог с файлами проекта.
По расширению похоже на функциональный блок, но там вроде бы IL

 Гляньте на содержимое 123.FBD
//////////////////////////////////////////////////////////////////////////////////////
                                                                         ;********************
        UN   M   11414.0 SV Achse 7 Anforderung                          ;Servo Achse 7
        SPB  =      EIC1                                                 ;verstellen
                                                                         ;
        U    M   11414.0 SV Achse 7 Anforderung                          ;
        U    E      52.0 Schr.fest oben Ruhest.                          ;
        U    E      53.0 Schr.fest unt.Ruheste.                          ;
        U    E      55.0 Schr.verf.ob.Ruhest.                            ;
        U    E      56.0 Schr.verf.unt.Ruhest.                           ;
        S    M   11415.0 SV Achse 7 Freigabe                             ;
        R    M   11414.0 SV Achse 7 Anforderung                          ;
                                                                         ;
EIC1  :                                                                  ;
        UN   M   11414.1 SV Achse 7 Posi fertig                          ;
        SPB  =      EIC2                                                 ;
                                                                         ;
        U    M   11414.1 SV Achse 7 Posi fertig                          ;
        U    E      52.0 Schr.fest oben Ruhest.                          ;
        U    E      53.0 Schr.fest unt.Ruheste.                          ;
        U    E      55.0 Schr.verf.ob.Ruhest.                            ;
        U    E      56.0 Schr.verf.unt.Ruhest.                           ;
        S    M   11415.1 SV Achse 7 Verst. fert                          ;
        R    M   11414.1 SV Achse 7 Posi fertig                          ;
EIC2  :                                                                  ;
                                                                         ;========================
        BE                                                               ;

//////////////////////////////////////////////////////////////////////////////////////

Может кто знает что означают служебные символы и где взять их полный перечень и расшифровку?
В первой колонке наверное операторы, во второй - операнды, в третьей - адреса?
Я выписал несколько строк из разных файлов.
Вот они:

        U    M      70.4 Hand: Sprueh.Gesamtdruck aktiv                  ;
        UN   M    9994.0 Start Automatik PVC-Zuschnitt                   ;
        =    A      34.2 SprЃheinr.Gesamtdr.aktiv

        U    A      80.6 3fach Bohrer an                                 ;Absaugung am SBZ 2
        O    A      81.4 Bohrmotor oben                                  ;
        O    A      81.5 Bohrmotor unten                                 ;
        L    DW        9                                                 ;1000 Sekunden
        SA   T         9 Absaug. SBZ 1

        U    T         0 Taktgeber (FB0)                                 ;
        =    M       0.7 Taktgeber (FB0 T0)                              ;

        L    Z         1 TAKTZAEHLER                                     ;
        L    KF       +8                                                 ;
        >=F                                                              ;
        R    Z         1 TAKTZAEHLER

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   26.12.17 14:15

Здравствуйте,
С таким подходом реверс-инжиниринга у Вас ничего не получится.
Среду разработки надо найти в первую очередь.
Разобраться со структурой языка S5-IL (AWL) от Beckhoff, как мы уже 14
декабря обсуждали.
Найти FB, OB, PB как они у Beckhoff используются.
В сети больше описания S5 от SIEMENS, но они отличаются.

Поищите DIN 192239. Или на подходящем языке книжку (со стр. 13. )
http://www.brescianet.com/appunti/elettronica/plc/ManualiSimatic/PLC_AWL.pdf


---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   27.12.17 04:10

Спасибо за поддержку, Александр!
Показали информацию и сразу картина немного прояснилась.
Даже с итальянского языка можно понять примеры.
Теперь я могу перевести что значит вот такая вот штука:

U E 0.1
U E 0.2
U E 0.3
U E 0.4
O E 0.5
= M 0.1
U M 0.1
S A 1.0
U E 0.6
R A 1.0

А это значит, что четырёхвходовой элемент И соединён с первым входом двухвходового ИЛИ
Выход этого ИЛИ устанавливает триггер в единицу. Сбрасывается триггер отдельным ресетным входом. А уже триггер управляет выходом контроллера.
В более понятном современном виде это примерно так:

IF (%i1 and %i2 and %i3 and %i4) or %i5 THEN SET %M1;
IF %i6 THEN RESET %M1;
%Q1 := %M1;

Но в ссылке описаны не все инструкции.
Хотя наверное можно в сети найти все S5-IL

А дальше как быть? Нужен же какой-то компилятор.
Когда я исправлю код, нужно будет получить новый файл programma.exe

Я понимаю, что
>>> Среду разработки надо найти в первую очередь.
Но вот где этого мамонта отрыть и как он вообще называется?

PS
Установил современный TwinCAT от BECKHOFF, но он не понимает этих древних файлов : - (

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: Maksim_NT 
Дата:   27.12.17 05:32

ditalent писал(а):

> Всем привет!
>
> На заводе есть немецкий станок, управляется от IBM-PC по LightBus-оптоволоконной
> шине, соединяющей BECKHOFF контроллеры/коплеры в одну сеть.
>
> Операционка только DOS
> На диске в каталоге Program много файлов с расширением *.nc
>
> Встала задача немного изменить алгоритм работы станка.
> Но вот какими средствами это сделать пока не ясно.
> Может кому уже встречались подобные системы.

Похоже на УЧПУ.
Что за станок? Кто производитель?
Что на шильдиках станка ?
ЧТо о нем в документации?
Что об исполнении программе  в инструкции производителя?
Что с индикацией на экранах ?


Вам уже указали направление:
G-Code. Векторное задание для координатных станков, ЧПУ


Вы когда он режет код исполнения записали?
Посмотрели что за программа на индикации?
Код этой программы расшифровали ?

Под DOS по настоящее время для ЧПУ внедряем панели/ПК - обязательно отображение/обмен/управление в реальном времени.

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   27.12.17 12:58

Здравствуйте,
>Но в ссылке описаны не все инструкции.
>Хотя наверное можно в сети найти все S5-IL
В этой небольшой книжки описан S5-IL от SIEMENS, но если бы вы нашли среду
разработки ПЛК, то там и встроенная справка имеется наверняка.
>Но вот где этого мамонта отрыть и как он вообще называется?
Наверно только в архивах BECKHOFF и найти.

Разбираться с языком, но не знать как его потом компилировать и чем, думаю,
полезно только для понимания действий программы.
Может вариант взять и переписать всё на новый ПЛК (SoftPLC ПК TwinCAT +
Lightbus PCI плата FC2001, FC2002), поняв как работает, будет лучше ?
Немного затратнее по оборудованию, но "старые" аккумуляторные ассемблеры в
виде IL/AWL замените на более понятный код.
---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 
 Re: помогите опознать язык и среду программирования
Автор: ditalent 
Дата:   28.12.17 05:32

Я нашёл среду разработки ПЛК Степ5, но устанавливать пока не стал, так как почитал прилагаемый CHM и увидел, что среда создаёт и обрабатывает файлы совсем других расширений (*.S5D   *.SEQ   *.ADD   *.MIG   *.SWP), а не тех, которые у меня.

 Питерские представители БЕКХОФ в архивах искать не стали и тупо отправили к производителю. А он уж давно не существует.

 Так что скорее всего придётся бросить это гиблое дело, прикупить FC2001 и начать свой проект...

Адрес этого сообщения    Ответить на это сообщение
 
 RE: помогите опознать язык и среду программирования
Автор: Зоркальцев А.А. 
Дата:   28.12.17 06:55

Здравствуйте,
> Я нашёл среду разработки ПЛК Степ5, но устанавливать пока не стал, так как
почитал прилагаемый CHM и увидел, что среда создаёт и обрабатывает файлы
Степ5 это SIEMENS среда для ПЛК. Аналог, может даже предшественник, но для
DOS БЕКХОФ подойдёт только как некоторые программки промоделировать для
понимания.
OB, FB необходимо будет подменять или учитывать их отличие.
> Так что скорее всего придётся бросить это гиблое дело, прикупить FC2001 и
начать свой проект...
Хороший вариант для гибкости если ресурс оборудования позволяет, но оно уже
хорошо поработало свой срок службы отслужив.

---
С уважением,
Зоркальцев Александр
ООО ЭлеТим, г. Томск.

Адрес этого сообщения    Ответить на это сообщение
 Список форумов    


 Список форумов  |  Нужен логин? Регистрируйтесь здесь 
 Логин пользователя
 Имя пользователя:
 Пароль:
 Помнить пароль:
   
 Забыли ваш пароль?
Введите имя пользователя или e-mail, и новый пароль будет послан на email, указанный в вашем профиле.

Рейтинг@Mail.ru