OPUS (CAM software)

from Wikipedia, the free encyclopedia
OPUS

Opusscreenshot.jpg
Screenshot of the OPUS-CAM software
Basic data

developer OPUS Development and Sales GmbH
Current  version OPUS V21 (Release 20.04)
operating system Windows
programming language C ++ / SESAM
category CAM / CAD
License Proprietary
German speaking Yes
www.opus-cam.de

The O ffene P roduktions- U nterstützungs- S ystem OPUS is a CAM - / CAD - software for the creation, modification and simulation of NC programs for turning , milling , wire EDM and torch cutting operations in the machine , tool and mold making .

history

The software has been produced by OPUS Vertriebs- und Entwicklungs GmbH in Kirchheim unter Teck since 1980 . At that time, programmable pocket calculators with programs for calculating the contour of cutting edge radius compensation and milling cutter path correction were sold. Over many years, a modular CAD / CAM system developed from this, which offers solutions for the diverse tasks in the field of CNC programming . In terms of market share, the company occupies a leading position in the German-speaking region.

The name "Open Production Support System" includes the concept of the software: to optimally solve every problem posed by flexibility and adaptability and to integrate openly into every existing structure. OPUS provides core modules with which the user can put together an individual software solution for his CNC machine . We have worked closely with companies such as LuK , Mapal and Bosch for years.

The system is being further developed by around 20 people and sold worldwide. So far there have been more than 4000 installations at almost 1000 companies. OPUS itself is used as a (modeling) core in other software systems, e.g. B. in the graphically interactive time and cost calculation system TICC or the system PUMA for aluminum profile processing . Furthermore, OPUS is used in research and teaching. Over the years, a number of publications and theses have been created using the system.

software

The system is developed in C ++ . Large parts of the system are in the native macro language SESAM ( S NTERFACE to E NLARGEMENT of S ystems by a nwendungsspezifische M akros) written, which are open to the user as a source code. In this way, the system can be easily expanded in relation to the application.

OPUS consists of several components

  • for generating, modifying and managing NC programs, post processors and the application-related macros in SESAM (OPUSEDI),
  • for the generation and manipulation of turning, milling and wire EDM machining in 2D or 3D, for the generation, analysis and modification of CAD models as raw and finished parts including machining, for creating machine models including the necessary kinematics and for creating and managing tools (OPUSGEO),
  • for source, reverse and machine simulation of NC programs including the display of collisions and overruns (OPUSSIMU) and
  • for workshop networking with DNC and machine data acquisition (MDE).

OPUS supports lathes with two and four axes and milling machines with three and five axes. The OPUS system includes software libraries from OWLNext ( user interface ), ACIS ( modeling kernel , dynamic modeling approach), HOOPS (graphics) and module works ( simulation and 5-axis path calculation ).

SESAM (programming language)

SESAM is a procedural programming language with object-oriented approaches that can be used to implement OPUS algorithms within the CAM system, such as: B. user interfaces or database applications. The OPUSEDI program contains the SESAM development environment integrated in OPUS, including a translator, interpreter and debugger. SESAM programs are compiled for syntax checking and interpreted when they are executed. SESAM is tailored to the needs of NC program development and enables access to almost all data and functions available in OPUS. Large parts of OPUS are implemented in SESAM and are available to the user as a template in the source code. Over the years, the language has developed into a complete, easy-to-learn programming language with which almost all tasks can be processed directly within OPUS. The range of functions of the language can easily be expanded.

Language elements

The syntax and semantics of SESAM are similar to the syntax and semantics of common high-level and macro languages. All key words in the language must be given in German. Variables can be declared with the data types LOGICAL, WHOLE, DEC, TEXT and POINTER; Based on this, object-oriented structures (data and methods) can be defined using the CLASS data type. For each data type, static or dynamic fields can be created and managed in one or two dimensions. With the keyword UNDERMAKRO, functions or subroutines with transfer and return values ​​can be implemented. The typical expression options and control structures of a high-level language, such as logical operations, conditional statements and branches (IF... THEN... ELSE) and loops (AS LONG... LOOP) are supported as well as recursions.

Read-in and parameter files

Read-in files are libraries of SESAM subroutines or macros which can be used in various programs. For this purpose, the corresponding read-in files are read in with a command at the beginning of a program. In this way, all existing OPUS functions can also be integrated into their own macros, whereby read-in files already exist for a variety of tasks, such as B. for vector and matrix calculations, text and file manipulation, dialog generation, generation and manipulation of CAD objects, database applications, generation and simulation of NC programs, etc. By swapping or overwriting SUBMACRO calls with the same signature, program sequences or - predefine structures like a framework, which can then be programmed or reprogrammed in specific applications.

Parameter files are files for parameter values ​​that are structured according to a uniform keyword system. These are used to control SESAM program processes and to receive data about the runtime of programs. They are identified by a parameter name and can be written or read as required. Parameter files can also describe the structure of databases and define masks for user interfaces.

Dialogues

User interfaces or dialogs can be created in the development environment directly with SESAM or via a dialog generator. A dialog can contain the usual standard elements such as pictograms, switches, input fields, checkboxes, selection fields and lists, but also complex graphic elements such as nested tree structures with customizable drag-and-drop functionality.

Individual evidence

  1. TICC time and cost calculation system .
  2. Aluminum profile processing with PUMA .
  3. KD Bouzakis, R. Paraskevopoulou, G. Katirtzoglou, S. Makrimallakis, E. Bouzakis, K. Efstathiou: Predictive model of tool wear in milling with coated tools integrated into a CAM system. In: CIRP Annals - Manufacturing Technology. Vol 62, Issue 1, 2013, pp. 71-74. doi: 10.1016 / j.cirp.2013.03.008 .
  4. ^ L. Wang: Analysis of Material Deformation and Wrinkling Failure in Conventional Metal Spinning Process. Durham theses. Durham University, 2012.
  5. J. Hölldampf: Volume removal in the simulation of NC programs. HFT Stuttgart, 1998.
  6. T. Lutz: Extension of the CAM system OPUS by general surfaces generated from 2D contours. HFT Stuttgart, 2001.
  7. A. Vadas: Feature recognition for pockets in the OPUS CAM system. HFT Stuttgart, 2005.
  8. T. Franz: Automatic detection and processing of residues when milling out closed contours. HFT Stuttgart, 2007.
  9. M. Juvonen: Development of productivity on a CNC production line at Nordic Aluminum. Novia University of Applied Sciences, Raseborg, Finland 2014.
  10. J. Hildwein: Optimization of page change paths when machining on NC machines. HFT Stuttgart, 2015.
  11. D. Vögele: Conceptual design and implementation of an automated preparation of 3D geometry data for visualization using a laser projection system to support set-up processes in metal-cutting production. OTH Regensburg, 2015.
  12. S. Dreher: Approximation of a triangular network by a B-spline surface. HFT Stuttgart, 2016.
  13. S. Kicherer: Evaluation of the basics of a knowledge-based system for assigning milling operations to any geometries. DHBW Stuttgart, 2017.
  14. S. Elholm: User- oriented definition of functional scope and surface design to improve the usability of a technical standard software system. DHBW Stuttgart, 2018.
  15. S. Kicherer: Reuse and participation in the framework development for the treatment of technological data in the post-processor environment OPUS. FernUniversität Hagen, 2020.