Skill Development
In the context of capability and skill enginering, we consider skill development to be the hardest part. The implementation has adhere to a standardized state machine (in our case PackML), there has to be a skill interface that can be used by an MES and / or other modules and there also has to be an ontological description for the skill and its state machine. Because it' so complicated, CaSkade contains engineering support solutions for multiple target platforms. These solutions are presented in more detail below:
- SkillUp - A Java skill development framework
- pySkillUp - A Python skill development framework
- PLC2Skill - Skill development for PLCs according to IEC 61131
- MTP2Skill - A translation from MTPs to skills
SkillUp - Skill Development using Java
SkillUp is an all-in-one solution to develop and deploy skills using Java. Built on top of OSGi, SkillUp is our modular and robust solution to develop arbitrary skills for any target platform with a Java runtime environment. With SkillUp, you can develop a basic resource container and are then able to develop individuals skills in separate bundles. With our provided SkillUp runtime, you can start / stop / add / update / delete skills independent of each other. Read more details at SkillUp's GitHub repository.
pySkillUp - Skill Development using Python
Just like SkillUp is a skill SDK for Java, pySkillUp is a fully fledged skill SDK for the Python programming language. It can be used to implement arbitrary functionalities as skills and provide a skill interface and ontological description without any additional efforts. The full documentation of pySkillUp is available on GitHub.
PLC2Skill - Skill Development for PLCs
Compared to the previous two SDKs, PLC2Skill takes a slightly different approach. It's not an all-in-one solution, but instead is built on conventional PLC programming according to IEC 61131. Skills can be developed using a PLC library and are afterwards executed like any other PLC program. PLC2Skill takes a PLCopen XML export of the developed program and generates the ontological skill model automatically. A skill interface using OPC UA is also generated without having to do any manual tasks. You can find more infos on the GitHub repository of PLC2Skill.
MTP2Skill - Transform MTPs to Semantic Skills
The Module Type Package (MTP) is very similar to the concept of skills, but with a way longer history and a more rigorous standardization. Tailored to process manufacturing, MTPs are an AutomationML-based interface description of the services (i.e., skills in CaSkade) that a process manufacturing module provides. MTP2Skll is a solution to combine MTP-based modules with semantically modeled capabilities and skills. To achieve this, MTP2Skill automaticallly transforms an MTP into CaSkade's ontologies. Read more and see the detailed instruction on GitHub