Dominik Riemer created COMDEV-503:
-------------------------------------

             Summary: OPC-UA browser for Apache StreamPipes
                 Key: COMDEV-503
                 URL: https://issues.apache.org/jira/browse/COMDEV-503
             Project: Community Development
          Issue Type: Improvement
          Components: GSoC/Mentoring ideas
            Reporter: Dominik Riemer


h3. *Apache StreamPipes*

Apache StreamPipes (incubating) is a self-service (Industrial) IoT toolbox to 
enable non-technical users to connect, analyze and explore IoT data streams. 
StreamPipes offers several modules including StreamPipes Connect to easily 
connect data from industrial IoT sources, the Pipeline Editor to quickly create 
processing pipelines and several visualization modules for live and historic 
data exploration. Under the hood, StreamPipes utilizes an event-driven 
microservice paradigm of standalone, so-called analytics microservices making 
the system easy to extend for individual needs.
h3. *Background*

StreamPipes is grown significantly throughout recent years. We were able to 
introduce a lot of new features and attracted both users and contributors. 
Putting the cherry on the cake, we were graduated as an Apache top level 
project in December 2022. We will of course continue developing new features 
and never rest to make StreamPipes even more amazing. 

StreamPipes really shines when connecting Industrial IoT data. Such data 
sources typically originate from machine controllers, called PLCs (e.g., 
Siemens S7). But there are also new protocols such as OPC-UA which allow to 
browse available data within the controller. Our goal is to make connectivity 
of industrial data sources a matter of minutes.

Currently, data sources can be connected using the built-in module `StreamPipes 
Connect` from the UI. We provide a set of adapters for popular protocols that 
can be customized, e.g., connection details can be added. 

To make it even easier to connect industrial data sources with StreamPipes, we 
plan to add an OPC-UA browser. This will be part of the entry page of 
StreamPipes connect and should allow users to enter connection details of an 
existing OPC-UA server. Afterwards, a new view in the UI shows available data 
nodes from the server, their status and current value. Users should be able to 
select values that should be part of a new adapter. Afterwards, a new adapter 
can be created by reusing the current workflow to create an OPC-UA data source.

This is a really cool project for participants interested in full-stack 
development who would like to get a deeper understanding of industrial IoT 
protocols. Have fun! 
h3. 
*Tasks*

- [ ] get familiar with the OPC-UA protocol
- [ ] develop mockups which demonstrate the user workflow
- [ ] develop a data model for discovering data from OPC-UA
- [ ] create the backend business logic for the OPC-UA browser 
- [ ] create the frontend views to asynchronously browse data and to create a 
new adapter
- [ ] write Junit, Component and E2E tests
- [ ] what ever comes in your mind 💡 further ideas are always welcome
h3. 
*Relevant skills*
 * interest in Industrial IoT and procotols such as OPC-UA
 * Java development skills
 * Angular/Typescript development skills

Anyways, the most important relevant skill is motivation and readiness to learn 
during the project!
h3. *Learning Material*

- [StreamPipes 
documentation](https://streampipes.apache.org/docs/docs/user-guide-introduction.html)
- [Our current OPC-UA 
adapter](https://github.com/apache/streampipes/tree/dev/streampipes-extensions/streampipes-connect-adapters-iiot/src/main/java/org/apache/streampipes/connect/iiot/adapters/opcua)
- [Eclipse Milo, which we currently use for OPC-UA 
connectivity](https://github.com/eclipse/milo)
- [Apache PLC4X, which has an API for browsing](https://plc4x.apache.org/)
h3. *References*

See Github issues can be found here: 
[https://github.com/apache/streampipes/issues/1390]
h3. *Name and contact information*
 * Mentor: Dominik Riemer (riemer[at]apache.org).
 * Mailing list: (dev[at]streampipes.apache.org)
 * Website: streampipes.apache.org

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@community.apache.org
For additional commands, e-mail: dev-h...@community.apache.org

Reply via email to