Thesis Work, Add support for Cause & Effect Matrix language in ABB control application compiler
ABB A/S
Placering
Malmö
Thesis Work, Add support for Cause & Effect Matrix language in ABB control application compiler
At ABB, we are dedicated to addressing global challenges. Our core values: care, courage, curiosity, and collaboration - combined with a focus on diversity, inclusion, and equal opportunities - are key drivers in our aim to empower everyone to create sustainable solutions. That's our story. Make it your story.
This position reports to
Cluster Manager CION
Your role and responsibilities
Today the ABB control application compiler, used with System ABB 800xA, supports multiple languages common in the industry. Most languages are defined by the IEC 61131-3 standard, and include for example Structured Text, Function Block Diagrams and Sequential Function Chart (SFC). In many cases the these are sufficient, but there are some businesses and projects that would benefit from an easier way to program the control logic, more based on different things that can happen in the plant, and then define what actions to take if they occur. An easy way to program and visualize this is a so-called Cause and Effect Matrix. Especially for safety supervision purposes this is a common way to organize the logic. It gives an easy overview of what should happen if for instance a temperature becomes too high in a certain process segment. The concept includes definition of Causes in the left part with one row for each Cause, see the figure below The Effects are engineered as actions possible to take, represented by the columns in the figure. Then the engineer can combine any Cause with appropriate actions in the intersections in the resulting matrix. Previous implementations and solutions have been based on tools not being fully integrated with the rest of the editors or the compiler, instead they have been generating control logic in Structured Text or SFC that in the next step is sent as input to the control logic compiler. This Master Thesis should instead result in a prototype where the editor is creating a well-defined output that can be directly parsed and compiled by our control logic compiler. This solution has several advantages: • Better and more understandable feedback from compiler • Better code generation by native support in the compiler • Better user interface with integrated tool The control logic compiler has been developed using JastAdd and Java. The focus should be on defining the language, no standardized language specification exist, and the compilation. If time admits also editor parts can be prototyped using Typescript and HTML5 technology. Details: • 6 months • 30 ECTS, a master thesis • Two students • Location, ABB Malmö for the most part Your responsibilities: • Investigate existing solutions from ABB and competitors. Goal is to find the best solution for the language definition in the next step. Examples of editors and possible language elements exist from both ABB and competitors. • Define the basic language for Cause and Effect Matrix. • Implement basic support for the defined Cause and Effect Matrix language in our control logic compiler so that essential functionality can be compiled and then executed in the Controller: Includes defining the scanner, parsing and AST for Cause and Effect language; Includes compiler checks; Includes code generation to Interpret Instructions. • Explore editor support and prototype a simple editor.
Qualifications for the role
- We are looking for a master student from E, F, D or similar.
- With a good knowledge of programing in different languages, especially Java
- Knowledge of compiler constructions, preferably also with experience of JastAdd
More about us
For more information please contact Recruiting Manager Marten Svensson, +46 725 88 71 21. Apply with your CV, academic transcripts and a cover letter in English We value people from different backgrounds. Could this be your story? Apply today or visit www.abb.com to read more about us and learn about the impact of our solutions across the globe. #MyABBStory #Li-onsite
Locations
Malmö, Sweden
This job posting is collected from company pages and is only shown as short resume. Read entire job ad here: